第三日:SimuLink之后是Stateflow

  经过两日的学习,对SimuLink已经有了基本的了解。今后的应用主要集中于基于底层的控制逻辑,需要用到SimuLink的Stateflow进行开发,因此开始了对Stateflow的了解。

  Stateflow的相关资料比较少,下载了一些还在学习;同步开始的对MATLAB自带help的Demo的学习就有些困难了,一方面是语言障碍(对英语不是很熟练)所致,另一方面那些Demo本身就比较复杂,第一个例子家用报警器凑合能懂工作过程,其有限状态机就不懂了;第二个双电梯就只能望洋兴叹,空叹其精巧而不知所云了。明天晚上起要外出几天,直到下周二才能回来继续,学习进度稍微放缓一下。

  本来打算早点回去,不过感觉晚上什么也没做,有些不甘心,硬着头皮继续看《基于MATLAB7.x+SIMULINK_STATEFLOW系统仿真、分析及设计》(这本书pdf很好找)后面的例子。第一个例子很简单,不过对于我这样连本科时学的一点MATLAB皮毛都忘得差不多的人来说还是有些吃力。根据例子基本搞懂了Stateflow的状态(State)、驱动状态转换的事件(Event)、数据(Data)这三个Stateflow的核心元素以及之间的关系。例子是一个简单的状态转换,有两个输入,一个输出,一个有限状态机。一开始没明白为什么是两个输入(激励信号),而且对于两个事件(on_switch和off_switch),只有特定的一个输入能触发一个事件。后来对事件对应的input端口号port进行了观察,并且分析了复用模块(mux)的工作原理(外观是一根线,但实际是两根线分别接入chart),才明白了两个输入信号分别对应两个事件的input,这才基本搞明白。附图如下:2011070621011934.png

  通过搞明白这个例子,算是额外完成了点学习任务,终于初窥门径了。。。

  另外补充一下状态迁移标记的一般形式:触发事件[迁移条件关系式]{条件动作}/迁移动作。

  触发事件主要用于标记Event的名称;条件关系式一般是布尔表达式,为真时有效,引发迁移;条件动作表示条件关系式一旦为真就执行的动作;迁移动作是指当迁移终点已经确认有效才执行的动作,即整个迁移完成时才执行的动作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值