我是靠谱客的博主 悲凉钢笔,最近开发中收集的这篇文章主要介绍simulink中if模块_Simulink(if...action...模块)+Guide自写简单系统(十一)+功能安全板离线运行...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

a494800066b0bf52e4189fe297dad699.gif 3ce71216c97d117dde543ea47611dcb4.gif 33dccf9ef7ca6dcaa2623713cbcba716.gifSimulink:if...action...模块

     1)在simulink中,if模块与if...action...模块为两个不同独立的模块,它们需要配合一起进行使用;

4faff78248fd1db1445e0209dd846c64.png

    2)双击即可对if...action模块做配置,设定输入端口的数目、判断条件,当判断条件成立时,输出为if端口,否则输出为else端口;

78e469350a95ca062e12e220b75cce25.png

    3)搭建如下所示模块:
利用if...else...分别做逻辑判断,u1<0,则子系统取反后输出;u1=0,则子系统按照设定输出(双击else模块后可以在内部进行配置);u1>0,则子系统保持原样输出;

dcc10a9d9a9bfee510fc31891b716a22.png

    4)在u<0时,子系统中配置条件,使用增益对模块取反;

3bd9ddd4b7c8b84e2c605b548afe3382.png

    u1=0时,设置模块内部无输入,直接输出结果;

79bc1c4f5b05e5e43e7d071e0e666976.png

运行结果如下:

c22fcf39b1dc2403c44c25abeeba6998.gif

2Guide自写简单系统(十一)

计算器菜单栏配置

    1)对计算器的菜单栏添加如图选项;

c132d12858c91b5ecf56141002aee65f.png

    2)此时运行程序如图所示;

0ad259aa11e25d97a7bca2f315a6635d.png

    3)在关闭计算器按钮回调函数中配置如图所示回调函数代码,实现计算器的关闭;

3d9b14dac095bee45d0567477c82168a.png

    同理也可实现程序关闭代码:效果如下所示:

①关闭计算器:

94008ecbbc9608bb68d1fbaa80598e88.gif

②关闭系统:

1b87ed0edd8c72b2981e7e5a32fb737e.gif

    4)做帮助栏的子菜单配置程序说明时还比较复杂,需要再创建一个guide进行调用,下次再做;版本信息可以编写代码调用一个diag来实现功能;

b6cfaa3042a0903d410a15e697878bb4.png

回调函数代码:

bb7a166fa9f6954e802caa415727888d.png

运行效果:

c601cea076bb2a0bdcf4d8c81ecb505e.png

95b851507500d1995de2d6ca138e2c35.gif

总觉得效果不太好看,要不还是下次编一个guide的界面吧

工作问题解决:功能安全板离线运行

离线运行步骤:   

 1)利用UDE配合Miniwingle将bootloader引导安装程序烧录至功能安全控制板中,然后使用Kvaser CAN卡将hex代码烧录至控制板中;烧录界面如图所示;

466a7478b3852d55a90b1a1af3faaeef.png

    2)使用Kvaser完成引导程序的烧录后,此时烧录elf后即可实现控制板的离线运行;利用Kvaser CAN卡将bootloader刷入后并将app置位后,再每次只需要烧入elf即可,不需要使用Kvaser重新烧录hex;

①模块带负载未正常运行状态,电流读数为0.1A;

507748290dd8a881212fd258c2ee5f3e.png

②模块正常运行时电流状态为0.14A

76add12726e4f59a1e8e994078207222.png

此时可以在上位机上监控到接收报文:

1b0ed9bd61c98e74bcd723a475a0a4a9.png

77832a51127cd849643a48a009c6b286.gif

    3)另:需要在UDE中watch窗口进行实时监控,就必须要烧录elf文件,同时需要一些.c的文件(即需要完整的工程文件)才可实现监控;用hex文件进行烧录时只能监控一些地址信息,无法观察运行时寄存器内具体的数值;

c085a93bd1831e95bc7c96ae930d74b1.png

    按照此流程进行烧录,即可实现控制板的离线运行(如图中0.14A即为离线运行时监控数据)。现在解决了控制板离线运行问题,以及旋变的速度及位置监控;但控制板复位问题还是存在。现在思路是硬件排查,感觉是mcu存在问题。

fcda55a3a765609dc0fade644849c36d.png日工作记录 768cc0da9d3d6e6500ef6fd5486bf75c.gif 2f8061584c4dea9dc8a92cf485c6fcf2.png

90a9fcf14abf01feb25296cdc0acf7e1.png

公众号ID: gh_dc943d9de6b5扫码关注最新动态

最后

以上就是悲凉钢笔为你收集整理的simulink中if模块_Simulink(if...action...模块)+Guide自写简单系统(十一)+功能安全板离线运行...的全部内容,希望文章能够帮你解决simulink中if模块_Simulink(if...action...模块)+Guide自写简单系统(十一)+功能安全板离线运行...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部