<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
1.如果尚未啟動WSL-ROS環境,請執行Windows
“開始”選單中的WSL-ROS快捷方式。這將開啟一個終端應用程式和一個Ubuntu終端範例。我們將這個終端範例稱為終端1。
在終端中輸入以下命令,在一個空世界中啟動TurtleBot3華夫餅的模擬:
[TERMINAL 1] $ roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch
一個露臺模擬視窗應該開啟,在裡面你會看到一個TurtleBot3華夫餅乾
2.在新終端範例中,輸入以下命令:
[TERMINAL 2] $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
總結:
到目前為止,您已經使用roslaunch命令啟動了兩個單獨的ROS應用程式。roslaunch
是啟動ROS專案的一種方式。正如您應該從上述範例中觀察到的,我們以以下方式使用此命令:
roslaunch{package name}{launch file}
該命令將兩個引數作為輸入:{package name}是包含我們想要執行的功能的ROS包的名稱,{launch file}是該包中的一個檔案,它確切地告訴ROS我們想要啟動的包中的功能。
3.roscd是一個ROS命令,它允許我們導航到系統上安裝的任何ROS包的目錄,而無需我們事先知道該包的路徑。
開啟一個新的終端範例(terminal 3),並使用roscd命令導航到Linux檔案系統上的turtlebot3_teleop包目錄:
4.In TERMINAL 3 enter $ cd ~ to go back to your home directory
[TERMINAL 3] $ roscd turtlebot3_teleop [TERMINAL 3] $ pwd [TERMINAL 3] $ ls [TERMINAL 3] $ ls -F [TERMINAL 3] $ cat turtlebot3_teleop_key.launch
包的啟動檔案通常位於包目錄中的啟動資料夾中。您應該注意到上面ls命令的輸出中有一個啟動資料夾。
cd是一個Linux命令,允許我們更改終端當前所在的目錄。用這個導航到turtlebot3_teleop package launch資料夾,然後再次使用ls檢視其中的內容。在這個資料夾中,你會看到turtlebot3_teleop_
鑰匙。
cat是一個Linux命令,我們可以使用它在終端中顯示檔案的內容。
pkg:包含我們想要啟動的功能的ROS包的名稱。
type:我們希望在該包中執行的指令碼(即ROS節點)的全名(包括副檔名,如果有)。
名稱:我們想給ROS節點一個描述性名稱,用於在ROS網路上註冊。
輸出:節點的任何輸出將被列印的位置(輸出將被列印到終端視窗的螢幕,或輸出將被列印到紀錄檔檔案的紀錄檔)。
ROS節點是執行特定機器人任務和操作的可執行程式,如我們在上述範例中看到的遠端(或“遠端操作”)控制。
5.使用以下命令檢視哪些節點當前處於活動狀態:
[TERMINAL 3] $ rosnode list
我們可以通過使用rqt_圖形包中的rqt_圖形節點來視覺化活動節點之間的連線。我們可以使用rosrun直接啟動此節點(您可能會收到一些錯誤訊息,但不要擔心):
[TERMINAL 3] $ rosrun rqt_graph rqt_graph
6.探索ROS主題和資訊
通過使用rostopic ROS命令,我們可以瞭解關於/cmd_-vel主題的更多資訊。
在新的終端範例(終端4)中,鍵入以下內容:
[TERMINAL 4] $ rostopic info /cmd_vel
內容的輸出:
Type: geometry_msgs/Twist Publishers: * /turtlebot3_teleop_keyboard (http://localhost:#####/) Subscribers: * /gazebo (http://localhost:#####/)
[TERMINAL 4] $ rosmsg info geometry_msgs/Twist
要完成此操作,請在仍在執行的任何程序(終端1、2和3)中輸入Ctrl+C,關閉所有活動的終端程序。因此,相關的Gazebo和rqt_圖形視窗也應關閉。
一兩分鐘後,您將用Python建立一些簡單的釋出者和訂閱者節點,並在它們之間傳送訊息。正如我們之前瞭解到的,ROS應用程式應該包含在包中,因此我們需要建立一個包,以便開始建立我們自己的ROS節點。
ROS提供了一個工具來建立一個新的ROS包,並確保所有基本元素都存在:catkin_create_pkg
。
當我們建立和使用自己的ROS包時,在特定的檔案系統位置工作非常重要,這樣ROS就可以適當地存取和構建所有內容。這些空間被稱為“Catkin工作空間”,其中一個已經在WSL-ROS環境中建立:稱為Catkin_ws
。
#!/usr/bin/env python3 # A simple ROS publisher node in Python import rospy from std_msgs.msg import String class Publisher(): def __init__(self): self.node_name = "simple_publisher" topic_name = "chatter" self.pub = rospy.Publisher(topic_name, String, queue_size=10) rospy.init_node(self.node_name, anonymous=True) self.rate = rospy.Rate(10) # hz self.ctrl_c = False rospy.on_shutdown(self.shutdownhook) rospy.loginfo(f"The '{self.node_name}' node is active...") def shutdownhook(self): print(f"Stopping the '{self.node_name}' node at: {rospy.get_time()}") self.ctrl_c = True def main_loop(self): while not self.ctrl_c: publisher_message = f"rospy time is: {rospy.get_time()}" self.pub.publish(publisher_message) self.rate.sleep() if __name__ == '__main__': publisher_instance = Publisher() try: publisher_instance.main_loop() except rospy.ROSInterruptException: pass
到此這篇關於Python 實現驅動AI機器人的文章就介紹到這了,更多相關Python 驅動AI機器人內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45