狠狠撸

狠狠撸Share a Scribd company logo
OSC2017 名古屋
Arduinoから自動車/ロケットまで!
高品質な組込み向けオープンソースを開発
するTOPPERSプロジェクトのご紹介
NPO法人 TOPPERSプロジェクト
岡山 直樹
1
TOPPERS公式マスコット
「とぱめ」
2017年5月27日
目次
2
1. 組込みシステムとは?
2. TOPPERSプロジェクトとは?
3. まとめ:TOPPERS入会のススメ
4. GR-PEACHでお手軽マルチタスクプロ
グラミング
1. 組込みシステムとは?
3
身の回りにある組込みシステム
4OSC2016@Nagoya
FA機器
その他
自動車
航空機
マルチメディア
通信機器
家電製品
OA機器
組込みシステムのオープンソース(1/2)
ハードウェア設計
HW:IP(HDLソースコード)
プログラミング言語
プログラム開発環境
5
プログラム実行環境
リアルタイムOS
OS
6
組込みシステムのオープンソース(2/2)
2. TOPPERSプロジェクトとは?
7
TOPPERSプロジェクトとは?
TOPPERS = Toyohashi OPen Platform for
Embedded and Real-time Systems
プロジェクトの活動内容
? ITRON仕様の技術開発成果を出発点としたプロジェクト
? 組込システム構築の基盤となる各種の高品質なオープンソース
ソフトウェアを開発するとともに,その利用技術を提供
組込システム分野において,Linuxのように広く使われる
オープンソースOSの構築を目指す!
プロジェクトの推進主体
? 産学官の団体と個人が参加する産学官民連携プロジェクト
? 2003年9月にNPO法人として組織化
? 以前は,名古屋大学(2002年度までは豊橋技術科学大学)高田研究室を
中心とする任意団体として活動
8
TOPPERSプロジェクトの狙い
決定版のITRON仕様OSの開発
? ITRON仕様が抱える過剰な重複投資と
過剰な多様性の問題を解決(または軽減)
次世代のリアルタイムOS技術の開発
? 組込みシステムの要求に合致し,ITRONの良さを
継承する次世代のリアルタイムOS技術を開発
Linuxと類似のOSをもう1つ作っても意味がない!
? オープンソースソフトウェア化により産学官の力を結集
組込みシステム開発技術と開発支援ツールの開発
? 高品質な組込みシステムの効率的な開発を支援
組込みシステム技術者の育成への貢献
? オープンソースソフトウェアを用いた教育コースや
教材を開発し,それを用いた教育の場を提供
ほぼ完了
9
次世代のリアルタイムカーネル技術
! 高信頼性?安全性?リアルタイム性を追求
? TOPPERS新世代カーネル(ITRON仕様からの発展)
? 次世代車載システム向けRTOS(AUTOSAR仕様をベース)
? 宇宙機向けソフトウェアプラットフォーム(SpaceWire OS)
10
重点的に取り組んでいるテーマ
ソフトウェア部品化技術,セキュリティ向上技術
? TECS(TOPPERS組込みコンポーネントシステム)
? SafeG(高信頼組込みシステム向けデュアルOSモニタ)
技術者育成のための教材開発
? ETロボコン向けプラットフォームと教材の提供
11
重点的に取り組んでいるテーマ
ETロボコンは、組込みソ
フトウェアの設計実装力
を競うコンテスト!
組込み技術教育の機会を
提供しています。
ホームネットワーク技術
? ECHONET Lite仕様準拠のミドルウェア、支援ツールの作成
12
重点的に取り組んでいるテーマ
HEMS
ECHONET
Lite
ECHONET
Lite
Internet
インターネット
無線LAN
専用回線
家庭内LAN
電力会社
スマート
メーター
創エネ
畜エネ省エネ
見える化
機器が対象
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
13
ArduinoでもTOPPERS!
GR-PEACHで動作可
能なTOPPERS/ASP
カーネルもブースで
デモ稼働中!!
TOPPERSライセンス
TOPPERSプロジェクトで独自に開発したソフトウェアには,
独自のライセンス条件を設定
基本的な考え方
?組込みシステムの事情を考慮。
GNU GPLやBSDライセンスより自由に使えるライセンス条件
?成果をアピールすることが開発資金獲得に繋がる。
どこでどう使われているかをなるべく知りたい
ライセンスの内容
?派生物をオープンする義務は課さない.
派生物を販売するビジネスが可能
?機器に組み込んで使用する場合の実質的な義務は,
利用したことを報告することのみ.
レポートウェア
14
15
<ソフトウェアの名称>
Copyright (C) <開発年> by <著作権者1>
Copyright (C) <開発年> by <著作権者2>
...
上記著作権者は,以下の (1)?(4) の条件を満たす場合に限り,本ソフトウェ ア(本ソフトウェアを改変したもの
を含む.以下同じ)を使用?複製?改変? 再配布(以下,利用と呼ぶ)することを無償で許諾する.
(1)本ソフトウェアをソースコードの形で利用する場合には,上記の著作権 表示,この利用条件および下記の
無保証規定が,そのままの形でソース コード中に含まれていること.
(2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使用 できる形で再配布する場合には,再配布
に伴うドキュメント(利用者マニュアルなど)に,上記の著作権表示,この利用条件および下記の無保証規
定を掲載すること.
(3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使用 できない形で再配布する場合には,
次のいずれかの条件を満たすこと.
(a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著作 権表示,この利用条件および下記の無
保証規定を掲載すること.
(b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに報告すること.
(4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損害からも,上記著作権者および
TOPPERSプロジェクトを免責すること.また, 本ソフトウェアのユーザまたはエンドユーザからのいかなる理
由に基づ く請求からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
TOPPERSライセンスの文面
3. まとめ?TOPPERS入会のススメ
16
成果物利用とプロジェクト参加のお誘い
? 開発成果物はウェブサイトから自由にダウンロード
できますので,ぜひご利用ください
? プロジェクトの活動に参加したい方/活動を支援して
頂ける方は,ぜひプロジェクトにご入会ください
TOPPERSプロジェクトは,組込みシステム開発に有用な
高品質なオープンソースソフトウェアと教材を開発し,
組込みシステム開発に新しい標準を提案しています
http://www.toppers.jp/
インダストリアルコントロールの新しいスタンダードへ
… High Quality Open Source
17
TOPPERSプロジェクト: Facebookページ
18
TOPPERS最新情
報?関連行事内
容?写真掲載
TOPPERS
Facebookページ
利用者からの
情報掲載
2011年5月運用開始 2016年5月 現在「いいね!558件」
ぜひ「いいね!」を押してください!
http://facebook.com/toppersproject
まとめ
組込みシステム向けのオープンソース
? 「機器に組み込まれる」+「専用」だけでなく,
「機器に組み込まれる」+「汎用」が増加
TOPPERSプロジェクト
? 組込みシステムを対象としたソフトウェアプラットフォームを開発
? RTOS,ミドルウェア(通信,USBスタック,ファイルシステム等),
開発環境,教材等をオープンソースとして公開
展示しているデモ
ETロボコン向けプラットフォーム + mruby
ECHONET Lite
是非、ブースに遊びに来てください!
19
4. GR-PEACHでお手軽マルチタスクプ
ログラミング
20
GR-PEACHでマルチタスクプログラミング!
? よく、「TOPPERSのOSを落としてきたけれど、使い方が
わからない???」というかたを見かけます
? 今回は、一番お手軽なGR-PEACHを使って、Arduino的
な感じで、しかも「マルチタスク」での開発をダイジェスト
で紹介します。
OSC2016@Nagoya 21
開発環境準備
1. コンパイラの準備
下記サイトで
http://gnuarmeclipse.github.io/toolchain/install/
2. GR-PEACH用の「TOPPERS/ASP3カーネル」をgithub
から取得する
$ git clone https://github.com/ncesnagoya/asp-gr_peach_gcc-
mbed.git
OSC2016@Nagoya 22
GR-PEACHでマルチタスクプログラミング!
3. コンフィグレータをダウンロードする
下記ディレクトリにダウンロードして、解凍し、コンフィグレータをコピーする
asp-gr_peach_gcc-mbed/asp-1.9.2-utf8/cfg/cfg
ダウンロード元:
MacOS X:
http://toppers.jp/download.cgi/cfg-osx-static-1_9_5.tar.gz
Windows:
http://toppers.jp/download.cgi/cfg-mingw-static-1_9_5.zip
Linux:
http://toppers.jp/download.cgi/cfg-linux-static-1_9_5.gz
OSC2016@Nagoya 23
Sampleのビルド
Arduinoのスケッチのように、マルチタスクで動作するプログラムのサンプルをビ
ルドしてみます。
$cd asp-gr_peach_gcc-mbed/examples/multitask_arduino
$make depend
$make
$ls asp.bin
makeが無事終了すると、「asp.bin」が出来上がります。
これをGR-PEACHに転送します。
※makeするとエラーが1件でる場合があります。
これはビルド後に、GR-PEACHへコピーするコマンドまでmakeに含まれているか
らです。
OSC2016@Nagoya 24
タスクを追加する!
1. loopの数を増やす
arduino._app.hの4行目の「ADDITIIONAL_LOOP_NUM」を3に変更する。
2. multitask_arduino.cppに下記のloopを追加
void loop3(){
digitalWrite(PIN_LED_USER, 1);
delay(INTERVAL);
digitalWrite(PIN_LED_USER, 0);
delay(INTERVAL);
}
OSC2016@Nagoya 25

More Related Content

Similar to Osc2017 nagoya (20)

PDF
TOPPERSプロジェクトの紹介 in OSC2015 Kansai@Kyoto 
Hideki Takase
?
PDF
高品質な組込みシステム向けオープンソースを開発するTOPPERSプロジェクトの紹介 #osc14do
Center for Embedded Computing Systems, Nagoya Univ.
?
PPTX
Osc tokyo20141019-last
Kiyoshi Ogawa
?
PDF
罢翱笔笔贰搁厂プロジェクト绍介 翱厂颁2016京都
Takuya Azumi
?
PDF
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
Hideki Takase
?
PPTX
TOPPERSプロジェクトのご紹介@IoT ALGYAN
Hideki Takase
?
PDF
TOPPERSプロジェクトの紹介 OSC2018 Tokyo Spring
Center for Embedded Computing Systems, Nagoya Univ.
?
PPTX
Osc tokyo20141019
Kiyoshi Ogawa
?
PPTX
OSC2021 Online Spring TOPPERS
Hiroaki Nagashima
?
PDF
TOPPERSプロジェクトの紹介 OSC2017 Tokyo Fall
Center for Embedded Computing Systems, Nagoya Univ.
?
PPT
Toppers Project 3 major events.
Kiyoshi Ogawa
?
PDF
TOPPERS as an IoT OS(kernel)
Kiyoshi Ogawa
?
PPTX
.net micro framework for toppers
Kiyoshi Ogawa
?
PPTX
Ssp before-making-os2
Kiyoshi Ogawa
?
PPTX
リアルタイム翱厂の必要性と罢翱笔笔贰搁厂/厂厂笔の绍介
NSaitoNmiri
?
PDF
组込みシステムの高効率开発を可能とする开発フレームワークの研究开発
Kazuaki Tanaka
?
KEY
オープン?ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
Masaki Muranaka
?
PPTX
最小セットOS Ssp fun
Kiyoshi Ogawa
?
PDF
ET2016 組込みシステムに適した コンポーネントシステムTECSの最新状況
Takuya Azumi
?
PDF
NEDO特別講座 ロボット共通プラットフォーム講習会 (1)
NoriakiAndo
?
TOPPERSプロジェクトの紹介 in OSC2015 Kansai@Kyoto 
Hideki Takase
?
高品質な組込みシステム向けオープンソースを開発するTOPPERSプロジェクトの紹介 #osc14do
Center for Embedded Computing Systems, Nagoya Univ.
?
Osc tokyo20141019-last
Kiyoshi Ogawa
?
罢翱笔笔贰搁厂プロジェクト绍介 翱厂颁2016京都
Takuya Azumi
?
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
Hideki Takase
?
TOPPERSプロジェクトのご紹介@IoT ALGYAN
Hideki Takase
?
TOPPERSプロジェクトの紹介 OSC2018 Tokyo Spring
Center for Embedded Computing Systems, Nagoya Univ.
?
Osc tokyo20141019
Kiyoshi Ogawa
?
OSC2021 Online Spring TOPPERS
Hiroaki Nagashima
?
TOPPERSプロジェクトの紹介 OSC2017 Tokyo Fall
Center for Embedded Computing Systems, Nagoya Univ.
?
Toppers Project 3 major events.
Kiyoshi Ogawa
?
TOPPERS as an IoT OS(kernel)
Kiyoshi Ogawa
?
.net micro framework for toppers
Kiyoshi Ogawa
?
Ssp before-making-os2
Kiyoshi Ogawa
?
リアルタイム翱厂の必要性と罢翱笔笔贰搁厂/厂厂笔の绍介
NSaitoNmiri
?
组込みシステムの高効率开発を可能とする开発フレームワークの研究开発
Kazuaki Tanaka
?
オープン?ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
Masaki Muranaka
?
最小セットOS Ssp fun
Kiyoshi Ogawa
?
ET2016 組込みシステムに適した コンポーネントシステムTECSの最新状況
Takuya Azumi
?
NEDO特別講座 ロボット共通プラットフォーム講習会 (1)
NoriakiAndo
?

Osc2017 nagoya

Editor's Notes

  • #4: ここまでで2分
  • #8: ここまでで7分
  • #9: 滨罢搁翱狈は口头説明
  • #17: ここまでで38分
  • #18: 会員の種別とかメリットとか  早期リリースにアクセスできる 議決権がある 希代のハッカーと出会える 開発にがっつり参加できる!
  • #19: ここまでで40分
  • #21: ここまでで38分