日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

ros发布节点信息python_vscode开发ROS1(13)-python实现话题通信(msg)

發布時間:2023/12/4 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ros发布节点信息python_vscode开发ROS1(13)-python实现话题通信(msg) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

寫在最前面

1, ros也是可以使用python進行編程的, 而且相比c++來說, ros更加簡單.

使用python創建第一個ROS程序

1, 在ros_test目錄下, 新建一個scripts文件夾.


2, 修改CMakeLists.txt文件, 在find_package中添加rospy

find_package(catkin REQUIRED COMPONENTS roscpp ... #其他的包 rospy )

3, 在vscode的終端中執行catkin_make.
4, 在scripts文件夾中, 新建pyTalker.py文件.
5, 粘貼以下代碼

#!/usr/bin/env python # -*- coding: UTF-8 -*- import rospy #導入rospy客戶端 from std_msgs.msg import String #導入std_msg/string這個數據類型def talker():pub = rospy.Publisher('chatter', String, queue_size=10) #話題的名稱chatterrospy.init_node('talker', anonymous=True) #初始化節點,節點的名稱為talker,名字要唯一rate = rospy.Rate(10) # 10hz,創建rate對象,與sleep()函數結合使用,控制話題消息發布的頻率while not rospy.is_shutdown():msg = "hello world "rospy.loginfo(msg)#函數在屏幕輸出信息,這個信息存儲在hello_str當中pub.publish(msg)rate.sleep()#用于控制發布的頻率if __name__ == '__main__':try:talker()except rospy.ROSInterruptException:pass

6, 具體介紹請看注釋, 這個比較簡單.
7, 使用vscode的終端中cd命令,定位到pyTalker.py文件

cd src/ros_test/scripts/

8, 執行指令, 這一步是為了讓pyTalker.py文件具有可執行權限, 不可缺少

chmod 0777 pyTalker.py

運行talker和listener

1, 使用快捷鍵Ctrl + Shift + T 彈出系統終端,輸入roscore,啟用整個ROS總節點。
2, 使用快捷鍵Ctrl + Shift + T 彈出系統終端,輸入rosrun ros_test pyTalker.py,啟用talker節點。
3, 使用快捷鍵Ctrl + Shift + T 彈出系統終端,輸入rosrun ros_test listener,啟用listener節點, 此處的listener節點為c++節點。參照vscode開發ROS(3)-創建第一個ROS項目.

總結

以上是生活随笔為你收集整理的ros发布节点信息python_vscode开发ROS1(13)-python实现话题通信(msg)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。