北邮机器人队2020预备队培训(五) —— 部署比赛

前言

上几节了解了ROS的三种消息机制,大家对ROS也有了一定的认识,今天再介绍下ROS常用的工具.

rostopic

传送门

rosservice

传送门

rosnode

传送门

两款仿真软件介绍

Gazebo

集成物理引擎的一款仿真软件,主要在场景中仿真机器人的运动等,可以模拟真实场景.通常与ROS结合使用,主流支持机器人的模型文件格式为URDF格式,Xacro格式.

RVIZ

基于qt设计的数据分析,数据可视化软件,主要用于传感器数据可视化,传感器数据处理,算法验证等.通常与ROS和gazebo联合使用.

部署比赛环境

北邮机器人队2020预备队培训(五) —— 部署比赛_第1张图片
安装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下:
北邮机器人队2020预备队培训(五) —— 部署比赛_第2张图片
右键提取到此处:
北邮机器人队2020预备队培训(五) —— 部署比赛_第3张图片
这里解压会多出一层目录,我们把他去掉:

cd ~/robocon_ws/src/2020预备队比赛模型
mv * ../
cd ..
rm -r 2020预备队比赛模型

北邮机器人队2020预备队培训(五) —— 部署比赛_第4张图片
编译工程:

cd ~/robocon_ws
catkin_make

北邮机器人队2020预备队培训(五) —— 部署比赛_第5张图片
注意这里,如果有报错,大家检查下是不是缺少了什么包,然后使用第一节课教的apt的方式安装!!!
使能环境变量:

echo "source ~/robocon_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

启动比赛场景

roslaunch racecar_gazebo racecar_robocon.launch

北邮机器人队2020预备队培训(五) —— 部署比赛_第6张图片
初始化fetch:

cd ~/robocon_ws/src/racecar_gazebo/scripts/fetch
python prepare_simulated_robot.py

北邮机器人队2020预备队培训(五) —— 部署比赛_第7张图片
可以看到fetch机器人的手臂在收缩回去,成功收缩则fetch机器人安装没有问题

运动下车模,将鼠标点击左侧的?图标的窗口:
北邮机器人队2020预备队培训(五) —— 部署比赛_第8张图片
按键盘上的wasd运动车模,如果可以运动则小车也没有问题
启动流水线:

cd ~/robocon_ws/src/racecar_gazebo/scripts/
python stock_products.py

北邮机器人队2020预备队培训(五) —— 部署比赛_第9张图片
黄色物块开始运动,则流水线脚本OK
启动fetch移动控制的脚本:

cd ~/robocon_ws/src/racecar_gazebo/scripts/fetch
python fetch_teleop_key.py

北邮机器人队2020预备队培训(五) —— 部署比赛_第10张图片

作业

  1. 按照比赛规则视屏,参考现成代码,完善比赛规则剩余的脚本编写,规则视屏地址:传送门
  2. ~/robocon_ws/src/racecar_gazebo/launch/racecar_robocon.launch这个文件的源码,了解launch文件是如何启动别的launch文件以及py脚本和加载xml文件的.
  3. 构思如何完成比赛

作业提交

作业一需要提交到群文件8.1日的文件夹中,截图源码,写上必要文字说明,截图效果.其余两个作业可以不提交作业提交截止时间2020年8月5日23时59分.

你可能感兴趣的:(北邮机器人队培训,python)