此文章之範例適用於下列條件:
TMflow 軟體版本: 2.16 或以上。
TM 手臂硬體版本:僅提供 HW3.2 或以上。
ROS 版本:ROS 2 Foxy
請注意,新舊版本之差異可能導致操作介面、步驟上會有所差異
概述 #
Robot Operating System(ROS)是一個開源的機器人中介軟體,包含豐富的庫、驅動程式和工具,旨在幫助更高效地構建機器人應用程式。為了支持 ROS,Techman Robot 推出了 TM ROS Driver,使開發人員可以通過運動控制和數據獲取(狀態、EIH 相機的圖像等)使用 TM Robot 構建基於 ROS 的應用程式。
用戶可以訪問我們的 GitHub(https://github.com/TechmanRobotInc),將所需的 TM ROS Driver 儲存庫複製到工作目錄。以下是根據不同的 ROS 版本和 TMflow 版本提供的不同版本 TM ROS DRIVER的摘要:
這份技術文件是基於 TM2 ROS2 Foxy 驅動程式和 TMflow 2.16 撰寫的。
TMflow上的前置準備 #
在使用TM ROS Driver之前,使用者需要確保機器人已正確配置。
- 網路設定
將您的電腦和機器人用乙太網線連接。在機器人上,進入System(系統)→ Network Setting(網路設定),啟用並設置靜態IP,以便所有設備共享同一個網域。
2. Ethernet Slave
為了發布ROS topics(如 feedback_states),TM ROS 驅動程序需要從機器人Ethernet Slave讀取指定的數據,因此在使用 TM ROS 驅動程序之前,用戶需要正確配置專用的資料表。
首先,下載對應的資料表傳輸文件(Data_Table_Setting_TM2_ROS_Default.xml),將其放置在 USB 設備上(路徑如下:\TM_Export{folder}\EthSlave\Transmit),並將其導入到機器人中。
然後,前往Configuration –> Connection –> Ethernet Slaves –> Data Table Setting.。打開傳輸文件,保存並啟用Ethernet Slave。
3. Listen Node (optional)
為了使用ROS服務進行機器人運動控制,需要在機器人項目中運行Listen Node。例如,構建如下的流程項目並運行它。
TM ROS Driver 的基本使用 #
首先,設置您電腦的正確靜態IP,確保它與機器人處於同一網域。您可以使用 ping 命令檢查與機器人IP的連接情況。
請確保您的電腦已設定好ROS 2環境 (for example: Debian packages for ROS 2 Foxy). 建立TM ROS Driver repository,請在目標工作空間中打開終端機。
然後,運行驅動程序並連接到機器人。
在這個例子中,由於機器人的 IP 是 192.168.10.2,指令應該是 ros2 run tm_driver tm_driver robot_ip:=192.168.10.2。
要檢查 TM ROS Driver 是否正常運作,您可以打開一個新的工作區終端機,然後嘗試執行指令 ros2 topic list
一旦 TM ROS Driver 運作正常,您可以開始執行訂閱 TM ROS 主題或請求 TM ROS 服務的程式。更多詳細資訊,請訪問 Techman Page on GitHub。