触摸屏是这样与PLC通讯的,原理其实很简单,一看就懂

我们在以PLC为核心的实际控制项目中,绝大多数情况都离不开触摸屏或上位机的配合,因为我们使用PLC做控制,主要的是处理一些模拟量,这些模拟量就是我们要监控的,设备上的压力,温度,流量等这些数值,然后通过这些检测到的数值,再根据一些条件控制设备上的电动阀,风机,水泵等。但这些数值我们直接从PLC上是看不到的,想要看到这些数值,就要使用触摸屏或工控机(其实就是电脑)。

首先需要说明一点,这篇文章只是阐述触摸屏的大致的工作原理和流程,不是一步一步教你怎么使用触摸屏(以后会写实际操作的文章),我认为在使用和操作触摸屏以前,明白它的原理和工作流程更重要。

如下面的图1,当我们把触摸屏和PLC连接起来以后,在触摸屏上就能看到我们想看的数据了。除了数据还能通过触摸屏控制现场设备上的各种被控对象。比如我们在触摸屏上组态一个开关,只要触摸屏上点击一下这个开关,就可以让现场设备上的一个电机启动。

PLC

那触摸屏和PLC通讯的原理是什么样的呢?看下面的图2,这是一个真实的触摸屏的正面和背面,正面不用说了,就是显示面。主要看一下背面,有3个接口。

1,电源接口:给触摸屏供电的,电压多数都是DC24V。触摸屏的参数标签上都有标明。

2,组态下载接口:就是我们通过触摸屏厂家提供的组态软件,在电脑上把我们想要的画面和功能都设计完成后,通过此接口下载到触摸屏上。各个触摸屏厂家都有各自的软件,是不通用的,但没关系,原理都是一样的,只要学会一种,其他的只要熟悉一下软件界面就可以了。

3,通讯接口:这个接口就是和PLC通讯用的,接口的形式主要分为RS232 ,RS485 ,以太网这3种(不明白什么是232和485的可以看看我前面的文章,有专门介绍),这里需要注意的是,这个接口的形式必须和PLC的接口形式是一样的。图2中的触摸屏品牌是昆仑通泰的,它的这个接口是RS485的,所以当和PLC连接时,PLC的接口也必须是RS485的。

触摸屏

看完了触摸屏的外部,接下来我们看一下触摸屏的内部,看下面的图3,是我自己制作的触摸屏内部的一个内部示意图,可能不太全面严谨,但重要的部分已经画出来了,只要你能理解就OK了。

触摸屏的内部大致可以分为:通讯接口单元,驱动单元,内存变量单元,显示单元。除了显示单元,其他3个单元在触摸屏的内部我们是看不见的。

1,通讯接口单元:这个单元主要负责把驱动单元打包好的数据包,发送到触摸屏背面的通讯接口,再由通讯接口发送给PLC,这些过程我们是不用干预的,触摸屏会自己完成。我们要做的就是,选择一个驱动单元里的驱动,说白了就是告诉触摸屏它要发送哪个驱动数据包。,

2,驱动单元:这一单元里存放了许多和PLC连接的通讯文件,一个文件对应一种通讯协议(对通讯协议不懂的也看我以前文章),我们把这些文件叫做驱动。也就是说一个驱动对应一种通讯协议,比如说西门子S7-200PLC使用PPI通讯协议,那么触摸屏厂家就会编写一个能和西门子S7-200PLC PPI通讯协议,通讯的文件,然后放在驱动单元。

举例,比如当我们的触摸屏想要和西门子200的PLC连接时,我们就在触摸屏里选择PPI驱动。想要和西门子300的PLC连接,选择MPI(MPI是西门子300PLC的通讯协议)驱动就可以了。 这些驱动文件都是触摸屏厂家提前写好的,我们只能选择不能更改。可见触摸屏里面的驱动越多,我们可以选择的PLC品牌或通讯协议的范围就越广。现在成熟的触摸屏厂家内置的驱动,基本都能覆盖市面上常用的PLC和通讯协议。

所以当我们手上有一款触摸屏,想要选择一个PLC做通讯时,一定要看看你的触摸屏里有没有,可以和这个PLC通讯的驱动。

3,内存变量单元:这一单元也是触摸屏厂家内置的,它实际上就是一块存储区,它里面可以存放各种各样的数据,存放的数据类型大致可以分为数值型,开关型,字符型,特殊型。

比如我们想要在触摸屏上显示一个锅炉的水温,那么我们就在触摸屏的内存变量单元,新建一个变量,这个变量的名字叫"锅炉水温"(名字随便取),数据类型选择数值型。那么触摸屏就会自动在内存单元,分配一小块区域给"锅炉水温"这个变量。当触摸屏和PLC通讯时,就会把从PLC读到水温数据存放到这一小块区域,也就是"锅炉水温"这个变量。当我们需要显示多个数据时,只要新建多个变量就可以了。看到这里你可能还是有点不太理解,没关系,等一会我按照下面的图4系统的说一下你就明白了。

4,显示单元:这个单元就好理解了,只要是我们在触摸屏画面上能看到的东西都是在显示单元。就依上面的"锅炉水温"为例,我们想要显示锅炉的水的温度,只要在触摸屏的显示单元上,画一个显示框的部件(这个部件每个触摸屏都有,直接拖到画面就行),然后把这个部件和上面新建的"锅炉水温"这个变量连接起来就行了。

RS232

上面分别把各个单元讲完了,最难理解就是驱动单元和内存变量单元。大家可能还不太明白,下面我就按照图4,系统的再说一下你就能理解了。

图4要实现的功能是,触摸屏和西门子S7-200PLC连接,1,在触摸屏上可以显示PLC里的一个压力数值,。2,可以通过触摸屏上的一个开关部件,控制PLC里的一个开关量。

第一步,我们先在触摸屏里选择驱动,因为是和西门子S7-200PLC连接,所以我们在驱动单元里就要选择"西门子S7-200 PPI通讯驱动"。驱动选择完成后,触摸屏就会把所选择的驱动和通讯接口单元,还有内存变量单元自动连接起来。我们再来看一下这个驱动的内部(图4中桔色的部分),里面有许多地址V0.0 VB10 VW10等,这些地址是和PLC里的地址一一对应的,里面的数据和状态也是和PLC里相同的。比如PLC里的VD10里的数据是123.5的话,那么触摸屏驱动里的VD10里的数据也是123.5。这样触摸屏里就有数据了,但是这些数据现在还是不能显示出来,因为这些数据还没有传到显示单元。要怎么做才行呢?

第二步,我们在内存变量单元,新建一个变量叫"储罐压力",这个变量我们把它和驱动单元里的VD10连接起来,这样"储罐压力"这个变量里就会有数据123.5了。但现在数据还是不能显示出来,因为还没有传到显示单元。

最后一步,我们在显示单元,放置一个具有显示功能的显示部件,然后把这个显示部件和内存变量单元中的"储罐压力"这个变量,连接起来就可以。这样我们就能看到123.5这个数据了。看起来挺复杂,其实这中间我们要做的就是,通过一个新建的变量,把这几个单元连接起来就行了,其他的事情都是触摸屏自动完成的。

理解了触摸屏数值显示的工作流程,开关量的也就简单了,在显示单元放一个开关部件,然后新建一个变量,把这个变量和驱动单元还有显示单元连接起来就行了。至于触摸屏是怎么把这些数据传给PLC的,那就不用管了,这些事通讯接口单元会帮你完成。

RS485

图5就是整体的连接示意图,这是最基本的组合方式,通过这种PLC+触摸屏的组合方式,实现了真正的人机对话,PLC内部的数据我们可以一目了然,通过在触摸屏上增加几个开关部件,就可以减少实际开关的使用,从而降低实际开关触点接触不良,对控制系统造成的影响,也提高了系统的稳定性。

PLC
助力企业实现信息化、数字化、智能化,打造现代化智慧工厂,主要产品有设备管理系统EHS数字化平台仓储管理系统数字孪生可视化大屏智能运维管理系统生产ERP,视频监控,SCADA,能耗管理。
详细请咨询客服。