ARMのIoT開発ワールドの 基礎知識

緊急特集
第
2章
本家 ARM の IoT ワールド入門
ご購入はこちら
IoT 時代のコンピュータ・テクノロジ・ダイジェスト
ARM の IoT 開発ワールドの
基礎知識
mbed は ARM マイコンの試作などによく使われる
開発プラットフォームです.ここでは,ARM の IoT
開発プラットフォームとしてさまざまな側面を持った
mbed の世界を中心に解説していきます.
ARM マイコン定番開発環境 mbed の
IoT 向けの取り組み
mbed は,ARM 社が提供しているマイコン開発プ
ラットフォームで,IoT 開発向けに進化中です.主に
Cortex-M シリーズのプロセッサ・コアを使用したマ
イコンの開発ボードや開発環境,ライブラリ,クラウ
ド接続サービスなどで構成されています.
mbed は,ARM 社と半導体パートナ企業およびコ
ミュニティによって開発が行われています.mbed 対
応ボードを持っていれば,無償で開発環境を利用する
ことが可能です.
ユーザ登録や開発環境を使用する場合には,特に登
録費用などは発生しません.E-mail アカウントさえあ
れば誰でもユーザ登録が可能です.
mbed 対応ボードは,多種のマイコン(MCU)を搭載
したタイプが各社から安価に提供されており,入手も
容易です.半導体ベンダやボード・ベンダからさまざ
まな仕様・形状のボードが販売されています.定番の
拡張インターフェースである,お手軽マイコン基板
Arduino Uno R3 の拡張シールドが使用可能な形状の
ボードや,ブレッドボードに直接挿入してプロトタイ
ピング開発が行いやすい形状のボードなどがあります.
2016 年 10 月に米国サンタクララで開催された ARM
イベント ARM TechCon や mbed Connect において,
クラウド・サービス mbed Cloud が発表され,IoT デバ
イス側だけではなく,サーバ側のプロビジョニングや
アップデート・サービスを含んだ統合的なソリュー
ションがアナウンスされました.mbed Cloud は,現時
注 1:従 来の mbed 2 では,
“mbed”という名称のライブラリが
リンクされていましたが,mbed OS 5 で動作しているプロ
グラムには,
“mbed-os”という名称のライブラリが使われ
ます.
2017 年 2 月号
渡會 豊政
点では限定されたパートナのみに提供されています.
ARM の IoT 向け開発環境
「mbed OS 5」
● OS と付いているけど OS だけのことじゃない
2016 年 8 月に開発者向けに mbed OS 5 が正式に発
表され,最初のバージョン 5.1.0 がリリースされまし
た.従来までの mbed 2.0 で提供されていたオンライ
ン・コンパイラやプラットフォーム間で高いポータビ
リティのある各種ライブラリはそのまま使えるように
しつつ,セキュリティやコネクティビティの拡張が行
われました.開発用ツールなども拡充されました.
● 従来の mbed とはほぼほぼ互換性がある
mbed 2.0 は,マイコンの複雑な周辺モジュールや
割り込みなどを高度に隠ぺいしたハードウェア抽象化
レイヤ(Hardware Abstraction Layer:HAL)の API
を提供し,半導体パートナ企業によってこのレイヤ下
のターゲット依存部分の実装が行われています.ま
た,ターゲット・デバイス上で動作するほとんどのソ
フトウェアはオープンソース化され,誰でも利用した
り修正したりすることができます.
プロトタイピング目的の場合は,これらの基本 API
のみで十分だったのですが,セキュリティやコネク
ティビティ機能が必要な IoT デバイスを開発する場合
には,不十分でした.それらのコンポーネントを標準
でサポートするために mbed OS 3 が開発されました.
mbed OS 3 で 開 発 さ れ た 成 果 物 は,Technology
preview としてリリースされ,さまざまなフィード
バ ッ ク を 反 映 し, 従 来 ま で の mbed OS 2 と 新 し い
mbed OS 3 の新機能を組み合わせて mbed OS 5 がリ
リースされました(図 1).バージョン番号が 4 でなく
5 なのは,
「2 + 3 = 5」という意味です.
mbed OS 5 で使用している HAL の部分は,mbed
OS 2 と共用したコードベースになっています.API
も共通になっているので,mbed OS 2 用に開発した
ライブラリやアプリケーションを移行することも簡単
です注 1.
17