トラ技2014年3月号の特集で、マイコンとスマホを接続する2つの方法が解説されています。USBで直接接続する方法と、無線モジュールで接続する方法です。今回は、この無線モジュールでスマホと接続する時の「マイコンシリアルポートの接続速度」について考察します。但し、スマホ側は、既に対応アプリが完成していると仮定します。
マイコンとスマホの接続2方法比較
Android端末とマイコンをUSB経由で接続する時には、マイコン側にアンドロイド・アクセサリ通信プロトコルを実装する必要があります。ルネサスのアプリケーションノートR01AN1965JJ0100にも詳細な解説がありますが、大変そうです。
一方、無線接続は、Wi-Fi/Bluetoothモジュールを、UARTのTXD/RXDと3.3V/GNDの4本を接続すればマイコン基板が動作するので、USB経由よりは簡単です。大変なスマホとの通信処理は、無線モジュールが代行するので、マイコンは、この無線モジュールとのUART送受信処理をすれば済むからです。
そこで、この無線モジュールを使ったスマホ接続を検討します。
Wi-FiとBluetooth比較
Wi-FiとBluetoothを比較します(トラ技掲載表に加筆修正、価格は、秋月電子HPから抜粋)。
モジュール | メリット | デメリット | 代表的モジュール価格 |
Wi-Fi | ・ネット経由で通信距離制約なし ・通信セキュリティ高 ・通信速度≦数10Mbps |
・直接通信形態対応のスマホは少ない ・無線LAN設定が必要 |
XBee Wi-Fi(S6B):3680円 |
Bluetooth | ・初期設定不要で使用可 ・周波数ホッピング機能でWi-Fiよりも正確なデータ通信 |
・通信距離:10~30m程度 ・通信速度≦240kbps |
RN42XVP-I/RM:2200円 |
注目すべきは、Bluetooth無線モジュールが、特別な初期設定なしでスマホと接続できる点です。Wi-Fi無線モジュールのXBeeは、http://www.tunnelsup.com/videoなどで接続方法が紹介されていますが、Bluetoothの方が簡単です。但し、その分、通信速度がスレーブモード最大240kbps、通信距離も30m程度となりますが、マイコンUARTに接続して使うには丁度良い通信速度です。
というのは、マイコンUARTの速度は、任意に設定できる訳ではなく、CPU動作クロック速度を決めるとUARTに利用できる速度は限られた選択肢になるからです。その中で、Bluetooth通信速度をなるべく活かせる速度を選ぶことが効果的です。例えば、RL78/G1xテンプレート/32MHzの場合には、38.4kbps、LPC8xxテンプレート/30MHzの場合は、115.2kbpsなどです。テンプレート対象のマイコンでは、Wi-Fi速度を活かせないのです。
マイコンと無線モジュールの接続速度
マイコンUARTは、これまで主にPCとの接続に使ってきました。その速度は、9600bpsや19200bpsが多かったと思います。しかし、今後は、Bluetooth無線モジュールとの接続を考慮し、115.2kbps程度のより高速なUART接続が望まれます。