扫一扫,微信关注我们
品牌 | Siemens/西门子 | 应用领域 | 化工,电子,电气 |
---|---|---|---|
产地 | 德国 | 品牌 | 西门子 |
西门子模块6ES7315-2AH14-0AB0
PLC具有很完善的自诊断功能,如出现故障,借助自诊断程序可以方便的找到出现故障的部件,更换后就可以恢复正常工作。故障处理的方法可参看PLC系统手册的故障处理指南。实践证明,外部设备的故障率远高于PLC,而这些设备故障时,PLC不会自动停机,可使故障范围扩大。为了及时发现故障,可用梯形图程序实现故障的自诊断和自处理。
1. 超时检测
机械设备在各工步的所需的时间基本不变,因此可以用时间为参考,在可编程控制器发出信号,相应的外部执行机构开始动作时起动一个定时器开始定计时,定时器的设定值比正常情况下该动作的持续时间长20%左右。如某执行机构在正常情况下运行10s后,使限位开关动作,发出动作结束的信号。在该执行机构开始动作时起动设定值为12s的定时器定时,若12s后还没有收到动作结束的信号,由定时器的常开触点发出故障信号,该信号停止正常的程序,起动报警和故障显示程序,使操作人员和维修人员能迅速判别故障的种类,及时采取排除故障的措施。
2. 逻辑错误检查
在系统正常运行时,PLC的输入、输出信号和内部的信号(如存储器为的状态)相互之间存在着确定的关系,如出现异常的逻辑信号,则说明出了故障。因此可以编制一些常见故障的异常逻辑关系,一旦异常逻辑关系为ON状态,就应按故障处理。如机械运动过程中先后有两个限位开关动作,这两个信号不会同时接通。若它们同时接通,说明至少有一个限位开关被卡死,应停机进行处理。在梯形图中,用这两个限位开关对应的存储器的位的常开触点串联,来驱动一个表示限位开关故障的存储器的位就可以进行检测按下按钮,自动注入A和B 液体,当达到设定值,讲A和B 搅混,然后打开电磁阀,流出混合物。
plc输入所需的数
X1–启动开关。
X1–低位浮动传感器。当液位达到X1,X1 =NO
X2–高位浮动传感器。当液位达到X2,X2 =NO
X3–停止开关。
X10的急救停止按钮。X10 =ON 在按下按钮时
PLC输出所需的数
y0–液体A入口
Y1–液体B入口
Y2–混合物出口
Y3–搅拌机/搅拌器
PLC定时器所需的数
T0–60秒计时器,100毫秒时基。(见定时器K60预设值)
T1–120秒计时器,100毫秒时基。(见K1200预设值为定时器)
plc编程梯形图
PLC编程梯形图描述
当按下启动按钮,X0=ON,Y0=ON 并锁定。打开阀门注入液体A,直到达到低位浮动传感器。
当液位达到低位浮动传感器,X1=ON.Y1=ON 打开并锁定,注入液体B,直到达到高位浮动传感器。
当液位达到高位浮动传感器,X2=ON.Y3=ON 打开并启动搅拌器,此外,计时器T0开始计时60s,60s后T0=ON,打开。搅拌器电机Y3停止工作。Y2=ON并锁定,将混合物排出容器。
当Y2=ON,计时器T1开始计时120s,120s后T1=ON,T2=OFF。排水过程停止。
当发生错误,按下急停按钮X10,常闭触点X10打开,禁止所有输出,系统停止运行
西门子模块6ES7315-2AH14-0AB0
4. HMI项目下载端口设置
HMI项目下载需校核下载端口,本 Demo 中使用 TP270 的 DP 口,因 此设置如下:
图8.
六、SIMOTION中变量的定义
SIMOTION中配置的如下变量才能在HMI中被应用:
1.程序unit中配置的全局变量(图9)。
2.在“I/O "中定义的变量(图10)。
3.在“GLOBAL DEVICE VARIABLES"中定义的变量(图11)。
图9.
图10.
图11.
七、HMI中变量的定义
图12.
在HMI中新建变量时,会自动弹出SIMOTION中变量表,选择所需变量即可。
八、HMI中位扫描报警方式的配置
用于在HMI系统中显示机器的故障或状态信息, HMI通过扫描报警位,显示报警信息。
1.报警信息区域指针的建立
图13.
2.报警消息的建立
图14.
九、Alarm_S报警方式配置
用于在HMI系统中显示机器的故障或状态信息, 可分级显示报警信息。HMI不扫描报警位,报警信息的显示通过在SIMOTION中编程触发,这种报警方式可不占用HMI的总线通讯资源。
HMI侧配置
图15.
HMI侧报警信息窗口配置
图16.
1. SIMOTION侧配置
图17.
2. SIMOTION侧编程
(1)通过调用系统函数,如图18所示,来实现SIMOTION中报警信息的编程触发。
图18.
(2) 编程举例:
下图是一个检查温度值的例子,当温度值太高时产生报警信息,当温度值正常时,报警信息自动消失。
报警信息在SIMOTION SCOUT中被命名为:“SCOUT_alarm_name",状态变量用于防止报警信息的重复触发,“ handleAlarm"程序被分配至“BackgroundTask"中。
关于其他报警函数的使用请参考函数的详细使用说明。