ros和arduino的区别

如题所述

ros和arduino的区别分别是基于ROS与Arduino通信方式的差别:

1、基于ros的通信机制,如话题,服务,行为等方式,这个时候需要用到rosserial库,需要安装rosserial_arduino。

这种方式的好处是不需要知道串口之间的通信协议,直接发布和订阅来传递参数,缺点是不稳定,偶尔出现订阅不上话题,或者arduino设备连接不上的问题。不推荐。

2、直接利用串口通信的规则,即设置好串口的所有配置参数,然后打开串口,通过write()和read()函数进行写和读。

但是必须提前获知串口的通信协议,如“M01 30” 表示第一个关节,转30度。该方法上下位机间通信稳定性高。推荐。

建立通信方式的步骤如下:

1、首先需要在ubuntu系统中安装Arduino IDE,安装指令为:sudo apt-get install arduino,完成后会生成arduino的文件目录。

2、安装rosserial功能包,安装完成后,会生成rosserial_arduino文件夹,安装指令为:sudo apt-get install ros-indigo-rosserial-arduino;

3、将rosserial_arduino文件夹下的ros_lib文件复制到Arduino库目录sketchbook/libraries。

温馨提示:答案为网友推荐,仅供参考