使用西门子PLC1200 1215C AC/DC/RLY作为控制器,HMI面板作为操控器,电动推杆作为执行器。在操作面板上完成对电动推杆的多种模式控制。
一. 硬件准备
1. PLC 1200 1215C AC/DC/RLY
此PLC有两个网线接口,可以同时连接电脑和HMI面板。
2.HMI精简系列面板 KTP 700 Basic
3. 普菲德 电动推杆 (200mm量程 25mm/s速度 24V直流电源驱动)
通过控制通电方向进而控制电动推杆升降。
4. 220V交流转24V直流电源
5.漏电保护开关断路器
二.电路连接
1.PLC 接线图
此次使用的是PLC1200 1215C AC/DC/RLY型控制器,其它类型的PLC接线图可在链接中找到:
超实用!西门子S7-1200系列PLC全套接线图 - 知乎 (zhihu.com)
PLC1200 1215C AC/DC/RLY连接图如下:
注:此确定需在输出接入24V电源。
2. 继电器、电源、PLC电路连接图
接线时按照下图进行接线。
注:电源为HMI面板供电此处省略。
1)连接时出现的问题:
在开始连接时,采用了两个继电器分别对应两个输出进行控制,但出现两对连接在电动推杆两侧的电源线出现了对供电电源造成短接现象,电源自动熄灭。
后来将电源正极直接为PLC进行供电,PLC输出连接在继电器上,依旧使用两个继电器进行控制,但是电源依旧不工作。原因是,只要在电动推杆两端有两对接线端子,那结果必然是会造成电源的短接。
2)解决思路:
是在电动推杆两端只使用一对接线端子,但问题是一对接线端子如何实现正负极的正反控制呢。经过思考和参考继电器的使用方法,我发现了继电器的另一种用法。利用8脚继电器两对控制开关实现对电的隔离,隔绝了造成正负极同时接在一起而造成短路的弊端。
3)解决步骤:
使用PLC的Q0.0控制继电器开关的位置,实际控制着电动推杆的上升,Q0.5控制电动推杆的下降。
Q0.0接通时,继电器开关接通下方开关,此时电动推杆正转(假设此时方向为正转)。断开Q0.0,此时继电器接通上方开关,打开Q0.5,则电动推杆两极供电方向反向,实现电动推杆升降功能。
三.程序编写
1. 控制程序
1)手动模式
说明:手动模式为随用随停,可以自由控制电动推杆的位置。
创建函数“手动调节”。
说明:设置标志位的作用在于运行某一段程序时,对其它程序进行自锁,否则出现运行成功但执行器件无响应的问题。
2)固定距离模式
说明:输入要移动的距离,电动推杆执行输入的距离。
创建函数“移动固定距离”。
说明:中间使用到“ROUND”指令和“MOVE”指令,是为实现将“REAL”类型参数转变为“TIME”类型,方便后续计时需要。
参考:西门子博图S7-1200如何将real类型数据转化为Time类型数据笔记_博图real如何转成time-CSDN博客
说明:标志位的设置与上述同理。
3)MAIN程序块
说明:标志位的设置与上述同理。
4)变量
创建两个“数据块”,分别为“程序块标志位”和“上升_下降_距离”。
2.HMI面板画面制作
1)手动调节_上升_开关
2)手动调节_下降_开关
3)手动调节_上升_响应灯
4)手动调节_下降_响应灯
5)移动固定距离_上升_I/O域
6)移动固定距离_下降_I/O域
7)移动固定距离_上升_启动按钮(执行时需长按)
8)移动固定距离_下降_启动按钮(执行时需长按)
四.出现过的错误
1.HMI面板下载时出现下载错误
将编辑好的页面下载到HMI面板时,出现“project transfer failed”提示。
问题原因:HMI面板的类型号和版本号与电脑端的类型号和版本号不一致。
解决办法:确定HMI面板的类型号和版本号,使电脑端的HMI类型号和版本号与实物一致。
2.程序执行后执行器无反应
1)程序问题
检查程序的逻辑,先学会他人的编程思维,再形成自己的编程思维。
2)继电器无反应
问题原因:继电器损坏;电路接线错误,按照接线图严格进行接线,查看是否将电源正负极接在了一起。
五.成功案例示范
PLC1200 1215C AC/DCRLY HMI面板控制