这几天,把以前攒的优必选的舵机又拿出来玩了一下。
超喜欢这一类东西,可惜基本就是攒着占地方,多数在吃灰。立下了个目标,使用ROS控制舵机的旋转。记录一下学习的过程。
1、这个舵机是个串口舵机,两节锂电池供电,一个信号线,即使信号输入,也是信号输出。信号使用串口方式,波特率115200.
2、首先测试舵机。之前按网友提供的文档,这个舵机是能够做0~250度角度旋转,能够控制旋转的速度。能设置ID,能控制LED。还能做360度的旋转。但是不知是时间久了,还是怎么回事。现在LED控制似乎不起作用。好在角度控制还是OK的。360度旋转也不行了。
之前写了个 测试程序,不晓得为啥关不了灯了。也许是舵机的问题吧!
文档和程序分享:链接:https://pan.baidu.com/s/1h5p6oOv5awKy3vparmbnEQ
提取码:c4hh
3、接下来 准备好ROS的环境,我是用 ubuntu16,安装的kinetic,这块网上很多教程,只要网络好,还是挺容易安装的。安装好rosserial的包。确保ros环境OK。
安装好pycharm。用它来编程,方便很多。可以安装Anconda。但是不要把Anconda设置到环境变量里边去。毕竟ROS还是使用的是python2.7。在pycharm里边设置好Project interpreter 为系统的/usr/bin/python2.7
在catkinws/src目录下创建 pythonros项目:
catkin_create_pkg python_ros
这里,命令后可带参数,如果没有带,后期修改里边的CMakeLists.txt 也是一样的。
4、基本想法,在ubuntu下,创建一个话题,一个程序负责从话题中获取控制信息,将控制信息写入串口,另外一个程序负责 向话题写入控制信息。