1. 程式人生 > >python 下執行ros

python 下執行ros

1.建立l兩個資料夾python_ros/scr

2.執行下述命令後,將會在在src中,建立一個包daodao ,並且在資料夾daodao裡生成了兩個空資料夾,有include/daodao,scr,和

CMakeLists.txt, package.xml

cd python_ros/src
catkin_create_pkg daodao roscpp rospy std_msgs genmsg

 

cd daodao
mkdir scripts
cd scripts
gedit talker.py
chmod +x talker.py

talker 表示的是釋出一個話題,往taler.py中寫下面這些內容,建議把python的程式碼放到scripts這個資料夾中 src中放Cpp檔案 

#!/usr/bin/env python #讓編譯器找python的直譯器
# -*- coding: UTF-8 -*-  #要想在python檔案裡寫中文,就必須新增這一行生命檔案編碼方式的註釋
import rospy #匯入rospy客戶端
from std_msgs.msg import String #匯入std_msg/string這個資料型別

def talker():
    pub = rospy.Publisher('chatter', String, queue_size=10) #話題的名稱chatter
    rospy.init_node('talker', anonymous=True) #初始化節點,節點的名稱為talker,名字要唯一
    rate = rospy.Rate(10) # 10hz,建立rage物件,與sleep()函式結合使用,控制話題訊息釋出的頻率
    while not rospy.is_shutdown():
        hello_str = "hello world %s" % rospy.get_time()
        rospy.loginfo(hello_str)#函式在螢幕輸出資訊,這個資訊儲存在hello_str當中
        pub.publish(hello_str)
        rate.sleep()#用於控制釋出的頻率

if __name__ == '__main__':
    try:
        talker()
    except rospy.ROSInterruptException:
        pass