产品描述
3VA2116-6KP32-0AA0
老版的STEP 7有一个PID参数赋值工具,其中的监控曲线对话框可显示PID的被控量、给定值和PID输出值的曲线,但是监控曲线画面很小。
S7-300/400和S7-1200都可以使用STEP 7 V11的PID调试工具。双击项目树的文件夹“\工艺对象\PID_DI”中的“调试”,打开PID调试窗口(见下图),可以用趋势视图监视PID控制器的设定值、过程值和调节变量的曲线。调试窗口将老版STEP 7的PID参数赋值工具中的监控曲线对话框、参数赋值对话框和曲线记录参数设置对话框的功能集成到一起。趋势图有Strip(连续显示)、Scope(区域跳跃显示)、Sweep(滚动显示)和Static(静态区域显示)4种显示模式。可以用多种方式方便地移动坐标轴与改变坐标轴的比例,可以修改和下载PID参数和设定值,有手动模式在模板里做,模板里把增强对象中的报警窗口拉到模板里。设置些属性。在报警管理中连接报警的变量。做完后自己可以试试。效果是只要出现报警。报警画面自动弹出显示报警信息。(有选模板的窗口)。
报警分为模拟量报警和离散量报警,你需要在左侧的项目的报警中编辑报警的触发位。
模拟量报警的比较好办,只需要设定报警上下限,以及触发变量就可以了。现在我需要控制两台泵,通过I1.0-I1.5来确定泵的启动,上述输入点有小于等于3的时候启动1台泵,大于3的时候启动两台泵同时启动,我把I1.0-I1.5的每个上升沿并联后作为加减计数器的CU端,每个下降沿并联后作为加减计数器的CD端,现在如果我同时接通两个以上的输入,是同时接通的,好像计数器只会计一次数,请问有什么方法能解决这个问题吗?
答:提供一个稍微不同的思路,适合点数比较多的情况。只要你不是226的CPU后面的I1.6和I1.7应该恒为0,如果是226的,取信号时就要按位对应了。
//网络1:状态字节检测
LD sm0.0
MOVB IB1,VB0 //取得过程信号到内存
MOVW 0,VW2
FOR LW0,1,8
LPS
A V0.0
+I 1,VW2
LPP
SRB VB0
NEXT
//以上代码检测状态字节里面有多少个位为on
//网络2:对照表
LD M0.0
=Q0.0 //一号泵启动输出
LD M0.1
=Q0.1 //二号泵启动输出
//网络3:控制
LDW<= VW2,3
S M0.0 ,1 //当小于等于3个状态位信号为on时,一号泵启
R M0.1 ,1 //同时关闭二号泵
LDW> VW2,3
S M0.0,2 //当大于三个状态位信号为on时,双泵启
程序没有测,可能有错误,这里就是给楼主提供一个用移位指令来判断当前状态的思路
1.故障现象
某啤酒厂的朋友告诉我,他们的灌装机在运行时S7-300的SF灯亮,然后就停机了,没有其他故障显示,两个从站的指示灯显示正常,CPU切换到STOP模式再返回RUN模式后就能恢复正常运行。有时几天出现一次,有时一天几次,不固定。
在CPU模块信息的诊断缓冲区中点击“另存为”按钮,可以将缓冲区的内容保存为文本文件。下面是他发给我的文件的内容,较上面的1号事件是最后出现的事件。
2.诊断缓冲区中的诊断信息
事件1 / 10: 事件ID 16# 4302
模式从启动状态转换为RUN
启动信息:
- 后备最后一次上电时,时间戳的时间
- 单处理器操作
当前/上次启动类型:
- 在备用上电之后,自动暖重启
允许的启动类型:
- 允许手动暖重启
- 允许自动暖重启
上电时自动启动类型的上次有效操作或设置:
- 备用上电之后,自动暖重启
先前的工作模式:启动(暖重启)
要求的工作模式:RUN
进入的事件
23:58:15.502 1997-04-05
事件2 / 10: 事件ID 16# 1382
自动暖重启请求
STOP 由于:电源故障
启动信息:
- 启动时没有已修改的系统组态
- 在设定值和实际值之间没有差异
- 后备最后一次上电时,时间戳的时间
- 单处理器操作
当前/上次启动类型:
- 在备用上电之后,自动暖重启%L允许的启动类型:
- 允许手动暖重启
- 允许自动暖重启
的上电时自动启动类型上次有效操作或设置:
- 备用上电之后,自动暖重启
所需的OB:启动OB (OB100)
**级:27
进入的事件
23:58:15.500 1997-04-05
事件3 / 10: 事件ID 16# 4301
模式从STOP 转换到启动状态
STOP 由于:电源故障
启动信息:
- 后备最后一次上电时,时间戳的时间
- 单处理器操作
当前/上次启动类型:
- 在备用上电之后,自动暖重启
允许的启动类型:
- 允许手动暖重启
- 允许自动暖重启
上电时自动启动类型的上次有效操作或设置:
- 备用上电之后,自动暖重启
先前的工作模式:STOP (内部)
要求的工作模式:启动(暖重启)
进入的事件
23:58:14.916 1997-04-05
事件4 / 10: 事件ID 16# 38C4
分布式I/O:站返回
受影响DP 从站的地址:站编号: 5
DP 主站系统标识号: 1
DP 从站的逻辑基址:输入地址: 1021
DP 主站的逻辑基址: 1023
要求的OB:机架故障OB (OB86)
在当前工作模式下,OB 未找到、或禁用、或无法启动
外部错误, 离开的事件
23:58:14.602 1997-04-05
事件5 / 10: 事件ID 16# 38C4
分布式I/O:站返回
受影响DP 从站的地址:站编号: 1
DP 主站系统标识号: 1
DP 从站的逻辑基址:输入地址: 1022
DP 主站的逻辑基址: 1023
要求的OB:机架故障OB (OB86)
在当前工作模式下,OB 未找到、或禁用、或无法启动
外部错误, 离开的事件
23:58:14.453 1997-04-05
事件6 / 10: 事件ID 16# 3842
模块确定
模块类型:分布式I/O
输入地址: 1021
用户信息可用
来自替代者的诊断中断
要求的OB:诊断中断OB (OB82)
OB 未找到,或已禁用,或无法在当前工作模式中启动
外部错误, 离开的事件
23:58:14.366 1997-04-05
事件7 / 10: 事件ID 16# 3842
模块确定
模块类型:分布式I/O
输入地址: 1022
用户信息可用
来自替代者的诊断中断
要求的OB:诊断中断OB (OB82)
OB 未找到,或已禁用,或无法在当前工作模式中启动
外部错误, 离开的事件
23:58:14.364 1997-04-05
事件8 / 10: 事件ID 16# 5371
分布式I/O:与DP 主站的同步结束
DP 主站的插槽: 2
分布站的编号: 2
进入的事件
23:58:14.353 1997-04-05
事件9 / 10: 事件ID 16# 4300
上电备份
先前的工作模式:无电压
要求的工作模式:STOP (自己初始化)
进入的事件
23:58:10.564 1997-04-05
事件10 / 10: 事件ID 16# 494E
电源故障
先前的工作模式:STOP (内部)
要求的工作模式:无电压
外部错误, 进入的事件
23:56:54.757 1997-04-05
3.对诊断信息的分析
出现较早的10号事件(23:56:54.757):电源故障,从STOP模式切换到无电压模式。
我**次知道有个“无电压”模式。
9号事件(23:58:10.564):从无电压模式切换到STOP模式(自己初始化),电源自动恢复了,共断电1分多钟。
8~1号事件是电源恢复后的自动启动过程。时间从23:58:14.353到23:58:15.502,约1.149秒。
8号事件是分布式I/O与主站同步,7~4号事件是两个从站恢复正常后(离开的事件,即故障消失),要求调用OB82和OB86。
3~1号事件是因为电源故障后进入STOP模式,电源恢复后的自动暖启动过程。
从上述分析可以看出,出现短暂的电源故障又恢复上电后,CPU要求调用OB82、OB86。如果CPU找不到OB82和OB86,即使电源断电后又自动恢复,也不能自动启动,进入RUN模式。
4.故障的软件处理方法
他们的程序中没有用于故障诊断的组织块,导致瞬时断电时停机。作为常规的措施,我建议他们生成和下载OB82、OB86和OB122。如果是S7-400,还需要生成和下载OB85,它们可以是空的,但是较好在OB82和OB86中编写统计中断次数的程序,例如:
L MW100
+ I
T MW100
上述措施可解决瞬时断电又自动恢复的问题。
5.故障的硬件处理方法和处理效果
我过去处理过一次故障,故障出现的时间也具有随机性,诊断缓冲区给出的是某从站的模拟量模块的故障。最后发现故障是从站的电源接线松动造成的。
上述故障信息中有3个事件指出是电源故障,联系到故障出现的时间的随机性,根据经验我估计故障的硬件原因是CPU的电源接线松动,建议他们检查主站、从站的电源接线。可能是因为在检查接线时紧固了电源接线端子,了电源线接触不好的隐患,采用上述硬件、软件处理措施后,不但没有自动停机,CPU也没有调用OB82和OB86。说明对诊断信息的分析是正确的,电源瞬时断电的故障已彻底解决。
产品推荐