SlideShare a Scribd company logo
2. プログラミングの基礎
2020年11⽉10⽇
⾼度ポリテクセンター・能⼒開発セミナー (E0771)
「RTミドルウェアによるロボットプログラミング技術」
• 本⽇の講習会のWebページ
– https://bit.ly/326O7iE
• こちらに、必要な情報がま
とまっていますので、ブッ
クマークしてください。
2
はじめに
3
概要
1. OpenRTMのインストール
2. プログラミングについて
⽬標︓
1.OpenRTMのインストール⽅法を学ぶ。
2.RTコンポーネントを作成する⽅法を学ぶ。
(1)OpenRTMのインストール
4
55
Webページ参照
• Visual Studio 2019
– インストール済み
• Python 3.7
– python-3.7.4-amd64.exe (64bit版)
• CMake
– cmake-3.17.2-win64-x64.msi (64bit版)
• Doxygen (32bit, 64bitの別なし)
– doxygen-1.8.18-setup.exe
• OpenRTM-aist-1.2.2-RELEASE
– OpenRTM-aist-1.2.2-RELEASE_x86_64.msi (64bit版)
• TeraTerm
• エディタ(使い慣れたもの)
– VScode
– Vim
ソフトウェアのインストール
より新しいバージョンがある場合、
そちらをインストールすること
OpenRTM-aist(Windows)
• OpenRTM-aistをWindowsに⼀括でインストール可能
なインストーラ
– C++, Python, Java版開発環境
– OpenRTP(GUIツール群)
– Rtshell(CUIツール)
– NS(ネームサーバ)、rtcd(マネージャ等)コマンド群
– JRE(Java実⾏環境)
– がインストールされる
• C:¥Program Files¥OpenRTM-aist¥1.2.2以下にインス
トールされるが、PythonはPythonをインストールした
ディレクトリなどにインストールされる
• Python環境はあらかじめインストールしておく必要が
ある
6
Pythonについて
• Python⾔語
– スクリプト⾔語の⼀種
– OpenRTM-aistではPythonでコンポーネントを作成
することもできる
– コンパイル不要で、プログラム作成後すぐ実⾏可能
– AIプログラミングフレームワークでもよく利⽤され
る⾔語
• バージョン
– バージョン2.X系は2020年4⽉でサポート終了
– 現在は3.X系(3.6,3.7,3.8,3.9が現⾏)
– OpenRTMでは 3.6〜3.8をサポート
7
Doxygenについて
• Doxygen
– ソースコードのコメン
トからドキュメントを
⾃動⽣成するためのツ
ール
– HTML、LaTeX等様々
な形式でドキュメント
を⽣成可能
– RTCではツール(
RTCBuilder)で説明を
⼊⼒すると、Doxygen
できれいなドキュメン
トを⾃動⽣成できる
8
その他
• TeraTerm
– ターミナルソフトウェア
– RasPiMouseのRaspberryPi
にログインし操作する際に
使⽤する
• VS-code
– エディタ
– ちょっとしたファイルの編
集に利⽤する場合がある
– メモ帳でも可
• Cmake
– 後ほど説明
9
(2)RTCプログラミング概要
10
プログラミングの流れ
11
プログラム
コンパイル
リンク
実⾏
プログラム
コンパイル
(javac.exe)
JavaVM(java.exe)で
実⾏
プログラム
Pythonインタプリタで
実⾏
C++ Java Python
ビルド
(コンパイル
+リンク)
OpenRTMでは、C++、Java、Pythonのどの⾔語を
利⽤してもRTCを作成できる
CMake
• コンパイラに依存しないビルド⾃動化の
ためのフリーソフトウェア
• 様々なOS上の様々な開発環境⽤ビルドフ
ァイルを⽣成することができる
– Linux では Makefileを⽣成
– Windows ではVC(Visual C++)のプロジェク
トファイルを⽣成
• 最近のオープンソースソフトウェアでは
CMakeでビルドするようになっているも
のが多数。
12
コンポーネント作成の流れ
13
RTBUilder CMake Visual C++
コンポーネントの
仕様の⼊⼒
VCプロジェクトファイル
またはMakefileの⽣成
実装およびコンパイル
実⾏ファイルの⽣成
RTBUilder CMake
make
+
gcc (g++)
Windows
Linux
途中まで流れは同じ、コンパイラが異なる

More Related Content

What's hot

190605 04
190605 04190605 04
190605 04
openrtm
 
Slam実習
Slam実習Slam実習
Slam実習
openrtm
 
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
Noriaki Ando
 
5.総合演習(2)
5.総合演習(2)5.総合演習(2)
5.総合演習(2)
openrtm
 
201111 05
201111 05201111 05
201111 05
openrtm
 
OpenRTM概要
OpenRTM概要OpenRTM概要
OpenRTM概要
openrtm
 
200527 RTM Tutorial in ROBOMECH2020
200527 RTM Tutorial in ROBOMECH2020200527 RTM Tutorial in ROBOMECH2020
200527 RTM Tutorial in ROBOMECH2020
openrtm
 
Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦
openrtm
 
190605 03
190605 03190605 03
190605 03
openrtm
 
200923 01jp
200923 01jp200923 01jp
200923 01jp
openrtm
 
SICE 2020 Rtm tutorial 2_online_ja
SICE 2020 Rtm tutorial 2_online_jaSICE 2020 Rtm tutorial 2_online_ja
SICE 2020 Rtm tutorial 2_online_ja
openrtm
 
RTコンポーネント作成入門
RTコンポーネント作成入門RTコンポーネント作成入門
RTコンポーネント作成入門
openrtm
 
OpenRTM-aist入門
OpenRTM-aist入門OpenRTM-aist入門
OpenRTM-aist入門
Yuki Suga
 
ROBOMECH2021 RTMオンライン講習会 第1部
ROBOMECH2021 RTMオンライン講習会 第1部ROBOMECH2021 RTMオンライン講習会 第1部
ROBOMECH2021 RTMオンライン講習会 第1部
openrtm
 
OpenRTM-aistおよび RTコンポーネントプログラミングの概要
OpenRTM-aistおよび RTコンポーネントプログラミングの概要OpenRTM-aistおよび RTコンポーネントプログラミングの概要
OpenRTM-aistおよび RTコンポーネントプログラミングの概要
openrtm
 
160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大
openrtm
 
NEDO講座 MoveIt! チュートリアル 第1部
NEDO講座 MoveIt! チュートリアル 第1部NEDO講座 MoveIt! チュートリアル 第1部
NEDO講座 MoveIt! チュートリアル 第1部
openrtm
 
160705-01 RTミドルウエア講習会・名城大
160705-01 RTミドルウエア講習会・名城大160705-01 RTミドルウエア講習会・名城大
160705-01 RTミドルウエア講習会・名城大
openrtm
 
ROBOMECH2021 RTM講習会 第1部
ROBOMECH2021 RTM講習会 第1部ROBOMECH2021 RTM講習会 第1部
ROBOMECH2021 RTM講習会 第1部
openrtm
 
170622 02
170622 02170622 02
170622 02
openrtm
 

What's hot (20)

190605 04
190605 04190605 04
190605 04
 
Slam実習
Slam実習Slam実習
Slam実習
 
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
RTミドルウェアによるロボットプログラミング技術 2.プログラミングの基礎
 
5.総合演習(2)
5.総合演習(2)5.総合演習(2)
5.総合演習(2)
 
201111 05
201111 05201111 05
201111 05
 
OpenRTM概要
OpenRTM概要OpenRTM概要
OpenRTM概要
 
200527 RTM Tutorial in ROBOMECH2020
200527 RTM Tutorial in ROBOMECH2020200527 RTM Tutorial in ROBOMECH2020
200527 RTM Tutorial in ROBOMECH2020
 
Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦Rtミドルウェアサマーキャンプ2021_宮本信彦
Rtミドルウェアサマーキャンプ2021_宮本信彦
 
190605 03
190605 03190605 03
190605 03
 
200923 01jp
200923 01jp200923 01jp
200923 01jp
 
SICE 2020 Rtm tutorial 2_online_ja
SICE 2020 Rtm tutorial 2_online_jaSICE 2020 Rtm tutorial 2_online_ja
SICE 2020 Rtm tutorial 2_online_ja
 
RTコンポーネント作成入門
RTコンポーネント作成入門RTコンポーネント作成入門
RTコンポーネント作成入門
 
OpenRTM-aist入門
OpenRTM-aist入門OpenRTM-aist入門
OpenRTM-aist入門
 
ROBOMECH2021 RTMオンライン講習会 第1部
ROBOMECH2021 RTMオンライン講習会 第1部ROBOMECH2021 RTMオンライン講習会 第1部
ROBOMECH2021 RTMオンライン講習会 第1部
 
OpenRTM-aistおよび RTコンポーネントプログラミングの概要
OpenRTM-aistおよび RTコンポーネントプログラミングの概要OpenRTM-aistおよび RTコンポーネントプログラミングの概要
OpenRTM-aistおよび RTコンポーネントプログラミングの概要
 
160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大160705-02 RTミドルウエア講習会・名城大
160705-02 RTミドルウエア講習会・名城大
 
NEDO講座 MoveIt! チュートリアル 第1部
NEDO講座 MoveIt! チュートリアル 第1部NEDO講座 MoveIt! チュートリアル 第1部
NEDO講座 MoveIt! チュートリアル 第1部
 
160705-01 RTミドルウエア講習会・名城大
160705-01 RTミドルウエア講習会・名城大160705-01 RTミドルウエア講習会・名城大
160705-01 RTミドルウエア講習会・名城大
 
ROBOMECH2021 RTM講習会 第1部
ROBOMECH2021 RTM講習会 第1部ROBOMECH2021 RTM講習会 第1部
ROBOMECH2021 RTM講習会 第1部
 
170622 02
170622 02170622 02
170622 02
 

Similar to 201110 02 Polytech center 2

ROBOMECH2023 RTミドルウェア講習会 第1部
ROBOMECH2023 RTミドルウェア講習会 第1部ROBOMECH2023 RTミドルウェア講習会 第1部
ROBOMECH2023 RTミドルウェア講習会 第1部
openrtm
 
2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF
Atomu Hidaka
 
1.コース概要
1.コース概要1.コース概要
1.コース概要
openrtm
 
Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0
Atsushi Nakamura
 
IBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみたIBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみた
You&I
 
OpenEL for Robot(Japanese)
OpenEL for Robot(Japanese)OpenEL for Robot(Japanese)
OpenEL for Robot(Japanese)
Upwind Technology Inc.
 
OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介
OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介
OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介
Daisuke Nishino
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2
Yuki Suga
 
.NET Coreとツール類の今
.NET Coreとツール類の今.NET Coreとツール類の今
.NET Coreとツール類の今
Yuki Igarashi
 
Microsoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesMicrosoft Intelligent Edge Technologies
Microsoft Intelligent Edge Technologies
Takeshi Fukuhara
 
Nedo講座・rtmセミナー
Nedo講座・rtmセミナーNedo講座・rtmセミナー
Nedo講座・rtmセミナーopenrtm
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
Yuta Matsumura
 
131111 東工大授業「ロボット技術」資料
131111 東工大授業「ロボット技術」資料131111 東工大授業「ロボット技術」資料
131111 東工大授業「ロボット技術」資料openrtm
 
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Saki Homma
 
XPagesジャンプスタート
XPagesジャンプスタートXPagesジャンプスタート
XPagesジャンプスタート
Mitsuru Katoh
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1
Atomu Hidaka
 
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Saki Homma
 
Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)
Shinya Nakajima
 
使い倒そう Visual Studio Code!!! ~ここからはじめる基本のキ~
使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~
使い倒そう Visual Studio Code!!! ~ここからはじめる基本のキ~
Saki Homma
 
200520 ユビキタスロボティクス特論
200520 ユビキタスロボティクス特論200520 ユビキタスロボティクス特論
200520 ユビキタスロボティクス特論
NoriakiAndo
 

Similar to 201110 02 Polytech center 2 (20)

ROBOMECH2023 RTミドルウェア講習会 第1部
ROBOMECH2023 RTミドルウェア講習会 第1部ROBOMECH2023 RTミドルウェア講習会 第1部
ROBOMECH2023 RTミドルウェア講習会 第1部
 
2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF
 
1.コース概要
1.コース概要1.コース概要
1.コース概要
 
Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0Desktop app dev strategy for .net core 3.0
Desktop app dev strategy for .net core 3.0
 
IBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみたIBM Rational Team Concertに触れてみた
IBM Rational Team Concertに触れてみた
 
OpenEL for Robot(Japanese)
OpenEL for Robot(Japanese)OpenEL for Robot(Japanese)
OpenEL for Robot(Japanese)
 
OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介
OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介
OSSコンソーシアム 開発基盤部会 2018年度 活動方針・部会紹介
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2
 
.NET Coreとツール類の今
.NET Coreとツール類の今.NET Coreとツール類の今
.NET Coreとツール類の今
 
Microsoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesMicrosoft Intelligent Edge Technologies
Microsoft Intelligent Edge Technologies
 
Nedo講座・rtmセミナー
Nedo講座・rtmセミナーNedo講座・rtmセミナー
Nedo講座・rtmセミナー
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
131111 東工大授業「ロボット技術」資料
131111 東工大授業「ロボット技術」資料131111 東工大授業「ロボット技術」資料
131111 東工大授業「ロボット技術」資料
 
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
 
XPagesジャンプスタート
XPagesジャンプスタートXPagesジャンプスタート
XPagesジャンプスタート
 
Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1Hardware control by .NET Core 3.1
Hardware control by .NET Core 3.1
 
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
 
Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)
 
使い倒そう Visual Studio Code!!! ~ここからはじめる基本のキ~
使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~使い倒そうVisual Studio Code!!! ~ここからはじめる基本のキ~
使い倒そう Visual Studio Code!!! ~ここからはじめる基本のキ~
 
200520 ユビキタスロボティクス特論
200520 ユビキタスロボティクス特論200520 ユビキタスロボティクス特論
200520 ユビキタスロボティクス特論
 

More from openrtm

ピッキングシステム
ピッキングシステムピッキングシステム
ピッキングシステム
openrtm
 
GNGを使った未知環境における経路計画
GNGを使った未知環境における経路計画GNGを使った未知環境における経路計画
GNGを使った未知環境における経路計画
openrtm
 
まねっこロボット
まねっこロボットまねっこロボット
まねっこロボット
openrtm
 
商品自動補充ロボットシステム
商品自動補充ロボットシステム商品自動補充ロボットシステム
商品自動補充ロボットシステム
openrtm
 
RTサマーキャンプ2022最終発表_都立大.pptx
RTサマーキャンプ2022最終発表_都立大.pptxRTサマーキャンプ2022最終発表_都立大.pptx
RTサマーキャンプ2022最終発表_都立大.pptx
openrtm
 
SysML実習20220822SC_GA.pdf
SysML実習20220822SC_GA.pdfSysML実習20220822SC_GA.pdf
SysML実習20220822SC_GA.pdf
openrtm
 
RTミドルウェアサマーキャンプ資料2022.pdf
RTミドルウェアサマーキャンプ資料2022.pdfRTミドルウェアサマーキャンプ資料2022.pdf
RTミドルウェアサマーキャンプ資料2022.pdf
openrtm
 
RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1
openrtm
 
Rtミドルウェアサマーキャンプ資料2021_坂本武志_2
Rtミドルウェアサマーキャンプ資料2021_坂本武志_2Rtミドルウェアサマーキャンプ資料2021_坂本武志_2
Rtミドルウェアサマーキャンプ資料2021_坂本武志_2
openrtm
 
Rtミドルウェアサマーキャンプ資料2021_菅佑樹
Rtミドルウェアサマーキャンプ資料2021_菅佑樹Rtミドルウェアサマーキャンプ資料2021_菅佑樹
Rtミドルウェアサマーキャンプ資料2021_菅佑樹
openrtm
 
SICE 2020 Rtm tutorial 2_online_en
SICE 2020 Rtm tutorial 2_online_enSICE 2020 Rtm tutorial 2_online_en
SICE 2020 Rtm tutorial 2_online_en
openrtm
 

More from openrtm (11)

ピッキングシステム
ピッキングシステムピッキングシステム
ピッキングシステム
 
GNGを使った未知環境における経路計画
GNGを使った未知環境における経路計画GNGを使った未知環境における経路計画
GNGを使った未知環境における経路計画
 
まねっこロボット
まねっこロボットまねっこロボット
まねっこロボット
 
商品自動補充ロボットシステム
商品自動補充ロボットシステム商品自動補充ロボットシステム
商品自動補充ロボットシステム
 
RTサマーキャンプ2022最終発表_都立大.pptx
RTサマーキャンプ2022最終発表_都立大.pptxRTサマーキャンプ2022最終発表_都立大.pptx
RTサマーキャンプ2022最終発表_都立大.pptx
 
SysML実習20220822SC_GA.pdf
SysML実習20220822SC_GA.pdfSysML実習20220822SC_GA.pdf
SysML実習20220822SC_GA.pdf
 
RTミドルウェアサマーキャンプ資料2022.pdf
RTミドルウェアサマーキャンプ資料2022.pdfRTミドルウェアサマーキャンプ資料2022.pdf
RTミドルウェアサマーキャンプ資料2022.pdf
 
RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1RTミドルウェアサマーキャンプ2021_坂本武志_1
RTミドルウェアサマーキャンプ2021_坂本武志_1
 
Rtミドルウェアサマーキャンプ資料2021_坂本武志_2
Rtミドルウェアサマーキャンプ資料2021_坂本武志_2Rtミドルウェアサマーキャンプ資料2021_坂本武志_2
Rtミドルウェアサマーキャンプ資料2021_坂本武志_2
 
Rtミドルウェアサマーキャンプ資料2021_菅佑樹
Rtミドルウェアサマーキャンプ資料2021_菅佑樹Rtミドルウェアサマーキャンプ資料2021_菅佑樹
Rtミドルウェアサマーキャンプ資料2021_菅佑樹
 
SICE 2020 Rtm tutorial 2_online_en
SICE 2020 Rtm tutorial 2_online_enSICE 2020 Rtm tutorial 2_online_en
SICE 2020 Rtm tutorial 2_online_en
 

201110 02 Polytech center 2