Simulink-动静态校验模块
a.动静态校验模块
如下图所示为动态和静态的校验模块,分别为上限校验,下限校验,范围校验以及区间校验;
比如如下设置了一个下限校验模块,当输入在设定值的下方时,模块无反应;当输入处于设定值的上方时,此时运行则模块将会报错;
对校验模块进行设置,使输出为布尔类型的数值,满足校验范围时输出正,否则输出负;
b.动态校验模块
动态校验模块的使用和静态校验的使用方法是一致的,只是其设定由外部进行输入,这样在方针的过程也可以随时改变输入值。
2Matlab-gui(鼠标响应事件)1)在Guide界面拖出axes1,并建立WindowButtonDownFcn的回调函数,用于判断是否出现鼠标左击事件;
2)在WindowButtonDownFcn中定义全局变量;
3)使用全局变量传递数据,判断是否按下了左键;
4)创建鼠标移动的回调函数WindowButtionMotionFcn;
5)在WindowButtionMotionFcn中添加鼠标响应事件,当鼠标移动时,跟随鼠标响应做曲线绘制;
效果如下:
上图可知,当鼠标离开窗口重新回来后会继续跟随鼠标绘图,现做优化,当鼠标长按时移动,跟随鼠标绘图,松开鼠标则停止曲线绘制;
添加WindowButtonUpFcn:
添加回调函数,当鼠标松开时,ButtonDown定义为0,即停止曲线绘制;
改进后效果如下:
Stateflow-汽车运动逻辑状态(一)
1)首先搭建出一个主体的状态模型,汽车分为两个逻辑状态:移动和停止,当shift=1时(即挂挡),汽车开始行进;
2)对于移动状态,可以分为前进和倒退两个档位,并添加shift_back和shift_forward(后退档/前进档)的转换事件,且移动母状态的初始运行子状态为前进;
3)对于前进档,又可以分为低、中、高三位档速,并定义相应的事件进行状态转换;
4)对模型中建立的数据和事件进行定义,模型就完成了初步创建,明天再进行仿真并对模型内部进行调整以实现逻辑;
日工作记录 公众号ID: gh_dc943d9de6b5扫码关注最新动态