Raspberry pi 5 へのOpenRTM-aistの導入

7 posts / 0 new
Last post
H.K
Offline
Last seen: 2 months 4 days ago
Joined: 2026-05-13 15:27
Raspberry pi 5 へのOpenRTM-aistの導入

はじめまして、東京都立大学 下川原(佐藤)研究室 学部4年生の椛沢と申します。

現在、Raspberry pi 5環境にてOpenRTMを使用しております。 本サイト「ダウンロード」の項目に書かれている通りの手順でインストールを実行したところ、OpenRTM-aist本体のインストールはできたようです。しかし、RTCBuilderを起動しようと「openrtp2」を実行したところ「コマンドが存在しません」と表示され、起動することができません。

また、現在対応策としてrtshellを使用しております。しかし、rtconコマンドが上手く作用しないらしく、コンポーネント同士の接続ができません。接続したいと考えているコンポーネント同士のポートの型は一致しています。

これらの問題に対し、解決策のわかる方がいたらご教授いただきたいです。よろしくお願いします。

Undefined
kawauchi
Offline
Last seen: 1 week 5 days ago
Joined: 2013-04-01 18:20
Raspberry pi 5環境向けにopenrtp2は提供しておりません

ラズパイと同一のLAN上にWindowsまたはUbuntuのPCがある場合は、この環境でOpenRTPまたはopenrtp2を起動して 使うことができます。この場合、ラズパイの /etc/hosts で127.0.0.1と127.0.1.1をコメントアウトし、 ホスト名を実際のIPアドレスで定義します。 私の環境での変更点は以下のようになっています。

 #127.0.0.1      localhost
 #127.0.1.1      bookworm64-pi5-2
 192.168.1.29    bookworm64-pi5-2

OpenRTPまたはopenrtp2を起動し、ネームサーバにbookworm64-pi5-2を登録(192.168.1.29でもよいです)した場合、 この下に起動したRTCが見えますでしょうか?

H.K
Offline
Last seen: 2 months 4 days ago
Joined: 2026-05-13 15:27
ご返答ありがとうございます。

ご返答ありがとうございます。

教えていただいた通りにラズパイの/etc/hostsを編集し、RTCを起動したのですが、同一LAN上のUbuntuPCではRTCを確認することができませんでした。 また、ネームサーバへの登録を試みた際、河内様の例で示されるところの「192.168.1.29」という名前では登録が成功しますが、「bookworm64-pi5-2」という名前では「Failed to connect Name Service」と表示され、登録できません。

Comment Upload: 
kawauchi
Offline
Last seen: 1 week 5 days ago
Joined: 2013-04-01 18:20
rtshellを利用する場合、rtlsの結果はどのようになっていますか?

rtshellで確認する場合は、/etc/hostsのlocalhostの定義はコメントアウトせず元に戻します。

 127.0.0.1       localhost

私の環境でOpenRTMのC++のサンプルRTCを実行した時のrtlsの結果は以下となっています。

 $ rtls -R localhost
 .:
 bookworm64-pi5-2.host_cxt/
 ./bookworm64-pi5-2.host_cxt:
 ConsoleIn0.rtc  ConsoleOut0.rtc

ホストコンテキストの下にRTCがぶら下がっているので、rtconでは次のように指定します。

 $ rtcon localhost/bookworm64-pi5-2.host_cxt/ConsoleIn0.rtc:out localhost/bookworm64-pi5-2.host_cxt/ConsoleOut0.rtc:in

この後、rtact でアクティベートして接続動作を確認できています。

H.K
Offline
Last seen: 2 months 4 days ago
Joined: 2026-05-13 15:27
結果を添付します。接続動作が確認できません。

ありがとうございます。 実行した際の画面を一枚目の画像として添付します。

それぞれのコンポーネントのポートの型は一致させているはずなのですが、インポート側のコンポーネントがエラーになってしまいデータのやり取りができません。 また、それぞれのコンポーネントを実行する前にrtcatで状態を確認しても、それぞれのコンポーネントが接続された様子を確認することができませんでした。二枚目の画像として添付します。 アウトポート側のコンポーネントは、self._lightOut.write()の値を取得することで、trueが返され続けるというフィードバックを得られています。 いずれのコンポーネントもonExecute()内でデータのやり取りを行うようにしています。

インポート側のコンポーネントのonExecute()の内容を三枚目の画像として添付します。実行すると、一度だけ「called」をprintされたきり応答がなくなります。onExcute()が一度だけ実行されたあと、エラーに陥ったと解釈しています。

Comment Upload: 
AttachmentSize
Image icon 画像1.png223 KB
Image icon 画像2.png152.25 KB
Image icon 画像3.png24.95 KB
kawauchi
Offline
Last seen: 1 week 5 days ago
Joined: 2013-04-01 18:20
ソースコードが間違っています

onExecute()の処理ですが、入力データの確認は inNew() ではなく isNew() です。 RTC実行時にログファイル(rtc*.log)が出力されますのでこれでエラーを確認して下さい。 PythonでRTCを作成する際に参考になるチュートリアルページのURLをお知らせします。 https://openrtm.org/openrtm/ja/node/6387

H.K
Offline
Last seen: 2 months 4 days ago
Joined: 2026-05-13 15:27
解決しました。ありがとうございます!

ありがとうございます。

ログファイルを確認し、エラーに対応したところ、無事に接続動作を確認することができました。 お忙しい中対応してくださり、ありがとうございました。

Log in or register to post comments

Download

latest Releases : 2.0.0-RELESE

2.1.0-RELESE Download page
2.0.1-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