实现一些功能的算法模型

说明:以下基于定步长,采集时间为0.01s

01--优先级A高于B

当A和B单独触发时,分别置位

 当A、B都不触发,都不置位

 

 当A、B同时置位时,A优先级高于B

02--上升沿触发,重置功能

 第一个信号signal builder

 第二个

 触发是在4-6秒,重置是在8-9秒

运行过程中,输出在第3秒为0,第4秒开始为1,一直到第八秒为0

 该模型内部:

03--故障计数器

故障计数器,当故障状态输入为1时开始计数,当达到计数值时,故障确认,故障状态为0时,计数器立即清0,故障退出。

 

 该功能内部:

 

 封装信息:

 

 

04--上下限斜率限制

为了避免信号跳变过大,进行上下限斜率的限定

 up为信号每个采集点在上升时不超过5时保持增值,超过5即增加5.

signal builder:

 运行后示波器:

模型内部:

 

05--输入信号进行阶梯式变化(防止信号突变)

模型外观:

 状态机内部:

子系统内部:

 

 各变量意义:

Limit_in :   需要进行处理的输入信号

Up_Step: Limit_in信号变化的最大上升step

Lo_Step: Limit_in信号变化的最大下降step(为负值)

StepEna_Cal : 每一个采集频率变化之后的停留时间

StepHold_Cal : 每一个采集频率变化时的时间

仿真结果:

 06--故障码循环显示

 模型:

子系统内部:

该CountUp模块可在资源文档中获取。

子系统内部状态机:

 Selector配置:

 信号意义:

err_code:故障代码

err_flg:当前故障置位

err_total:当前故障置位的总数

err_flg_current:找到当前故障置位

err_current:根据err_flg_current找到置位对应的故障码

err_display_time:故障循环显示的时间

err_index:根据故障总数err_total进行时间err_display_time显示

err_current_display:循环显示当前置位的故障

仿真:

err_index:(Inc Max Counter)

 err_current_display:

 未完待续。。。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值