【FishBot四驱V2】9.0.4.使用ROS2键盘控制FishBot并查看ODOM
-
9.0.4.使用ROS2键盘控制FishBot并查看ODOM
你好,我是小鱼,上一节我们完成了对FishBot主控板的配置,并成功接入了ROS2,本节我们尝试使用RVIZ2查看可视化里程计。
一、启动FishBot
第一步还是启动FishBot的电源,接着打开终端,运行McroRos服务
sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6
如因为网络问题无法启动可以尝试国内指令:
docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host registry.cn-hangzhou.aliyuncs.com/fishros/micro-ros-agent:humble udp4 --port 8888 -v6
等待FishBot自动接入,如果长时未接入,可以手动点击RST重启,如还未接入,请回到上一节配置助手处重新配置。
接入标志为,看到如下信息
二、 测试键盘控制
打开终端,输入
ros2 run teleop_twist_keyboard teleop_twist_keyboard
接着按x按键调节下线速度,降低到0.1左右,防止一下子太快飞出去。
接着尝试点击j按钮,机器人将逆时针转动,点击k或者空格,机器人将停在原地。
根据键盘提示,你可以尝试前进后退,左转右转等命令。
三、里程计信息
我们的小车是带编码器的,可以实时输出里程计数据,使用指令
ros2 topic echo /odom --field pose.pose
就可以看到实时的机器人位置信息。
四、使用rviz2可视化里程计数据
打开终端输入rviz2,即可打开rviz2界面,接着完成下面四步。
- 修改fixedframe为odom
- 点击ADD
- 切换到By Topic,选择odom
- 点击OK按钮
接着我们需要修改下odom的订阅模式,展开odom话题,将Reliable修改为Best Effort。修改成功后右边将出现里程计箭头。
此时控制小车移动,你将在rviz2中实时看到小车的轨迹,这个就是里程计。
五、使用rviz查看IMU
安装插件
sudo apt install ros-$ROS_DISTRO-rviz-imu-plugin
五、总结
上面这个轨迹就是所谓的里程计,是通过小车的运动学模型和轮子编码器计算出来的,不过它并不是十分的准确,而且无法感知深度信息,所以我们还需要雷达来进行深度的扫描,以此完成避障操作。
下一节我们开始对雷达进行配置,接着完成手持雷达建图。