**********************************************************************
ワーク S2-d
テーマ:IoT を支える様々なLPWA・セルラー通信技術とIoT実践ハンズオン
〜デバイスからクラウドまでを一気通貫で学ぶ〜
講師:松下享平 株式会社ソラコム
日時:2018/8/31 9:00~10:10
参加人数:10名
**********************************************************************

・自己紹介
今日のスケジュール紹介
セミナー(60分)
ハンズオン(70分)
まとめ(5分)

・IoTとは?
モノ
小型化、低コスト化している
クラウド
迅速なデータ処理ができるようになっている
ネットワーク(ここがセミナーのメイン)
モノ向けの通信なのか?
セキュリティー
従来の通信は人向けの通信
(料金、セキュリティーのアップデートなどの観点から)

・SORACOMは独自のネットワークを提供している(1回十円~)
・お客様の事例(室町ケミカル株式会社)
カートリッジ式純粋気にIoTシステムを加えることでビジネスを変革
エンドユーザー管理であった水質管理を自社サービスとして提供し、
ユーザーの顧客満足度を向上
・お客様の事例(東急スポーツオアシス)
スポーツジム内のタオルの回収状況をリアルタイムで把握
”はかり”、”距離センサー”を用いてリアルタイムに在庫を把握、
関係者に通知を行い効率管理を実現
・お客様の事例(ハイク)
鳥獣対策向け自動撮影カメラ「ハイクカスタムSP4G」

・通信の話
モノからの通信の種類2つ
近距離無線通信(Bluetooth、ZigBeeなど)
中・長距離無線通信

・IoTを取り巻く通信の進化
RFID、NFC(通信距離~10m,消費電力~20mA)
PAN,BLE,ZigBee,Wi-SUM(10m~30m,20mA~100mA)
Wi-Fi
セルラー3G、LTE(4G)
LPWA,LoRaWAN,SigFox,Cat,M1,NB-IoT
5G

・LPWA分類
LPWAは2つに分かれる
ライセンス系(ドコモ、KDDI、ソフトバンク)
LTE Cat.M1(LTE-M)
LTE Cat.NB1(NB-IoT)
アンライセンス系
LoRaWan

・セルラー系LPWA
LTE Cat.1
LTE Cat.M1(LTE-M)
LTE Cat.NB1(NB-IoT)

・アンライセンス系 LPWA 共通特徴
kmレンジの長距離通信
安価な通信音ジュール
低速度・低消費電力
LoRaトランシーバ 消費電離が良い20~30mA:発光ダイオードと同じくらい)

・アンライセンス系、セルラー比較
データ量
アンライセンス:~12Byte
セルラー:MByte,GByte
通信頻度
1日数~数十回
常時・高頻度通信
消費電力
数か月、数年
短期の電池交換

・IoTで求められるファームウェアの役割
無線モデムの制御が必要になってくる
クラウド通信処理(SDK)
バッファリング、再送時間
プロトコル処理、暗号化
接続先や認証情報の保管

IoT時代におけるファームウェア開発の課題
リソース制約があるので、低級言語で記述
開発環境に起因する生産性の課題
ファームウェア更新の特殊性の課題
生産性の高い言語で開発しバンバン書き換えができないか?
→FOTA(Firmware on the air)
書き換えが不要なくらいシンプルにできないか?→クラウドの活用

FOTA(Firmware on the air)
AWS Greengrass
Amazon FreeRTOS
Azure IoT edge

・エッジデバイスでの実装
センサー制御
低レイテンシー応用
オフライン稼働

・フルマネージド・サーブビスの活用




■ハンズオン
開発環境構築の手順
Wio LTE を使うためには、開発環境の準備を行います

Virtual COM Port ドライバ
WinUSB ドライバ
TeraTerm
Arduino IDE
Wio LTE を扱えるようにする定義のインストール
Wio LTE ライブラリのインストール

1. Virtual COM Port ドライバ
Wio LTE を通常モードで動作させた際に、Wio LTE にシリアルポートでアクセス
するためのドライバです

Virtual COM Port ドライバは
Github: SeeedJP/WioLTEforArduino - InstallVCOMDriver-ja
の手順に従ってファイルの入手とインストールを行ってください

確認方法
Wio LTE を PC と接続してみてください
その際デバイスマネージャ上で
STMicroelectronics Virtual COM Port
と表示されるようになれば、インストールに成功しています

Windows 通常モードの時のデバイスマネージャの表示

2. WinUSB ドライバ
Wio LTE を DFU モード に切り替えてファイル書き込みを行う際に必要な
ドライバです

2-1. Zadigサイト の Download にある Zadig 2.3 をクリックして、
zadig-2.3.exeをダウンロードします
2-2. Wio LTE を DFUモード に切り替えます
DFUモードへの切り替え方は、このページの前半で確認してください
2-3. zadig-2.3.exe を起動する
2-4. zadig-2.3.exe の [Options] > [List All Devices]
2-5. STM32 BOOTLOADER を選んだ後、Driver欄の左を STTub30 、
右を WinUSB に変更してから、Replace Driverをクリックします


2-6. デバイスマネージャの ユニバーサル シリアル バス デバイス
(Windows 7 の場合は Universal Serial Bus Devices)
の一覧に STM32 BOOTLOADER が表示されていれば成功です
Windows DFUモードの時のデバイスマネージャの表示

3. TeraTerm
Wio LTE からのシリアルコンソールを読み書きするためのソフトウェアです
※Wio LTE 開発の際、Arduino IDE 標準搭載のシリアルモニターは動作が不安定に
なることがあるため、TeraTermを利用するようにしてください

検索エンジンで TeraTerm を探し、ダウンロードとインストールを行ってください

4. Arduino IDE
Wio LTE の開発(ソースコード記述、コンパイル、バイナリファイル転送)には、
Arduino IDEを利用します。
Arduino のサイトから Arduino IDE をダウンロードし、
表記に従ってインストールしてください

4-1. ダウンロード
download-arduino
arduino-ide-download-justdownload

4-2. インストール
ダウンロードした EXE ファイルをダブルクリックしてセットアップを開始
してください
※スタートメニュー内の Arduino が「Arduino IDE」です。
 これをダブルクリックで Arduino IDE を起動することになります

5. ボード定義のインストール
Wio LTE を Arduino IDE で扱えるようにするための機能を追加します

5-1. Arduino IDE を起動する
スタートメニュー内の Arduino をダブルクリックします

5-2. Arduino IDE の [ファイル] > [環境設定]

下記URL (https:// から .json まで) を 設定タブ にある 追加のボードマネ
ージャのURL: へ入力して、保存をクリックします

https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json
追加の様子

5-3. メニューの [ツール] > [ボード] > [ボードマネージャ]
一覧の中から Seeed STM32F4 Boards by Seeed Studio を選択しインストール
をクリックします
※ seeed stm32 で検索すると見つけやすいです

6. Wio LTE ライブラリのインストール
実際のプログラム(Arduino では スケッチと称します)で Wio LTE が使えるよう
にするライブラリを追加します

6-1. Arduino IDE を起動する
6-2. Arduino IDE の
[スケッチ] > [ライブラリをインクルード] > [ライブラリを管理…]
一覧の中から Wio LTE for Arduino を選択しインストールをクリックします
※ wio lte で検索すると見つけやすいです

以上で環境構築は終了

■まとめ
 割愛

以上。