これからはじめる 
IoTデバイスmbed入門編 
田中直人
自己紹介 
名前:田中直人 
職業:システムエンジニア・・・? 
(なのか最近疑問に思ってきた) 
趣味:映画大好き。特に洋画。 
学生時代は週1で映画館に通う 
Twitter:@ntanak
はじめに 
IoT / M2Mという単語が最近トレンド 
なんでしょうか、よく耳にします。
なんだかイマイチよくわからない?
ご安心下さい。 
明確に答えられる人は 
おそらくあまりいらっしゃいません。
というか、明確な定義ってあるの?
それこそ人によっていろいろな解釈があるので、 
(全体の範囲が広すぎて) 
”コレ”です!とは言いにくい・・・
狭義としては、 
通信機能を持った(組込み)機器が、 
センサー等で取得したあらゆるデータを、 
インターネットを通じてクラウド上に集約 
させる。その集約したデータを分析し 
様々な分野で活用する事。
その辺りの説明は、他の方に任せます。
ここでは、「とりあえず」どんなものがあ 
るのか、実際のIoT機器として認知され 
ている製品を見て触っていきましょう。
ところで、 
組込み系のソフトを作る事は難しいものばかり 
だと思い込んでいませんか? 
開発環境などの準備が面倒で、手を出しづら 
いと感じませんか? 
気軽に始められるものが欲しいと思いません 
か?
本日のメニュー 
IoT時代のワンボードマイコンいろいろ 
mbedとは? 
使い方と実例 
mbed OSについて 
まとめ
IoT時代の 
ワンボードマイコンいろいろ
ワンボードマイコン? 
1枚の回路基板で単体のコンピュータ 
として動作するもの
ワンボードマイコン 
• Arduino(アルドゥイーノ) 
• Galileo(ガリレオ) 
• Edison(エジソン) 
• Raspberry Pi 
• mbed 
etc…
Arduino 
• オープンソースのハードウェア 
• 互換製品多数 
• 低価格 
http://ja.wikipedia.org/wiki/Arduino
Galileo 
Intel社が開発した、Arduino互換製品 
http://www.intel.co.jp/content/www/jp/ja/do-it-yourself/ 
galileo-maker-quark-board.html
Edison 
• ほぼSDカードサイズの小型コンピュータ 
• ただ、そのままだと使いづらいので、通常使用では 
拡張ボードが必要 
http://www.intel.co.jp/content/www/jp/ja/do-it-yourself/ 
maker.html
Raspberry Pi
mbed 
写真は最初に発売された万能タイプ 
現在は様々な派生型が存在 
(3Gモジュール/GPS付き等)
mbedとは?
mbed 
ARM社のプロトタイピング用ワンボードマイコン 
およびそのデバイスのプログラミング環境を指す 
Wikipediaより抜粋 
ラピッドプロトタイピング 
「迅速にアイデアを試す事ができる」
mbed 
LED1〜4 
マイコン(CPU) 
USBコネクタリセットボタン
mbed 
マイコンLPC1786(NXPセミコンダクターズ) 
32bit ARM/Cortex-M3コア 
動作クロック96MHz 
メモリ64KB(SRAM) 
フラッシュROM 512KB 
インターフェース 
デジタルI/O、 
PWM出力(パルス)、 
アナログ入力/出力、 
シリアル、SPI、I2C、 
CAN、イーサネット、 
USBホスト/デバイス
で、こいつは何がいいの?
開発作業の比較 
これまでの 
マイコン開発作業 
• 開発環境の準備が大変 
コンパイラ各種ソフトのインストール 
• プログラミングが大変 
分厚いマニュアルとの格闘 
• 専用ハードが必要 
作成したプログラムを実機に書き込む際に必要 
• 半田づけが必要 
mbedでの開発作業 
• 開発環境はブラウザだけでOK! 
• プログラミングが楽! 
• 専用ハード要らない! 
• 半田付け不要! 
結局、やりたいことをする前の段階で 
やる気が削がれる 
思いついた事をスグに試せる
初心者向け入門用としては、 
数ある他のワンボードマイコンとは 
一線を画すものだと思います。
mbedのメリット 
① 開発環境がすぐに準備できる 
② ドラッグ・アンド・ドロップでプログラム書き込み 
可能 
③ ライブラリが充実
① 開発環境がすぐに準備出来る 
PCさえあればOK! 
開発環境は全てクラウド上。 
ブラウザさえあればOSを選びません。 
Windows、Linux、MacOS 
InternetExplorer 
Google Chrome 
Firefox 
Safari ...etc
② ドラッグ・アンド・ドロップで 
プログラム書き込み可能 
mbedはパソコンと接続すると、USBメモリのように見 
えます。 
プログラムを書き込む際は、ブラウザ上でコンパイル 
して 
ダウンロードしたファイルをそのUSBメモリに 
コピーするだけ。
③ ライブラリが充実 
・ポータルサイト上に情報が集約されています。 
・世界各国のユーザが沢山のライブラリを公開しています。 
・有線/無線LAN、GPS、カメラ、他各種センサ→ハード制御系 
・Webサーバ、画像処理、Websocket → ソフト、プロトコル系 
しかも、開発環境がクラウド上にあるので、公開されている 
プログラムを簡単にやりとり出来ます。
一からコーディングする必要がない 
見よう見まねでなんとかなる(コピペで大抵動くw) 
やりたいことに集中できる!
使い方と実例
裏側にピンが沢山付いてま 
す
ブレッドボード 
部品の端子やジャンパ線 
を差し込んで使う。 
半田づけいらず。
例えば・・・
LANコネクタ 
RJ-45 
ブレッドボードの穴の間 
隔(ピッチ)にあるように 
ピンを取り付けてます。
LAN通信機能追加 
例えば、ソフト作成時に 
LAN通信関連の公開ライブ 
ラリをインポート 
通信機能が簡単に使える
ちょっとまって! 
回路なんかわかんない(TдT)
ご安心を。 
ポータルサイトにて、ライブラリ公開されている方 
が、回路の結線方法(どことどこのピンを繋ぐ)も 
公開されているので、その通りに繋ぐだけ。
それすら面倒なら、各種センサーやLANコネクタ等が 
実装済みの拡張基板を購入するのもあり。 
LCD(液晶) 
3軸加速度センサ 
温度センサ 
スイッチ 
LED (RGB) 
スピーカー 
USB (ホスト/ デバイス) 
有線LAN
Demo
人感センサー 
HC-SR501 
パーツ屋さんで売ってます。 
赤外線センサーで人の動 
きを感知
VCC 
OUT 
GND 
写真のように3本 
端子があります 
端子機能 
VCC DC4.5~20V 
OUT HIGH: 3.3V、LOW:0V 
GND GND
電気的特性(抜粋) 
電源電圧DC4.5~20V 
消費電流50μA以下 
出力信号HIGH: 3.3V、LOW:0V 
検知時間0.5s 
出力時間3~200s(調整可) 
感知範囲100° 
感知距離センター5~7m 
サイド3~4m
使う端子
では実際に 
試してみましょう
手をかざすとLED1~4が点灯(単純ですが)
さて、 
話は変わりますが
今回何故こんなに 
「mbed」押しなのか 
というと・・・
これに 
集約されるからです
mbed OSについて
mbed OS 
ARM社が今年10月初旬、 
IoTデバイス向けのオペレーティングシステム 
「mbed OS」を発表
mbed OS 
ARM社といえばCPU(マイコン) 
だったのが、OSやクラウドを含めたIoT分野に本格的 
に 
手を伸ばしてきた!
mbed OS 
従来より、mbedにはハードウェアのレジスタ等の細か 
い部分を意識しなくても開発できるようにSDKが提供 
されていました。
mbed OS 
そもそもOSが必要な理由: 
システム管理や通信制御(プロトコル)部分を任 
せられる 
(セキュリティに関係する機能も) 
新規開発する必要が無いので、 
デバッグ等での開発コストを抑えられる
mbed OS 
実はmbedで動くOS(所謂RTOS)も、オフィシャルや 
各種コミュニティにて開発、提供されていました。 
• ・mbed-rtos 
http://developer.mbed.org/handbook/RTOS 
• ・MiMic Project http://nyatla.jp/mimic/wp/
mbed OS 
今回発表された「mbed OS」では、 
ここからさらにIoT向けに特化した機能が追加される模 
様 
・暗号、セキュリティ機能 
・電力監視 
・省電力無線通信プロトコル(Bluetooth Low Energy 
等) 
https://mbed.org/technology/os/
mbed Device Server 
また、mbed OSが送るデータのクラウド側の受け口と 
して、 
「mbed Device Server」も発表された。 
https://mbed.org/technology/device-server/
mbed OS 
• リリーススケジュール 
2015年10月頃に公開される予定 
無償提供との事 
今後、引き続き情報を追っていきます。
まとめ 
手っ取り早くアイデアを形にできる 
見よう見まねでなんとかなる 
やり方によってはスゴイ事ができる 
mbed OSが気になる! 
さぁ、みなさんも一緒に 
mbedを始めてみませんか?
ご静聴ありがとうございました。
参考文献 
• ARM mbed.org http://mbed.org/ 
• Interface 2014/10月号CQ出版社 
• Wikipedia : 「mbed」

これからはじめるIoTデバイス mbed入門編