APP下载

基于力控组态软件的以太网驱动程序的开发

2015-07-26赵海敏王永杰合肥工业大学仪器科学与光电工程学院合肥230009

山东工业技术 2015年4期
关键词:驱动程序组态以太网

杨 杰,赵海敏,王永杰,张 辉(合肥工业大学 仪器科学与光电工程学院,合肥 230009)

基于力控组态软件的以太网驱动程序的开发

杨杰,赵海敏,王永杰,张辉
(合肥工业大学仪器科学与光电工程学院,合肥230009)

本文利用力控组态软件提供的I/O驱动程序接口(FIOS),成功开发了基于TCP/IP协议的以太网驱动程序。该程序通过联网的方式实现了对生产过程的实时监控。文章首先简要介绍了驱动程序接口开发包,在此基础上叙述了以太网底层驱动程序的编程思想,然后详细介绍了以太网底层驱动程序开发的整个过程,最后通过中继器与上位机通讯调试,验证了所开发软件的正确性。

TCP/IP;以太网;组态软件;驱动程序

0 引 言

随着工业自动化程度越来越高,组态软件以其友好的人机界面,开放的数据接口,灵活的开发方式,可靠的数据处理在生产过程中表现出较强的优越性。它通过设备驱动程序与I/O设备进行数据交换并将操作命令下达给设备。组态软件中包含了大量的设备的驱动程序,能够满足工业上的大多数生产需要。但是对于一些特殊的I/O设备,就需要利用组态软件提供的底层驱动开发包(FIOSSDK),自行开发底层驱动程序。

本文在组态环境下用VC++编写了基于TCP/IP协议的以太网驱动程序,用于将中继器采集到的测量数据传送给上位机,进行数据的处理,通过联网的方式实现对生产过程的实时监控。本文重点介绍以太网驱动程序的开发过程。

1 驱动程序开发包(FIOS SDK)

I/O驱动程序接口(FIOS)用于实现实时数据库与I/O设备交互通讯的功能。一方面,它把从I/O设备采集到的过程实时数据放给实时数据库DB(DataBase,DB),另一方面,从DB发出的数据也通过FIOS发送给I/O设备,在此过程中完成通信协议的解析,数据格式的转换等。FIOSSDK主要由设备组态接口(Iodevui)、数据连接组态接口(Ioitemui)、编程接口(Ioapi)和I/O服务器程序(Ioserver)四部分组成,力控组态软件开始运行时,其内部的I/O服务器程序Ioserver按照一定的层级进行循环扫描调度,形成数据采集和下置的命令串,如图1所示。

2 以太网驱动程序的开发

2.1编程思想

套接字(Sockets)是通信端点的一种抽象,是支持TCP/IP协议网络通信的基本操作单元,它提供了一种发送和接受数据的机制。在开发服务端/客户端应用程序时,可以利用Sockets实现数据结构或数据包的交换,以完成应用程序之间的通信。客户端/服务器模型工作时要求有一套为客户机和服务器所共识的惯例来保证服务能够被提供(或被接受),这一套惯例包含一套协议,它必须在通信的两端都被实现,在本文中指的是TCP/IP协议。

在本设计中,力控组态软件充当的是客户端的角色,利用套接字编程的时序流程一般如图2-1所示。

其中由FIOSSDK提供的Ioserver封装了大部分开发人员不必关心的技术细节,开发人员可根据项目中自定义的通信协议,实现数据的采集和下置,如图2-2所示。

2.2设备组态接口(Iodevcfg)的开发

在使用力控组态时,一般都要涉及I/O设备的定义过程。I/O描述文件的名称为Iodesc.txt,文件内容规定的格式如下(其中<CR>表示回车换行):

类别;厂商或I/O设备描述;IOID<CR>

子类型1;类型号;缺省通信方式;提供设备地址<CR>

子类型2;类型号;缺省通信方式;提供设备地址<CR>

••••••

在本论文中I/O描述文件定义为:“TCP/IP通讯;合肥工业大学仪器学院;XX项目以太网应用;1;2;0”表示设备类型编号为1,TCP/ IP网络通信,不设置设备地址。

2.3数据连接组态接口(Ioitemmui)的开发

数据连接过程对于不同的I/O设备,其形式和内容可能完全不同,因此必须针对不同的I/O设备,设计相应的数据连接形式,保存各种参数信息,一般情况下力控提供的界面选项已经足够使用。

2.4I/O监控接口(Ioapi)的开发

Ioapi提供了一组API函数和一些C++类库。这组API函数规定了名称、参数及返回值,函数内容由程序员根据具备的I/O设备编程实现。C++类库则为程序员提供各种获取力控I/O组态信息、参数设置信息、与数据库DB进行数据交换等数据处理的方法。

数据的通信格式如下(共91个字节):

表1 通信协议

数据列表如下:

表2 数据列表包含的内容

3 驱动程序的调试

如下图3-1所示为在中继器,利用力控组态软件设计的数据管理系统,其测量的数据利以太网的形式传输到上位机。

从数据管理中心获得的调试结果,如下图3-2所示

经过中继器与上位机的联调,证明了该驱动程序可以成功实现基于TCP/IP协议的以太网通信,完成数据的收发,实时监测I/O设备采集到的测量数值。

数据传输的过程中采用基于TCP/IP协议的以太网无线传输,相比于传统的RS485,Modbus总线形式,避免了布线,同时TCP/IP传输协议保证了数据传输的高效性。

4 结束语

本文以力控为例,实现了组态软件下TCP/IP协议的以太网驱动程序的开发,实现以联网方式对工业生产进行实时控制的功能,提高了企业的生产效率。该驱动程序已成功应用于某企业的生产之中,在运行的半年的时间内很好的完成了数据的传输功能要求,体现了较好的稳定性。该文提供的基于组态软件的以太网的驱动程序的开发流程,可为企业联网生产提供一定的参考价值。

[1]王生铁,张计科,张立波,何林森.《力控组态环境下数据采集卡驱动程序的开发》[J].内蒙古工业大学学报,2003,22(01):57-62.

[2]Michael J.Donahoo,Kenneth L.Calvert著.陈宗斌等译.《TCP/ IPSockets编程》[M].北京:清华大学出版社,2009(11):8-28.

[3]艾红.多点温度监测系统与组态软件的数据通信[J].自动化仪表,2014,35(10):37-41.

[4]吴力炜,叶念渝.力控组态软件下的设备驱动程序的开发[J].PLC&FA,2006(07):75-78.

[5]张建海,李勇华,刘家勇.基于VB实现的组态王与仪表之间的TCP/IP通信研究[J].2013,1(01):38-41.

[6]马万里,王平,谌震文.基于以太网工厂自动化标准的组态软件设计与开发[J].计算机集成制造系统,2005,11(10):1357-1361.

猜你喜欢

驱动程序组态以太网
浅谈力控ForceControl V7.2组态软件在自动化控制工程中的应用
ZnF低激发电子态的组态相互作用研究
Microchip推出首款车载以太网音视频桥接(AVB)全集成解决方案
避免Windows系统更新反复安装显示驱动
阻止Windows Update更新驱动程序
组态软件技术现状与发展
高职“工业组态技术”课程建设探析
三大因素驱动创新提速以太网快步迈入“灵活”时代
三大因素驱动创新提速 以太网快步迈入“灵活”时代
基于ENC28J60的嵌入式以太网/CAN网关设计