在现代自动化设备中,一般都利用触摸屏和plc联合进行控制,以方便进行工艺参数的设定、系统状态的显示、故障信息的显示等,但直接操作触摸屏很容易使触摸屏损坏,减短其使用寿命,所以有些控制中就使用带触摸按键的操作屏甚至用工控机加组态软件作系统参数设定及显示之用。但后者的价格比起一般的触摸屏来说要贵的多。鉴与此,我利用plc编程的方法,并用一些按钮作触摸屏的功能操作和数字设定,而不需直接操作触摸屏,这样可减少触摸屏的损坏。
1. 控制系统的硬件构成示意如下:
我使用的是西门子S7-200PLC作控制,对TP170触摸屏做外部按键操作。现需四个功能键(F1、F2、F3、F4),用于触摸屏画面的切换;十个数字键(0-9)、两个方向键和退出键(ESC)、删除键(DEL)、回车键(ENTER)用于参数数字的设定及修改。但考虑到节省PLC输入点,我用矩阵扫描的方法,其硬件连线如下图:
用这种扫描的方法只需4个输出点和5个输入点就可产生4X5=20个按键信号,比用一个个输入点去控制一个个按键信号更具价格优势,这样只需利用PLC的一些指令达到分时采集20个信号的功能。
2. 系统的软件实现:
Network 1 // Network Title
// 上电初始化
LD SM0.1
MOVW 0, MW10
Network 2
// 每个循环周期MW10加1
LD SM0.0
INCW MW10
AW>= MW10, 8
MOVW 0, MW10
Network 3
// 输出扫描变化
LD SM0.0
LPS
AW= MW10, 1
= Q0.0
LRD
AW= MW10, 3
= Q0.1
LRD
AW= MW10, 5
= Q0.2
LPP
AW= MW10, 7
= Q0.3
Network 4
// q0.0扫描线上按键有F1F2F3F4 五个
LD Q0.0
LPS
A I0.0
S M20.0, 1
LRD
AN I0.0
R M20.0, 1
LRD
A I0.1
S M20.1, 1
LRD
AN I0.1
R M20.1, 1
LRD
A I0.2
S M20.2, 1
LRD
AN I0.2
R M20.2, 1
LRD
A I0.3
S M20.3, 1
LRD
AN I0.3
R M20.3, 1
LRD
A I0.4
S M20.4, 1
LPP
AN I0.4
R M20.4, 1
Network 5
// q0.1扫描线上按键有1、2、3、4、5 五个
LD Q0.1
LPS
A I0.0
S M20.5, 1
LRD
AN I0.0
R M20.5, 1
LRD
A I0.1
S M20.6, 1
LRD
AN I0.1
R M20.6, 1
LRD
A I0.2
S M20.7, 1
LRD
AN I0.2
R M20.7, 1
LRD
A I0.3
S M21.0, 1
LRD
AN I0.3
R M21.0, 1
LRD
A I0.4
S M21.1, 1
LPP
AN I0.4
R M21.1, 1
Network 6
// q0.2扫描线上按键有6、7、8、9、ESC 五个
LD Q0.2
LPS
A I0.0
S M21.2, 1
LRD
AN I0.0
R M21.2, 1
LRD
A I0.1
S M21.3, 1
LRD
AN I0.1
R M21.3, 1
LRD
A I0.2
S M21.4, 1
LRD
AN I0.2
R M21.4, 1
LRD
A I0.3
S M21.5, 1
LRD
AN I0.3
R M21.5, 1
LRD
A I0.4
S M21.6, 1
LPP
AN I0.4
R M21.6, 1
Network 7
// q0.3扫描线上按键有 左向、右向、DEL、ENTER、备用 五个
LD Q0.3
LPS
A I0.0
S M21.7, 1
LRD
AN I0.0
R M21.7, 1
LRD
A I0.1
S M22.0, 1
LRD
AN I0.1
R M22.0, 1
LRD
A I0.2
S M22.1, 1
LRD
AN I0.2
R M22.1, 1
LRD
A I0.3
S M22.2, 1
LRD
AN I0.3
R M22.2, 1
LRD
A I0.4
S M22.3, 1
LPP
AN I0.4
R M22.3, 1
通过以上程序把20个按键信号分别转换为M20.0—M22.3这20位内存信号,也就是说,这20位内存信号就分别对应于外部20个按键。这段程序也处理了按键重复的问题。
3. 这种控制方法的思想及其特点:
以少数的PLC输入/输出点和外部按键,利用PLC的巧妙编程方法,实现了触摸屏的外部功能操作和参数数据设定,既代替了价格昂贵的工业操作屏或工控机,又保护了触摸屏、延长了其使用寿命。