Multi-robots collaboration:
这是一个基于gazebo的多机器人协同建图程序框架,目前可加载6各机器人,并且分别搭载了单线激光雷达、深度摄像头、GPS、IMU和里程计和UWB等传感器。
参考链接:本程序主要参考该多机器人建图教程:https://www.ncnynl.com/archives/201811/2790.html
![使用三个小机器人进行建图 from 2019-12-25 09-31-35](/home/hierarch/Desktop/使用三个小机器人进行建图 from 2019-12-25 09-31-35.png)
使用方法:(目前可先删除src中gazebosensorplugins和navi这两个包,因为gazebosensorplugins仅适用于gazebo-9,navi还在进一步开发中)
1、编译:catkin_make
source devel/setup.bash
2、加载多个机器人模型到gazebo:
加载多个机器人: roslaunch robots_gazebo multi_robots.launch
(加载单个机器人: roslaunch robots_gazebo Single_robot_empty_world.launch )
(地图:在robots_gazebo包下的world中提供了几个简单场景,可直接在launch文件中替换)
3、分别启动每个机器人的SLAM建图程序
分别打开一个新终端:ROS_NAMESPACE=tb3_0 roslaunch robots_slam robot_gmapping.launch set_base_frame:=tb3_0/base_footprint set_odom_frame:=tb3_0/odom set_map_frame:=tb3_0/map
分别打开一个新终端:ROS_NAMESPACE=tb3_1 roslaunch robots_slam robot_gmapping.launch set_base_frame:=tb3_1/base_footprint set_odom_frame:=tb3_1/odom set_map_frame:=tb3_1/map
分别打开一个新终端:ROS_NAMESPACE=tb3_2 roslaunch robots_slam robot_gmapping.launch set_base_frame:=tb3_2/base_footprint set_odom_frame:=tb3_2/odom set_map_frame:=tb3_2/map
4、启动合并地图程序
roslaunch robots_gazebo multi_map_merge.launch
5、启动RViz
rosrun rviz rviz -d `rospack find robots_gazebo`/rviz/multi_robots_slam.rviz# catkin_ws_Multi-robots
6、启动键盘控制单独一个机器人:
ROS_NAMESPACE=tb3_0 rosrun robots_teleop turtlebot3_teleop_key
7、保存地图:
rosrun map_server map_saver -f Map/map
需要:单独编译navi包:catkin_make -DCATKIN_WHITELIST_PACKAGES="navi"
运行融合程序:roslaunch navi navi.launch
打开matlab:cd ~/Software/matlab/bin
sudo ./matlab
2019.10.25更新;
实现单个机器人的传感器数据消息获取。
2019.10.29更新;
建立初步的GPS+IMU+Odom融合框架:
GPS(x, y, heading), IMU(yaw_rate), odometry(speed) are used for sensor input.
存在问题:根据GPS计算得到的航向角错误;
2019.10.30更新;
GPS无法直接得到航向角,计算得到的结果误差也很大,暂时不考虑GPS的航向角,用IMU输出的yaw代替。
将融合结果写入txt文件中,准备用matlab画出轨迹,分析融合效果;
2019.10.31更新;
用matlab画出融和后位置与GPS结果对比,有时候会出现融和结果跑飞的情况。
2019.11.05更新:
之前的算法中的角速度计算符号错误;预测过程出错导致转弯出错,目前已解决。
gazebo中加入传感器:
GPS插件:
<gazebo>
<plugin name="gps" filename="libhector_gazebo_ros_gps.so">
<updateRate>10.0</updateRate>
<topicName>sensor_msgs/NavSatFix</topicName>
<gaussianNoise>0.0 0.0 0.0</gaussianNoise>
<offset>0 0 0</offset>
<velocityGaussianNoise>0 0 0</velocityGaussianNoise>
<frameId>base_link</frameId>
</plugin>
</gazebo>
UWB插件
<plugin name='libgtec_uwb_plugin' filename='libgtec_uwb_plugin.so'>
<update_rate>25</update_rate>
<nlosSoftWallWidth>0.25</nlosSoftWallWidth>
<tag_z_offset>1.5</tag_z_offset>
<tag_link>tag_0</tag_link>
<anchor_prefix>uwb_anchor</anchor_prefix>
<all_los>false</all_los>
<tag_id>0</tag_id>
</plugin>
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
这是一个基于gazebo的多机器人协同仿真程序框架,目前可加载6个小机器人,并且分别搭载了单线激光雷达、深度摄像头、GPS、IMU和里程计和UWB等传感器。.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
资源推荐
资源详情
资源评论
收起资源包目录
基于gazebo的多机器人协同仿真程序框架(毕设&课设&实训&大作业&竞赛&项目) (189个子文件)
.catkin_workspace 98B
model.config 347B
model.config 335B
model.config 332B
model.config 329B
model.config 329B
model.config 320B
model.config 319B
model.config 319B
model.config 310B
model.config 299B
model.config 297B
model.config 293B
model.config 280B
model.config 279B
model.config 246B
model.config 245B
model.config 237B
model.config 237B
turtlebot3_diagnostics.cpp 6KB
turtlebot3_drive.cpp 5KB
flat_world_imu_node.cpp 2KB
create_udev_rules 319B
waffle_base.dae 34.07MB
waffle_pi_base.dae 29.66MB
burger_base.dae 10.21MB
astra.dae 8.56MB
left_tire.dae 2.93MB
left_tire.dae 2.93MB
left_tire.dae 2.93MB
right_tire.dae 2.92MB
right_tire.dae 2.92MB
right_tire.dae 2.92MB
lds.dae 1.54MB
lds.dae 1.54MB
lds.dae 1.54MB
HDL32E_scan.dae 317KB
r200.dae 203KB
r200.dae 203KB
HDL32E_base.dae 154KB
wall.dae 5KB
hexagon.dae 3KB
turtlebot3_drive.h 2KB
flat_world_imu_node.h 1KB
astra.jpg 64KB
r200.jpg 2KB
src.kdev4 587B
src.kdev4 44B
multi_robots.launch 6KB
multi_robots.launch 6KB
multi_map_merge.launch 5KB
turtlebot3_hector.launch 3KB
turtlebot3_frontier_exploration.launch 2KB
robot_gmapping.launch 2KB
turtlebot3_gmapping.launch 2KB
turtlebot3_cartographer.launch 2KB
Single_vehicle_empty_world.launch 1KB
Single_robot_empty_world.launch 1KB
turtlebot3_slam.launch 1KB
turtlebot3_model.launch 655B
turtlebot3_remote.launch 543B
turtlebot3_robot.launch 542B
turtlebot3_karto.launch 417B
turtlebot3_rpicamera.launch 396B
turtlebot3_teleop_key.launch 369B
turtlebot3_core.launch 315B
turtlebot3_lidar.launch 283B
turtlebot3_realsense.launch 99B
turtlebot3_lds_2d_gazebo.lua 2KB
robot_lds_2d.lua 2KB
multiplot.m 502B
traffic_parking.material 142B
traffic_stop.material 136B
traffic_bar.material 134B
traffic_bar.material 134B
tunnel.material 132B
course.material 124B
README.md 4KB
bag_files.md 228B
A.msg 352B
moving_target.msg 322B
ECUData.msg 297B
Predict_traj.msg 172B
Rectangle.msg 125B
PointCloudMultiLaser.msg 108B
InsVelocity.msg 100B
History_traj.msg 90B
PointCloudMultiLidar.msg 83B
moving_target_send.msg 77B
GpswithHeading.msg 69B
OdometrywithGps.msg 52B
TargetCar.msg 34B
Points.msg 31B
multiplot.m~ 500B
map.pgm 944KB
course.png 355KB
tunnel.png 80KB
traffic_stop.png 42KB
traffic_parking.png 31KB
traffic_bar.png 3KB
共 189 条
- 1
- 2
资源评论
热爱技术。
- 粉丝: 2487
- 资源: 7862
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- java-leetcode题解之Possible Bipartition.java
- java-leetcode题解之Positions of Large Groups.java
- java-leetcode题解之Populating Next Right Pointers in Each Node
- SwiftUI编写的贪吃蛇小游戏讲解
- 瑞昱主控 RTS5876 规格书
- python课程设计 xhyxhy
- 学术报告-无线领域-人工智能- 2022 华为-香港科技大学未来无线理论联合研讨会
- 最新浪子授权系统网站源码 全开源免授权版本
- 数据结构实验之队列实现:基于顺序存储的循环队列及其操作实践
- 数据结构中链栈的实现及其应用解析-C++实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功