ROS与Arduino之间的串口通讯(详解)

 前言:今天早上想学一下在ubuntu ROS系统下安装Arduino实现串口通讯,在网上看了一些博客后着手开始操作。发现按他们的步骤来大体上没有什么问题(为csdn大佬们点赞),但中间过程中还是出现了一些小错误。在这里我详细的记录一下,希望对您有帮助。

步骤一:安装arduino IDE

sudo apt-get install arduino

 步骤二:安装ROS_SERIAL功能包

在终端依次输入:

sudo apt-get install ros-noetic-rosserial-arduino
sudo apt-get install ros-noetic-rosserial
rosstack profile

ROS与Arduino之间的串口通讯(详解)_第1张图片

2.然后打开arduino,因为我们下载的serial库还不在arduino库中所以我们要手动添加进来。打开arduino后找到file下的preference 

ROS与Arduino之间的串口通讯(详解)_第2张图片ROS与Arduino之间的串口通讯(详解)_第3张图片

 找到路径,在路径的提示下进入到相应的文件夹再打开终端,输入:

rm -rf ros_lib
//假如你进入到libraries文件下看到有ros_li文件可以先删除
rosrun rosserial_arduino make_libraries.py 

或者你也可以直接在终端输入;

rosrun rosserial_arduino make_libraries.py /home/nyk/sketchbook/libraries

后面就是你的库具体的地址。

 3.重启一下IDE你就可以发现有ros的库了

ROS与Arduino之间的串口通讯(详解)_第4张图片

步骤三:打开helloworld文件把代码烧入到单片机中

步骤四:打开rescore再打开一个新终端输入:

rosrun rosserial_python serial_node.py /dev/ttyUSB4

    注意注意,这边的/dec/ttyUSB4是arduino接入的端口的名字,这个和你插入的USB接口有关,就像Windows下的COM1,COM2,COM3.....一样。

查询具体的端口的命令是:

dmesg | grep ttyS*

 这是个查询系统启动到现在串口插拔的信息,显示ubtuntu下的端口号。

步骤五:打开新终端查看arduino板返回的消息

rostopic echo /chatter

 如图:ROS与Arduino之间的串口通讯(详解)_第5张图片

 

 

 结语:到这里你就完成了最简单的串口通信了,晚饭给自己加个鸡腿把

 

 

 

 

你可能感兴趣的:(ROS,arm,ubuntu,arm开发,arduino)