7月28日、ARMマイコン・ワークショップ2017に行ってきた!ので内容をメモメモ
ちなみに、表題の件は、
「■ARM+FPGA スマート・エッジ・コンピューティング」
の中で出てくる
■今すぐ使える!AIを活用したIoT(クラウド)
マイクロソフト:リストラクチャリング
→ライセンス売りから、クラウド利用・AI
・自己紹介
・マイクロソフト:IoTで3~4年
→センサークラウドは2010年くらい
・組み込みの人の気持ち:ソフトの人にはわからない
・Internet of Things
Things
コネクティビティ
データ
アナリティクス→AI
アクション
・IoTの多様なシナリオ
→AIも活用現場いろいろ
・IoTで価値を生むプロセス
リアルな世界のデータ収集
コトから分析シナリオを抽出→膨大なデバイス・データ・処理量
分析処理(AI)を構築
分析処理をシステムに組み込む
・AzureによるIoT推奨アーキテクチャ
→なぜIoTでクラウド?
・クラウド以前、クラウド昔、今
以前:自前、自分でパッチ
クラウド:VM→やらないといけないことは一緒
今→PaaS
駄目なら、止められる:実証実験
自学自習可能なハンズオンコンテンツ
・IoT・AI
AIの活用:組み込み機器・エッジ/FPGA、ニューラルチップ、ソフト
クラウド4段階
こぐにてぃぶサービス:MSで学習
カスタマイザブルこぐにてぃぶサービス:特定画像の認識
MLスタジオ:何を解けばよいかわかっている
Rサーバー、Hadoop
・こぐにてぃぶ
感情
顔
画像認識:日々学習
Bing
スピーチToテキスト
→組み込み機器で利用:REST APIで
BOTフレームワーク
・デモ
画像のURL:解析結果を出してくる
確率がついている
LUIS
カスタムビジョンサービス
https://www.customvision.ai/ マイクロソフトアカウント必要(無料)
自分の画像を用意し
Train
評価したい画像を張ると・・・あれ0?、いやOKです
REST APIその他情報もみれる
→RasPiで聞いてもらっても。
.net core → RasPiでUbuntu
Cloud側でCognitive Serviceを活用する
・Azure ML Studio
機械学習の普及を加速させるモデリングとAPI環境
(制約あるけど、無料でできる)
回帰、分類、クラスタリング、異常検知
・デモ(今日のデモはみんな無料でできるよ)
100%正しい予測はいいか?
→新しいデータでは?
Excelにも組み込める
IoTにおけるクラウド側での分析処理
バッチ分析
リアルタイム分析
→リアルタイム;膨大なデータだと難しいところ
LSTMのフレームワークは出している
Stream Analytics
・R Server for HDInsight
巨大なデータを扱うための処理クラスタ
→Big Dataを扱うAIは、ちょっとしたPC上で
簡単に試せる世界とは全く違う
・AIサービスポイント
巨大データを受け付けられる→ストレージ
スケール可能
セキュア:データとAPI
→自前は無理な領域
・EdgeとCloudのロードバランシング
Cloud側のIoT
Edge側のIoT
→IoT Edge SDK
・エッジの機能拡張
・デバイス→クラウド→デバイス
データ 学習 パラメタ
継続学習
・まとめ
クラウドのML、AI:実用
AI データと問題必要
■920MHz無線モジュールとARM mbedを使って
地温高密度メッシュ観測システムを作ろう
・自己紹介
・何を作ったか
火山など:地熱を測る
2.4GHz:障害物、電気くう→920MHz
・システム
920Mhz→IM920AD変換→mbedc027→3G(そらこむ)
・技術要素
920MHzIM920
インタープラン 秋月・千石で変えて、情報得られる 4000円
C027 U20
UBlocks docomo系SIM使える。技適とってる
IoTクラウドサーバーM2x
at&t
Xivelyに似ている HTTP API,MQTT,
10個まで無料
ハード
内蔵ADで
IM920 AD変換モード
DCDC 秋月さんで
温度センサーMCP9700
バッテリー:分圧して図る
親機はクラウドへ3G
ソフト
IM920設定
子機のSNを設定
プログラム
親機 スレッドを使った
送信スレッド
プログラム:公開している
観測
設置状況
実測データ
M2XからデータをGetする
・まとめ
回路によってノイズレベル違う
電池電圧低下
やっぱAK-020などの安価なUSB-3Gモデムが使えれば
・コラム1 mbedでUSB 3Gモデム
AK-020
mbed OS5のCellular Base Class
・コラム2 mbedって
mbedS2 + mbedOS3(RTOS)mbed os5
ユーザーライブラリ:メンテナンスされてない→そのまま使えない
自前で書いたほうが早い
あってよかったスレッド機能
昔は割り込みハンドらでデータ受信、表のループでデータ送信
■ARM+FPGA スマート・エッジ・コンピューティング
・自己紹介
・ARM+FPGA
どんな選択肢
なんに使える?
・どんな選択肢
FPGA:CPUがついていない
→信号線が入ってきて出る
→ARMが入ってきて、使いやすくなった
いままでは:回路を書かないといけない
いまは:ARMのLinuxが立ち上がる
Xilinx:ARMのチュートリアル
A9 ARM V7→割り込みから立ち上がり20クロックかかることも
R5
M3 ARM v7-M Thum-2
・そもそもFPGAってなに?
ハードウェアを自由に組める
並列処理ができる
→単純なふるあだー回路
FPGA
ハードウェア記述言語(HDL)
Verilog:Cライク
VHDL:ADA、Moduler2ベース
・FPGAの特徴
不得意なこと:高速処理?
→Intelと勝負するのは・・・GPUも結構速い!
得意なこと:
並列計算
レイテンシを守る
ビット計算
柔軟性
FPGAはクロック200Mそこそこ
・FPGAでパイプライン処理
処理を細分化することで高速化が可能
並列に処理することで高速化が可能
・FPGAの柔軟性(可変長ビット)
・LoRaによるネットワーク
IoTのための長距離低消費電力ワイヤレスプラットフォーム
LoRaは変調方式、LoRaWANは仕様です
LoRa変調
都市部2~5Km、みとおし15K
スター型ネットワーク
参考ーZigBee等:メッシュネットワーク
LoRaは立ち上がり、立ち上がりが早い→待機電力を長くとれる→低消費
LoRaWAN:少量のデータを間欠的におくる(法律で決まっている)
→温度センサーなど
・使ってみた!
技適:ファームとアンテナあわせて
1276
LoRaWAN:DevEUIに注意、アンテナつけていないと10mくらい?
・高位合成
C,PythonでFPGA
→PythonでFPGAを進めている
High level Synthesis(HLS)
Vivado HLS/SDDoc:C/C++からHDL
OpenCL
Polypony:PythonからVerilogへ
;=と<=
PYNQ:FPGAとRaspberry Piで何が違う?
Raspberry Pi:工業用にはできていない→やれれば
Pythonで簡単にFPGAを使いたい
そのままでは動かない:ハードの知識必要
verilog書いたほうがいい高位合成ある
・FPGAでスマートエッジコンピューティング
田んぼの温度ならFPGAいらない(RasPiでOK)
地震:ウェーブレット解析、FFT解析:RasPiでは間に合わない→FPGA
場合によってはエッジにFPGA?→消費電力くう
Pmod(ぴーもっど)
Ambient Light
OLED(SPI)
開発キット Kiss4 Zynq=ARM+FPGA
LoRA 村田さん(技適とおっている)
ディープラーニング:絶賛開発中
M4だけで
■マシーンラーニング on ディープリー えんべっテッド
あんど
IoT用にりそーすが制限されたエンドノード
・人の会話でも言葉の認識難しい
→マシンならもっと
コアからエッジへ:インテリジェントな処理
センサー:リトルデータ→クラウド:ビッグデータ
エンドにオフロード
埋め込み知能によるインテリジェンス
・AI:ウェアラブル、ソーシャル、不正利用、道路案内
学術的進歩
高性能コンピューター
データ量が増えている
・マシンラーニング
クラウドと トレインモデル 認識、判定、分析
デバイス フィルタリング、低遅延 あくちゅえーション
→機械学習に求められる特性の違い
・マシンラーニングとシステム:相反する性質→トレードオフを意識することなく・・
・ニューラルネットワークおさらい
積和演算→ハードで
・ARM ML用埋め込み知能 3つ
適切なコンピューティング能力
スケーラブル
充実したライブラリ
ARM Cortex
エンド M
クラウド A
リアルタイム R
・23
ジャスチャーなど M23,M3
SIMD、DSP、キーワードすぽってぃんぐアルゴリズム M33,M4
さらに高度な音声、画像識別 M7
それでもたりない
A系プロセッサ
・ヘテロジニアス
AとMをいれたSoC
コプロセッサ
・エンドノードの例
スマートスピーカー
Audio Analytic;煙、ガス検知
医療;ER 呼吸不全、ぜんそく→適切な早期の対処で防止できる
COPD:3番目の死因 ML、オーディオ処理ウェアラブルネックレスで
It is easy to recognized speach
It is easy to wreck a nice beach
ぼコーダー1920年代から
■LoRaWANの現在と活用
・自己紹介
・LoRaWANとは
LPWA:Sigfoxとかもある
技術仕様はOpen,チップは認証有
・LoRaとLoRaWANの違い
LoRaは変調方式(データ 電波への変換方式) :レイヤ1
LoRaWANはMACレイヤ(L2)まで含めた使用:EtherNet
→レイヤ3(インターネットの世界のIPとか)以上は、ユーザー実装
→送れるデータが少ない
・LoRa:変調ローラといったりする
リージョナルISMバンド:国によって使える周波数
AS923:日本国内でも使える
LoRaMAC:データアクセス3つある
クラスA:データを送るための仕組み
LoRa変調:直行格差(スペクトラム変調:拡散)
Sigfoxは点 LoRaは面:面の広さ→拡散率を変更できる
距離と伝送速度を設計できる
920MHz ARIB チャンネル24から38チャンネル 20mw~250mw
250mwは免許いる
33チャンネルから66チャンネル
400ms送ったら、4秒間休む
・LoRaWAN
デバイス・ゲートウェイ・ネットワークサーバー
ネットワークサーバー:ルーターみたいなもん
ゲートウェイ:なにもやっていません(電波を受けてIPに)
デバイスからネットワークサーバー間で暗号化(GWをみても暗号化されてる)
クラスA:基本的動き アップリング(デバイスからクラウドへ)
クラスB:ビーコン(プッシュできる)
クラスC:常時給電デバイス
→下に行くほどスロット長くなる
アップリンクからくる
・そらこむのしょうかい
・IoTの基本要素とネットワークの課題
有線LAN,無線LAN:人介在
3G・LTE:ビジネス的に
ネットワーク
セキュリティ:暗号化→デバイスの値段が上がる
2015年 から
通信をクラウドで
ソラコム:仮想的交換機をAWS上で実現している
→足回りを差し替えるだけで動く
IoT通信プラットフォームSORACOM
・SORACOM Air fro LoRaWAN
すべて自分で用意する
Soracom場合
ネットワークサーバー;そらこむで用意
ゲートウェイ:IP変換だけ 上位回線は用意する。電源だけ必要
インドアゲートウェイ
アウトドアゲートウェイ
・LPWAシェアリング
共有ゲートウェイ:共有すれば安い
・LoRaWANデバイス
Arduino用開発シールド(実はUARTなら開発できる)
GPSとラッカー:GIサプライ
・必要なものを必要だけ使ってね!
・使い分け
LoRaWAN
頻度:1回あたりのデータサイズ少ない
省電力
山間部のラストワンマイル
セルラー
12バイトをこえる、下り
バイナリーパーサー機能
・セルラー圏外:衛星通信
・事例
牛のいじめを感知したい
→ぼっちになるのを検知
橋:セルラー網が来ていないところ
ダム
自治体のハッカソン