通过step7 v5.6编程软件读取诊断信息
当具有诊断功能的模块sf灯亮时,可以通过在线查看模块诊断信息的方式,缩小故障范围。
步骤如下:
1. 在step 7软件的硬件组态界面,点击“在线”按钮,如下图所示:
2. 在step 7项目中的硬件组态界面,在线后双击模拟量模块,在弹出的“模块信息”对话框中选择“diagnostic interrupt”选项夹中查看诊断信息。
通过程序读取诊断信息
使用sfc51rdsysst读取模块诊断信息。
1. 程序功能介绍
通过系统功能sfc 51 rdsysst (读取系统状态),可以读取系统状态列表或部分系统状态列表,例如指示灯状态,序列号,从站状态等等。调用sfc 51时,通过将值1赋给输入参数req来启动读取。如果可以立即读取系统状态,则sfc将在busy输出参数中返回值0。如果busy包含值1,则尚未完成读取功能。sfc51参数说明如下表所示。
参数 描述
req 输入参数 req = 1:启动处理
ssl_id 输入参数 将要读取的系统状态列表或部分列表的id号
index 输入参数 部分列表中对象的类型或编号
ret_val 输出参数 如果执行sfc时出错 ,则ret_val参数
将包含错误代码。
busy 输出参数 true:尚未完成读取。
ssl_header 输出参数 lenthdr是ssl列表或ssl部分列表的数据记录的长度。
• 如果仅读取了ssl列表的标题信息,则n_dr包含属于它的数据记录数。
• 否则,n_dr包含传送到目标区域的数据记录数。
dr 输出参数 ssl列表读取或ssl部分列表读取的目标区 域:
• 如果仅读取了ssl列表的标题信息,
则不能评估dr的值, 而只能评估ssl_header的值。
• 否则,lenthdr和n_dr的乘积将指 示已在dr中输入了多少字节。
2.通过sfc 51读取对应物理地址的模块的诊断数据记录1,使用的ssl_id参数为w#16#00b2读取ai模块诊断数据记录1,编程如下:
首先需要创建一个数据块,用来存放读取出来的诊断数据记录,如下图所示:
打开ob1,在ob1的临时变量区创建一个变量ssl_header,类型设置为struct(结构),如下图所示:
打开ob1,在ob1的临时变量区创建一个变量ssl_header,类型设置为struct(结构),双击ssl_header变量,进入结构变量成员定义,创建两个word类型的变量,本例中分别为lenther和n_dr,如下图所示:
编写sfc51程序,如下图所示:
db1存放的结果即为ai模块诊断数据记录1,如下图所示:
诊断字节的结构如下图所示:
努比亚Z17、一加5等骁龙835机型将井喷发布 骁龙835比骁龙821强多少?
英特尔i5-10600现身跑分,有6核12线程
拓维信息面向OpenHarmony生态战略 共建自主创新国产基础软件生态
为什么在IC的VCC入口串联一个小电阻?
三星成为了失败者,在中国这个全球最大智能机市场的份额已不到1%
如何查看模块的诊断信息
Linux小项目-数码相册设计
破裂强度试验机/爆破强度试验机
颜水成:360拥有领先的人工智能技术
美高森美通过战略性收购和创新在2017年继续实现增长
带可编程增益跨阻放大器和同步检波器的双通道色度计
EMC基础知识:开关电源产生的噪声
谷歌已向Android,iOS和Unity移动开发人员发布了ARCore 1.20
在线式户外UPS不间断电源的特点有哪些
酒店智能门锁的功能和四个电路介绍
Orange灵活SD-WAN解决方案助力Getinge运营
TI HDC2080数字温湿传感器在贸泽开售 让智能设备精度更高、功耗更低
浅谈植物病害诊断仪在智慧农业领域中的应用
新品Aircharge立式风冷无线充的开箱图赏
光纤KVM技术在电力行业中的应用