--------------------------------------------------
#用于AGV激光雷达导航与SLAM的ROS程序包
#开发环境为Ubuntu16.04 + ROS Kinetic
--------------------------------------------------
##使用方法
* __下载__
建立一个含src子文件夹的文件夹
` $ mkdir 自定义路径/自定义工作空间名/src`
将src设为工作路径
` $ cd 自定义路径/自定义工作空间名/src`
拉取代码
` $ git clone [email protected]:OceanYv/gp_agv.git`
* __编译__
编译前,确认是否安装官方的serial功能包、robot_pose_ekf功能包,确认方法为在终端中输入
` $ rospack find 包名`
若未安装serial,运行
` $ sudo apt-get install ros-kinetic-serial`
若未安装robot_pose_ekf,在 https://github.com/ros-planning/navigation/tree/kinetic-devel 下载并编译;
将路径修改为工作空间路径
` $ cd 自定义路径/自定义工作空间名`
并运行catkin_make指令以编译程序
` $ catkin_make`
运行以下指令将路径刷新到环境变量中
` $ echo "source 自定义路径/自定义工作空间名/devel/setup.bash" >> ~/.bashrc`
然后重新打开终端即可使用
* __运行__
通过rosrun指令或roslaunch指令运行相关程序;
##package说明
* __run_agv:系统初始化,并启动各个模块__
启动整个系统的指令为
` $ roslaunch run_agv run_agv.launch`
__要设置的参数__
/config/fixed_tf.yaml中的参数:激光雷达安装位置信息
* __base_controller:用于基本的运动控制、里程计数据和IMU数据获取与融合__
单独运行用以下指令
` $ roslaunch base_controller base_controller.launch`
__要设置的参数__
/config/base_controller.yaml中的参数:STM32串口通讯参数
/launch/include/kenzhrobot_pose_ekf.launch.xml中的参数:有注释的三行
__文件说明__
base_controller.cpp:获取速度指令后通过串口向下位机发送速度指令,并并定时读取下位机的里程计数据;
* __lslidar_n301:镭神官方提供的ROS开发包,用于读取N301激光雷达数据__
单独运行用以下指令
` $ roslaunch lslidar_n301_decoder lslidar_n301.launch --screen`
之后运行
` $ rosrun rviz rviz`
即可在rviz中即可查看对应激光雷达数据
* __set_gmapping:调用gmapping功能包,并保存地图文件__
__要设置的参数__
/launch/robot_gmapping.launch中的参数:gma pping参数、save_map参数
该launch文件中的file_location和mapname两个param一定要按照自己的位置来配置
* __hwtimu:imu提供的包,用于通过串口连接imu并发布imu数据topic__
单独运行用以下指令
` $ roslaunch hwtimu hwtimusubexp.launch`
__要设置的参数__
/cfg下yaml文件中的参数
* __joy_control、:遥控器使用和驱动,通过无线通讯控制底盘的运动,发布vel_cmd话题__
单独运行用以下指令
` $ roslaunch joy_control we_joy_control.launch`
以上包在使用之前要安装joy包,还要依赖dg_common包
##其他说明
*__硬件要求__
在安装①网口通讯的激光雷达②RS232通讯的STM32 后方可正常运行;
若在无上诉硬件时运行run_agv.launch,会报错;
如果想要观察系统结构,请将/base_controller/src/base_controller.cpp中的71-91、133-135\182-187行注释掉,以免base_controller节点被kill;
*__一些基本指令__
查看tf tree
` $ rosrun rqt_tf_tree rqt_tf_tree`
查看系统结构
` $ rqt_graph `
查看参数服务器
` $ rosparam list `
*__建图方法__
sudo chmod 777 /dev/ttyS4(串口号) //获取对应串口的使用权限
sudo ls -l /dev/ttyS* 或者 sudo ls -l /dev/ttyUSB* //查看串口使用情况
roslaunch run_agv laser_slam_run.launch //功能:通过遥控小车运动来进行建图
设置激光雷达IP:192.168.1.125 255.255.255.0 192.168.1.1
可通过ping 192.168.1.222 或者ifconfig或者sudo tcpdump -n -i enp0s31f6来检查连接状态
roslaunch set_gmapping save_map_my.launch //保存地图数据
在运行该launch文件前,先在set_gmapping/config/save_map.yaml中修改文件名
*__已知地图的自主导航__
sudo chmod 777 /dev/ttyS4(串口号) //获取对应串口的使用权限
* sudo ls -l /dev/ttyS* 或者 sudo ls -l /dev/ttyUSB* //查看串口使用情况
roslaunch run_agv navigation_run.launch //功能:通过已经提供的地图来进行导航,在rviz中
* 修改map_file的值以改变要载入的地图
//rosrun set_gmapping acml_global_init
roslaunch set_gmapping move_base.launch //进行自主导航
* 可以在rviz中指定导航目的地
7.1代码调试
①新增加一个参数的base_controller节点调试
1) sudo chmod 777 /dev/ttyS4
sudo chmod 777 /dev/ttyUSB0
roslaunch run_agv laser_slam_run.launch
rosrun base_controller imu_pre_inte
rostopic echo odom_imu
在rviz中查看odom_imu的数据结果
rosrun set_gmapping save_map
在指定路径下运行,且运行之前修改名字为map0701
2) 在非原点启动导航程序
roslaunch run_agv navigation_run.launch
在rviz中查看amcl_pose的定位结果
现在存在的问题:
1.数据融合的算法中存在一些明显的逻辑错误,计划在进一步巩固数学基础之后再全盘进行重新编写
没有合适的资源?快使用搜索试试~ 我知道了~
本科毕业设计,用于AGV激光雷达导航与SLAM的ROS程序包 没啥参考价值的缝合怪 安利一下我毕设的另一个库snake-arm....

共94个文件
yaml:21个
launch:14个
cpp:14个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 132 浏览量
2024-12-04
21:48:41
上传
评论
收藏 833KB ZIP 举报
温馨提示
本科毕业设计,用于AGV激光雷达导航与SLAM的ROS程序包。没啥参考价值的缝合怪。安利一下我毕设的另一个库snake_arm#用于AGV激光雷达导航与SLAM的ROS程序包#开发环境为Ubuntu16.04 + ROS Kinetic##使用方法下载建立一个含src子文件夹的文件夹 $ mkdir 自定义路径/自定义工作空间名/src将src设为工作路径 $ cd 自定义路径/自定义工作空间名/src拉取代码 $ git clone [email protected]:OceanYv/gp_agv.git编译编译前,确认是否安装官方的serial功能包、robot_pose_ekf功能包,确认方法为在终端中输入 $ rospack find 包名若未安装serial,运行 $ sudo apt-get install ros-kinetic-serial若未安装robot_pose_ekf,在 https://github.com/ros-planning/navigation/tree/kinetic-devel 下载并编译将路径修改为工作空间路径
资源推荐
资源详情
资源评论



























收起资源包目录



































































































































共 94 条
- 1
资源评论


赵闪闪168
- 粉丝: 1745
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- OJCode-ACM资源
- vcos_components_rt_framework-智能车资源
- lanqiaobei-蓝桥杯资源
- 汇编语言-汇编语言资源
- cotParam-C语言资源
- 《基于 Matlab 的计算机视觉与深度学习实战指南》
- lenosp-C++资源
- 深度学习基于EfficientViMBlock的UNet网络设计与实现:图像分割任务中的多头自注意力机制应用
- AIAS-Java资源
- EFQRCode-Swift资源
- matlab-Matlab资源
- ssquant-ai-AI人工智能资源
- OurChat-Rust资源
- cu-bridge-硬件开发资源
- form-create-移动应用开发资源
- skywu520codelib-单片机开发资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
