4)OPC项数据的更新
OPC服务器需要周期地更新OPC项的值、质量和时间戳,即将数据存储区中的数据更新到相应的OPC项。当客户端程序请求写数据时,OPC运行库调用写回调函数,并利用服务器与PLC的通信模块将数据写入PLC中的相应寄存器中;当客户请求读数据时,OPC运行库调用读回调函数,返回相应的OPC项的数据。
服务器与PLC的通信模块是基于PLC的通信接口方式进行开发的。例如串口通信,其是根据PLC的通信协议采用串口通信控件或API函数编程来实现数据交换的。
5)回调函数注册
工具包中有三个回调函数:读回调函数、写回调函数和断开回函数。只有注册了这三个回调函数后,OPC服务器才能和客户端程序按照OPC技术规范进行正常通信。
6)OPC服务器注册和注销
OPC服务器安装到计算机后,首先应将服务器名称ProgID和类标识符CLSID等信息进行注册。在OPC服务器注册后,OPC客户端程序才能在本机或局域网上检索到该OPC服务器,从而与该OPC服务器建立连接与数据交换。注销是将计算机系统中的OPC服务器信息清除。
OPC服务器是一个进程外组件,其在运行过程中对工具包接口函数的调用流程如图2所示。
3 设计实例
3.1 PLC控制对象
Denford公司的FMS(Flexible ManufacturingSystem)教学演示系统由一台数控车床、一台数控铣床、两台机器手和一条传送带组成,该系统可以通过数字I/O接口进行控制,各设备的I/O接口数如表1所示。