目录
最终效果:
1.AIR传感器
AIR(Air Information Receiver)主要用于传感器简单应用的场景,如调整控制器(ACC)和决策算法的测试。此处的简单是指无需利用传感器的原始信息,只应用上层数据,如距离、角度等信息。
AIR传感器能够提供比较准确的信息,但是如果需要更详细的数据,或根据某种扫描原理使用传感器,建议使用TIS传感器。
先创建一个场景
然后给车辆加上AIR传感器:
AIR传感器有三种检测方式:
注意建筑物默认是对AIR传感器不可见的,所以要打开建筑物的可视化:
还有把AIR传感器的可视化打开,设置成True:
添加viewer:
设置仿真频率:
打开matlab仿真,使用AIR传感器检测成功:
2.TIS传感器
TIS传感器是prescan中常用的自定义传感器,除摄像头和真值传感器外,TIS可以模仿出在prescan中的所有传感器。(是一个功能强大的可自定义的传感器)
Prescan(八):如何使用TIS(technology independent sensor)传感器_prescan的lidar设置-CSDN博客
给车辆再添加一个TIS传感器:
打开matlab:
在simulink中可以看到:
2.1 AIR传感器输出内容
AIR传感器的输出是有以下内容的:
2.2 TIS传感器输出内容
TIS传感器的输出是有以下内容的:
对TIS传感器进行仿真运行可以看到,物体被检测出来了:
3.基于TIS传感器+PID控制的车辆跟踪
任务需求:在直道上,使用TIS传感器安装在后车,通过传感器检测到前车的速度,进行PID控制跟踪。
3.1 TIS传感器设置
设置一下场景,在场景中搭建一个前车和后车,在后车上安装一个TIS传感器
【注意】前车有路线,后车无路线
【注意】把TIS扫描频率改高一点,不然没有数据输出,把capture freq Fov改成10并且可视化:
build后打开matlab
可以看到后车的模块,并且添加display可视化:
点击运行即可看到TIS传感器运行的输出内容:
3.2 PID控制模块搭建
从引入TIS雷达扫描到的DopplerVelocity(扫描目标相对速度)数据作为目标跟踪速度,添加goto模块,命名tis_v:
点击下箭头,进入:
此界面:
添加function模块,并且写入PID控制代码:
function [PID_output,ErrorDiff,ErrorInte,ErrorPre,ErrorCurrent] = pid(target,CurrentValue,ErrorDiff,ErrorInte,ErrorPre,ErrorCurrent)
Error=target-CurrentValue;%get divation
ErrorDiff=ErrorCurrent-ErrorPre;%diff divation
ErrorInte=ErrorInte+Error;%cumulated divation
ErrorPre=ErrorCurrent;%swith current divation to previous divation
ErrorCurrent=Error; %save current divation
PID_output=0.5.*Error+0.1.*ErrorInte+0.1.*ErrorDiff;
end
添加from模块,引入tis_v连接到target上
给后车引出当前时刻的速度,goto模块,命名为now_v:
然后将now_v接入currentvalue:
然后引入积分模块integrator,在pid速度输出拉一条线给x主车的距离输出
然后添加memory模块,连线,可以反转一下:
最后连线成为PID控制模块:
点击运行仿真即可出现TIS传感器+PID控制模块形成车辆跟踪效果。
4.可能会遇到的问题
在搭建好TIS模块和PID模块后,运行时可能会遇到这样的问题 :
疑似是TIS模块不能够直接引出前车侦测到的速度,或者TIS某个模块功能出现了问题。
----------------------------------------------------------------------------------------------------
相信读到这里的朋友,一定是坚持且优秀的
给博主一个免费的赞👍吧
扫描二维码进博主交流群,问题交流 | 吹吹水 | 一起变得更加优秀
————————————————
2025.4.17
两江重大卓工院