Status message

Submissions for this form are closed.

ロボットシステムのコンポーネント指向開発(2021年度)

2021RTM.png

CPS人材育成講座:(コース4)ロボットシステムのコンポーネント指向開発

産総研インダストリアルCPS研究センターでは、産業のCPS(サイバーフィジカルシステム)化に関する研究開発に取り組んでおり、システムの自動化・ロボット化のみならず、分野間・ドメイン間の連携を強化し、産業システム全体の最適化に資する技術開発に取り組んでいます。本講座は、CPS構築に当たり役立つ産総研発の技術を広く普及させるため、様々な分野の技術者に対してこれらの技術を習得してもらうための人材育成講座であり、4つのコースから構成されています。

本コースは、産総研で開発されてきたロボット用ミドルウェア技術:RTミドルウェアによるコンポーネント指向開発の技術を学ぶための講座です。 RTミドルウエアはロボットシステムの構築を効率化するソフトウエアプラットフォームです。RTコンポーネントと呼ばれるモジュール化されたソフトウエアを多数組わせてロボットシステムを構築するため、システムの変更、拡張がしやすいだけでなく、既存のソフトウエア資産をの継承や他人が作ったコンポーネントとの組み合わせも容易になります。講習会では、RTミドルウエアの概要、RTコンポーネントの作成方法について解説します。受講者には各自PCをご準備いただき、実習形式で実際にRTコンポーネントを作成、既存のコンポーネントなどと組み合わせて簡単なシステムを構築していただきます。本講習会を受講することで、RTコンポーネント設計方法、実装の仕方、システムの作り方をマスターすることができます。

日時・場所

  • 主催: 国立研究開発法人 産業技術総合研究所
  • 日時(1回目・実施済): 2021年9月30日(木)〜10月1日(金)
    • 参加者: 8名
  • 日時(2回目): 2021年11月29日(月)〜11月30日(火)
    • ※ 1回目と2回めは同じ内容です。
  • 場所: オンライン
  • 定員: 20名
    • 以下の機材の貸し出しを行って実施いたします。
    • Lidar付きRaspberryPi Mouse。

プログラム

1日目

13:00 - 13:50
講義室
url=

サポート用別室
url=
第1部:OpenRTM-aistおよびRTコンポーネントプログラミングの概要
担当:安藤慶昭 氏 (産総研)
概要: RTミドルウェア(OpenRTM-aist)はロボットシステムをコンポーネント指向で構築するソフトウェアプラットフォームです。RTミドルウェアを利用することで、既存のコンポーネントを再利用し、モジュール指向の柔軟なロボットシステムを構築することができます。RTミドルウエアについて、その概要およびRTコンポーネントの機能やプログラミングの流れについて説明します。
講義資料:OpenRTM概要.pdf
14:00 - 17:00 第2部:RTコンポーネントの作成入門
- 担当:宮本 信彦 氏(産総研)
- 概要:RTシステムを設計するツールRTSystemEditorおよびRTコンポーネントを作成するツールRTCBuilderの使用方法について解説するとともに、移動ロボットのシミュレータを用いた実習によりRTCBuilder、RTSystemEditorの利用法の学習します。
チュートリアル(第2部、Windows)
チュートリアル(第2部、Ubuntu)
講義資料:RTコンポーネント作成入門.pdf 
Lecture materials:Introduction to creating RT-Components_online.pdf

2日目

09:30 - 10:50
講義室
url=

サポート用別室
url=
第3部:rtshell入門
- 担当:宮本 信彦 氏(産総研)
- 概要:RTシステムの起動、終了を自動化するスクリプトファイルの作成方法を解説します。
チュートリアル(第3部)
講義資料:rtshell入門.pdf
11:00 - 12:00 第4部(午前):RTコンポーネント作成入門-Ⅱ
- 担当:宮本 信彦 氏(産総研)
- 概要:OpenRTM-aistを利用して移動ロボット実機を制御するプログラムを作成します。
13:00 - 17:00 第4部(午後):RTコンポーネント作成入門-Ⅲ
- 担当:宮本 信彦 氏(産総研)
- 概要:OpenRTM-aistを利用して移動ロボット実機を制御するプログラムを作成します。
チュートリアル(第4部、Windows)
チュートリアル(第4部、Ubuntu)
チュートリアル(SLAM実習)
講義資料:SLAM実習.pdf

資料

第1部

第2部

第3部

第4部


事前準備

  • PC (ノートPC、デスクトップPCいずれも可、Microsoft Teams(ブラウザ版でも可)が動作すればOK)
  • 開発用ノートPC(送付済み)
  • ロボット実機(送付済み)

第2部以降ではプログラミング実習を行うため、予め開発用のWindows PC(ノートPC)をお送りしています。 また、第2日目ではロボット実機を使用した実習を行うため、実機も事前にお送りしています。

実機を使用した演習では、ノートPCと実機(RaspberryPi Mouse)を無線LAN経由で1対1接続させるため、インターネットアクセスができなくなります。 このため、ご自分のPCでTeamsに接続し、開発はお送りしたノートPCで行ってください。

使用する小型移動ロボット実機: RaspberryPi Mouse LiDAR付き

本講習会では LiDAR付き小型移動ロボットを使用します。

23b47429c42d672e7f94ae0a3c9c9d6c.png

資料

以下のZIPファイルをダウンロードしてLhaplus等で展開してください。

インストールするソフトウェア

送付済みの開発用ノートPCには予めこれらのソフトウェアがインストールされています。 後日、ご自分の環境で試す場合は、以下に従ってソフトウェアをインストールする必要があります。

Windowsの場合

以下のソフトウェアをインストールしてください。リンクが切れている場合は、最新バージョンをインストールしてください。 なお、Windowsが64bit版の場合はそれぞれ64bit版のものを、32bit版の場合は32bit版のものをダウンロードします。

Ubuntuの場合

OpenRTM-aist

 $ wget https://raw.githubusercontent.com/OpenRTM/OpenRTM-aist/master/scripts/pkg_install_ubuntu.sh
 $ sudo sh pkg_install_ubuntu.sh -l all --yes

JDK

 # Ubuntu 18.04、18.10、20.04の場合
 $ sudo apt-get install openjdk-8-jdk
 # Ubuntu 16.04の場合
 $ sudo apt-get install default-jdk

Ubuntu 18.04、18.10、20.04の場合は以下のコマンドでjava8に切り替えます。

 $ sudo update-alternatives --config java

Git

 $ sudo apt-get install git

Premake(RaspberryPiMouseSimulator に必要)

 $ sudo apt-get install premake4

GLUT(RaspberryPiMouseSimulator に必要)

 $ sudo apt-get install freeglut3-dev

RaspberryPiMouseSimulator コンポーネント

 $ wget https://raw.githubusercontent.com/OpenRTM/RTM_Tutorial/master/script/install_raspimouse_simulator.sh
 $ sh install_raspimouse_simulator.sh

Code::Blocks(任意)

 $ sudo apt-get install codeblocks

cmake-gui(任意)

 $ sudo apt-get install cmake-qt-gui

オンライン開催での注意事項

今回のRTミドルウェア講習会はTeamsを使用してオンラインで開催します。


Download

latest Releases : 2.0.0-RELESE

2.0.0-RELESE Download page

Number of Projects

Choreonoid

Motion editor/Dynamics simulator

OpenHRP3

Dynamics simulator

OpenRTP

Integrated Development Platform

AIST RTC collection

RT-Components collection by AIST

TORK

Tokyo Opensource Robotics Association

DAQ-Middleware

Middleware for DAQ (Data Aquisition) by KEK