第一次了解胡老师和古月居,是几年前公司的巡检机器人项目,正当我无从下手的时候,在网上看到了胡老师的几篇博文,言简意赅得解释了ROS概念,使人豁然开朗。随后观看了古月居的21讲视频,才逐渐了解ROS的魅力,跟着胡老师,磕磕绊绊做出第一套ROS1机器人测试平台,当机器人动起来的时候,我才理解了胡老师每次视频结尾的那句话:怕什么真理无穷,进一寸有一寸的欢喜。

这几年来,也一直关注着机器人行业,时常翻看古月居公众号的文章,了解技术发展。就在今年1013号,在公众号上刷到古月居要出自己的智能小车,看到新款硬件平台和ros2系统,有了重新搭建机器人的冲动,立马下单,也只抢到了14天预售的导航版。等待的日子是漫长的,不过期间在微信群里了解讯息,结交朋友,分享技术,收获颇丰。

终于等到发货,当包装盒拿到手中,这一大盒的零件,看出古月居的智能小车诚意满满。

从轮子,地盘,控制板,核心板,雷达,一个看似小巧的小车,内部又是包含着无穷真理。组装完毕,有几点注意,跟大家分享:1.看纸质说明书安装部件,结合视频连线,一边安装部件,一边布线。2.轮子确实不好安装,可以简单打磨一下轮子内径,再进行插入。3.有些螺丝加上垫片后过短,可适当去掉垫片。4.电源插头可先插入控制板,再安装x3派。

组装好后,必须拍些靓照。

接下来就是安装系统,按照古月居的资料,走了几个简单案例,其中在机器人遥控与可视化章节,PC端手柄遥控智能小车教程介绍得比较简单,我分享一下我在PC端使用北通手柄,模拟XBOX手柄模式,遥控小车的经验。

首先在PC端做一些准备工作,需要将手柄的接收器连接到PC端,并安装好对应的驱动功能包。

1、手柄插入到pc端,长按北通手柄的中间键,切换到xbox模式,虚拟机可以适配。

可以在PC端的终端输入:

ls /dev/input/

可以看到是js0或者js1,我这里js0是虚拟机的虚拟设备,新添加的手柄是js1

2、安装手柄测试软件

sudo apt install jstest-gtk

安装好后,进行验证

jstest-gtk

可以验证手柄功能完整。

3pc端安装对应版本的小车驱动,我这里是使用humble版本

sudo apt install ros-humble-teleop-twist-joy # 安装手柄的驱动包

sudo apt install ros-humble-joy-linux # 安装手柄的驱动包

4、验证手柄节点

pc端启动手柄节点:

ros2 launch teleop_twist_joy teleop-launch.py joy_config:='js1'

查看话题:

ros2 topic echo /joy

可以看到话题信息

自此小车话题建立了,关闭节点,下面就是小车整体手柄控制了。

5、启动手柄控制控制

小车端:启动小车地盘节点

ros2 launch originbot_bringup originbot.launch.py

pc端:启动手柄节点

ros2 launch teleop_twist_joy teleop-launch.py joy_config:='js1'

下面是通过PC端手柄控制小车。

通过摸索,北通遥控能控制的有三个动作,1、右上角的RB启动键是带有左转的前进;2、右上角RB+左上角LT组合键是带有右转的前进。3、前面两种组合+右上角RT键是带有方向的倒退。

需要说明:整体控制起来是挺别扭,文章也是提供搭建过程,如果要适配好北通手柄,需要重新修改驱动了。

这里分享我的探索过程,后面还有很多需要学习,也多多跟各位朋友交流技术。