DCS 系统中的分布式技术及应用-PLC技术网(www.plcjs.com)-可编程控制器技术门户


DCS 系统中的分布式技术及应用

 (点击题目可以在互联网中搜索该题目的相关内容)
日期:2006-4-2 21:37:44     来源:   作者: 点击:
点击【 大  中  小 】,可以选择字体的大小,以便你阅读.

    分布式系统中通信的设计与实现是至关重要的环节,它的数据采集站可直接与现场带有标准 RS — 232C 接口的智能仪表、PLC和单片机等链接,并可通过扩展控制卡形成一个数据采集子网,以高速准确地获取数据。VB 的 MSCOMM 通信控件具有完善的串口数据发送和接受功能,利用它可以屏蔽对硬件的操作,简易快捷地进行串行通信编程。

 一、实例分析
 本文举分布式系统中两个节点间连接的实例,其中节点 A(IP地址192.168.0.1)作为服务器负责某一区域的数据采集与处理,程序内有一名为TCPServer的Winsock控件;节点B(IP地址192.168.0.2)是同级或上一级的某一节点,作为客户机,其程序内有一名为 TCPClient 的 Winsock 控件。

 节点A 服务器核心程序如下:

 (1)初始化程序
 tcpserver(0).RemoteHostIP = 192.168.0.2
 tcpserver(0).LocalPort = 1001   'tcpserver(0)专用于侦听
 tcpserver(0).Listen

 (2)发送数据程序

 tcpserver(Index).SendData Text1.Text

 (3)处理客户机连接请求程序

  Private Sub TCPServer_ConnectionRequest(Index AsInteger, ByVal requestID As Long) Load tcpserver(Index) tcpserver(Index).Accept requestID  End Sub

 (4)客户机数据到达处理程序

 Private Sub TCPServer_DataArrival(Index As Integer,
ByVal bytesTotal As Long)  Dim RD As String  tcpserver(Index).
GetData RD, vbString  txtRD.text=RD
 tcpserver(Index).SendData RD  End Sub

 (5)关闭连接程序
 Private Sub TCPServer_Close(Index As Integer)
 tcpserver(Index).Close
 Unload tcpserver(Index)
 End Sub
 以上程序着重说明Winsock控件的主要属性、方法和事件,如要实现多进程(多个客户程序同时运行),可应用创建控件数 组来代表已连接的控件实例的方法处理。

 节点 B 客户机核心程序如下:
 Private ConnectFlag As Boolean 

设置判断是否连接标志
 (1)初始化程序

 TCPClient.RemoteHost IP= 192.168.0.1  

远程计算机IP地址
 TCPClient.RemotePort = 1001        

远程计算机端口
 ConnectFlag = False

 (2)申请连接程序
 If  Not ConnectFlag Then
 TCPClient.Close
 TCPClient.Connect
 D o
 DoEvents
 Loop Until TCPClient.State = sckConnected
 ConnectFlag = True
 End Sub

本新闻共2页,当前在第11 2  

上一篇: CAN现场总线的智能脱扣器简述
下一: 除了OMRON的PLC,还有哪几种PLC可以通过做通信协议来和外部具有口的设备进行连接