当前位置: 首页 > news >正文

基于autoware.1.14与gazebo联合仿真进行全局规划高精地图版

 1.首先安装autoware ,大家可以以下一下博客进行安装,如果缺少库什么的直接问ai安装对应的库就行。ubuntu18.04安装Autoware1.14---GPU版 最全环境配置说明_autoware1.14安装教程-CSDN博客

安装成功后运行:

source install/setup.bash

roslaunch runtime_manager runtime_manager.launch 

2.接下来下载vehicle_sim的gazebo仿真环境:

mkdir -p ~/vehicle_sim/src
cd ~/vehicle_sim/src
git clone https://github.com/yukkysaito/vehicle_sim.git
cd ~/vehicle_sim
catkin_make
source devel/setup.bash
roslaunch vehicle_sim_launcher gazebo_autoware.launch gpu:=true

运行上述命令之后会出现以下的汽车模型以及虚拟gazebo环境以及汽车控制界面

如果打开gazebo黑屏一直初始化加载不出来,把网络断了就OK

3.下载对应的点云地图文件以及坐标变化还有路径信息-下载autoware_word就行:https://drive.google.com/drive/folders/1GIKh2I5JTpJC7QJIYYtZ1YdJFTRdl8HW 

4.同时下载对应的矢量地图是由北京石油化工学院的常彦文同学绘制的,链接: ​​​​​​提取码: y5zw百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间https://pan.baidu.com/s/17Oei64SxL9h79OfzTJDZjg 5.接下来就正式开始操作:在autoware可视化操作界面中点击Topics页面中点击左下角Refresh刷新一下看有没有点云信息,有的话就证明与gazebo连接正常。

6.首先点击Map里面, 在Point Cloud中右边的Ref中选择4步骤中文件夹里的autoware-220302.pcd,同理Vector Map选择4步骤中文件夹里sim_white的所有.csv文件,TF则选择步骤3文件夹里的tf.launch,点击右下角的RViz就可以看到相应的地图文件:

​ 

​ 7.之后点击Sensing页面进行传感器的设置, 由于此次进行的虚拟仿真故不需要选择传感器,只需要选择Points Downsampler下的体素下采样voxel_grid_filter以及Points Preprocessor下的地面滤除ring_ground_filter,具体的参数可以默认就行(参数在选项右边的app里面设置,设置完记得点ok保存),。

8.之后点击Computing中Localization下的lidar_localizer中ndt_matching进行点云定位,具体的参数设置如下图,注意选择Initipal Pos,点击ok保存,打开rviz中可以看到已经定位成功

9.接着点击autoware_connector下的vel_pose_connect进行车速位置连接,参数设置如下所示

10.接着点击Detection下的lidar_euclidean_cluster_detect用于检测障碍物,参数采用默认设置,之后点击RViz看的画面如下:

11.之后在点击“ lidar_tracker ”下的“ imm_ukf_pda_track ”节点,参数采用默认设置,用于对障碍物进行跟踪。

12.之后接着点击 Mission Planning下的“lane_rule”和“lane_select”,参数采用默认设置:

13.接着选择Semantics中的 wayarea2grid 和road_occupancy_processor ,用于确定可行驶区域,类似栅格地图,但是范围比栅格地图更大,其参数的默认设置如下图所示:

14.在Mission Planning中OpenPlanner-Global Planning 下的op_global_planner选择 op_globa

l_planner 的节点,其中 Replanning 用于到达目标点后,可以重新规划到下一个目标点,如果有了两个目标点,那么会循环;Smoothing 用于平滑路径。

15.之后在Motion Planning 下的OpenPlanner-Local Planning 中的所有节点进行选择,对无人车进行局部路径规划,其中对op_common_params节点的参数进行设置时,主要涉及以下关键参数:Plan Distance用于设定路径两侧衍生局部路径的长度;Path Density用于设定局部路径上相邻轨迹点之间的距离;Horizontal Density用于设定两个相邻局部路径之间的间距;Rollouts Number用于设定生成的局部路径的数量。此外,Max Velocity用于设定路径上的最大执行速度,当需要避障时,局部路径上的速度将减半。Follow Distance是用于确定从多远的距离开始检测路径上的障碍物的关键参数。Avoid Distance用于判断在感知到障碍物时,车辆从多远开始绕行。Avoidance Limit用于判断障碍物在多远的距离内时车辆仍然可以安全行驶。最后,Lateral SafetyLongitudinal Safety分别用于设置车辆安全框的宽度和长度,以此确保车辆在行驶过程中的侧向和纵向安全距离。

其中对op_trajectory_generator 节点的参数进行设置其中,TipMargin 用于设置车身到路径分叉点的距离,Roll In Margin 用于设置局部路径弯折的距离,对op_motion_predictor 节点的参数进行设置,其中, Detectcurbs from map 用于将路沿判定为障碍物,最后加上op_behavior_selector。 

16. 之后点击 Motion Planning 下的waypoint_planer的astar_avoid相应的astar_avoid和velocity_set相应的参数采用默认值。

 

17.最后点击 Motion Planning 下的waypoint_follower的Waypoint_follower以及相应的twist_filter进行速度过滤,相应的参数采用默认值。

18.最后核对一下相应的选择是否正确,一切顺利的话会看到小车跑起来,若果没有运行成功,首先打开rviz看点云定位是否正常,不正常的话选择2D Pose Estimate进行车辆的初始定位,还不行的话,重新点击Computing中Localization下的lidar_localizer中ndt_matching进行点云定位,如果需要重新规划路线,则重新点击在Motion Planning 下的OpenPlanner-Local Planning 中的所有节点。

http://www.xdnf.cn/news/33589.html

相关文章:

  • 可穿戴经颅多通道直流电刺激产品测试总结
  • 16、堆基础知识点和priority_queue的模拟实现
  • 为什么 waitress 不支持 WebSocket?
  • PyTorch源码编译报错“fatal error: numpy/arrayobject.h: No such file or directory”
  • SEO长尾关键词优化实战
  • velocity模板引擎
  • 【一起学Rust】使用Thunk工具链实现Rust应用对Windows XP/7的兼容性适配实战
  • RoBoflow数据集的介绍
  • JVM笔记【一】java和Tomcat类加载机制
  • PHP怎样连接MySQL数据库?
  • 基于STM32中断讲解
  • 【JDBC-54.5】JDBC批处理插入数据:大幅提升数据库操作性能
  • YOLO拓展-NMS算法
  • GWAS_LD
  • TCP 总是禁用分片(IP_DF,Don‘t Fragment)吗?
  • 基于尚硅谷FreeRTOS视频笔记——9—上下文切换的时机与空闲任务
  • 第10期:Classifier-Free Guidance(CFG)——扩散模型的文本引导增强术
  • pycharm中怎么解决系统cuda版本高于pytorch可以支持的版本的问题?
  • Python 一等函数( 把函数视作对象)
  • 指针----------C语言经典题目(2)
  • 【Docker项目实战】使用Docker部署NotepadMX笔记本工具
  • Feign:调用方与被调用方集成的对比及Feign继承的应用
  • C语言内存管理
  • 6. 话题通信 ---- 使用自定义msg,发布方和订阅方cpp,python文件编写
  • 发动机悬置橡胶弹性体试验机
  • Dify快速入门之chatflow
  • 常见设计模式
  • 【对Linux文件权限的深入理解】
  • 针对MCP认证考试中的常见技术难题进行实战分析与解决方案分享
  • 清华《数据挖掘算法与应用》K-means聚类算法