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.

TOPPERSプロジェクトの紹介 OSC2018 Tokyo Spring

369 views

Published on

NPO法人TOPPERSプロジェクトは、組込みシステム構築の基盤となる高品質なオープンソースソフトウェアの開発と普及により、 組込みシステム技術と産業の振興を図るために活動しています。自動車や宇宙ロケットにも搭載された実績を持つ、高品質な組込みリアルタイムOSや通信ミドルウェアをオープンソースとして公開しています。

Published in: Internet
  • Be the first to comment

  • Be the first to like this

TOPPERSプロジェクトの紹介 OSC2018 Tokyo Spring

  1. 1. OSC2018 Tokyo Spring IoT時代の組込みOSとミドルウェアとして のTOPPERS ~高品質な組込み向けオープンソースを 開発するTOPPERSプロジェクトのご紹介~ NPO法人 TOPPERSプロジェクト 高田 光隆 1 TOPPERS公式マスコット 「とぱめ」 2018年2月24日
  2. 2. 目次 1. 組込みシステムとは? 2. TOPPERSプロジェクトとは? 3. とりあえず触ってみませんか?  GR-PEACHでお手軽RTOSプログラミング 4. こんなことができます!  展示ブースのご紹介 5. まとめ:TOPPERS入会のススメ 22018 OSC Tokyo Spring
  3. 3. IoTとTOPPRESって関係あるの? もののインターネット? • インターネットに接続するデバイスだらけな環境 2018 OSC Tokyo Spring 3 対象機器 サーバ、PC 携帯、スマートフォン IoT、スマート家電 スマートスピーカー、車載 利用OS Linux、Windows iOS、Android ITRON、FreeRTOS、 RTEMS,組込みLinux、 AUTOSAR… • センサー(組込みOS)とクラウド(Web系)の協調 • 試作がインターネットのクラウドサービスを使って便利になり飛躍的に • 有償サービスや流れる情報の流出を防ぐためのセキュリティが大事
  4. 4. IoTやMakerにチャレンジしてみたいが… •ラズパイやArduinoを手にして • さて、Lチカはできたけど、次は何しようか… • もう少し本格的なプログラミングをやってみたいな… •組込みOS や TOPPERSって聞いたことあるけど • 何していいのかよくわからない… • ホビーで使うには敷居が高いんじゃ… •春休みの宿題とか • 正月の宿題はできなかった(終わらなかった)な… ECHONET Liteで家電を制御してみませんか? 2018 OSC Tokyo Spring 4
  5. 5. ECHONET Liteって? •スマートハウス向け制御プロトコル •ISO/IECとして国際標準になっているよ •国内ではHEMS(home energy management system)標準プロコトルとして認定されて、スマー トメータとHEMSを繋ぐための標準プロトコルとし て認定されてるよ! 2018 OSC Tokyo Spring 5 経産省 ECHONET Lite WGからの報告 (平成28年6月29日)より
  6. 6. ECHONET Liteでスマートライフ •ECHONET Liteでは家の中の電気、ガスなどのエネルギー量 を計測したデータを送信するプロトコルとして採用 •スマートメータにつながっているエネルギー量を送信 •ECHONET Lite対応家電だと • 自身の使用エネルギー量を送信 • 他から家電制御を受け付けたり 2018 OSC Tokyo Spring 6
  7. 7. 1. 組込みシステム(IoT)とは? 7
  8. 8. 身の回りにあるIoT 82017 OSC Tokyo Fall FA機器 その他 自動車 航空機 マルチメディア 通信機器 家電製品 OA機器
  9. 9. 組込みシステムのオープンソース(1/2) ハードウェア設計 HW:IP(HDLソースコード) プログラミング言語 プログラム開発環境 92018 OSC Tokyo Spring
  10. 10. プログラム実行環境 リアルタイムOS OS 10 組込みシステムのオープンソース(2/2) 2018 OSC Tokyo Spring
  11. 11. 2. TOPPERSプロジェクトとは? 11
  12. 12. TOPPERSプロジェクトとは? TOPPERS = Toyohashi OPen Platform for Embedded and Real-time Systems プロジェクトの活動内容 • ITRON仕様の技術開発成果を出発点としたプロジェクト • 組込システム構築の基盤となる各種の高品質なオープンソース ソフトウェアを開発するとともに,その利用技術を提供 組込システム分野において,Linuxのように広く使われる オープンソースOSの構築を目指す! プロジェクトの推進主体 • 産学官の団体と個人が参加する産学官民連携プロジェクト • 2003年9月にNPO法人として組織化 • 以前は,名古屋大学(2002年度までは豊橋技術科学大学)高田研究室を 中心とする任意団体として活動 122018 OSC Tokyo Spring
  13. 13. TOPPERSプロジェクトの狙い 決定版のITRON仕様OSの開発 • ITRON仕様が抱える過剰な重複投資と 過剰な多様性の問題を解決(または軽減) 次世代のリアルタイムOS技術の開発 • 組込みシステムの要求に合致し,ITRONの良さを 継承する次世代のリアルタイムOS技術を開発 Linuxと類似のOSをもう1つ作っても意味がない! • オープンソースソフトウェア化により産学官の力を結集 組込みシステム開発技術と開発支援ツールの開発 • 高品質な組込みシステムの効率的な開発を支援 組込みシステム技術者の育成への貢献 • オープンソースソフトウェアを用いた教育コースや 教材を開発し,それを用いた教育の場を提供 ほぼ完了 132018 OSC Tokyo Spring
  14. 14. 次世代のリアルタイムカーネル技術 ! 高信頼性・安全性・リアルタイム性を追求 • TOPPERS新世代カーネル(ITRON仕様からの発展) • 次世代車載システム向けRTOS(AUTOSAR仕様をベース) • 宇宙機向けソフトウェアプラットフォーム(SpaceWire OS) 14 重点的に取り組んでいるテーマ 2018 OSC Tokyo Spring
  15. 15. ソフトウェア部品化技術,セキュリティ向上技術 • TECS(TOPPERS組込みコンポーネントシステム) • SafeG(高信頼組込みシステム向けデュアルOSモニタ) 技術者育成のための教材開発 • ETロボコン向けプラットフォームと教材の提供 • TOPPERS/EV3RT & mruby+TECS 15 重点的に取り組んでいるテーマ 組込みソフトウェアの 設計力・実装力を競う 開発コンテスト! 組込み技術教育の機会を 提供しています。 2018 OSC Tokyo Spring
  16. 16. ホームネットワーク技術 • ECHONET Lite仕様準拠のミドルウェア、支援ツールの作成 16 重点的に取り組んでいるテーマ HEMS ECHONET Lite ECHONET Lite Internet インターネット 無線LAN 専用回線 家庭内LAN 電力会社 スマート メーター 創エネ 畜エネ省エネ 見える化 機器が対象 2018 OSC Tokyo Spring
  17. 17. TOPPERSのミドルウェア群 2018 OSC Tokyo Spring 17 TOPPERSカーネル ASP, HRP2,FMP,ASP3 ATK1,ATK2 TINET TCP/IPスタック (IPv4/v6) FatFs for TOPPERS FATファイルシス テム ECNL ECHONET Liteミ ドルウェア CAN/LIN SpaceWire ITRON仕様対応のミドルウェア TECS…
  18. 18. 3. とりあえず使ってみませんか?? 18
  19. 19. 19 とりあえず凄そうだけど どう使うの?? この世は 金と時間が全てや! 組込みボードで Hello, World!! してみたい!! 色んな処理を1つの ボードでまとめちゃいたい アプリのloopが 長くなってきた,,, どこになに書いて あったっけ,,, 組込みは 環境整えるのが メンドいやん!? ※このスライドは個人の見解です.所属ともプロジェクトとも講演者とも一切関係ありません. きっちりかっちり 時間制御したい
  20. 20. TOPPERS/R2CA (TOPPERS RTE/RTOS Compatible with Arduino) •Arduinoハードウェア上でTOPPERS/ASPカーネルを実行 •組込みソフトウェア開発のエントリからのステップアップ用 さらに詳しく知りたい方は https://dev.toppers.jp/trac_user/contrib/wiki/rtos_arduino Qiitaにも多数の記事を公開しています http://qiita.com/tags/R2CA 20 ArduinoでもTOPPERS! 2018 OSC Tokyo Spring
  21. 21. Raspberry PiでもTOPPPERS •TOPPERS/FMP(マルチコア向けOS)がラズパイ上で実行 •マルチコア開発の実験用に ユーザの方がメインで開発をしています • Qiitaでの記事 • https://qiita.com/toshinaga/items/672c41a1f390922d5bae • JTAGを使った開発も • http://domisan.sakura.ne.jp/article/rp_toppers/rp_toppers.html 2018 OSC Tokyo Spring 21
  22. 22. 22 そんなあなたにGR-PEACH!! Renesas Cortex-A9 RZ/A1H (400MHz) http://www.core.co.jp/product/m2m/gr-peach/#full_pin-assign
  23. 23. 特徴 • Arduino用ライブラリをGR-PEACHに移植 • Arduinoプログラミングスタイル(setup()とloop())で開発 • マルチタスク(複数loop())を使用できるよう拡張 • リアルタイムOSのアプリからもAPIを呼出し可能 • mbedライブラリに依存(HALやEthernetInterafaceが必要) 主な機能 • デジタル/アナログ入出力,外部割込み管理 • SDカード制御 • Ethernetクライアント機能 • LCD制御SPI通信 • リアルタイムクロック • ×EEPROM読書き,ソフトウェアシリアル通信, モータ制御(Servo, Stepper),Ethernetサーバ機能, USBホスト, Firmata, I2C 23 使えるArduinoライブラリ 2017 OSC Tokyo Fall
  24. 24. 特徴 • mbed対応ボード用のライブラリ • アプリケーションのソースコード互換性を維持 • ARM社のRTOSであるRTXを使用(デフォルト) • 本環境では,RTXをTOPPRES/ASPに変更 主な機能 • HAL(Hardware Abstruction Layer) (mbed-src) • EthernetInterface (EthernetInterface) ※LwIP[GPLv2]も含む • FAT File System (FATFileSystem) ※FatFs[BSD-style License]を含む • HTTP Server (HttpServer_snapshot) • RPC(Remote Procedure Call) (mbed-rpc) • I2C (i2c) • Softwere PWM (SoftPRM) 24 使えるmbedライブラリ リファレンス:https://developer.mbed.org/handbook/Homepage 2017 OSC Tokyo Fall
  25. 25. 25 いろいろ選べる開発環境 種類 環境 主な対象 特徴 コマンドライン GNU Compiler + OpenOCD 熟練者 従来の開発方法 ウェブコンパイラ ルネサス ウェブコンパイラ 入門者 中級者 ○お手軽 ○TOPPERSテンプレート ×デバッガなし mbed コンパイラ 入門者 ○お手軽 ×デバッガなし 統合開発環境 Eclipse 中級者 熟練者 ×設定が面倒(現状) TrueSTUDIO 入門者 中級者 熟練者 ○ビルド〜デバッグまで無償で 利用可能(WindowsとLinux) ×Macは来年以降 IDE for GR 入門者 ×TOPPERS未対応 その他 Blockly 入門者 ○ブロックプログラミング可能 ×ビルドは別環境を使用 2018 OSC Tokyo Spring
  26. 26. 26 がじぇるねWebコンパイラを使おう! 一番お手軽!ネットがあれば開発可能!! • 解説ページ: http://gadget.renesas.com/ja/product/peach_sp5.html 「がじぇるね」で検索! ひとまずお試しもできます MyRenesas登録でプロジェクトや ファイルのクラウド保存が可能になります
  27. 27. 27 がじぇるねWebコンパイラを使おう! ブラウザでお手軽プログラミング (コンパイル環境の構築不要) すぐにRTOSを使える TOPPERSのテンプレート 2018 OSC Tokyo Spring
  28. 28. 28 すぐに使えるサンプルアプリ blinky • mbedライブラリでRGB LEDを華麗に光らせる blinky_arduino • arduinoライブラリでRGB LEDを周期的に光らせる • リセット時にUser-SWを押しているとUSR LEDが点滅する httpsample • IoTシステム構築向けのhttpサーバ • mbedライブラリのlwIPプロトコル multitask_arduino • arduinoプログラミング風のマルチタスクアプリ • loop(), loop1(), loop2() がTOPPERSのタスクとして動く sample1 • TOPPERS伝統のサンプルアプリ • 各サービスコールの振る舞いを確認できる 2018 OSC Tokyo Spring
  29. 29. 29 いろいろ試してみよう! アプリを自作したい • エクスプローラーの examples のどれかを 編集するか同レベルにコピペ&名前変更 • 階層構造はけっこう大事なのです ビルドしたい • build_target でビルド対象のアプリを指定する • 右側メニューで「ビルド実行」 ボード上で実行したい • GR-PEACHのPG側をmicroUSBで接続 • USBマスストレージとして認識されます • [アプリ名].bin をMBEDにコピー • RSTボタンを押す • TeraTerm等でメッセージ出力も 見られます 最初のビルドはちょっと 時間掛かります,,, ね?めっちゃ 簡単でしょ!?? 2018 OSC Tokyo Spring
  30. 30. 30 統合開発環境を使おう! TrueSTUDIO for GR-PEACH The debugger is now started. The IDE automatically switch from C/C++ Editing perspective to Debug perspective. This is seen in the picture below. Figure 17 Target is waiting for "Resume" button to be pressed The debugger automatically stops at the temporary breakpoint configured in the startup script. The user can click Execution Resume from this break point. https://github.com/ncesnagoya/asp-gr_peach_gcc-mbed A.I.Corporation による サポート&マニュアル提供 IDE上でのプログラミング &強力なデバッグ機能 ローカル環境で 開発できる
  31. 31. 31 統合開発環境を使おう! 詳細なマニュアル • https://goo.gl/qgtm7h 開発環境の準備(マニュアルP.5) • Atollic TrueSTUDIO v6.0.0以降をDL&インストール • https://atollic.com/resources/download/ • git clone or download zip from: • https://github.com/ncesnagoya/asp-gr_peach_gcc-mbed • Open OCDをインストール • https://github.com/gnu-mcu-eclipse/openocd/releases/tag/gae-0.10.0-20160110 • $ cp ${ASP_DIR}/examples/truestudio/renesas_rza1h_swd.cfg ¥ ${OpenOCD_DIR}/scripts/target/ • TOPPERSコンフィギュレータをダウンロード&コピー • http://toppers.jp/cfg-download.html • $ cp ${CFG_DIR}/cfg.exe ${ASP_DIR}/asp-1.9.2-utf8/cfg/cfg/ • お好みのターミナルソフト(puTTY, TeraTerm等)を インストール • サンプルアプリをワークスペースに インポート ちょっと大変 そうかな,,, でもこれだけで強力な 開発環境が手に入る!! 2018 OSC Tokyo Spring
  32. 32. 32 せっかくならRTOSプログラミング!! multitask_arduinoを使う • arduino_app.h の ADDITIONAL_LOOP_NUM を増やす • loopX() を記述する • loop5() まで記述できます • loopX に対応するタスクは10ms毎に周期的に切り替わります TOPPERSの静的APIとサービスコールを使う • app.cfg にタスクや周期ハンドラ生成の静的APIを記述する • httpsample や sample1 が参考になると思います • 詳しくは,users@toppers.jp か がじぇるねフォーラムで! • https://japan.renesasrulz.com/gr_user_forum_japanese/f/toppers いそ〇ー! マルチタスクしようぜ!! コノツバメハナニヲ イッテイルンダ,,, 2018 OSC Tokyo Spring
  33. 33. 33 ブロックプログラミング for GR-PEACH Google社ビジュアルプログラミングライブラリ Blocklyをベースに GR-PEACH用マルチloopプログラミング環境を実現 http://dev.toppers.jp/trac_user/contrib/wiki/EcnlProtoTool 小学生からできる ブロックプログラミング Arduino プログラム への変換 2018 OSC Tokyo Spring
  34. 34. 34 開発環境の使い分け Arduino ユーザ ブロックプログラマー (学生など) ウェブコンパイラ TOPPERS/RTOS ユーザ Blockly 統合開発環境 Eclipse/TrueSTUDIO コマンドライン C言語 習得不要 インストール 作業不要 高度な デバッグ 2018 OSC Tokyo Spring
  35. 35. それでも何を作ろうか悩みあなたに •TOPPERSのコンテスト受賞作品を真似してみよう •コンテスト受賞作品は説明の資料からソースコード までTOPPERSのサイトからダウンロードできます •2011年からはじめて7回開催! •2016年からはR2CAやがじぇるねのアプリケーショ ン部門も登場 https://www.toppers.jp/contest.html 2018 OSC Tokyo Spring 35
  36. 36. 第8回TOPPERS活用アイデア・アプリケーション開発コンテスト 開催決定! TOPPERS開発成果物を利用した 楽しい・独創的なアプリケーション 実用的なアプリケーション わかりやすいサンプルアプリケーション を募集します アプリケーション開発部門 活用アイデア部門 TOPPERS開発成果物の利用者にとって 有益な活用アイデアや TOPPERSプロジェクトを より良くするアイデア を募集します 応募資格:国内に在住の方(グループ、法人の場合にはその代表者)なら誰でも ※TOPPERSプロジェクトの会員でない方もご応募頂けます 応募期間:2018年6月1日(金) ~ 2018年8月31日(金) 表彰:<活用アイデア部門> 金賞 銀賞 銅賞 各1万円! <アプリケーション部門> 金賞 5万円!! 銀賞 3万円!! 銅賞 1万円! <がじぇるね IoT 部門> 金賞 3万円!! 銀賞 2万円!! 銅賞 1万円! <学生賞> 学生の応募作品の中から優秀なものに学生賞を授与! 募集要項、応募規約、FAQ 、技術講習会の案内等は以下のページで公開していきます! http://www.toppers.jp/contest.html 協賛社からの 特別賞も予定 しています 学生や組込み 初心者からベテラン エンジニアまで、 幅広い応募をお待ち しています! がじぇるね IoT 部門 がじぇるね マイコンボードと (GR-PEACH, GR-SAKURA,…) TOPPERS開発成果物を利用した アプリケーションは、 こちらの部門へ! 利用するマイコン、OSの 選択は自由! Arduino on TOPPERS(TOPPERS/R2CA)や TOPPERS/EV3RT を利用したアプリも こちらの開発部門へ!
  37. 37. 活用アイデア部門: 金賞 athrill(アスリル) V850 CPUエミュレータ 実機レス開発環境 森 崇 (株式会社永和システムマネジメント) 第7回コンテスト(平成29年) 受賞作品の紹介 アプリケーション開発部門: 金賞 デジタルインスタントカメラ 清 由美 (富士通コンピュータテクノロジ) 各部門 銀賞以下の受賞作品 アプリケーション開発部門 銀賞: 電子おみくじ (木下浩彰(ファルコン電子株式会社)) 銅賞: モデルベース開発からTOPPERSt搭載システムへのクロスレイヤ自動設計を利用したマルチ コアモータ制御実装 (竹松慎弥 (名古屋大学)) 銅賞: LED-Heart (岡山直樹) 活用アイデア部門 銀賞: Raspberry piによるRTOSセミナーの教材の開発 (高橋和浩 (アライブビジョンソフトウェア株式会社)) 銅賞: TLSF+TECS TECSを用いた動的メモリアロケータのコンポーネント設計 (山本拓朗(大阪大学)) 学生賞: コードクローン検出技術によるTOPPERSカーネルのターゲット依存コード自動生成 (廣瀬 秀樹 (京都大学高木研究室)) がじぇるねIoT部門 銀賞: mROS~組込みマイコン向けROSノード軽量実行環境~ (森 智也(京都大学) 銅賞: Sessalet GR-PEACH版 (山根ゆりえ((株)達人出版会)) 奨励賞:初心者向け、プログラムを同時に動かすとは。 (森脇 秀樹) がじぇるね IoT 部門: 金賞 IoT ドライブレコーダ + OBD2 モニタ 松浦光洋(名古屋電子工作の会) 第8回 TOPPERS活用アイデア・アプリケーション開発コンテスト 主催:NPO法人TOPPERSプロジェクト 協賛:CQ出版社、ルネサス エレクトロニクス(株)、(株)アフレル ウェブサイト: http://www.toppers.jp/contest.html Facebookページ:http://www.facebook.com/toppersproject continueコマンド(c) を実行 asp3の起動メッセージが出力 され,TASK1のメッセージが連 続出力される qコマンドを実行すれば,コマンド入力 モードに切り替わる
  38. 38. 4. こんなことができます! 今回の展示紹介 38
  39. 39. ECHONET Lite通信ミドルウェア 39 一般照明 照度センサ 扇風機 2017 OSC Tokyo Fall
  40. 40. ECHONET Lite 電流計 2017 OSC Tokyo Fall 40 各USBポートの 電流を計測 各ポートの 電流値を表示
  41. 41. 成果物利用とプロジェクト参加のお誘い • 開発成果物をぜひご活用ください • TOPPERSはレポートウェアです 自由にどなたでもダウンロードして利用できます • プロジェクトの活動に参加したい方/活動を支援して 頂ける方は,ぜひプロジェクトにご入会ください TOPPERSプロジェクトは,組込みシステム開発に有用な 高品質なオープンソースソフトウェアと教材を開発し, 組込みシステム開発に新しい標準を提案しています http://www.toppers.jp/ インダストリアルコントロールの新しいスタンダードへ … High Quality Open Source 412018 OSC Tokyo Spring
  42. 42. SNS(Facebookページ, Twitter)の紹介 42 ぜひ「いいね!」を押してください! https://facebook.com/toppersproject 2011年5月試験運用開始。 現在「いいね!588件」 2017年3月試験運用開始。 TOPPERSの 最新トピックや 関連するイベントの 情報、写真を掲載 ぜひフォローをお願いします! @ToppersJP #toppersjp

×