前言:今天早上想学一下在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
2.然后打开arduino,因为我们下载的serial库还不在arduino库中所以我们要手动添加进来。打开arduino后找到file下的preference
找到路径,在路径的提示下进入到相应的文件夹再打开终端,输入:
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的库了
步骤三:打开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
如图:
结语:到这里你就完成了最简单的串口通信了,晚饭给自己加个鸡腿把