0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

触摸屏与PLC通讯中的问题产生及解决方法

电子设计 来源:郭婷 作者:电子设计 2019-06-26 08:18 次阅读

随着计算机网络及现场总线技术技术的发展,PLC及触摸屏在工业控制和楼宇自动化中的应用非常广泛。现场总线技术及其总线接口模块、智能仪表、控制设备等组成的综合监控系统已成为当前自动化技术发展的一个重要方向。在工控领域,PLC与触摸屏结合运用的技术已越来越为工程人员所了解与熟悉 ,由于触摸屏具有操作简便、界面美观直接、编程容易掌握、与PLC通讯良好、抗干扰能力强等等特点 ,它正迅速地渗入各个行业 ,发挥自动化控制的最大优势。

PROFIBUS提供了两种通信协议:DP、FMS,富士UG系列的触摸屏支持其中的DP协议。富士触摸屏具有很强的兼容性,可以与近30个厂家的PLC通讯,兼容性极强,而且还可以和计算机通讯(开放式通讯协议)。

通过接口单元、UG031-P通讯卡及总线的连接,UG触摸屏可以作为从站和作为主站的西门子的S7-3

00或S7-400系列的PLC通信(网络结构示意见图一)。

触摸屏与PLC通讯中的问题产生及解决方法

图一:PROFIBUS-DP的网络结构

1 系统结构

本文的背景为某食品加工厂某控制系统包括原料混料线、薯饼生产线、包装线等构成的主线系统,以及蒸汽锅炉系统、水系统、压缩空气系统、照明系统、通风系统和消防系统等构成的辅助系统。各系统位置比较分散,控制点较多,其中包括140多台电机,29台变频器,15个温湿度控制点。

由于系统比较复杂,控制采取分层控制策略,由两台上位机完成工厂级的监控及数据管理功能,触摸屏和PLC完成现场级的控制,采用Profibus现场总线的方式进行通讯。上位机留有接口,可连接局域网和广域网,以利于进一步的开发。其中数字输入点有900多点,数字输出有400多点,模拟量输入20个。

下面以这个食品加工厂为例,组成一个集中控制系统,系统结构如图二所示。

其中PLC(1)用于主系统,PLC(2)用于辅助系统。辅助系统的组成与主系统相似,因此图中省略了其构成。PLC选用S7-300系列的CPU315-2DP和S7-200系列的CPU226,PID模块为FM355C,通讯模块为CP342-5,扩展模块为IM153-1,I/O模块则使用到:数字输入模块选SM321、数字输出为SM322、模拟量输入为SM331。上位机选用西门子的工控机,它内置了PCI接口的CP5611卡用于与PLC通讯。

选用S7-300系列的CPU315-2DP是为了能进行扩展I/O模块以满足控制点数的要求,而用于扩展的IM模块的选型则是依据IM模块与中央控制器CPU315-2DP的距离。

由于所有的I/O模块均放在同一组控制柜里,因此选用了通讯距离在5米范围内的IM153-1。当IM模块与中央控制器的距离较远时可以选择通讯范围为100米的型号的IM模块。

触摸屏选用富士UG420H-SC1,10.4英寸、128色STN显示,基于Windows95/98/NT操作平台下的专用组态软件,界面友好直观,易学易用,大大节省产品开发周期。编程软件中备有大量的图形库(开关、灯、棒图等)供选择,还可以根据用户需求编辑所需要的工艺图形,能够转换BMP文件和AUTOCAD中的DXF文件。

触摸屏与PLC通讯中的问题产生及解决方法

图二:控系统硬件组成及结构

2 触摸屏的通讯设置及界面设计

在硬件连接完成后,需要在组态软件中指定系统的硬件配置以及设置一些通信参数等等。首先制定所使用的触摸屏的类型,这里选择默认的UG420(640*480 10.4inches);下一步指定和触摸屏通讯的PLC类型及型号,这里选SIEMENS S7-PROFIBUS;最后一步指定系统参数,首先是读区和写区,读区是指作为从PLC读入数据的缓冲,如果系统中需要显示趋势图的话那么读区应当设大一些,一般设1000个字就可以了,写区用于显示存储屏幕的状态、页码、画面层叠以及报警状态等等。另外在对话框No.of Word Setting for I/O中需要指出触摸屏的MPI地址,以及传输的帧长度,MPI地址在PLC的硬件组态里已经定义好了,两者必须一致,否则会出现通信错误。另外帧长度为32字节;奇偶校验为奇校验;数据长度8位;停止位1位;通讯方式RS-485

UG00S-CW具有非常完善而强大的组态功能,在开发组态的时候,开发者可以不去考虑通信协议的问题,因为富士公司已经将这一切的技术细节都屏蔽掉了,它具有智能的寻址功能。在建立一个按钮时,这个按钮在PLC中的预先有定义(在西门子PLC中,无论是数字量还是模拟量的定义都是在DB块中)。假设这个按钮的地址是DB2.DBX2.0(它的含义是第2个DB块中第2个字节的第0位),触摸屏中按钮的地址应表示为DB2:2-0。我们可以看到,除了地址的书写方式有所不同以外,你几乎无需作其他的工作,你无需去定义变量、更无需去理会通信的帧结构等等。

对于模拟量同样如此,只不过在模拟量中你需要指出模拟量所占的字节个数,其他的同数字量一样简单。

可以说,UG00S-CW在处理基本的模拟数字量的时候非常简单、方便,但是在处理一些较为复杂的情况时却遇到了意想不到的问题。在这个食品生产线的集中控制系统,其中就涉及到富士触摸屏和西门子PLC中的通信格式的兼容问题。

系统中有些PID控制的模拟量需要用趋势图来显示,UG00S-CW中显示趋势图并不复杂,首先点一下趋势图的图标,在弹出的对话框中选择趋势图的类型,然后选择每条曲线对应的地址即可。但是在联机调试时却总是出现comunication error(通信错误)信息,经过排查发现问题出在趋势图上,如果将趋势图从程序中去掉,则一切正常,后来我就尝试先将西门子PLC中的对应的模拟量数据读入触摸

屏的缓冲(即内部存储区),然后将趋势图每条曲线的地址改为对应的内部地址。经过联机调试,发现不再出现comunication error信息,但是趋势图的曲线的显示却极不正常。经过观察,发现除了当模拟量的值为零时曲线显示正常,而为非零时曲线则指向无穷大。这个问题曾让笔者百思不得其解,后来终于想到有可能是西门子PLC和富士触摸屏在存储格式上可能会不兼容。原来富士触摸屏中趋势图中的模拟量一般都是双字(4字节),它从西门子PLC读取的顺序是将第一字读为高字,第二个字读为低字,而西门子PLC中模拟量的存储为先存低字再存高字,这样富士触摸屏从西门子PLC中读入的数据刚好都是高低字颠倒的。因为一般模拟量的值都比较小,所以高字都为零,这样相当于将原来的值乘了一个2的16次方的数,远远超过了模拟量的上限,所以才出现了以上情况。

为了解决以上问题,需要将PLC中的数据读入,然后依次高低字颠倒,然后再将趋势图的曲线地址指向存储修正数据的内部地址即可。为了完成这个功能,需要用到UG00S-CW的宏指令,富士UG00S-CW平台提供了丰富的宏命令集,

主要有以下几类:

屏幕类,当打开一个界面时可执行的OPEN macro,当关闭一个界面时可执行的 CLOSE macro,当打开一个界面后不断循环执行直到这个界面关闭为止时停止的 CYCLE macro。

按钮类,当按下一个按钮时可执行的 ON macro和当松开一个按钮时可执行的 OFF macro。

宏模式,即宏指令程序段受某一个比特位的控制,当这一位为1时执行,为0时停止,这个比特位可以是PLC中的地址,也可以是触摸屏的内部地址。

富士UG00S-CW的宏命令集和汇编语言非常相似,不过此外还增加了许多系统命令功能和辅助功能,使得开发程序更加方便快捷。触摸屏中的存储格式是字,地址用$u来表示,例如$u1000就表示第1000个字,$u1000-14就表示第1000个字的第14位,触摸屏中没有用来表示字节的地址表示方式。在这个食品生产线上有多个PID控制回路,每个回路对应一个趋势图,以第一个回路为例,它占用Buffer1(最多有12个Buffer可供使用)趋势图有三条曲线PV、SP、OP,它们所对应的PLC地址分别为DB10:DBD0,DB10:DBD4, DB10:DBD8,然后将调整后的地址存入定为$u500~$u505,程序段如下:

/*首先将模拟量读入触摸屏内部,使用块赋值BMOV指令,即将DB10:DBD0~ DB10: DBD8赋值到$u500~$u505*/

$u500=DB0010:0000? C:12(BMOV)

//下面将各个量的高字和低字颠倒

$u600=$u500 (W)

$u500=$u501 (W)

$u501=$u600 (W)

$u602=$u502 (W)

$u502=$u503 (W)

$u503=$u602 (W)

$u604=$u504 (W)

$u500=$u505 (W)

$u505=$u604 (W)

然后将此程序段拷贝到每一屏幕的CYCLE macro中,然后将buffer地址初始地址指向$500,抽样模式定为:Constant Sample,曲线条数(即No. of Word)定为3条,存储长度为500,其他的设置为默认值,趋势图中对应三条曲线的地址改为$u500,$u502,$u504,这样才能保证触摸屏中的数据和PLC中的数据同步更新。将程序下载到触摸屏,经过联机测试,一切正常。

3 结束语

富士触摸屏以及西门子PLC由于其产品具有很高的稳定性,而且在软件开发上非常高效快捷,因此在工控方面,两者相结合是一个很不错的选择,能够充分发挥两者的优点。但是由于两者毕竟不是同一厂商,所以难免会在某些细节的兼容性上会有纰漏,这是我们在设计工控系统时特别要注意的地方,硬件漏洞软件补是IT界永恒不变的方法,在开发商还没有使他们的产品尽善尽美之前,我们应当运用我们自己的智慧来完善我们的系统。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    4990

    文章

    12653

    浏览量

    456908
  • 触摸屏
    +关注

    关注

    42

    文章

    2179

    浏览量

    114425
  • 计算机
    +关注

    关注

    19

    文章

    6906

    浏览量

    85876
收藏 人收藏

    评论

    相关推荐

    触摸屏TP和PLC在搅拌楼生产控制的应用

    触摸屏TP和PLC在搅拌楼生产控制的应用 本文着重介绍了触摸屏作为上位机管理系统与 PLC通讯
    发表于 06-12 15:16 978次阅读
    <b class='flag-5'>触摸屏</b>TP和<b class='flag-5'>PLC</b>在搅拌楼生产控制<b class='flag-5'>中</b>的应用

    PLC触摸屏通讯故障处理方法

    如何通过程序判断触摸屏PLC通讯出现故障?
    的头像 发表于 06-24 17:21 2.1w次阅读
    <b class='flag-5'>PLC</b>与<b class='flag-5'>触摸屏</b><b class='flag-5'>通讯</b>故障处理<b class='flag-5'>方法</b>

    触摸屏PLC如何实现通讯?

    市面上主流的触摸屏都支持绝大多数的PLC通讯通讯过程就是数据交换的过程。如何实现触摸屏PLC
    的头像 发表于 09-13 16:36 8.6w次阅读

    手机触摸屏失灵的原因及解决方法

    手机触控又称为触控面板,是个可接收触头等输入讯号的感应式液晶显示装置,有的消费者买了新手机仅仅使用三天就出现了手机触摸屏失灵的故障。到底手机触摸屏失灵什么什么原因,下面小编给大家介绍手机触摸
    发表于 05-17 11:06 8.9w次阅读

    触摸屏PLC之间无线通讯步骤详解

    ,我们就来详细说说威纶通触摸屏与三菱FX3U PLC基于三菱专用协议下的无线通信实现方法。其中,威纶通触摸屏作为主站,两台三菱FX3U PLC
    发表于 12-16 17:13 2.1w次阅读
    <b class='flag-5'>触摸屏</b>与<b class='flag-5'>PLC</b>之间无线<b class='flag-5'>通讯</b>步骤详解

    触摸屏、组态王等设备如何与PLC实现无线通讯

    PLC触摸屏的无线通讯方法大同小异,以威纶通触摸屏与欧姆龙PLC之间实现无线
    的头像 发表于 09-05 09:30 5752次阅读
    <b class='flag-5'>触摸屏</b>、组态王等设备如何与<b class='flag-5'>PLC</b>实现无线<b class='flag-5'>通讯</b>

    台达PLC与昆仑通态触摸屏通讯设置

    双击设备0打开plc设置。设备地址改为1,采样周期改为1000ms,单击确定。至此触摸屏通讯设置完成。
    的头像 发表于 11-08 14:58 8768次阅读

    如何实现触摸屏与多台PLC之间无线Profinet通信?

    触摸屏PLC之间的通讯没任何难度,它们之间的通讯一般是主/从关系。在Profinet协议下,实现触摸屏与多台
    的头像 发表于 03-22 09:46 1687次阅读
    如何实现<b class='flag-5'>触摸屏</b>与多台<b class='flag-5'>PLC</b>之间无线Profinet通信?

    触摸屏与三菱PLC之间无线MODBUS通讯实例

    、方案概述 本方案是威纶通触摸屏与三菱FX5U PLC基于MODBUS协议下的无线通信实现方法。此方案威纶通触摸屏作为主站,三菱FX5U
    的头像 发表于 05-11 09:16 2738次阅读
    <b class='flag-5'>触摸屏</b>与三菱<b class='flag-5'>PLC</b>之间无线MODBUS<b class='flag-5'>通讯</b>实例

    台达PLC和昆仑通态触摸屏通讯设置

    台达PLC触摸屏通讯关键是对于通讯参数的设置
    的头像 发表于 06-14 11:06 7215次阅读
    台达<b class='flag-5'>PLC</b>和昆仑通态<b class='flag-5'>触摸屏</b><b class='flag-5'>通讯</b>设置

    威纶通触摸屏和西门子PLC通讯不上的解决方法

    经常有师傅遇到这样的问题:怎么我的触摸屏PLC通讯不上?比方说下面遇到的两个问题。
    的头像 发表于 06-25 11:52 6967次阅读
    威纶通<b class='flag-5'>触摸屏</b>和西门子<b class='flag-5'>PLC</b><b class='flag-5'>通讯</b>不上的<b class='flag-5'>解决方法</b>

    触摸屏与施耐德PLC之间MODBUS无线通讯

    触摸屏与施耐德PLC之间MODBUS无线通讯
    的头像 发表于 10-25 09:03 875次阅读
    <b class='flag-5'>触摸屏</b>与施耐德<b class='flag-5'>PLC</b>之间MODBUS无线<b class='flag-5'>通讯</b>

    台达PLC和昆仑通态触摸屏通讯设置

    今天,我们来一起学下下台达PLC触摸屏之间无线通信的实现方法。其中触摸屏作为主站,台达PLC作为从站,并采用日系
    的头像 发表于 11-08 09:52 885次阅读
    台达<b class='flag-5'>PLC</b>和昆仑通态<b class='flag-5'>触摸屏</b><b class='flag-5'>通讯</b>设置

    手机触摸屏失灵的原因及解决方法 手机触摸屏失灵怎么关机

    手机触摸屏失灵的原因及解决方法: 一、原因: 软件问题:当手机运行过程中出现一些错误或者存储空间不足时,可能会导致触摸屏失灵。此时,重启或者进行软件更新可能会解决问题。 硬件问题:如果手机摔落、遭受
    的头像 发表于 01-24 17:48 1.3w次阅读

    触摸屏plc通讯不上的原因

    触摸屏PLC(可编程逻辑控制器)之间的通信是工业自动化领域中常见的一种应用。然而,在实际应用过程,可能会遇到触摸屏PLC通信不上的问题
    的头像 发表于 06-12 10:49 680次阅读