<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于SOCK盯編程實(shí)現的組態(tài)軟件與控制器的網(wǎng)絡(luò )通訊

基于SOCK盯編程實(shí)現的組態(tài)軟件與控制器的網(wǎng)絡(luò )通訊

作者: 時(shí)間:2010-09-01 來(lái)源:網(wǎng)絡(luò ) 收藏

0 引言

本文引用地址:http://dyxdggzs.com/article/162872.htm

是面向工程監控和數據采集的平臺工具,具有豐富的設置項目。所涉及的工業(yè)領(lǐng)域非常廣泛,在工業(yè)監控系統中發(fā)揮著(zhù)越來(lái)越重要的作用。軟件要接收現場(chǎng)的采集數據,并形成動(dòng)態(tài)畫(huà)面,以反映工業(yè)現場(chǎng)的各種狀態(tài),并能夠對現場(chǎng)設備進(jìn)行控制。這些都依賴(lài)于組態(tài)軟件的通信模塊。通信模塊作為組態(tài)運行環(huán)境中數據交互的重要渠道,通常處于監控組態(tài)軟件運行環(huán)境的核心區,其功能直接決定著(zhù)組態(tài)軟件的性能。本文在TCP/IP網(wǎng)絡(luò )協(xié)議和ET接口技術(shù)的基礎上,介紹了IEC61131-3標準的組態(tài)軟件通訊模塊的設計與方法。

1 通信模塊功能

組態(tài)監測系統分為和工程師站兩部分,圖1所示是系統的總體結構圖。圖中的負責采集并處理數據,工程師站負責接收發(fā)送過(guò)來(lái)的數據,并將數據顯示和保存。通信模塊根據用戶(hù)定義的通信協(xié)議工程師站組態(tài)軟件與控制器之間的數據通信,完成數據通信幀的組織下行和上行數據幀的校驗、解析。由此可見(jiàn),在整個(gè)組態(tài)軟件中,通信功能模塊擔負著(zhù)上層組態(tài)運行環(huán)境與下層控制器之間數據交互的重要作用。

2 通信模塊設計

為了能夠及時(shí)、準確的反映設備運行狀況,設計時(shí)可采用TCP/IP協(xié)議的流式套接字(_STREAM)來(lái)組態(tài)軟件通信模塊的程序設計。

為了實(shí)現,Windows為應用程序提供了各種接口,如Windows Sockets API等,應用程序可以直接使用這些API函數。但對于較大型的應用程序來(lái)說(shuō),應該設計一個(gè)虛擬網(wǎng)絡(luò )接口層,以使能用windows提供的各種通訊API來(lái)為應用程序提供通用的網(wǎng)絡(luò )功能。這樣的接口層可以采用中間DLL的形式,它將應用程序和windows的各種API隔離開(kāi)來(lái),使程序員能更方便地設計自己的應用程序。這樣的設計可使應用程序更易于維護和移植。

基于通信需求和上述思路,利用基于TCP_IP的ET接口可以實(shí)現網(wǎng)絡(luò )通信,通信模塊通常以動(dòng)態(tài)鏈接庫的形式存在。

2.1 Socket套接字

Windows Sockets不是一種網(wǎng)絡(luò )協(xié)議,而是一套開(kāi)放的、可支持多種協(xié)議的、Windows下的網(wǎng)絡(luò )接口。Winsock實(shí)際在計算機中提供了一個(gè)通信接口,應用程序在網(wǎng)絡(luò )上傳輸信息都可以通過(guò)這個(gè)Socket接口來(lái)實(shí)現。Windows Sockets分為三種類(lèi)型:其中流式套接字(sock-stream)定義了一種可靠的面向連接的服務(wù),它使用TCP作為傳輸層協(xié)議,可實(shí)現無(wú)差錯無(wú)重復地順序數據包傳輸;數據報套接字(sock-dgram)定義了一種無(wú)連接的服務(wù),它使用UDP協(xié)議,數據通過(guò)相互獨立的報文進(jìn)行傳輸,而且是無(wú)序的,同時(shí)不保證可靠和無(wú)差錯;原始套接字(sock-raw)允許對低層協(xié)議(如IP或ICMP)直接訪(fǎng)問(wèn),主要用于新網(wǎng)絡(luò )協(xié)議的實(shí)現和測試等。

圖2給出了一種典型的C/S(客戶(hù)端服務(wù)器)面向連接套接字調用的實(shí)現流程。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>