前言
上几节了解了ROS的三种消息机制,大家对ROS也有了一定的认识,今天再介绍下ROS常用的工具.
rostopic
rosservice
rosnode
两款仿真软件介绍
Gazebo
集成物理引擎的一款仿真软件,主要在场景中仿真机器人的运动等,可以模拟真实场景.通常与ROS结合使用,主流支持机器人的模型文件格式为URDF格式,Xacro格式.
RVIZ
基于qt设计的数据分析,数据可视化软件,主要用于传感器数据可视化,传感器数据处理,算法验证等.通常与ROS和gazebo联合使用.
部署比赛环境
安装fetch机器人:
sudo apt-get install ros-kinetic-fetch-gazebo-demo
本地创建ROS的工作区间:
mkdir -p ~/robocon_ws/src
cd ~/robocon_ws/src
catkin_init_workspace
在我们预备队2020的群文件中下载2020预备队比赛模型.7z
这个文件,放在我们的src下:
右键提取到此处:
这里解压会多出一层目录,我们把他去掉:
cd ~/robocon_ws/src/2020预备队比赛模型
mv * ../
cd ..
rm -r 2020预备队比赛模型
编译工程:
cd ~/robocon_ws
catkin_make
注意这里,如果有报错,大家检查下是不是缺少了什么包,然后使用第一节课教的apt的方式安装!!!
使能环境变量:
echo "source ~/robocon_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
启动比赛场景
roslaunch racecar_gazebo racecar_robocon.launch
初始化fetch:
cd ~/robocon_ws/src/racecar_gazebo/scripts/fetch
python prepare_simulated_robot.py
可以看到fetch机器人的手臂在收缩回去,成功收缩则fetch机器人安装没有问题
运动下车模,将鼠标点击左侧的?图标的窗口:
按键盘上的wasd运动车模,如果可以运动则小车也没有问题
启动流水线:
cd ~/robocon_ws/src/racecar_gazebo/scripts/
python stock_products.py
黄色物块开始运动,则流水线脚本OK
启动fetch移动控制的脚本:
cd ~/robocon_ws/src/racecar_gazebo/scripts/fetch
python fetch_teleop_key.py
作业
- 按照比赛规则视屏,参考现成代码,完善比赛规则剩余的脚本编写,规则视屏地址:传送门
- 看
~/robocon_ws/src/racecar_gazebo/launch/racecar_robocon.launch
这个文件的源码,了解launch文件是如何启动别的launch文件以及py脚本和加载xml文件的. - 构思如何完成比赛
作业提交
作业一需要提交到群文件8.1日的文件夹中,截图源码,写上必要文字说明,截图效果.其余两个作业可以不提交作业提交截止时间2020年8月5日23时59分.
来源:oschina
链接:https://my.oschina.net/u/4312696/blog/4466205