本文最后更新于:2022年5月29日 上午
1、安装ArbotiX功能包
进入你的ros工作空间目录,下载安装ArbotiX功能包(Kinetic版本)
1
| git clone https://github.com/vanadiumlabs/arbotix_ros.git
|
2、下载键盘控制功能包mbot_teleop
1)进入DownGit
2)复制下面的链接放进去:
https://github.com/Magicalsoso/Ros-Beginner-tutorial/tree/master/mbot_teleop
3)点击下载,解压到你的ros工作空间。
3、编译
1 2
| cd ~/catkin_ws catkin_make
|
4、配置ArbotiX控制器
1)创建配置文件
在你机器人功能包的config文件夹下,创建配置文件fake_mbot_arbotix.yaml,该文件描述了控制器的参数。
1 2 3 4 5 6 7 8 9 10 11 12 13
| controllers: { base_controller: { type: diff_controller, base_frame_id: base_footprint, base_width: 0.26, ticks_meter: 4100, Kp: 12, Kd: 12, Ki: 0, Ko: 50, accel_limit: 1.0 } }
|
此文件在arbotix功能包中arbotix_python的源文件diff_controller.py进行载入数据,如果自己不去自定义会有相应的默认值。
2)新建launch文件
进入launch文件夹创建 arbotix_mbot_with_xacro.launch 文件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| <launch> <arg name="model" default="$(find xacro)/xacro --inorder '$(find mbot_description)/urdf/mbot_with_laser.xacro'" /> <arg name="gui" default="true" /> <param name="robot_description" command="$(arg model)" /> <!-- 设置GUI参数,显示关节控制插件 --> <param name="use_gui" value="$(arg gui)"/> <node name="arbotix" pkg="arbotix_python" type="arbotix_driver" output="screen"> <rosparam file="$(find mbot_description)/config/fake_mbot_arbotix.yaml" command="load"/> <param name="sim" value="true"/> </node> <!-- 运行joint_state_publisher节点,发布机器人的关节状态 --> <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" /> <!-- 运行robot_state_publisher节点,发布tf --> <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" /> <!-- 运行rviz可视化界面 --> <node name="rviz" pkg="rviz" type="rviz" args="-d $(find mbot_description)/config/mbot_arbotix.rviz" required="true" /> </launch>
|
5、启动仿真器
1
| roslaunch mbot_description arbotix_mbot_with_xacro.launch
|
启动后还要进行一些配置才会有如下显示效果,按左下角的 Add 添加Odometry选项,并设置为下图所示。
6、启动键盘控制
1
| roslaunch mbot_teleop mbot_teleop.launch
|
7、控制小车移动
现在可以通过键盘控制小车进行移动了