本文主要是介绍Prescan 8.5.0版本实现循环障碍小车的设置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Prescan 8.5.0版本实现循环障碍小车的设置
1、 先在prescan中搭建我们所需要的道路场景以及一个封闭的车辆行驶曲线(使用Inherited path Definition),封闭路径的意思是道路的起点和终点是同一个位置点,然后将我们所需要的车辆给放到我们所设置的道路路径上:
2、 接着鼠标单机选中放到路径上的车辆(注意这个车辆的我们不使用动力学模型,否则设置的循环可能不成功,有待后续研究),在右侧的栏中找到这辆车的路径(即为刚才我们所画的路径),然后单击该路径,在右下侧栏中选中Generate definition file为True选项;
3、 然后开始依次单击Parse、Build、Invoke Simulink run mode选项,并且在simulink中打开这个模型对应的simulink模型。
4、 在simulink中regenerate以后,打开刚才添加的车辆BMW_X5_SUV,双击以后再打开Trajectories模块,重点需要修改的是我们的积分模块这一部分内容,如下图圈圈所示;
5、 首先双击积分模块,设置External reset选项为rising,并且选中show state port;
6、 设置完成以后发现积分模块多了两个接口,一个输入为rising的external rest接口,另外一个为state port输出口,对输出的这个端口信号进行一个作差并将其结果作为新增的rising接口的输入,其中与输出的state port口作差的数值(下图中的228)的确定是这个循环路径的总的行驶里程,这个总的行驶里程可以在未进行循环设置前时候对积分模块的数值读取来获得(设置simulink的仿真时间为车辆绕该循环路径跑一圈的时间);
7、 进行仿真以后发现该车已经实现一个循环的路径控制。
注:积分模块的一个置零的设置:
1、 在积分器设置里面做两项工作,第一,把“External reset”选成rising(对于从负数变为正数这一种情况而言其也是上升沿),积分器会打开一个端口,这个端口就是用来接收外部清零的条件的;
2、 第二把“show state port”打开,这个端口其实输出的就是积分值,但是它只能用于积分的清零,不能作为输出;
3、 积分器会出现两个新的端口,一个输出 state port,一个输入 external reset。
举例而言:
如果我们的积分模块的初始条件是0,并且期望该积分模块的清零条件是积分值达到228,这样我们就从state port里引出来一条线和228做减法,然后输出线连到积分器的输入端,这个过程意思就是设定积分到228的时候就清零(出现了过零的点,从负数变为正数),这样运行仿真便发现积分结果不停地到0就重置。
这篇关于Prescan 8.5.0版本实现循环障碍小车的设置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!