Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Netmf-180224

133 views

Published on

オープンソースになったマイコン開発環境 .NET Micro Frameworkの現状と今後。組込みUWPアプリケーションをVisual Studio/LLVMコンパイルしてmbedで動かすLLILUM。.NET Coreとの関係は?ドットNETまいくろバンザイ倶楽部

Published in: Technology
  • Be the first to comment

Netmf-180224

  1. 1. オープンソースカンファレンス 2018 Tokyo/Spring 2018/2/24 ドットNETまいくろバンザイ倶楽部 1 ドットNETまいくろ バンザイ倶楽部 日高亜友 - NETMF の現状は? - info@devdrv.co.jp オープンソースになったマイコン開発環境 .NET Micro Frameworkの紹介と今後 ドットNET まいくろ バンザイ
  2. 2. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 2 セッション内容  はじめに:出会い  .NET Micro Framework  LLILUM  今後はどうなる? ドットNETまいくろバンザイ倶楽部
  3. 3. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 3 はじめに:自己紹介 ドットNETまいくろバンザイ倶楽部  名前:日高亜友(ひだか あとむ)  職歴:組み込みシステム・ソフトウェア開発35年  趣味:仕事、プログラミング、酒、…
  4. 4. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 4 出会い ドットNETまいくろバンザイ倶楽部  2003年に組み込みLinuxボード開発&販売  Au-1100 400MHz / 128MB RAM / 4MB ROM  少しは売れた、ロボットや人工衛星に載った  2006年に次のLinuxボード開発&販売  ADSP-BF533 / 600MHz / 64MB RAM / 4MB ROM  全然売れない→目玉となる特長が必要  他社でやっているような製品はやりたくない  .NET Micro Framework というOSが動作するらしい →情報収集&移植ライセンス購入
  5. 5. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 5 補足:組み込み開発者の悩み  当時は…  非同期処理と同期処理を容易に扱いたい  マルチIOを容易に扱いたい  マルチスレッドを容易に扱いたい  複雑なプログラムを簡単に書きたい ↓  組込みシステムでもC# を使いたい ドットNETまいくろバンザイ倶楽部 C#は偉大な言語 ハードウェアが 急激に進化 拡大 複雑化 実際にマイコンで移植済NETMFを使うと、2か月規模の 組み込みシステムプログラムが1週間で完成!
  6. 6. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 6ドットNETまいくろバンザイ倶楽部 NET Micro Framework (NETMF)
  7. 7. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 7 .NET Micro Framework とは?  元々はMicrosoft Research 開発の組み込みOS  Colin Miller氏を中心とするグループが開発  Visual C# / Visual Basicで開発した IL .NET アセンブリ を中間コードインタプリタで実行  豊富なドライバとライブラリを標準装備  オープンソース・ライセンスで公開 (Apache V2)  30種以上のプラットフォームに移植されて動作  .NET Micro Framework (NETMF) 移植済みSOC  業務アプリケーション・システム応用事例  Microsoft Azure と接続してIoT用途活用 ドットNETまいくろバンザイ倶楽部
  8. 8. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ NETMF 開発リーダー  Colin Miller  Steve Maillet 2018/2/24 ドットNETまいくろバンザイ倶楽部 8
  9. 9. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ .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  2011年 V4.2 for Visual Basic  2015年 V4.4 for Visual Studio 2015  リポジトリ: CodePlex →GitHub 2018/2/24 9ドットNETまいくろバンザイ倶楽部 開発キット 約30万円
  10. 10. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ .NET Micro Framework の歴史  2016年 9月 更新停止 2018/2/24 10ドットNETまいくろバンザイ倶楽部
  11. 11. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 11 NETMFの本質  元Windows CE 未満 MMU無しプラットフォーム 組込み製品となるはずだった OS  移植キット販売、製品ライセンス販売予定 だった  2010年にオープンソース化  Apache V2 ライセンス→無償で商用利用可能 ⇒ 製品相当の機能・性能・品質 を無料で公開  2015年 正式サポート製品 GR-Peach 国内販売  国産製品化第1号  2015年にGitHubへ移行、コミュニティ化推進 ドットNETまいくろバンザイ倶楽部
  12. 12. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ アーキテクチャ  全体構成 2 種類の実装方法 - Native Platform - “OS on OS” solution 2018/2/24 12ドットNETまいくろバンザイ倶楽部 アプリケーション開発 ライブラリ開発 プラットフォーム移植 CLR: Common Language Runtime HAL: Hardware Abstraction Layer PAL: Platform Abstraction Layer
  13. 13. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 13 V4.4 が動作するボード  PK標準サポートボード  STM32F4Discovery  STM32F429Discovery  KEIL MCBSTM32F400 ドットNETまいくろバンザイ倶楽部
  14. 14. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 14ドットNETまいくろバンザイ倶楽部 LLILUM
  15. 15. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 15 LLILUM とは?  NETMFと同じ開発者が開発している mbed ボード用 組込みシステム開発&実行環境  Visual C# で開発したUWP (NETMF)互換の ILを LLVMベースの.NET コンパイラでコンパイル後 mbed アプリケーション (.binを作成) 実行  NETMF並みの豊富なサービス  UWP準拠のクラスライブラリを標準装備  mbedでC#のソースコード・デバッグが可能  Visual Studioにgdbデバッグ・インターフェース追加 - MIEngine ドットNETまいくろバンザイ倶楽部
  16. 16. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 16 LLILUM のしくみ 動作概要図 ドットNETまいくろバンザイ倶楽部 C# Application C# Library mbed-bin C# VS Compiler ELF LLVM Transformer MSIL IR gcc mbed Converter
  17. 17. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 17 LLILUMの状況  オープンソース・ライセンスで公開 (Apache V2)  GitHubで開発, V1.0 リリース済  NETMF/llilum  masterが無い!→安定動作版が無い バージョンによって動作したりしなかったり  開発環境/SDKのビルド手順が大変!  Windows 10/x64, VS2015, LLVM 3.7.x, ARM GCC, Make, CMake, Python 2.7.4, …. まだまだほかにも  LLVMのビルドに2~3時間かかる  文書やコミュニティの情報に間違いが多い! ISSUEを探して解決することが必須 ドットNETまいくろバンザイ倶楽部
  18. 18. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ LLILUMの状況(続き)  対応ボード  NXP LPC1768 512KB/64KB (mbed)  Freescale FRDM-K64F 1MB/256KB (mbed) 2018/2/24 ドットNETまいくろバンザイ倶楽部 18
  19. 19. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ LLILUMの状況(続き)  対応ボード  Nucleo STM32F091 (mbed)  Nucleo STM32F401 (mbed)  Nucleo STM32F411 (mbed)  Nucleo STM32L152 (mbed)  32bit Windows PC 2018/2/24 ドットNETまいくろバンザイ倶楽部 19
  20. 20. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ LLILUMの状況(続き)  https://github.com/NETMF/llilum 2018/2/24 20ドットNETまいくろバンザイ倶楽部
  21. 21. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 21ドットNETまいくろバンザイ倶楽部 今後はどうなる?
  22. 22. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 22 選択肢 ドットNETまいくろバンザイ倶楽部  自分でメンテナンス?  同種のプロジェクト  NANOFRAMEWORK https://nanoframework.net/  TinyCLR OS http://tinyclr.com/ ただし非オープンソース 松岡さんの移植記事 https://www.slideshare.net/TakashiMatsuoka2/tinyclr-os https://www.slideshare.net/TakashiMatsuoka2/tinyclr-os-on-wio-lte  本家?
  23. 23. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 23 .NET Frameworkとの棲み分け  元々の位置づけ ドットNETまいくろバンザイ倶楽部 .NET Framework .NET Compact Framework .NET Micro Framework 2000年 未来 Server, Desktop Mobile, Embedded Mi-Com PC / Windows Windows CE Micro
  24. 24. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 24 様子が変わった?  今はこんな感じ ドットNETまいくろバンザイ倶楽部 .NET Framework .NET Compact Framework .NET Micro Framework 2016年 未来 Server, Desktop Mobile, Embedded Mi-Com PC / Windows Windows CE Micro
  25. 25. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 25 .NET Framework  2000年  CLI (コンセプト)の具体的な実装がCLR  Windows に大きく依存  アンダース・ヘルスバーグ  2001年  CLIのOpen Source実装→mono  プラットフォーム独立 (Linux, unix, iOS等, …)  ミゲル・デ・イカザ (GNOME) ドットNETまいくろバンザイ倶楽部
  26. 26. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 26 .NET Framework  2013年  mono →Xamarin  ミゲル・デ・イカザ (GNOME)  2014年  .NET Framwork → .NET Core  Windows とは独立でOpen Source実装  .NET Foundation  2016年  Microsoft がXamarin 買収 ドットNETまいくろバンザイ倶楽部
  27. 27. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ つまり 推測  Microsoftは 2010年頃までに徐々に Open Sourceの力を認めた  そして急激にOpen Sourceに傾倒していった  NETMFのOpen Source化 (2010年)  Codeplex → GitHub (Codeplexは凍結)  Xamarin, Monoとの同化 → .NET Core  Windows Subsystem for Linux 10  Docker, ほかにも… WindowsのLinux化 2018/2/24 ドットNETまいくろバンザイ倶楽部 27
  28. 28. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ モデルとライブラリ 2018/2/24 ドットNETまいくろバンザイ倶楽部 28
  29. 29. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ .NET の現状 2018/2/24 ドットNETまいくろバンザイ倶楽部 29
  30. 30. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 例えば.NET Coreは  Raspberry Pi ZeroやNano Pi上の  Docker上のコンテナで動作 2018/2/24 ドットNETまいくろバンザイ倶楽部 30 Nano Pi Raspberry Pi zero
  31. 31. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 今ではこういう製品も  M5 STACK  SmartWatch U8 2018/2/24 ドットNETまいくろバンザイ倶楽部 31
  32. 32. オープンソースカンファレンス 2018 Tokyo/Spring ドットNET まいくろ バンザイ 2018/2/24 32 まとめ  はじめに:出会い  .NET Micro Framework  LLILUM  今後はどうなる? ドットNETまいくろバンザイ倶楽部

×