et2016 smart japan alliance llilum 161118
TRANSCRIPT
株式会社デバイスドライバーズ 日高亜友
「 LLILUM 」の紹介
ET2016 スマートジャパンアライアンスプライベートカンファレンス
2016/11/18 1
- mbed と Visual Studio / C# で簡単 IoT 開発 -
Device Drivers, Ltd. IoT スマート技術動向 22016/11/18
IoT 時代は組込みシステムも進化 mbed
LLILUM
EnOcean
Device Drivers, Ltd. IoT スマート技術動向 32016/11/18
mbed( エンベッド )
Device Drivers, Ltd. IoT スマート技術動向 42016/11/18
mbed とは? ブラウザで操作するクラウド・コンパイラなどのオンライン開発環境とそれをサポートするボード。 ARM 社がサポートし ARM マイコン専用。 豊富な標準ライブラリが利用できるほか他人の作ったライブラリを容易に利用可能。 WiKi や掲示板など、コミュニティ開発をサポート 対応ボードは100種以上https://developer.mbed.org/platforms/
Device Drivers, Ltd. IoT スマート技術動向 52016/11/18
mbed.org
Device Drivers, Ltd. IoT スマート技術動向 62016/11/18
mbed の弱点 現状はソースコード・デバッグの仕組みが無い ローカル開発環境の構築、操作性、互換性に問題
Device Drivers, Ltd. IoT スマート技術動向 72016/11/18
LLILUM( リリューム )
Device Drivers, Ltd. IoT スマート技術動向 82016/11/18
LLILUM とは? .NET Micro Framewok (NETMF) と同じ開発者が開発している 組込みアプリケーション開発環境
◦Visual C# で開発した UWP (NETMF) 互換の IL をLLVM ベースの .NET コンパイラでコンパイル後mbed アプリケーション (.bin を作成 ) 実行
NETMF 同様の豊富なドライバとサービス UWP 準拠のクラスライブラリを標準装備 mbed で C# のソースコード・デバッグが可能
Visual Studio に gdb デバッグ・インターフェース追加- MIEngine
Device Drivers, Ltd. IoT スマート技術動向 92016/11/18
.NET Micro Framework とは? 元々は Microsoft Research 開発の組み込み OS Visual C# / Visual Basic で開発した IL
.NET アセンブリ を中間コードインタプリタで実行 豊富なドライバとライブラリを標準装備 オープンソース・ライセンスで公開 (Apache V2) 30 種以上のプラットフォームに移植されて動作
◦ .NET Micro Framework (NETMF) 移植済み SOC◦ 業務アプリケーション・システム応用事例
Device Drivers, Ltd. IoT スマート技術動向
.NET Micro Framework の歴史 2001 年 V 1.0
SPOT Watch / MSN Direct Service( Microsoft リサーチ) 2006 年 V2.0
Windows SideShow Device 2008 年 V3.0 , 3.5 for Network 2010 年 V4.0 for Open Source 2015 年 V4.4 for Visual Studio 2015
◦ リポジトリ : CodePlex →GitHub 2015 年 LILLUME 公開
2016/11/18 10
開発キット約 30 万円
Device Drivers, Ltd. IoT スマート技術動向
GitHub / netmf-interpreter
https://github.com/NETMF/netmf-interpreter
GitHubNETMF / netmf-interpreter
2016/11/18 11
Device Drivers, Ltd. IoT スマート技術動向
GitHub / llilum https://github.com/NETMF/llilum
GitHubNETMF / llilum
2016/11/18 12
Device Drivers, Ltd. IoT スマート技術動向 132016/11/18
InterOp C# クラスライブラリで実装できない機能を
Native コード (C++, アセンブラ ) で実装してアプリケーションから呼び出す 使用例
◦ 標準 API に無いドライバ呼び出しやハードウェア制御の実行◦ クリティカルな処理を C またはアセンブラで記述
実装方法◦ C# で API を記述、コードを C/C++/ アセンブラで記述◦ パラメータ、リターン値、非同期処理、イベントが利用可能
NETMF / LLILUM ともにサポート
Device Drivers, Ltd. IoT スマート技術動向 142016/11/18
NETMF 4.4 標準サポートボード PK 標準サポートボード
◦ STM32F4Discovery
◦ STM32F429Discovery
◦ KEIL MCBSTM32F400
Device Drivers, Ltd. IoT スマート技術動向 152016/11/18
LLILUM のしくみ動作模式図
C# VS Compiler
LLVM Transformer
gcc cross compiler
mbed Converter
C# Application C# Library
MSIL
IR
ELF
mbed bin
Device Drivers, Ltd. IoT スマート技術動向 162016/11/18
LLILUM の状況 オープンソース・ライセンスで公開 (Apache V2) GitHub で開発 , V1.0 リリース済
◦master が無い!→安定動作版が無いバージョンによって動作したりしなかったり 開発環境 /SDK のビルド手順が大変!
◦ Windows 10/x64, VS2015, LLVM 3.7.x, ARM GCC, Make, CMake, Python 2.7.4, …. まだまだほかにも
◦ LLVM のビルドに2 ~ 3時間かかる◦ 文書やコミュニティの情報に間違いが多い!
ISSUE を探して解決することが必須
Device Drivers, Ltd. IoT スマート技術動向
LLILUM 対応ボード◦ NXP LPC1768 512KB/64KB (mbed)◦ Freescale FRDM-K64F 1MB/256KB (mbed)◦ Nucleo STM32F091 (mbed)◦ Nucleo STM32F401 (mbed)◦ Nucleo STM32F411 (mbed)◦ Nucleo STM32L152 (mbed)
◦ 32bit Windows PC
2016/11/18 17
Device Drivers, Ltd. IoT スマート技術動向
NETMF vs. LLILUM 比較表
2016/11/18 18
NETMF (V4.4) LLILUM (V1.0)
歴史・実績 2001 年 ~ 2015 年 ~動作方式 中間言語インタプリタ マシン語バイナリ
コンパイル方式 VS + 独自コード VS + LLVM 経由リソース 中 小
ビルド時間 短 長.NET Class Lib
VersionV3.x V4.5
標準対応ボード 2種 7種プログラミング言語 C#, VB C#, VB
Device Drivers, Ltd. IoT スマート技術動向 192016/11/18
EnOcean( エンオーシャン )
Device Drivers, Ltd. IoT スマート技術動向
無線チップ固有 EnOcean ID で互いを識別 使用する電波は1種、必要最小限の専用テレグラム EEP / IP Connectivity で互いの特性を認識 低消費電力でバッテリーレス可能
2016/11/18 20
EnOcean 通信技術
Device Drivers, Ltd. IoT スマート技術動向 2016/11/18
多数の無線モジュール製品
21
主に送信側 ( 非対称通信 )
主に受信側 ( 非対称 )STMPTM
TCM
Device Drivers, Ltd. IoT スマート技術動向
デバイス側は多種多様、同じ方式なら相互通信可能◦ Sub Giga →315MHz, 868MHz, 902MHz, 928MHz◦ 2.4GHz (ZigBee 3.0),
2.4GHz (Bluetooth Low Energy)
ゲートウェイが IoT 開発の鍵◦ EnOcean over IP 仕様策定予定◦ ホスト IF はシリアル通信でモデムの様な制御◦ センサーからアクチュエータまであらゆる通信経路でセキュリティー機能を選択可能
2016/11/18 22
EnOcean システム開発New!
Device Drivers, Ltd. IoT スマート技術動向 232016/11/18
まとめの前に IoT の本格普及には…
◦コンシューマー市場への普及が第一 クラウドよりもデバイス センサーよりもアクチュエーター
◦コンシューマーは AI/ML やビッグデータと無縁◦組込みシステムの進化が底を支える
Device Drivers, Ltd. IoT スマート技術動向 242016/11/18
まとめの前に IoT 時代の組込み技術者の心構え
◦オープンソースに関する広い知識と経験 ライセンス GitHub コントリビュート
◦コミュニケーション コミュニティ活動 オンライン・オフライン・イベント英語力+英語版の開発環境
Device Drivers, Ltd. IoT スマート技術動向
IoT をけん引する新技術動向◦mbed◦LLILUM◦EnOcean
IoT の本格普及を目指すには
まとめ
2016/11/18 25
Device Drivers, Ltd. IoT スマート技術動向
ありがとうございました
2016/11/18 26