微分运算是对偏差信号进行微分运算,当实际值与设定值越接近时,偏差不断减小,此时通过微分运算可以不断增加阻力,越接近设定值阻力越大,从而避免过设定值。简单理解就是微分运算提供了一种反向作用力,具有前预测性。
用的几个诊断指令位于“指令”-“扩展指令”-“诊断”下面;
1、利用LED指令诊断CPU指示灯状态
LADDR:CPU的硬件标识符,
LED:1查询STOP/RUN状态;2查询ERROR状态;3:查询MAINT状态;
4:冗余;5:Link(绿色);6:Rx/Tx(黄色)
RET_VAL:程序执行返回值;0:LED不存在或状态不可用;1:*关闭;2:绿色指示灯*点亮;3:橙色*点亮;
CPU的LADDR地址查看(找以Common结尾的),见下图;
当CPU由STOP切换到RUN模式时,可以看到上图MW0的值由6变为2;当CPU发生报警时ERROR指示灯会红色闪烁,可以看到上图MW8的值由1变为4;
LED状态值见下图
2、利用DeviceStates指令诊断从站通讯状态
DeviceStates指令可以读出PROFINET I/O或者DP网络中的故障信息;
LADDR:网络视图硬件标识符,或数据类型为HW_IOSYSTEM系统常量(在plc变量表中);
切换到网络视图,选中PROFINET网络,下方“系统常数”,数据类型为HW_IoSystem,257填入LADDR;
也可以通过PLC变量表查看,打开变量表,切换到系统常数,找到IoSystem数据类型的变量,可以看到其值也是275;
MODE:1从站已组态
2从站故障(一般选择此值,诊断有故障的从站)
3从站已禁用
4 从站存在
STATE:每一位信号指示从站状态,对应设备编号(设备编号可从设备以太网地址-Profinet下方查看);对于PROFINET网络,Array of BOOL 1024个;(对于DP网络, Array of BOOL 128个);
利用S7PLCSIM仿真从站故障,打开项目视图(无法从精简视图访问事件表),新建事件,选择“机架或站故障”,在LADDR中输入266,设备编号为2的设备标志符(HW_Device数据类型),勾选对勾,点击闪电触发从站故障;
可以看到CPU ERROR红色闪烁,网络视图中CPU和设备编号为2的从站显示错误状态;
CPU诊断缓冲区内容,设备编号为2的从站显示故障;
DB块中的数据;Bit0(至少一个从站发生了通讯故障)和Bit2(设备编号为2的IO从站)为TRUE,发生了通讯故障;
设备编号的查看,切换为网络视图,选中从站,属性-常规-以太网地址 PROFINET 设备编号;
3、利用ModuleStates指令诊断从站模块状态
LADDR:网络视图硬件标识符,数据类型为HW_Device系统常量;
MODE:1模块已组态
2模块故障(一般选择此项)
3模块已禁用
4 模块存在
STATE:每一位信号指示一个模块的状态;
位0=1,至少一个模块发生了故障;
位1 0#槽IO设备使用;
位2=1,1#槽模块发生了故障;
位3=1,2#槽设备模块发生了故障;
利用S7PLCSIM仿真从站故障,打开项目视图(无法从精简视图访问事件表),新建事件,选择“拔出或插入模块”,在LADDR中输入273,设备编号为2从站1#槽AI的设备标志符(HW_Device数据类型),勾选对勾,点击闪电触发从站故障;
DB块中的数据;Bit0(至少一个模块发生了故障)和Bit2(1#槽号AI模块发生了故障)为TRUE;
CPU的诊断缓冲区内容,设备编号2#从站AI模块硬件移除或丢失;