1、0 引言在现代工业自动化控制系统中,可编程逻辑控制器(PLC)作为常用的现场控制设备,上位机作为数据采集及人机界面的一种已经得到广泛使用。过去,在工程项目开发中,PLC和上位机间的通信常采用 RS-232C 或者 RS-485 串行方式,这种方法很难满足数据量大、通信距离远、实时性要求高的控制系统。随着互联网技术的发展、普及与推广,以太网技术得到了迅速的发展,其传输速率的提高和交换技术的应用,解决了以太网通信的非确定性问题,使得工业以太网能够广泛应用于工业信息控制领域,也是工业信息控制未来的发展趋势。FINS(factory interface network service)通信协议是欧姆龙
2、公司开发的用于工业自动化控制网络的指令响应系统。使用 FINS 指令可实现各种网络间的无缝通信,包括用于信息网络的 Etherne(以太网),用于控制网络的 Controller Link 和 SYSMAC LINK。通过编程发送 FINS 指令,上位机或 PLC 就能够读写另一个 PLC 数据区的内容,甚至控制其运行状态,从而简化了用户程序。FINS 协议支持工业以太网,这就为 OMRON PLC 与上位机以太网通信的实现提供了可能。1 OMRON PLC 与上位机通信方式目前,在欧姆龙 PLC 网络组成中,上位机和 PLC 的通信可以采用 RS232C485 串行通信、Controller
3、 Link 通信和工业以太网通信三种方式。它们的主要性能参数如表 1 所示。图片看不清楚?请点击这里查看原图(大图)。文献3介绍了采用 RS232C485 串行通信的方案,其通信速率仅为 9600bs,速率较慢,很难适应现代数据量大、通信距离较远、实时性要求较高的控制系统。文献2中给出了基于 FINS 协议的 Controller Link 通信的设计方案,其最高速率可以达到 2Mbs,整个网络的最大传输距离为 500m,硬件上需要在上位机安装 CLK 支持卡,其扩展性及应用的灵活性没有工业以太网好。在三种通信方式中,工业以太网的优势是相当明显的。其传输速率可以达到10100Mbs(取决于实际
4、网络环境);两个节点之间的传输距离可以达到 100m,对于整个网络的传输距离没有限制;网络内最大节点数可以达到 254 个,可以实现 1(PLC):N(PC)、N:N、N:1 等多种网络形式。这些都为构架各种规模的工业网络信息系统提供了有利的条件,具有良好的扩展性、实用性、灵活性。目前使用的上位机都配有以太网卡,所以上位机侧无需增加额外的硬件设备。因此,采用工业以太网方式对提高工厂的自动化信息控制水平具有很大的现实意义。2 以太网 FINS 通信在以太网 FINS 通信中,各种数据信息是以 UDPIP 包或者 TCPIP 包的方式在以太网上发送和接收的。其中,在 Internet 层远程设备使
5、用的是 IP 地址,而在应用层使用的则是 FINS 节点地址。传输层中定义了本地 UDP 或 TCP 端口号,它为应用层(即 FINS 通信)提供通信端口,其默认设置为 9600。用户可以根据实际情况自行修改,但是在同一网络中,各设备的通信端口号必须保持一致。图 1 FINS 以太网通信协议模型图片看不清楚?请点击这里查看原图(大图)。通常以太网通信使用的是 IP 地址,而在 FINS 通信中则是使用网络号、节点号以及单元号来对不同设备(包括 PLC、PC 等现场设备)进行地址定义的。这就为不同网络之间各种设备的通信提供了统一的寻址方式。在以太网 FINS 通信中,欧姆龙的以太网单元一项重要的
6、功能就是能在 IP 地址和 Fins 节点地址之间进行转换,其转换方式有自动转换、IP 地址表和复合地址表三种方式,其地址转换数量依据模块型号和转换方式的不同还有相应的限制。以太网 FINS 通信服务是一种基于 UDPIP 的通信方式,称为 FINSUDP 方式,欧姆龙相关的以太网产品都支持这种方式。此外,CS1W-ETN21 和 CJ1W- ETN21 以太网通信模块还支持 TCPIP 协议,称为 FINSTCP 方式。21 FI NSUDP 方式FINSUDP 方式是一种使用 UDPIP 协议的 FINS 通信方式。UDPIP 是一种无连接的通信协议。当一条信息从一个节点发到另一个时,这两
7、个节点是没有明确连接的对等关系的。UDP 协议具有较快的传输速度,但是数据通信的可靠性没有 TCP 协议高。图片看不清楚?请点击这里查看原图(大图)。如图 2 所示,是一个在以太网中发送和接收所使用的 UDP 帧结构。FINS/UDP 方式使用的是一种嵌套格式数据包,即 Ethernet 报头、IP 报头、 UDP 报头和 FINS 帧。一个 UDP 数据段(FINS 帧)超过 1472 字节将被分成若干个数据包来传送。分开的 UDP 数据将在UDPIP 协议层自动组合。通常不需要关注应用层的数据分段,但是在一个多层 IP 网络中1427 字节的 UDP 包可能无法发送。在这种系统中就需要使用
8、 FINSTCP 方式。22 FINS 帧结构FINS 帧分为 FINS 指令帧和 FINS 响应帧两种形式。指令帧在发送 FINS 指令时使用,响应帧则在接收到 FINS 指令后对其返回响应时使用。它们都是由一个 FINS 报头(存储传输控制信息)、一个 FINS 指令域(存储一个 FINS 指令)以及一个 FINS 参数数据域(存储指令参数和发送响应数据)所组成的。响应帧 FINS 指令域的内容与所接收到的指令帧的FINS 指令域相同。具体结构见图 3、图 4。图片看不清楚?请点击这里查看原图(大图)。ICF 为信息控制域,用于标明指令和响应;RSV 为系统保留;GCT 为网关允许数目;D
9、NA 为目的网络号;DA1 为目的节点号;DA2 为目的单元号;SNA 为源网络号;SA1 为源节点号;SA2 为源单元号;SID 为服务和响应的标识号,可任意设置,指令和响应对应相同;MRC 和 SRC 分别为 FINS 指令的主指令和从指令;参数数据域,用于标明所操作的数据地址、范围等,在响应帧中前两个字节 MRES 和 SRES 构成响应码,用来诊断错误信息。3 FinsGateway 和 SYSMAC Compolet 控件介绍FinsGateway 是 OMRON FINS 通信协议的驱动程序,它为计算机上的 32 位 Windows 操作系统提供一个工业自动化网络环境。FinsGa
10、teway 集成了不同的网络协议,并为 FINS 通信和数据链接提供驱动程序和接口库函数。它通过创建高性能的虚拟存储区EventMemory,为不同的用户程序提供数据的接入和共享。利用 FinsGateway,计算机可以通过各层网络(包括网络互联)访问网络上的 PLC,通过接口库函数,用户还可以开发程序。图片看不清楚?请点击这里查看原图(大图)。SYSMAC Compolet 是欧姆龙公司专门为 FINS 通信开发的 Active X 控件,它是架构在FinsGateway 这个驱动程序下的 VB 控件,对 Fins 指令做了进一步集成和优化。SYSMAC Compolet 为 SYSMAC
11、CCS1CV 系列的 PLC 提供应用程序编程接口,在开发时只需要调用该控件,编写程序更便捷,语句更简单,配合使用 FinsGateway,通过计算机就可以方便地控制访问 PLC,直接对其操作而不需要掌握相应的 Fins 指令知识。4 OMRON PLC 与上位机以太网通信的实现OMRON PLC 与上位机的以太网通信依靠发送 FINS 指令实现。上位机发送 FINS 指令可以直接读取或写入 PLC 相应的数据,PLC 部分无需编写接收和发送程序。文献1给出了运用 VC+异步套接字类 CAsyncSocket 与 OMRON PLC 进行以太网通信的方法。本例中采用FINSUDP 方式,具体如图 7 所示。上位机利用 Visual Basic 60 进行程序开发,具体实现向 PLC 发送 FINS 指令(读取内存区域,指令代码 0101)读取 DM100 开始的 150 个字数据的功能。相较于文献1 介绍的方法,本文中为不同层次的使用者提供了三种方法来实现这一个功能,增加了系统开发的选择性。图 7 上位机与 PLC 通过以太网通信
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。