@1157354382
我疆持了三個星期,找到了問題,並寫成範例。
檢查是否在使用 Fast DDS 並確保雙方保持一致的步驟。
檢查並切換回 Fast DDS
在您的筆記型電腦和機器人端,開啟終端並執行以下命令來檢查當前的 DDS 實現:
echo $RMW_IMPLEMENTATION如果返回的結果不是 rmw_fastrtps_cpp,則表示您不在使用 Fast DDS。
步驟 2:切換回 Fast DDS如果您發現兩端的設定不一致,請按照以下步驟將DDS實現切換回 Fast DDS:
在筆記型電腦端執行: export RMW_IMPLEMENTATION=rmw_fastrtps_cpp在機器人端執行:
export RMW_IMPLEMENTATION=rmw_fastrtps_cpp 步驟 3:重新啟動 ROS 2 節點在進行上述設置後,請重新啟動您在筆記型電腦和機器人端的所有 ROS 2 節點,以使更改生效。
步驟 4:測試通訊運行您的發佈者和訂閱者節點,檢查它們之間的通訊是否正常。您應該能夠在訂閱者中看到發佈者發送的消息。
總結通過以上步驟,您可以檢查並確保您的 ROS 2 系統使用 Fast DDS 進行通訊。如果您發現不一致,只需使用相應的命令切換並重新啟動節點即可。