PyLoT Roboticsで制作しているロボットのデバッグ用コントローラーです。
このREADMEを内包しているフォルダで、
sh gists/install.shを実行すればあとは指示に従えばいいです
スマホに証明書をインストールしなければパソコンで起動したclientにアクセスした際にブラウザに警告が表示されます。
sh gist/transferRootCA.shで表示されたQRコードにアクセスするとrootCA.pemをダウンロードすることができます。
https://zenn.dev/takumiabe21/articles/645a38c0c18389 の「○iPhoneのSafariからHTTPS接続する。」以降を参考にインストールしてください。
また今度書きます、、
#Topicの送受信に必要なRosbrdige_serverの起動
sh src/robin/gists/start_rosbridge.sh
#<このREADMEを内包しているフォルダ>/../.. (すなわち、installやlog, srcを含んでいるフォルダ)で以下のコマンドを実行
#Video Publisherの起動
colcon build
source install/setup.bash
ros2 run robin video_publisher
#プロキシサーバーの起動
sh src/robin/gists/start_proxy_server.shsh src/robin/gists/start_client.sh(2秒以内くらいにQRコードがでれば成功です)
以下で任意のTopicを購読し、LeRobot形式の最小構成で保存できます。
source install/setup.bash
ros2 run robin lerobot_recorder --ros-args \
-p topic_name:=/joint_states \
-p output_dir:=./lerobot_dataset \
-p task_name:=teleop \
-p episode_index:=0設定受信用Topic(既定: /lerobot_recorder/config)を変える場合は以下です。
ros2 run robin lerobot_recorder --ros-args \
-p control_topic_name:=/my/lerobot/configTopic型が自動検出できない場合は、message_type を明示してください。
ros2 run robin lerobot_recorder --ros-args \
-p topic_name:=/my_topic \
-p message_type:=std_msgs/msg/String実行中に、保存対象Topic一覧を std_msgs/String で送ると購読対象を切り替えできます。
JSON配列を送る例:
ros2 topic pub --once /lerobot_recorder/config std_msgs/msg/String \
"{data: '[\"/joint_states\",\"/imu/data\"]'}"カンマ区切り文字列でも送れます:
ros2 topic pub --once /lerobot_recorder/config std_msgs/msg/String \
"{data: '/joint_states,/imu/data'}"保存先を実行中に変える場合は、JSONオブジェクトで output_dir を渡します。
ros2 topic pub --once /lerobot_recorder/config std_msgs/msg/String \
"{data: '{\"topics\":[\"/joint_states\"],\"output_dir\":\"./lerobot_dataset/session2\"}'}"出力先には以下が生成されます。
meta/info.jsonmeta/tasks.jsonlmeta/episodes.jsonldata/chunk-000/episode_000000.parquet
