ros中使用serial包實現串列埠通訊

2021-09-23 05:49:57 字數 1043 閱讀 5290

一、ubuntu下的串列埠助手cutecom

1.安裝cutecom並開啟:

sudo apt-get install cutecom

sudo cutecom

dmesg | grep ttys*
二、使用ros提供的serial包實現串列埠通訊
sudo apt-get install ros-kinetic-serial  #ros為kinect版本
roscd serial
若是安裝成功會看到:

$:/opt/ros/kinetic/share/serial
3.新建catkin_ws

見我另外一篇部落格catkin建立工程

4.在src目錄中編寫串列埠通訊的**

//serial_port.cpp

#include #include #include int main(int argc, char** ar**)

catch(serial::ioexception& e)

//判斷串列埠是否開啟成功

if(sp.isopen())

else

ros::rate loop_rate(500);

while(ros::ok())

_exported_targets} $)

target_link_libraries(serial_port

$)

6.許可權問題

執行roscore,執行節點看是否能開啟串列埠。如果提示unable to open port,是由於許可權不夠引起的,進行如下操作

建立檔案:(若使用的是ttyacm將ttyusb替換即可)

sudo gedit /etc/udev/rules.d/70-ttyusb.rules
在開啟的檔案中新增

kernel=="ttyusb[0-9]*", mode="0666"

在ROS中使用nodelet

nodelet的作用 減少在ros中傳遞資料的延遲。在同乙個程序內,執行多個node,通過指標傳遞資料,使得程序內訊息傳遞時不產生複製成本。下面是乙個使用nodelet原始檔的例子 namespace nodelet tutorial math private virtual void oninit...

如何在ros中使用xbox one

目錄 在專案中需要使用遊戲手柄對裝置進行一些操作,在此選擇了微軟xbox手柄,通過在linux下呼叫裝置描述檔案來獲取遊戲手柄的輸入資料,使用步驟以及 描述如下。microsoft x box one s pad 遊戲手柄在ubuntu下的驅動程式 sudo apt get install joys...

在ROS中使用Python3

執行測試平台 小強ros機械人 當前ros是只支援python2.7的。python3的支援在ros的計畫中,詳細的可以看這裡。簡單說來就是要到2019年ros的n版本才能完全支援python3。首先要了解為什麼ros不能支援python3.對於純的python 同時支援python3和python...