ros智能车自主导航仿真

    技术2023-06-15  112

    文章目录

    准备工作编译运行:编译运行 小车的自动避障: 参考网址: https://gitea.amovlab.com/UnmannedSystemCourse/ArduCar_simulation https://blog.csdn.net/qq_43538025/article/details/104257332?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159434970919195264543255%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=159434970919195264543255&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2 allfirst_rank_ecpm_v3~pc_rank_v2-1-104257332.first_rank_ecpm_v3_pc_rank_v2&utm_term=%E5%AE%89%E8%A3%85mavros

    https://gitea.amovlab.com/UnmannedSystemCourse/ArduCar_simulation

    准备工作

    创建工作空间 将软件包下载到本地

    cd ~/car_ws/src git clone https://github.com/xmy0916/racecar.git

    下载对应的插件:

    sudo apt-get install ros-melodic-driver-base sudo apt-get install ros-melodic-gazebo-ros-control sudo apt-get install ros-melodic-effort-controllers sudo apt-get install ros-melodic-joint-state-controller sudo apt-get install ros-melodic-ackermann-msgs sudo apt-get install ros-melodic-global-planner sudo apt-get install ros-melodic-teb-local-planner

    更换cmake文件中opencv路径: 查询opencv路径: 在camakelist中修改成红框的样子,后面的cmake文件不用加上去:

    编译运行:

    编译

    编译命令:

    catkin_make

    编译之后就添加环境变量,用这种方法在打开新的终端窗口就可以不用重新注册工作空间了,如果用上面的创建工作空间的时候那种方法每次打开一个新的终端就需要注册一次很麻烦:

    运行

    运行命令

    roslaunch racecar_gazebo racecar.launch

    可以在racecar.launch文件中修改小车的起始位置。

    运行地图

    roslaunch racecar_gazebo racecar_runway.launch

    加载完成后: 启动rivz:

    roslaunch racecar_gazebo slam_gmapping.launch

    控制小车移动 将地图保存下来:

    rosrun map_server map_saver -f test_map

    修改下面文件中的地图为刚刚保存的地图: 启动:

    roslaunch racecar_gazebo racecar_runway_navigation.launch

    启动rivz:

    roslaunch racecar_gazebo racecar_rviz.launch

    设计小车运行轨迹 启动导航脚本

    rosrun racecar_gazebo path_pursuit.py

    小车开始运动,中间的红色就是小车走过的轨迹:

    小车的自动避障:

    参考网址:https://gitea.amovlab.com/UnmannedSystemCourse/ArduCar_simulation 下载功能包:

    sudo apt-get install ros-melodic-navigation

    编译包: 运行amp_navigation.sh文件: 运行后可能会报错找不到mavrous,使用下面的命令安装:

    sudo apt-get install ros-melodic-mavros ros-melodic-mavros-extras

    装好后重新运行报错: 解决方法: 这里耗时有点久 再次运行: 运行结果: 这里gazebo加载会很慢,多等等 可按照下图手动控制小车:

    在Rviz中用2D Nav Goal为小车设定目标,小车就会开始运动了: 在小车返回中现场设定路障: 小车避开了障碍:

    继续添加路障,堵住当前小车的道路: 小车重新规划路径:

    Processed: 0.012, SQL: 9