APP下载

PC和PLC与现场仪器仪表通信的对比研究

2014-08-02

化工自动化及仪表 2014年9期
关键词:仪器仪表通信协议调用

王 佳 吉 华 岳 显 樊 刚 夏 夫

(四川大学化学工程学院,成都 610065)

以PLC为核心的工控系统,一般皆由现场仪器仪表、PLC和PC机构成,三者之间需组成网络实现相互间的信息交互,而且经常会遇到不同厂商生产的仪器仪表或PLC之间需要完成通信[1]。Modbus协议即为应此需求而开发出的主-从式通信协议,在无需进行通信编程的前提下,实现PC(主设备)对PLC(从设备)内部存储区域的直接读、写操作。通过Modbus协议,PLC与PLC、PLC与其他设备之间,即可方便地实现数据通信。

现场仪器仪表多以两种方式加入Modbus通信网络:以PC为主设备,现场仪器仪表为从设备;以PLC为主设备,现场仪器仪表为从设备[2~5]。这两种通信方式在硬件的要求、现场通信网络的布线和通信程序的编写方面都有明显的区别,笔者通过在醇胺法高压脱硫自控系统项目中,对4个SR93温控仪表的通信方式的改变,分述PC和PLC分别作为仪器仪表Modbus通信主设备的优、缺点。

1 系统介绍①

某醇胺法高压脱硫自控系统采用两极监控方式:上位机以标准工业控制计算机ARK5260作为主要人机界面,完成对下位机的监控及管理等功能;下位机以S7-300 PLC为控制核心,构成基础测控层,完成现场的数据采集和过程控制。上位机和下位机构成可视化的人机交互控制系统,实现快速、可靠、精确和安全的控制。整个系统的现场仪器仪表包括调节阀、水泵、压力传感器、射频导纳仪及SR93温控仪表等。

SR93温控仪表设计有RS485通信接口,支持日本岛电公司自定义的ASCII码协议。为了节省费用,通过1个RS232/485转换接口,以PC为主设备,4个SR93温控仪表作为从设备,组成Modbus通信网络,系统结构如图1所示。

图1 PC作为主设备的系统网络结构

调试运行发现,上位机软件经常需要等待10s左右才能读出4个SR93温控仪表检测到的数据,并且检测到的温度有与SR93温控仪表的示值不符的现象。因此PC与现场仪器仪表的通信相对于PLC作为主机设计通信虽然具有价格优势,但也有不可避免的缺点:

a. 为PC购买的RS232/485转换接口硬件质量参差不齐,即使采用有源转换接口,其发送、接收能力和抗干扰能力也无法与PLC的通信接口相比;

b. 在工业现场,PC一般离操作车间较PLC远,在与现场仪器仪表的通信上,就对通信速率和系统的稳定性提出了更高要求;

c. 现场仪器仪表的通信能力也不能与PLC相关设备相比,在一定程度上,对于通信硬件也提出了更高要求。

为了提高通信质量,改为以PLC作为与4个SR93温控仪表通信的主设备,系统结构如图2所示。相较于PC,虽然PLC有支持Modbus协议的通信接口,但一般都需要用来与PC通信,为了与现场仪器仪表组成Modbus通信网络,就需要购买包含有多个支持Modbus通信接口的PLC或加入专门的通信模块。S7-300 PLC支持现场总线技术,改变通信方式后,为了将4个SR93温控仪表的参数读入S7-300 PLC,需要加入点到点通信模块CP341,通过集成在CP341中的ASCII通信协议[6],实现与4个SR93温控仪表的通信。

图2 PLC作为主设备的系统网络结构

以PLC作为通信网络的主设备,不但提高了通信质量,而且上位机软件只需实现PC和PLC的通信协议,避免了多协议并存的现象。更重要的是,PLC只需要调用其内部通信命令就可以便捷地实现与现场仪器仪表的通信。

2 通信程序设计

以PLC作为4个SR93温控仪表Modbus通信的主设备,不但要改变通信硬件和现场通信网络的布线,还需编写PLC和SR93温控仪表的通信程序,以及PC和PLC的通信程序,才能够将4个SR93温控仪表加入控制系统的通信网络。

2.1 PLC和SR93温控仪表的通信程序

与4个SR93温控仪表通信,PLC程序的设计是一个重要环节。根据控制要求,PLC程序包括读取数据程序和写数据程序。在PLC与多个现场仪器仪表的通信过程中,读取现场仪器仪表数据的过程是连续的,而往现场仪器仪表中写数据仅在需要时才进行。因此,写数据程序采用一个脉冲调用,同时在执行写数据程序时一定要屏蔽读取数据程序。这就给相关程序编写带来了一定难度。由于PLC采用循环执行用户程序的方式,在循环程序处理过程中可以被某些时间中断,如果有中断事件出现,当前正在执行的块被暂停执行,并且自动调用分配给该事件的组织块,该组织块被执行完后,被暂停执行的块从被中断之处继续执行[7]。为此,PLC程序在中断事件内执行写数据命令,并采取轮询方式读取仪器仪表的数据。

2.1.1读取数据程序

在S7-300 PLC系统,调用 CP341的功能块FB8和FB7,就能够实现数据的发送和接收[8]。连续读取4个SR93温控仪表数据的程序需要设计符合SR93温控仪表通信格式的读取数据DB块,调用FB8发送读取数据DB块实现读取数据命令的发送。每个SR93温控仪表的读取数据DB块仅有仪表地址和BCC校验码不同,因此所有的仪表采用一个相同的读取数据DB块,以读取仪表地址为1的SR93温控仪表的实际值为例,其数据的DB块结构见表1。

表1 DB块结构

为了实现连续读取4个SR93温控仪表的数据,设计轮询程序不断修改读取数据DB块中的仪表地址和BCC校验码,轮询方法为:构造一个计数器C1,系统程序每扫描一次执行一次(C1+1)%4,仪表地址就等于余数加1,把计算出来的仪表地址送入读取数据DB块中,就实现了对4个SR93温控仪表的连续读取的任务。

执行完FB8后,调用FB7接收SR93温控仪表的应答命令,根据仪表地址为4个SR93温控仪表分别分配DB1、DB2、DB3和DB4存储应答命令。PLC和SR93温控仪表通信过程中,数据以ASCII码传输,为方便上位机的显示和输入,需要对数据进行转换,如实际数据为45时,数据传输格式如图3所示。

图3 数据传输格式

读取数据的最高一位的处理方法为:将读取到的ASCII码数据减去30,得到的结果与9比较,如果结果大于9则说明为A~F中的数值,再将结果减去1,然后左移12位,与F000进行按位与运算,得到高位的数据。其他位的数据处理与此类似,只是左移位数和按位与运算不同,将所得到的4个数值相加后得到最终读取的数值。将分解出来的数据存储在分配好的数据缓冲区后,上位机程序便可以读取到这些数据。读取数据程序流程如图4所示。

图4 数据读取流程

2.1.2写数据程序

在循环中断组织块OB35中编写写数据程序,就可以在写数据程序运行时屏蔽读取数据程序。写数据程序也通过FB8和FB7实现,根据日本岛电公司的通信协议,写入数据前需要把SR93温控仪表的通信模式改为COM模式,写数据成功后再恢复通信模式为LOC模式。因此,一次脉冲调用写数据程序,就要按顺序发送3条写数据命令。写数据程序需要设计符合SR93温控仪表通信格式的COM DB块、写数据DB块和LOC DB块,每个SR93温控仪表的COM DB块和LOC DB块仅是仪表地址和BCC校验码不同,而写数据DB块仅是仪表地址、写入的数据和BCC校验码不同,因此所有仪表采用相同的COM DB块、写数据DB块和LOC DB块,通过脉冲调用修改相应的仪表地址、写入的数据和BCC校验码。写入的数据也需要转换成ASCII码,以便SR93温控仪表识别,转换方式与读取数据程序中的数据处理类似。调用FB8按顺序发送3个DB块,就可以实现写数据任务。写数据流程如图5所示。

图5 写数据流程

2.2 PC和PLC通信程序

S7-300 PLC支持PPI、MPI、Profibus及Profinet等通信协议。醇胺法高压脱硫自控系统选用的S7-300 PLC设有DP接口,采用Profinet通信方式与PC通信。上位机软件采用WinCC进行硬件组态并设计相应的变量后,WinCC的存储区域就可以映射到PLC的存储区域。系统运行时,PLC就可以向WinCC的变量提供过程值,实现了二者间的数据交换。

PLC作为SR93温控仪表Modbus通信的主设备,不需要在WinCC软件中实现PC和SR93温控仪表的通信协议,SR93温控仪表的通信程序集成在PLC中,通信数据也都在PLC中处理、存储,为上位机软件节省了存储空间,提高了其运行效率,PC通过控制PLC实现了对SR93温控仪表的控制。

3 采用PLC实现通信设计的优势

在另一例醇胺-砜胺-水溶液平衡溶解度测量装置控制系统中,直接采用PLC作为与现场仪器仪表通信的主设备,不仅为设计人员节省了大量的编程工作量,而且系统稳定,通信质量高。因此在与现场仪器仪表的通信中,PLC比PC更具优势,主要体现在:大多PLC和现场仪器仪表都支持Modbus通信协议,避免了多协议并存的状况;PLC都集成有Modbus通信命令,可以便捷地实现与现场仪器仪表的通信,省去了通信编程,为设计人员节省了大量的编程工作量;PLC的通信接口的稳定性和通信能力优于PC,更适合作为Modbus通信的主机。

PLC强大的通信功能,使其稳定性高,抗干扰能力强,特别是编程简单,不需要进行通信编程,而且不需要RS232/485转换器,降低了系统对硬件、软件方面的要求。对比分析的结论是:在以PLC为控制核心的工业控制系统中,与现场仪器仪表的Modbus通信上具有更多优势。

4 结束语

在醇胺法高压脱硫自控系统中采用PLC取代PC作为与现场仪器仪表通信的主设备,就近与现场仪器仪表连接,实现了基于Modbus协议的主-从通信,并通过PLC的高速实时网络实现对现场仪器仪表的远程监控,很好地克服了PC直接与现场仪器仪表通信的缺点,显著增强了系统的稳定性,同时通信速率和成功率明显提高。

猜你喜欢

仪器仪表通信协议调用
重庆市北碚区仪器仪表行业协会
重庆市北碚区仪器仪表行业协会
核电项目物项调用管理的应用研究
LabWindows/CVI下基于ActiveX技术的Excel调用
基于Z-Stack通信协议栈的红外地温采集电路设计
基于系统调用的恶意软件检测技术研究
基于DMX512通信协议的多路转发器设计与研究
基于NS-3的PLC多频通信协议仿真平台设计与实现
高速公路机电设备维修常用仪器仪表的应用
仪器仪表业今年产销增幅或达15%