Wi-Fiアプリケーションの開発の 課題と製品紹介

本ページにお越しいただきありがとうございます!恐らくWi-Fiに興味がある、もしくは今後検討する、既に製品を作っている方々だと思います。このページでは、Wi-Fi製品の開発の概要とTexas Instruments社(以下、TI社)が提供しているWi-Fiデバイスの紹介と、製品の特長を簡単にご説明します。 現在Wi-Fi製品の開発をご検討の方は是非ご参考いただければと思います。

Wi-Fiアプリケーション開発の概要と課題

Wi-Fiを選択する

まずはどのようなWi-Fi製品を開発するか、仕様を考えていただく必要があるかと思います。 無線のプロトコルであるWi-Fiは、他のプロトコルと比べると、下記のような特徴が挙げられます。

・比較的大容量の通信が可能

・ルータ等に接続することでネットワークに簡単に接続が可能

・消費電力は大きめ

開発するアプリケーションについて下記に挙げられる点等を明確にし、これから開発する無線アプリケーションはWi-Fiが最適なのか?という点から検討いただく必要もあるかもしれません。

・通信するデータは何で、どれくらいの容量か?(センサー値?画像?音声?等)

・接続する相手は何なのか?

・どの程度の距離で通信するか?

Wi-Fiの種類

無線はWi-Fiを使用することが決まったら、次にWi-Fiにどのような機能、性能が必要になるかが重要になってきます。といいますのも、Wi-Fiを含む無線LANはIEEE 802.11として規格化されており、11に続くアルファベットで対応する周波数帯や通信速度が異なります。 例えば下記のような規格と特徴が挙げられます。

・802.11b  :2.4GHzで最大11Mbps

・802.11a  :5GHzで最大54Mbps

・802.11g  :2.4GHzで最大54Mbps

・802.11n :2.4GHz、5GHzどちらかに対応し、最大600Mbps

その他にも新しい規格としては、1Gbpsを超える大容量のacやax等、続々と登場してきていますが、低容量のデータを扱うことが多いIoTに使用する場合は上記の規格で機能・性能として十分なことは多いです。 5GHzに対応すると、BLEやZigBee等他の2.4GHz帯を使用するプロトコルの電波が混在する環境でも干渉しあわずに通信を行うことができます。

必要なハードウェア

必要なWi-Fi機能が決まれば、それに対応するハードウェアを選ぶことになります。その際に重要なポイントは下記2点になります。

・1チップで開発するか?2チップ構成にするか?

・チップで開発するか?モジュールで開発するか?

前者は、マイコンとWi-Fi通信をチップで分けて構成するか、ワイヤレスマイコンになっている製品を選んで1チップで開発するかを確認する作業になります。もともとマイコンを使って開発しているアプリケーションにWi-Fi通信を追加したい、という場合はWi-Fiのトランシーバタイプのチップを選択し、SPIやUART等で通信を行うほうが効率は良いでしょう。
もし新規の開発であればWi-Fiの通信機能とマイコン機能が一つになったワイヤレスマイコンを選んだほうが、基板面積やコストが削減できるかもしれません。
後者は、技術適合証明(以下、技適)を取得する作業を省略するかどうかによって変わります。チップで購入する場合は単価としては低コストに抑えられますが、アンテナまでの周辺回路の設計や各国の電波法に対応させるための技適の取得が必要になり、開発費は大きくなる傾向にあります。逆に言えば既に技適取得済みのモジュールを選択すると、単価はチップと比べて高くなるものの、周辺回路の設計や技適の取得等の開発費は抑えることができます。

必要なソフトウェアと課題

Wi-Fiアプリケーションの開発では、ここが一番のハードルと思われる方も多いのではないでしょうか?一般的に下記のようなソフトウェアを必要とします。

・Wi-Fiドライバ:Wi-Fi通信を行うための無線を制御するソフトウェア

・TCP/IPスタック:ネットワークに接続するためのソフトウェア

・アプリケーションソフトウェア:センサーデータ取得等のアプリケーションソフト

Wi-FiはBLE等の他のプロトコルと比べてTCP/IPスタックが必要となるため、通信パケットの内容は非常に複雑になり、Wi-Fi通信をきちんと理解して開発しようと思うと、ネットワークの知識の習得も含め、非常に困難に思われる方が多いと思います。
また、Wi-Fiはネットワーク機能を有することもあり、下記のソフトウェアも考慮する必要があるかもしれません。

・クラウド通信用ソフトウェア:クラウドに接続するための設定や認証等を行うソフトウェア

・セキュリティソフトウェア:送信データの暗号化や受信データの復号等

クラウドではAWS(Amazon Web Service)やIBM Watson、Microsoft Azure等が挙げられますが、それらに接続し、センサーデータの可視化やクラウドサービスの利用を検討される方もいらっしゃると思います。クラウド接続用のソフトウェアについては、Wi-Fiチップメーカーによって提供範囲は異なり、選択するクラウドによっては一からのソフトウェア開発やAPIのポーティング作業が発生します。
ニ点目のセキュリティについては、ネットワークに接続する分、第三者からの不正アクセスやなりすまし等の被害に会うリスクも増加します。セキュリティに関する専門知識も必要であり、どのような脅威があるのか、どのような対策が必要か等、なかなかすべてを理解することは難しいのではないでしょうか。
各Wi-Fiチップメーカーによって提供されるセキュリティ機能も異なるため、それぞれのどのようなセキュリティ機能があるのか比較検討いただく必要もあると思います。

TI社の提供するWi-Fiソリューション

上記から、Wi-Fiアプリケーションの開発には様々な課題がありそう、という点は理解いただけたかと思います。TI社の無線チップSimpleLink Wi-Fiシリーズにおいては、そんな無線アプリケーションの開発を後押しする様々なソリューションを用意しています。

TCP/IPスタックをROMに内蔵

TI社Wi-FiチップCC3xxxシリーズにおいては、TCP/IPスタックをROMに内蔵しており、Wi-Fiの通信処理に関するソフトウェア開発を考慮する必要がなく、アプリケーションソフトの開発に専念することができます。
また、CC32xxはワイヤレスマイコン、CC31xxはネットワークプロセッサとして、Wi-Fi通信とマイコンを一体型にしたデバイスを選択することも、既存のマイコンにWi-Fi機能を付加する形でデバイスを選択することができ、どちらでもアプリケーション開発のみに専念できるという魅力は共通になっている柔軟性もあります。

出典:Texas Instruments – スマート化だけでは不十分 – 最新のサーモスタット事情

出典:Texas Instruments – TI-RSLK

ハードウェアからネットワーク接続までのセキュリティ機能

CC3xxxシリーズはセキュリティ機能も充実しています。
リバースエンジニアリングによるプログラム情報の取得や改ざんの脅威に対しては、内部のファイルシステムやプログラムの暗号化、アクセス制限機能を設けることができ、ソフトウェアによるタンパー検出も可能です。
通信経路での盗聴や改ざん、なりすましについては、TLS/SSL通信に対応し、データを暗号化したり、改ざんを検出したりすることができます。
ネットワーク接続時には認証キーが必要になり、そちらのデータの置き場所についても内部にセキュアなメモリ領域を設けることができるため、外部のメモリデバイス等必要なく安全に保存ができます。

出典:Texas Instruments – ハードウェア・レベルでのWi-Fiセキュリティの強化

また、最新製品であるCC3x35製品については、アメリカのセキュリティに関する規格であるFIPS-140-2に準拠している点も魅力的です。アメリカの民間企業で広く受け入れられていることはもちろん、カナダや欧州でも取り入れられ、日本で総務省と経済産業省のもとで発足したCRYPTRECで作成された、電子政府推奨暗号リストにおいても、FIPS-140-2に準拠することで、多くの基準を満たすことが可能です。

充実したクラウド接続環境

TI社ではAWSやAzure、IBM Watson等、主要なクラウドサービスに簡単に接続を行うことができるSDKを提供しております。CC3xxxの通信や汎用ペリフェラルドライバ等のサンプルに加え、SimpleLink SDK Pluginとして付加的にクラウド接続機能を付加することができます。

CC3xxxシリーズのラインナップ

CC3xxxシリーズのラインナップは下記となっております。2.4GHzと5GHz対応のデュアルバンド品も用意しており、それらのチップをベースとする各国の技適取得済みのモジュールも用意しております。 お客様の必要な要求度とターゲットコストに合わせてお選びいただけます。
・チップ
デバイス名 Wii-Fi Network Processor Arm® Cortex® M4 Wireless LAN Standard Application Memory Internet Protocols supported # Secure Sockets (TLS/SSL) Package
CC3235SF 2.4GHz and 5GHz 802.11 a/b/g/n 256K RAM + 1MB XIP Flash IPv6 + IPv4 16 64 9×9 VQFN
CC3235S 2.4GHz and 5GHz 802.11 a/b/g/n 256K RAM IPv6 + IPv4 16
CC3135 2.4GHz and 5GHz 802.11 a/b/g/n IPv6 + IPv4 16
CC3230SF 2.4GHz 802.11 b/g/n 256K RAM + 1MB XIP Flash IPv6 + IPv4 16
CC3230S 2.4GHz 802.11 b/g/n 256K RAM IPv6 + IPv4 16
CC3130 2.4GHz 802.11 b/g/n IPv6 + IPv4 16
CC3220SF 2.4GHz 802.11 b/g/n 256K RAM + 1MB XIP Flash IPv6 + IPv4
CC3220S 2.4GHz 802.11 b/g/n 256K IPv6 + IPv4
CC3220R 2.4GHz 802.11 b/g/n 256K IPv6 + IPv4
CC3120R 2.4GHz 802.11 b/g/n IPv6 + IPv4
・モジュール
デバイス名 搭載チップ Radio Certification Antenna Size
CC3235MODASF CC3235SF FCC/IC/CE/TELEC/SRRC PCBアンテナ 25.0×20.5mm
CC3235MODAS CC3235S
CC3235MODSF CC3235SF FCC/IC/CE/TELEC なし 17.5 × 20.5mm
CC3235MODS CC3235S
CC3135MOD CC3135
CC3220MODASF CC3220SF FCC/IC/CE/TELEC/SRRC PCBアンテナ 25.0×20.5mm
CC3220MODAS CC3220S
CC3220MODSF CC3220SF なし 17.5 × 20.5mm
CC3220MODS CC3220S
CC3120MOD CC3120

最後に

いかがでしたでしょうか? もしご興味がございましたら、評価ボードや詳細の評価環境の説明もさせていただきますので、お気軽にお問い合わせいただければと思います。