Enviar búsqueda
Cargar
Mindstorms NXT用 toppersプラットフォームの概要(ETロボコン向けTOPPERS活用セミナー1)
•
0 recomendaciones
•
6,684 vistas
T
Takuya Azumi
Seguir
Mindstorms NXT用 toppersプラットフォームの概要(ETロボコン向けTOPPERS活用セミナー1)
Leer menos
Leer más
Software
Denunciar
Compartir
Denunciar
Compartir
1 de 31
Descargar ahora
Descargar para leer sin conexión
Recomendados
NXT走行体サンプルプログラム(ETロボコン向けTOPPERS活用セミナー3)
NXT走行体サンプルプログラム(ETロボコン向けTOPPERS活用セミナー3)
Takuya Azumi
TECSの基礎(ETロボコン向けTOPPERS活用セミナー2-1)
TECSの基礎(ETロボコン向けTOPPERS活用セミナー2-1)
Takuya Azumi
NXTプラットフォーム(ETロボコン向けTOPPERS活用セミナー4)
NXTプラットフォーム(ETロボコン向けTOPPERS活用セミナー4)
Takuya Azumi
NXT開発環境(ETロボコン向けTOPPERS活用セミナー5)
NXT開発環境(ETロボコン向けTOPPERS活用セミナー5)
Takuya Azumi
カーネルオブジェクト(ETロボコン向けTOPPERS活用セミナー2-2)
カーネルオブジェクト(ETロボコン向けTOPPERS活用セミナー2-2)
Takuya Azumi
TOPPERS TECS WG 2016
TOPPERS TECS WG 2016
Hiroshi Oyama
ET2016 組込みシステムに適したコンポーネントシステムTECSの最新状況
ET2016 組込みシステムに適したコンポーネントシステムTECSの最新状況
Takuya Azumi
JAVA_HOME/binにあるコマンド、いくつ使っていますか?[JVM関連ツール編](JJUGナイトセミナー「Java解析ツール特集」 発表資料)
JAVA_HOME/binにあるコマンド、いくつ使っていますか?[JVM関連ツール編](JJUGナイトセミナー「Java解析ツール特集」 発表資料)
NTT DATA Technology & Innovation
Recomendados
NXT走行体サンプルプログラム(ETロボコン向けTOPPERS活用セミナー3)
NXT走行体サンプルプログラム(ETロボコン向けTOPPERS活用セミナー3)
Takuya Azumi
TECSの基礎(ETロボコン向けTOPPERS活用セミナー2-1)
TECSの基礎(ETロボコン向けTOPPERS活用セミナー2-1)
Takuya Azumi
NXTプラットフォーム(ETロボコン向けTOPPERS活用セミナー4)
NXTプラットフォーム(ETロボコン向けTOPPERS活用セミナー4)
Takuya Azumi
NXT開発環境(ETロボコン向けTOPPERS活用セミナー5)
NXT開発環境(ETロボコン向けTOPPERS活用セミナー5)
Takuya Azumi
カーネルオブジェクト(ETロボコン向けTOPPERS活用セミナー2-2)
カーネルオブジェクト(ETロボコン向けTOPPERS活用セミナー2-2)
Takuya Azumi
TOPPERS TECS WG 2016
TOPPERS TECS WG 2016
Hiroshi Oyama
ET2016 組込みシステムに適したコンポーネントシステムTECSの最新状況
ET2016 組込みシステムに適したコンポーネントシステムTECSの最新状況
Takuya Azumi
JAVA_HOME/binにあるコマンド、いくつ使っていますか?[JVM関連ツール編](JJUGナイトセミナー「Java解析ツール特集」 発表資料)
JAVA_HOME/binにあるコマンド、いくつ使っていますか?[JVM関連ツール編](JJUGナイトセミナー「Java解析ツール特集」 発表資料)
NTT DATA Technology & Innovation
9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...
9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...
NTT DATA Technology & Innovation
C21 SQL Server のスレッド管理 by 古賀啓一郎
C21 SQL Server のスレッド管理 by 古賀啓一郎
Insight Technology, Inc.
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
Kiyoshi Ogawa
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
Hironobu Isoda
RFC6241(Network Configuration Protocol (NETCONF))の勉強資料
RFC6241(Network Configuration Protocol (NETCONF))の勉強資料
Tetsuya Hasegawa
20130329 rtm3
20130329 rtm3
openrtm
RFC6243(With-defaults Capability for NETCONF)の勉強資料
RFC6243(With-defaults Capability for NETCONF)の勉強資料
Tetsuya Hasegawa
Starc verilog hdl2013d
Starc verilog hdl2013d
Kiyoshi Ogawa
Ll tiger clojure
Ll tiger clojure
Toshiaki Maki
STARC RTL設計スタイルガイドによるVerilog HDL並列記述の補強
STARC RTL設計スタイルガイドによるVerilog HDL並列記述の補強
Kiyoshi Ogawa
RFC5717(Partial Lock Remote Procedure Call (RPC) for NETCONF)の勉強資料
RFC5717(Partial Lock Remote Procedure Call (RPC) for NETCONF)の勉強資料
Tetsuya Hasegawa
技術紹介: S2E: Selective Symbolic Execution Engine
技術紹介: S2E: Selective Symbolic Execution Engine
Asuka Nakajima
分散ストリーム処理フレームワーク Apache S4
分散ストリーム処理フレームワーク Apache S4
AdvancedTechNight
TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都
Takuya Azumi
RFC5277(NETCONF Event Notifications)の勉強資料
RFC5277(NETCONF Event Notifications)の勉強資料
Tetsuya Hasegawa
Javaでトランザクショナルメモリを使う
Javaでトランザクショナルメモリを使う
Kenji Kazumura
オレ流のOpenJDKの開発環境(JJUG CCC 2019 Fall講演資料)
オレ流のOpenJDKの開発環境(JJUG CCC 2019 Fall講演資料)
NTT DATA Technology & Innovation
JVMに裏から手を出す!JVMTIに触れてみよう(オープンソースカンファレンス2020 Online/Hiroshima 講演資料)
JVMに裏から手を出す!JVMTIに触れてみよう(オープンソースカンファレンス2020 Online/Hiroshima 講演資料)
NTT DATA Technology & Innovation
perfを使ったpostgre sqlの解析(後編)
perfを使ったpostgre sqlの解析(後編)
Daichi Egawa
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
NTT DATA Technology & Innovation
Dot netcore multiplatform 2
Dot netcore multiplatform 2
shozon
CLI と BCL
CLI と BCL
shozon
Más contenido relacionado
La actualidad más candente
9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...
9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...
NTT DATA Technology & Innovation
C21 SQL Server のスレッド管理 by 古賀啓一郎
C21 SQL Server のスレッド管理 by 古賀啓一郎
Insight Technology, Inc.
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
Kiyoshi Ogawa
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
Hironobu Isoda
RFC6241(Network Configuration Protocol (NETCONF))の勉強資料
RFC6241(Network Configuration Protocol (NETCONF))の勉強資料
Tetsuya Hasegawa
20130329 rtm3
20130329 rtm3
openrtm
RFC6243(With-defaults Capability for NETCONF)の勉強資料
RFC6243(With-defaults Capability for NETCONF)の勉強資料
Tetsuya Hasegawa
Starc verilog hdl2013d
Starc verilog hdl2013d
Kiyoshi Ogawa
Ll tiger clojure
Ll tiger clojure
Toshiaki Maki
STARC RTL設計スタイルガイドによるVerilog HDL並列記述の補強
STARC RTL設計スタイルガイドによるVerilog HDL並列記述の補強
Kiyoshi Ogawa
RFC5717(Partial Lock Remote Procedure Call (RPC) for NETCONF)の勉強資料
RFC5717(Partial Lock Remote Procedure Call (RPC) for NETCONF)の勉強資料
Tetsuya Hasegawa
技術紹介: S2E: Selective Symbolic Execution Engine
技術紹介: S2E: Selective Symbolic Execution Engine
Asuka Nakajima
分散ストリーム処理フレームワーク Apache S4
分散ストリーム処理フレームワーク Apache S4
AdvancedTechNight
TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都
Takuya Azumi
RFC5277(NETCONF Event Notifications)の勉強資料
RFC5277(NETCONF Event Notifications)の勉強資料
Tetsuya Hasegawa
Javaでトランザクショナルメモリを使う
Javaでトランザクショナルメモリを使う
Kenji Kazumura
オレ流のOpenJDKの開発環境(JJUG CCC 2019 Fall講演資料)
オレ流のOpenJDKの開発環境(JJUG CCC 2019 Fall講演資料)
NTT DATA Technology & Innovation
JVMに裏から手を出す!JVMTIに触れてみよう(オープンソースカンファレンス2020 Online/Hiroshima 講演資料)
JVMに裏から手を出す!JVMTIに触れてみよう(オープンソースカンファレンス2020 Online/Hiroshima 講演資料)
NTT DATA Technology & Innovation
perfを使ったpostgre sqlの解析(後編)
perfを使ったpostgre sqlの解析(後編)
Daichi Egawa
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
NTT DATA Technology & Innovation
La actualidad más candente
(20)
9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...
9/14にリリースされたばかりの新LTS版Java 17、ここ3年間のJavaの変化を知ろう!(Open Source Conference 2021 O...
C21 SQL Server のスレッド管理 by 古賀啓一郎
C21 SQL Server のスレッド管理 by 古賀啓一郎
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
How to use STARC RTL Design Style Guide Verilog-HDL 2011 version
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
RFC6241(Network Configuration Protocol (NETCONF))の勉強資料
RFC6241(Network Configuration Protocol (NETCONF))の勉強資料
20130329 rtm3
20130329 rtm3
RFC6243(With-defaults Capability for NETCONF)の勉強資料
RFC6243(With-defaults Capability for NETCONF)の勉強資料
Starc verilog hdl2013d
Starc verilog hdl2013d
Ll tiger clojure
Ll tiger clojure
STARC RTL設計スタイルガイドによるVerilog HDL並列記述の補強
STARC RTL設計スタイルガイドによるVerilog HDL並列記述の補強
RFC5717(Partial Lock Remote Procedure Call (RPC) for NETCONF)の勉強資料
RFC5717(Partial Lock Remote Procedure Call (RPC) for NETCONF)の勉強資料
技術紹介: S2E: Selective Symbolic Execution Engine
技術紹介: S2E: Selective Symbolic Execution Engine
分散ストリーム処理フレームワーク Apache S4
分散ストリーム処理フレームワーク Apache S4
TOPPERSプロジェクト紹介 OSC2016京都
TOPPERSプロジェクト紹介 OSC2016京都
RFC5277(NETCONF Event Notifications)の勉強資料
RFC5277(NETCONF Event Notifications)の勉強資料
Javaでトランザクショナルメモリを使う
Javaでトランザクショナルメモリを使う
オレ流のOpenJDKの開発環境(JJUG CCC 2019 Fall講演資料)
オレ流のOpenJDKの開発環境(JJUG CCC 2019 Fall講演資料)
JVMに裏から手を出す!JVMTIに触れてみよう(オープンソースカンファレンス2020 Online/Hiroshima 講演資料)
JVMに裏から手を出す!JVMTIに触れてみよう(オープンソースカンファレンス2020 Online/Hiroshima 講演資料)
perfを使ったpostgre sqlの解析(後編)
perfを使ったpostgre sqlの解析(後編)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
Similar a Mindstorms NXT用 toppersプラットフォームの概要(ETロボコン向けTOPPERS活用セミナー1)
Dot netcore multiplatform 2
Dot netcore multiplatform 2
shozon
CLI と BCL
CLI と BCL
shozon
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
NTT DATA Technology & Innovation
Daisukei vsug ef
Daisukei vsug ef
vsug_jim
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCP
Tetsuya Sodo
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
Shintaro Hosoai
【より深く知ろう】活用最先端!データベースとアプリケーション開発をシンプルに、高速化するテクニック
【より深く知ろう】活用最先端!データベースとアプリケーション開発をシンプルに、高速化するテクニック
オラクルエンジニア通信
Meltdown を正しく理解する
Meltdown を正しく理解する
Norimasa FUJITA
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
NTT DATA Technology & Innovation
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
Kuniyasu Suzaki
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
Atomu Hidaka
.NET GadgeteerでプロトタイピングするEnOceanエネルギーハーベスティングシステム
.NET GadgeteerでプロトタイピングするEnOceanエネルギーハーベスティングシステム
Atomu Hidaka
Oracle Database / Exadata Cloud 技術情報(Oracle Cloudウェビナーシリーズ: 2020年7月9日)
Oracle Database / Exadata Cloud 技術情報(Oracle Cloudウェビナーシリーズ: 2020年7月9日)
オラクルエンジニア通信
PostgreSQL 12の話
PostgreSQL 12の話
Masahiko Sawada
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート
Kazumasa Ikuta
IOS/IOS-XE 運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデート
シスコシステムズ合同会社
FPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うには
Hideki Takase
GPU Container as a Service を実現するための最新OSS徹底比較
GPU Container as a Service を実現するための最新OSS徹底比較
NTT Communications Technology Development
クラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えよう
NTT Communications Technology Development
最先端NLP勉強会2017_ACL17
最先端NLP勉強会2017_ACL17
Masayoshi Kondo
Similar a Mindstorms NXT用 toppersプラットフォームの概要(ETロボコン向けTOPPERS活用セミナー1)
(20)
Dot netcore multiplatform 2
Dot netcore multiplatform 2
CLI と BCL
CLI と BCL
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
Daisukei vsug ef
Daisukei vsug ef
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCP
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
【より深く知ろう】活用最先端!データベースとアプリケーション開発をシンプルに、高速化するテクニック
【より深く知ろう】活用最先端!データベースとアプリケーション開発をシンプルに、高速化するテクニック
Meltdown を正しく理解する
Meltdown を正しく理解する
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
.NET GadgeteerでプロトタイピングするEnOceanエネルギーハーベスティングシステム
.NET GadgeteerでプロトタイピングするEnOceanエネルギーハーベスティングシステム
Oracle Database / Exadata Cloud 技術情報(Oracle Cloudウェビナーシリーズ: 2020年7月9日)
Oracle Database / Exadata Cloud 技術情報(Oracle Cloudウェビナーシリーズ: 2020年7月9日)
PostgreSQL 12の話
PostgreSQL 12の話
20170804 IOS/IOS-XE運用管理機能アップデート
20170804 IOS/IOS-XE運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデート
IOS/IOS-XE 運用管理機能アップデート
FPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うには
GPU Container as a Service を実現するための最新OSS徹底比較
GPU Container as a Service を実現するための最新OSS徹底比較
クラウドを最大限活用するinfrastructure as codeを考えよう
クラウドを最大限活用するinfrastructure as codeを考えよう
最先端NLP勉強会2017_ACL17
最先端NLP勉強会2017_ACL17
Mindstorms NXT用 toppersプラットフォームの概要(ETロボコン向けTOPPERS活用セミナー1)
1.
2012/06/02 TOPPERSプロジェクト認定 1 1.
MINDSTORMS NXT用 TOPPERSプラットフォーム の概要 大山 博司 TOPPERS プロジェクト TECS WG 主査 ®LEGO, the LEGO logo, MINDSTORMS and the MINDSTROMS logo are trademarks of the LEGO Group.
2.
2012/06/02 TOPPERSプロジェクト認定 2 アジェンダ •
NXTソフトウェアプラットフォームの歴史 • MINDSTORMS NXT用TOPPERSプラットフォーム • MINDSTORMS NXT用 TOPPERS/ASP+TECSプラットフォームの概要 – 基本構造 – メモリマップとアップロード方法 – ツールチェーン – NXT用ASP+TECSプラットフォームのコンポーネ ント • モデルからTECSへの変換
3.
2012/06/02 TOPPERSプロジェクト認定 3 NXTソフトウェアプラットフォームの歴史 TOPPERS/JSP MINDSTORMS
NXT用 TOPPERSプラットフォーム NXT Platform on ASP+TECS NXT Platform on JSPnxtOSEK/JSP leJOS NXT TOPPERS/ASP TOPPERS/ATK1 NXTソフトウェアプラットフォーム TOPPERS提供RTOS
4.
2012/06/02 TOPPERSプロジェクト認定 4 MINDSTORMS
NXT用TOPPERSプラットフォーム ベース 正式名称 略称 TOPPERS/ JSP MINDSTORMS NXT用 TOPPERS/JSPプラット フォーム NXT用JSP プラットフォーム MINDSTORMS NXT Platform based on TOPPERS/JSP NXT Platform on JSP TOPPERS/ ASP+TEC S MINDSTORMS NXT用 TOPPERS/ASP+TECSプラッ トフォーム NXT用ASP+TECS プラットフォーム MINDSTORMS NXT Platform based on TOPPERS/ASP+TECS NXT Platform on ASP+TECS これらを総称して「MINDSTORMS NXT用 TOPPERSプラットフォーム」と呼ぶ
5.
2012/06/02 TECS Library (tecs_lib) TOPPERSプロジェクト認定
5 NXT用ASP+TECSプラットフォームの基本構造 走行体(サンプル)プログラム TOPPERS ASP+TECS デバイスドライバ Balancer Library NXTソフトウェアプラットフォーム 走行体ハードウェア (MINDSTORMS NXT)
6.
2012/06/02 NXT BIOSと拡張NXTファームウェア • NXT用ASP+TECSプラットフォームは、 拡張NXTファームウェアとNXT
BIOSの 両方に対応している • 切り替えは、target_lib_inst.cdl 内で行う – 拡張NXTファームウェアを使用する場合には、 ram_only.cdlをimportする – NXT BIOSを使用する場合には、 ram+rom.cdlをimportする TOPPERSプロジェクト認定 6 tecs_package¥asp+tecs¥tecs_lib¥mindstorms_nxt¥target_lib_inst.cdl
7.
2012/06/02 TOPPERSプロジェクト認定 7 拡張NXTファームウェア使用時のメモリマップ 100000h 200000h SRAM(64Kbyte) Flash(256Kbyte) 拡張NXTファームウェア ASP+TECアプリケーション 参考:
http://lejos-osek.sourceforge.net/nxtOSEK_hack.htm#MemoryLayout
8.
2012/06/02 TOPPERSプロジェクト認定 8 NXT
BIOS使用時のメモリマップ 100000h 200000h SRAM(64Kbyte) Flash(256Kbyte) NXT BIOS(32KBytes) ASP+TECアプリケーション で使用するRAM領域 参考: http://lejos-osek.sourceforge.net/nxtOSEK_hack.htm#MemoryLayout 108000h ASP+TECアプリケーション
9.
2012/06/02 TOPPERSプロジェクト認定 9 NXT用ASP+TECSプラットフォームのツールチェーン ソースコード (.c,
.hファイルなど) TECS ジェネレータ (tecsgen) GNU ARM ツールチェーン ソースコード (.c, .hファイルなど) ファイル ツール データの流れ ソースコード (.c .hファイルなど) 実行形式 メモリマップ ファイル等 RTOS, ライブラリ (.c .hファイルなど) 設定ファイル (リンカスクリプト等) アプリケーションの コンポーネント記述 (*.cdl) コンフィギュレーション ファイル(*.cfg) コンフィギュレータ (Cfg.exe) ビルドツール (make) Makefile 制御の流れ 開発者の操作 TECSプラットフォームの コンポーネント記述 (*.cdl)
10.
2012/06/02 TOPPERSプロジェクト認定 10 ビルド方法 •
nxtOSEK、NXT用TOPPERSプラットフォーム ともに「1リンクモデル」を採用しています。 – 用意されたMakefileで簡単に実現できます • ASP+TECS環境と他の環境との違いは、TECSで定 義されている文法に沿った「コンポーネント記述」 を行うことができる点です。 – コンポーネントの自作も、提供されているコン ポーネントの利用も可能です • ビルドでは、以下の3つを実行します – make tecs – make depend – make
11.
2012/06/02 TOPPERSプロジェクト認定 11 インストールするツール ビルド用ツール
Cygwin 最新版をインストールすればOKです。 インストールするパッケージの選択は、ほとんど デフォルトでOKです。ただし以下は必須です。 GNU Make 3.81 (nxtOSEKでも使用) Perl 5.10.0 BINUTILS GCCまたはGCC-CORE GNUARM nxtOSEKやJSPでも使用する、GCC-4.0.2 ツール チェイン (bu-2.16.1_gcc-4.0.2-c-c++_nl- 1.14.0_gi-6.4.exe)をインストールします TOPPERS ASP+TECS 開発環境 以下のツールが必要です。配布パッケージに同梱 されています。 コンフィギュレータ … cfg.exe 1.7.0 TECSジェネレータ … tecsgen.exe 1.0.2.35 ロード用ツール LEGO MINDSTORMS NXT Driver nxtOSEKやJSPでも使用するツール群をそのまま 使用します。したがって、インストール方法も他 の環境と変わりはありません。 NeXTTool Appflash.exe
12.
2012/06/02 TECSの開発動機 • 複雑な組込みシステムに適したコンポーネントシス テムが必要である – コンポーネントシステムにより複数の問題の同時 解決が期待できる –
ソフトウェアの見える化 – ソフトウェア部品の流通 – RPCフレームワーク • 汎用OS用のコンポーネントシステムは普及している が、組込みシステムようのものは普及していない – しかし、汎用OS用の組込みシステムでは過剰であ る 12 TOPPERSプロジェクト認定
13.
2012/06/02 基本コンポーネントモデル TECSコンポーネントは最小限の機能を持つ 関数呼び出しを行うポート(口)のみを持つ
コンポーネントを組み合わせてプログラムを作成 する TOPPERSプロジェクト認定 cell はコンポーネントのインスタンス cell はattribute.と呼ばれる定数を持つ cell は var (internal variable)と呼ばれる変数を持つ cell はentry port (受け口) を通して機能を提供する cell はcall port. (呼び口) を通して機能を利用する 関数の集合を signature と呼ぶ cell は celltype.に属する celltype は属するcellの特性を決定する TECS コンポーネント図 TECS コンポーネントモデル (基本モデル) 13
14.
2012/06/02 鍵となる特性 コンポーネント(cell) は静的に配置(生成)され、結合さ れる
静的だが柔軟である リンケージの決定による(次のスライド) 小さなオーバーヘッド ソースコードからビルドする define (マクロ) によってリンケージを解決する コンポーネントはソースコードでの流通となる(バイナリ形式は別 途) オーバーヘッドの最小化は最適化による 振舞いはC言語により記述 オブジェクト指向プログラミング(言語)は不要 14 TOPPERSプロジェクト認定
15.
2012/06/02 リンケージの決定 通常のC言語の場合 リンケージはプログラムの記述時に決定される
呼び元の関数は、どの関数を呼び出すかを決定する TECSコンポーネントの場合 リンケージは、コンポーネントを用いてソフトウ ェアを組上げる段階で決定される TECS コンポーネント記述言語(TECS CDL)により組上げを記 述する リンケージはC言語のプログラム記述時には決定されない TECSジェネレータの生成するマクロによりリンケージが 変えられる 15 TOPPERSプロジェクト認定
16.
2012/06/02 リンケージの決定 (2) もしコンポーネント間の関係が単純ならば、呼び口関 数は、直接受け口関数に結合される
もしコンポーネント間の関係が複雑ならば、vtable( 関数テーブル)が使用され、実行時に結合が決定され る 16 TOPPERSプロジェクト認定
17.
2012/06/02 TECS 仕様 TECS コンポーネントモデル TECS
コンポーネント図 TECS コンポーネント記述言語 (TECS CDL) TECS コンポーネント実装モデル これらは TECS WG により策定作業が行われてい る 17 TOPPERSプロジェクト認定
18.
2012/06/02 TECS の実装 TECS
ジェネレータ TECS CDL からインタフェースコードとcell を定 義するコード(C言語)を生成する プラグインを適用する RPC プラグイン, Trace プラグイン, etc TOPPERS/ASP+TECS RTOS のカーネルオブジェクトを TECS のセルタ イプとして定義したもの これらの実装は TECS WG により行われている 18 TOPPERSプロジェクト認定
19.
2012/06/02 その他の鍵となる特性 コンポーネントシステムの下に隠さない メモリアロケーター
RPC チャンネル RTOS カーネルオブジェクト 小さな組込みシステムにも向く Inline関数実装 ROM化コード 19 TOPPERSプロジェクト認定
20.
2012/06/02 メモリアロケータ • 呼び元の cell
がアロケートし 呼び先の cell が解放 (send) • 呼び先の cell がアロケートし 呼び元の cell が解放 (receive) tClient Client tServer Server tAllocator Allocator 20 TOPPERSプロジェクト認定
21.
2012/06/02 RPC: Remote Procedure
Call tClient Client tServer Server tClient Client tServer Server tRPCChannel RPCChannel tRPCChannel RPCChannel tMarshaller Marshaller tClientchannel ClientChannel tServerChannel ServerChannel tUnmarshaller Unmarshaller tTask Task RPC channel は下図 のようなコンポーネント RPC プラグイ ンにより挿入 21 このチャンネルのコンポーネント図は、正確ではありません。 TDRセルが省略されているなど TOPPERSプロジェクト認定
22.
2012/06/02 カーネルオブジェクト オーバーヘッドが小さいため、カーネルオブジェクトの ような小さな粒度のものもコンポーネントとして扱える セマフォがどのタスクに共有されているか可視化され ている 22 TOPPERSプロジェクト認定
23.
2012/06/02 メッセージ • TECS コンポーネントにメッセージを扱うポートはない •
以下のようにコンポーネントを割り込ませることで実現 する • オーバーヘッドが小さいためコンポーネントとして扱 える 23 TOPPERSプロジェクト認定
24.
2012/06/02 コンポーネント記述の3要素 TOPPERSプロジェクト認定 24 要素名 記述方法
内容 シグニチャ signature s*** セルタイプが提供する外部インターフェー スを定義する。Javaでいうインターフェー スに該当。 セルタイプ celltype t*** C++やJavaでいうクラス定義に該当。 シグニチャを利用して呼び口、受け口を定 義する他、属性(attribute)も定義する。 セル cell t*** セル名 概念的にはインスタンス。ただしTECSの セルの記述においては、セル間の結合を記 述する。これはC++やJavaで「コンストラ クタ」にて行う、インスタンス間の結合処 理に該当。この記述に基づいて「静的に」 コンポーネント間の結合を実現するCソー スコードが生成される。 以上の3要素を、Component Description Language(CDL)を用いて記述します。
25.
2012/06/02 競技に使用するハードウェア構成 TOPPERSプロジェクト認定 25 超音波センサ USBコネクタ ディスプレイ 右DCモータ 右ロータリーエンコーダ 左DCモータ 左ロータリーエンコーダ 光センサ タッチセンサジャイロセンサ
26.
2012/06/02 ハードウェア内部構成 TOPPERSプロジェクト認定 26 • ハードウェア構成のイメージ図 Bluetooth LCDディスプレイ サウンド ボタン バッテリセンサ メインプロセッサ コプロセッサ センサポート モータポート USART1SPI SSC TWI
PIOA I2C
27.
2012/06/02 TOPPERSプロジェクト認定 27 NXT用ASP+TECSプラットフォームのコンポーネント
28.
2012/06/02 カーネルに関するコンポーネント TOPPERSプロジェクト認定 28 Task kernel.cdl ISR CyclicHandler AlarmHandler Semaphore InitializeRoutine TerminateRoutine ConfigInterrupt CyclicTaskActivator
CyclicTask Eventflag Dataqueue Priority Dataqueue FixedSizeMemoryPool Kernel ISRWithConfigInterrupt
29.
2012/06/02 TECSのカバー範囲 TOPPERSプロジェクト認定 29 QACデバッガ UML • TECSがカバーできる設計領域の範囲 分析 実装 デバッグ 検証 ※Cやアセンブラが実装のほとんどすべてをカバーできるのに対し、 他はすべてをカバーするものではない Cアセンブラ
TECS UMLは Object Management Group Inc.の,QAC はProgramming Research社の商標または登録商標 です
30.
2012/06/02 TOPPERSプロジェクト認定 30 モデルから
TECS への変換 • クラス図もしくはオブジェクト図などの構造モデルから、TECS コンポーネントとして実装するコンポーネントを抽出する • 抽出した各コンポーネントをCDLを用いてプログラミングする – シグニチャを、クラス図のメソッド定義を元に記述する – セルタイプを、クラス図のクラス定義や関連を元に、前述の シグニチャ定義を利用して記述する • 自作コンポーネントにて、NXT用ASP+TECSプラットフォームのコン ポーネントを利用する際には、使用するコンポーネントのセルタイプ記 述を含む.cdlファイルをimportする – セルを、オブジェクト図を元に記述する • オブジェクト間の結合を元に組上げ記述を行う • Tecsgenを用いてCソーステンプレートを自動生成後、エディタ 等で中身を記述し「セルタイプコード」を完成させる 詳しくは2~4章にて
31.
2012/06/02 TOPPERSプロジェクト認定 31 著者リスト •
MINDSTORMS NXT用 TOPPERSプラットフォーム の概要 • 森 孝夫 • 大山 博司(オークマ株式会社,TOPPERSプロ ジェクト TECS WG主査)
Descargar ahora