rosrunを実行したときに /usr/bin/env: ‘python’: No such file or directory とエラーが出たとき
pythonコマンドでpython3が起動できるように設定する必要がある
sudo ln -s /usr/bin/python3 /usr/bin/python
unity通信用 Windowsホームフォルダのros1_wsにマウント ros1
docker run -v %UserProfile%/ros1_ws:/home/ubuntu/catkin_ws:cached -p 6080:80 -p 10000:10000 --shm-size=1024m tiryoh/ros-desktop-vnc:noetic
rosとunityの通信用のパッケージインストール
cd ~/catkin_ws/src
git clone -b v0.7.0 https://github.com/Unity-Technologies/ROS-TCP-Endpoint
ワークスペースビルドとセットアップ
参考↓
ROS1トピック通信
パッケージ作成
cd ~/catkin_ws/src
catkin_create_pkg my_topic rospy
コード作成
送信コード(~/catkin_ws/src/my_topic/src/my_publisher_node.py)作成
受信コード(~/catkin_ws/src/my_topic/src/my_subscriber_node.py)作成
Pythonコードに実行権限付与
cd ~/catkin_ws/src/my_topic/src
chmod u+x *.py
ワークスペースビルド
ワークスペースセットアップ
実行
terminal1
roscore
terminal2
rosrun my_topic my_publisher_node.py
terminal3
rosrun my_topic my_subscriber_node.py
送信:ROS 受信:Unity
terminal1
roscore
terminal2
rosparam set ROS_IP 0.0.0.0
rosrun ros_tcp_endpoint default_server_endpoint.py
terminal3
rosrun my_topic my_publisher_node.py
送信:Unity 受信:ROS
terminal1
roscore
terminal2
rosparam set ROS_IP 0.0.0.0
rosrun ros_tcp_endpoint default_server_endpoint.py
terminal3
rosrun my_topic my_subscriber_node.py
ros1独自トピック通信
パッケージ作成
cd ~/catkin_ws/src
catkin_create_pkg my_custom_topic rospy std_msgs message_generation message_runtime
メッセージ定義ファイル作成
「~/catkin_ws/src/my_custom_topic/msg/MyMessage.msg」作成
int32 x
int32 y
CMAkeLists.txt編集
コード作成
送信コード(~/catkin_ws/src/my_custom_topic/src/my_publisher_node.py)作成
受信コード(~/catkin_ws/src/my_custom_topic/src/my_subscriber_node.py)作成
Pythonコードに実行権限付与
cd ~/catkin_ws/src/my_custom_topic/src
chmod u+x *.py
ワークスペースビルド
ワークスペースセットアップ
実行
terminal1
roscore
terminal2
rosrun my_custom_topic my_publisher_node.py
terminal3
rosrun my_custom_topic my_subscriber_node.py
送信:ROS 受信:Unity
terminal1
roscore
terminal2
rosparam set ROS_IP 0.0.0.0
rosrun ros_tcp_endpoint default_server_endpoint.py
terminal3
rosrun my_custom_topic my_publisher_node.py
送信:Unity 受信:ROS
terminal1
roscore
terminal2
rosparam set ROS_IP 0.0.0.0
rosrun ros_tcp_endpoint default_server_endpoint.py
terminal3
rosrun my_custom_topic my_subscriber_node.py
ros1サービス通信
パッケージ作成
cd ~/catkin_ws/src
catkin_create_pkg my_service rospy std_msgs message_generation message_runtime
メッセージ定義ファイル作成
「~/catkin_ws/src/my_service/srv/MyService.srv」作成
int32 a
int32 b
---
int32 sum
CMAkeLists.txt編集
コード作成
クライアントコード(~/catkin_ws/src/my_service/src/my_client_node.py)作成
サーバーコード(~/catkin_ws/src/my_service/src/my_server_node.py)作成
Pythonコードに実行権限付与
cd ~/catkin_ws/src/my_service/src
chmod u+x *.py
ワークスペースビルド
ワークスペースセットアップ
実行
terminal1
roscore
terminal2
rosrun my_service my_server_node.py
terminal3
rosrun my_service my_client_node.py
クライアント:ROS サーバー:Unity
terminal1
roscore
terminal2
rosparam set ROS_IP 0.0.0.0
rosrun ros_tcp_endpoint default_server_endpoint.py
terminal3
rosrun my_service my_client_node.py
クライアント:Unity サーバー:ROS
terminal1
roscore
terminal2
rosparam set ROS_IP 0.0.0.0
rosrun ros_tcp_endpoint default_server_endpoint.py
terminal3
rosrun my_service my_server_node.py
コメントを残す