




已阅读5页,还剩229页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章高级模拟概念、7.1过零检验7.2处理代数循环7.3高级积分器7.4模拟诊断选项设置7.5模拟性能优化设置、7.1过零检验7.1.1过零检验的工作方式状态变量的不连续性始终代表动态系统的重要事件,如因为不连续性总是代表动态系统的重大改变,所以正确地模拟不连续点非常重要,否则模拟可能导致错误的结论。 另外,以小弹球机的模拟为例,两次模拟步骤中小球与地面碰撞时,模拟的球在空中反转方向,研究人员对小球的物理运动作出错误的结论。 而且,为了避免这样的错误,模拟不连续点非常重要,并且完全依赖于模拟算法来确定模拟时间当然不能满足这样的要求。 作为固定步长算法的实例,在固定步长的整数倍的时间点处计算状态变量的值,但没有人能确保不连续点的出现时间是固定步长的整数倍的时间点。 尽管用户可以减少步骤以提高碰撞不连续点的可能性,但是模拟的运行时间肯定会变长。 由此,可变步长算法看起来能够解决这种问题。 可变步长算法动态调整步长,如果状态变量变化较慢,则增大步长;如果状态变量变化较快,则减小步长。 在不连续点,变量变化非常快。 因此,理论上,变步长算法应能正确地找到不连续点,问题是不连续点的正确性。 为了找到不连续点,可变步长算法必须采用越来越小的步长,使得仿真效率大大降低。 这会降低模拟的速度,这对一些模块来说很重要。 这些模块的输出代表物理值,并且零值可以具有非常重要的意义。 还可以使用这些模块来控制其它模块。 事实上,事件通知只能由少数模块发出,并且可能与多种类型的事件相关联。一旦模块通知过零发生在上一个时间步骤中,可变步长求解器就会减小步长,即使绝对误差和相对误差是可接受的,也会发生事件该事件的通知过程如图7-1所示。图7-1、Simulink利用过零检测解决了这种问题。 这是在系统和求解器之间建立交互的方式,交互包含事件通知。 Simulink将消息从系统发送到求解器。 也就是说,求解器通知在上次的时间步骤中发生了事件,重要的事件是“过零发生了! 的,案件全部用零交叉表示。 过零通常发生在两个条件下: (1)信号在前一个时间步骤改变符号,即从正到负或从负到正改变;以及(2)模块在前一个时间步骤改变模式,例如积分器进入饱和时段。 使用Simulink零交叉检测,模块在模拟开始时注册一组零交叉变量。 每个变量都是一个可能包含不连续状态变量的函数,当发生不连续时,零交叉函数将从正值或负值穿过零。 每次模拟步骤结束时,Simulink都会请求每个注册过零变量的模块更新变量,并在模拟时间步骤结束时检查变量是否更改了符号。 如果更改,则表示系统在当前时间步骤中出现不连续点。 如果检测到过零,Simulink会在前一时间步长和当前时间步长之间插入每个修改符号的变量,以估计过零的精确时间,Simulink还会进一步增加时间步长并依次越过零点进行仿真。 以该方法,Simulink避免模拟不连续点,但在许多情况下,这些不连续点处的状态变量的值可能没有定义。 7.1.2过零检测的实现方式过零检测Simulink能够正确地模拟不连续点,不需要选择太小的步骤。事实上,许多Simulink模块都支持过零检测,在实际的建模仿真中,只要用户通过过零检测对所有系统(包括不连续链路)进行仿真,仿真过程就会更快Simulink的许多模块可以发生过零,但是每个模块的过零类型不同。 以带过零的Simulink模块的过零检测方式为例进行说明。 在Saturation (饱和)模块中,过零检测功能检测到Saturation模块中的下一个事件时,会发生过零,输入信号达到上限时,会发生过零状态事件的检测依赖于模型内过零信号的结构,该信号不受框图影响。 在Saturation模块的情况下,用于检测上过零的信号是zcSignal=UpperLimit-u,其中u是输入信号,UpperLimit是信号的上限值。 零交叉信号还具有方向属性,定向零交叉通常用于驱动其他模块。 该方向属性值为rising (上升沿r)-信号的上升沿超过零时,或信号从零变为正值时发生过零的falling (下降沿f)-信号的下降沿超过零时,或信号从零变为负值时,为零图72示出了过零信号的方向性。 对于Saturation模块的上限,过零方向是either,并且可以使用相同的过零信号检测上升沿和下降沿饱和事件。 此外,图7-2、误差容许量过大时,Simulink也有可能不能检测到0。 例如,如果在某个时间步骤中发生过零,并且该时间步骤的开始时间值和结束时间值未指示符号中的变化,则求解器可能未检测到超过过零时间的过零。 图7-3示出过零信号,其中左图中的积分器超过过零,并且右图中的求解器检测到过零事件。 如果用户担心这样的问题会发生,则错误容限可以被减小以保证仿真算法的步长足够小。 而且,在图7-3中,将定义模块本身的状态事件的Simulink模块看作具有内在过零的模块,当用户需要明确地通知过零事件时,可以使用HitCrossing模块,该模块是过零模块将“模拟参数”对话框的“数据导入/导出选项”面板中的Outputoptions选项设置为Refineoutput或productudeditiationaloutput将过零检测的位置设置为为了在检测时避免过零,用户必须更改最大步长或输出点的数量。 此外,根据使用7.1.3过零检测的模型,模型中可能出现不连续点的高频抖动。 Simulink的模拟步骤越来越小,因为Simulink以反弹的球为例,向空中投球,反复撞击地面,每次球撞击地面时,Simulink都会遇到球的速度和位置不连续的点,该撞击反复进行零交叉。 本质上,这种仿真结果也是不够的。 在Simulink的“模拟参数设置”对话框中,对话框的“Solver选项”面板和“诊断选项”面板包含检测零交叉点的设置,可以根据需要设置模型。 图7-4是仿真参数对话框的诊断选项面板,consecutiveezerocrossingsviolation选项包括warni
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师资格笔试教学反思题及答案
- 患者自发性肺损伤对ARDS肺部病情的加重作用及机制研究
- 教师资格考试的理论与实践结合的试题及答案
- AI驱动细胞形态学对白细胞的智能识别与计数的研究及其应用
- 动态血压考试题及答案
- 教育组件测试题及答案
- 总工个人工作总结(10篇)
- 有效模拟护士资格证考试的试题及答案
- 套路武术测试题及答案
- 2025年份一季度立体车库机械部件年检合同
- 我国中学导师制的历程、现状及问题分析
- 安全带检测报告(共8页)
- 逆流开式冷却塔计算(精品ZTQ版)
- 公司erp项目激励制度
- 出厂检验报告B
- Excel函数和公式练习
- 六年级下册数学试题-半期学情检测西师大版含答案
- 某核电项目机械贯穿件安装施工管理技术研究
- JGJ_T231-2021建筑施工承插型盘扣式钢管脚手架安全技术标准(高清-最新版)
- 基于单片机的接触器控制器设计
- 建筑幕墙设计说明(最新规范)
评论
0/150
提交评论