Unity と ROS の間で通信するロボット アーム

UnityとROS間の通信パッケージ

参考文献と引用

1. Githubのソースコードアドレス

①UnityとROS間の通信

https://github.com/Unity-Technologies/Unity-Robotics-Hubクイック リンク

②ROSパッケージ(Unityシーンから送信されるROSメッセージを受信するために使用)

https://github.com/Unity-Technologies/ROS-TCP-Endpointクイック リンク

③Unityにインポートされた2つのパッケージ

a. ROS からメッセージを送受信するための ROS TCP コネクタと、Unity シーンで送受信メッセージの視覚化を追加するための Visualizations パッケージ https://github.com/Unity-Technologies/ROS-TCP-Connector クイック リンク b. URDF
インポート
するUnity (Unityが付属しているようですが、ローカルにインポートし直しました)
https://github.com/Unity-Technologies/URDF-ImporterQuick link

3. Unity へのローカル ファイルのインポートに関する Unity ドキュメント

https://docs.unity3d.com/Manual/upm-ui-local.htmlクイック リンク

4.Plastichub ウェブサイト

https://plastichub.unity.cn/unity-tech-cn/Unity-Robotics-Hubクイック リンク

———————————————————————————————————————————

1. Unity に必要な 2 つのパッケージ

1. ROS-TCP-Connector パッケージをインストールします

ローカル パスを使用してメソッド
https://github.com/Unity-Technologies/ROS-TCP-Connectorクイック リンクを追加し、
zip ファイルをダウンロードし、配置したファイル パスに解凍します。
ここに画像の説明を挿入します

新しいプロジェクトを作成します。「ウィンドウ」-「パッケージ マネージャー」-「+」-「ディスクからパッケージを追加...」
次に、ダウンロードしたローカル パスを選択し、パッケージの JSON ソース ファイルを見つけて、開く (追加) をクリックします。 )
ここに画像の説明を挿入します

ここに画像の説明を挿入します

「パッケージ マネージャー」では、バージョン、パス、その他の情報を含め、追加が成功したことがわかります。
ここに画像の説明を挿入します

2. URDF-Importer パッケージをインストールする

ローカルパスを追加する方法
https://github.com/Unity-Technologies/URDF-Importerクイックリンク
zip ファイルをダウンロードし、配置したファイルパスに解凍します
「ウィンドウ」 —— 「パッケージマネージャー」 —— — "+" —— 「ディスクからパッケージを追加...」
次に、ダウンロードしたローカル パスを選択し、パッケージの JSON ソース ファイルを見つけて、開く (追加) をクリックします。方法は上記と
同じです。

2. Github ソースコードのチュートリアル

1. ピックアンドプレイス

URL: https://plastichub.unity.cn/unity-tech-cn/Unity-Robotics-Hub/src/branch/main…/tutorials/pick_and_place/README.md
クイックリンク
翻訳:
ROS はメッセージング、パッケージ管理、サービスを提供します低レベルのデバイス制御やハードウェアの抽象化など。
Unity Robotics Hub は、URDF ファイルのインポートと、ROS と Unity 間のメッセージの送受信をサポートできます。
このチュートリアルでは、Unity エディターのインストールから、インポートされた URDF を使用したシーンの作成、MoveIt 軌道計画を使用して既知のポーズでピック アンド プレイスのタスクを完了するまで、ROS を Unity と統合するために必要な手順を説明します。

2. 物体姿勢推定デモ

URL: https://github.com/Unity-Technologies/Robotics-Object-Pose-Estimation
クイック リンク

3. 関節ロボットのデモ

URL: https://github.com/Unity-Technologies/articulations-robot-demo
クイック リンク

詳細なチュートリアルが含まれているので、チュートリアルに従って実行するだけで済みます。ここでは、個人が遭遇した問題の一部のみを記録します。

3. 発生した問題と解決策

1. Unityのバージョンの問題

このプロセスではオープンソースのロボット アーム モデルが使用されるため、適切なバージョンで開く必要があります。

Unity 2020.3: 2020.3.10f1 以降
Unity 2021.1: 2021.1.8f1 以降
Unity 2021.2: 2021.2.a16 以降

2.Unityシーンの問題

最初はシーンを一から作成してパート3まで進めました。その結果、最後にはROSがUnityロボットアームのパスプランニングとグラブを実現できず、ターミナル上でエラーが発生してしまいました。 。

[ERROR] [1668429397.373772594]: RRTConnect: Unable to sample any valid states for goal tree

その後、場面を変えてもう一度同じプロセスを経て成功しました。
したがって、パート 1 では、
図に示すようにプロジェクトをインポートした後、先に進む前にシーンを選択する必要があります。
ここに画像の説明を挿入します

3. Github ソース コードをダウンロードすると、一部のファイルが空になります。

チュートリアルに従って解決できますが、オリジナルのチュートリアルで詳しく説明されています。
ここでは、モジュールごとに分割してダウンロードし、再び貼り付けるという最も直接的な方法を使用しました。
最初のもの: moveit_msgs
https://github.com/ros-planning/moveit_msgsクイック リンク

2 つ目: niryo_one_ros
https://github.com/NiryoRobotics/niryo_one_rosクイック リンク

3 番目: ROS-TCP-Endpoint
https://github.com/Unity-Technologies/ROS-TCP-Endpointクイック リンク

上記 3 つはすべてUnity-Robotics-Hub/tutorials/pick_and_place/ROS/src/パスの下にあります

おすすめ

転載: blog.csdn.net/m0_64730542/article/details/127555823