在上节的基础上,完成复杂的功能仿真。
1、打开创建模型
2、由于要对汽车位置到达10时的紧急刹车进行建模,故双击Integrator, Second-Order 模块,更改参数。然后电机确认
3、添加新模块和连接
3.1修改模型
求实际距离。要想求出障碍物位置和车辆位置之间的距离,需要从 “Math Operations” 库中添加 Subtract 模块。还要从 “Sources” 库中添加 Constant 模块来为障碍物的位置设置常量值 10。
对真实传感器中常见的不完美测量进行建模。使用 “Sources” 库中的 Band-Limited White Noise 模块产生噪声。将 Noise power 参数设置为 0.001。通过使用 “Math Operations” 库中的 Add 模块将噪声添加到测量中。
对每 0.1 秒触发一次的数字传感器进行建模。在 Simulink 中,以给定时间间隔对信号进行采样需要一个样本和保持器。从 “Discrete” 库中添加 Zero-Order Hold 模块。将该模块添加到模型后,将 Sample Time 参数更改为 0.1。
添加另一个 Outport,用来连接传感器输出。保留 Port number 参数的默认值。
3.2 为信号添加注释
双击信号并键入信号名称。要完成输入,请点击文本框外部。
3.3 比较多个信号
创建 Scope Viewer 并将其连接到 actual distance 信号。右键点击信号并选择 Create & Connect Viewer > Simulink > Scope。信号的名称显示在查看器标题中。
将 measured distance 信号添加到同一个查看器中。右键点击信号,然后选择 Signals & Ports > Number of Input Ports>2。确保您连接到在上一步中创建的查看器。
选3.
连接好接口,如图:
运行模型。查看器显示两个信号:actual distance(黄色)和 measured distance(蓝色),如图所示:
放大图形以观察噪声和采样的影响。 从图中可以看到,测量值可偏离实际值达 0.3 米之多。此信息在设计安全功能(例如碰撞警告)时非常有用。