《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 設(shè)計(jì)應(yīng)用 > 基于VC的執(zhí)行機(jī)構(gòu)以太網(wǎng)控制系統(tǒng)的設(shè)計(jì)
基于VC的執(zhí)行機(jī)構(gòu)以太網(wǎng)控制系統(tǒng)的設(shè)計(jì)
摘要: 本文介紹了一種適用于過(guò)程控制領(lǐng)域的工業(yè)以太網(wǎng)監(jiān)控系統(tǒng)的架構(gòu),通過(guò)主控計(jì)算機(jī)和工業(yè)以太網(wǎng),可以方便的將所設(shè)計(jì)的各種網(wǎng)絡(luò)化的電動(dòng)執(zhí)行機(jī)構(gòu)按照我們的控制需要來(lái)連成網(wǎng)絡(luò),形成系統(tǒng)。通過(guò)自定義的通訊協(xié)議,保證了系統(tǒng)的實(shí)時(shí)性以及可靠性。通過(guò)通訊試驗(yàn),證明了該控制系統(tǒng)是可行的。
Abstract:
Key words :

摘要:本文介紹了一種適用于過(guò)程控制領(lǐng)域的工業(yè)以太網(wǎng)" title="工業(yè)以太網(wǎng)">工業(yè)以太網(wǎng)監(jiān)控系統(tǒng)的架構(gòu),通過(guò)主控計(jì)算機(jī)和工業(yè)以太網(wǎng),可以方便的將所設(shè)計(jì)的各種網(wǎng)絡(luò)化的電動(dòng)執(zhí)行機(jī)構(gòu)" title="執(zhí)行機(jī)構(gòu)">執(zhí)行機(jī)構(gòu)按照我們的控制需要來(lái)連成網(wǎng)絡(luò),形成系統(tǒng)。通過(guò)自定義的通訊協(xié)議,保證了系統(tǒng)的實(shí)時(shí)性以及可靠性。通過(guò)通訊試驗(yàn),證明了該控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)是可行的。
關(guān)鍵詞:工業(yè)以太網(wǎng);執(zhí)行機(jī)構(gòu);通信協(xié)議


1 引言

    在工業(yè)控制領(lǐng)域中,隨著控制系統(tǒng)規(guī)模的不斷增大,集中控制系統(tǒng)已經(jīng)不能滿足要求,控制網(wǎng)絡(luò)已經(jīng)廣泛應(yīng)用到工業(yè)控制中。現(xiàn)場(chǎng)總線就是順應(yīng)這一形式發(fā)展起來(lái)的技術(shù),并在一定程度上解決了這一問(wèn)題。但是,現(xiàn)場(chǎng)總線的開(kāi)放性是有條件的,是不徹底的。當(dāng)現(xiàn)場(chǎng)總線的發(fā)展遇到阻礙時(shí),以太網(wǎng)技術(shù)卻得到了迅猛發(fā)展。如果能將以太網(wǎng)技術(shù)成功地用于工業(yè)控制底層網(wǎng)絡(luò),就可以打破傳統(tǒng)的工業(yè)控制網(wǎng)絡(luò)體系,實(shí)現(xiàn)辦公自動(dòng)化與工業(yè)自動(dòng)化的無(wú)縫結(jié)合。

本課題正是在這種環(huán)境下提出。在設(shè)計(jì)中,我們選擇了傳輸速率高、實(shí)時(shí)性好,成本低的工業(yè)以太網(wǎng),在繼承上一代產(chǎn)品中成熟技術(shù)的基礎(chǔ)上,將工業(yè)以太網(wǎng)技術(shù)融入到電動(dòng)執(zhí)行機(jī)構(gòu)" title="電動(dòng)執(zhí)行機(jī)構(gòu)">電動(dòng)執(zhí)行機(jī)構(gòu)的設(shè)計(jì)中,使它們成為新一代的數(shù)字化產(chǎn)品。為了配合這些網(wǎng)絡(luò)化的電動(dòng)執(zhí)行機(jī)構(gòu)的使用,我們需要構(gòu)建一套適用于過(guò)程控制領(lǐng)域的以太網(wǎng)監(jiān)控系統(tǒng)。它通過(guò)工業(yè)以太網(wǎng),將主控計(jì)算機(jī)和多個(gè)電動(dòng)執(zhí)行機(jī)構(gòu)連接起來(lái),按照我們的需求通過(guò)計(jì)算機(jī)對(duì)底層進(jìn)行各種不同的控制,形成一個(gè)完整的控制網(wǎng)絡(luò)。

2 控制系統(tǒng)架構(gòu)

2.1 控制系統(tǒng)以太網(wǎng)架構(gòu)

整個(gè)控制系統(tǒng)的結(jié)構(gòu)如圖1所示。在此,以太網(wǎng)轉(zhuǎn)串口" title="串口">串口模塊相當(dāng)于完成一個(gè)執(zhí)行機(jī)構(gòu)網(wǎng)卡的作用,用于完成執(zhí)行機(jī)構(gòu)與以太網(wǎng)之間的協(xié)議轉(zhuǎn)換和交流。電動(dòng)執(zhí)行機(jī)構(gòu)與以太網(wǎng)轉(zhuǎn)串口模塊之間通過(guò)串行TTL電平進(jìn)行通訊,然后通過(guò)該模塊將電平信號(hào)以網(wǎng)絡(luò)數(shù)據(jù)幀的形式傳送到以太網(wǎng)上(此處以太網(wǎng)可以用HUB代替),然后進(jìn)一步傳送給上位機(jī),從而形成一條從上位機(jī)到執(zhí)行機(jī)構(gòu)的可靠的信道。

本系統(tǒng)所采用的以太網(wǎng)轉(zhuǎn)串口模塊是國(guó)內(nèi)某公司開(kāi)發(fā)的一款嵌入式網(wǎng)絡(luò)模塊,它內(nèi)部集成了TCP/IP 協(xié)議棧,用戶利用它可以實(shí)現(xiàn)嵌入式設(shè)備的網(wǎng)絡(luò)功能。該產(chǎn)品用于串口與以太網(wǎng)之間的數(shù)據(jù)傳輸,為串口設(shè)備增加以太網(wǎng)接口。可用于串口設(shè)備與主控計(jì)算機(jī)機(jī)之間,或者多個(gè)串口設(shè)備之間的遠(yuǎn)程通信。

 


圖1  控制系統(tǒng)整體結(jié)構(gòu)圖

2.2 電動(dòng)執(zhí)行機(jī)構(gòu)和以太網(wǎng)轉(zhuǎn)串口模塊通訊的實(shí)現(xiàn)

串行通訊采用TTL電平,占用兩個(gè)I/O口,即輸入口(RxD)和輸出口(TxD),執(zhí)行機(jī)構(gòu)主控板需要提供+5V電源給以太網(wǎng)轉(zhuǎn)串口模塊,硬件連接如圖2所示。


圖2 底層通訊的實(shí)現(xiàn)原理圖

本系統(tǒng)中執(zhí)行機(jī)構(gòu)所采用的主控芯片為Intel 80C196MC。圖中P2.0作為80C196MC的串行輸出,P2.1作為80C196MC的串行輸入。網(wǎng)卡地線應(yīng)和主控制板的數(shù)字地即單片機(jī)的地連接。80C196MC與以太網(wǎng)轉(zhuǎn)串口模塊之間采用異步通信,一幀長(zhǎng)度為10位,包含8位數(shù)據(jù),1位奇偶校驗(yàn)位和1位結(jié)束位。

3         軟件部分的實(shí)現(xiàn)

本系統(tǒng)采用基于VC++6.0的WinSock編程。套接字(Socket)已經(jīng)成為當(dāng)今最流行的網(wǎng)絡(luò)通信應(yīng)用程序接口。套接字最初由加利福利亞大Berkeley分校為Unix操作系統(tǒng)開(kāi)發(fā)的網(wǎng)絡(luò)通信接口, 后來(lái)它又被移植到DOS與Windows 系統(tǒng),特別是近幾年互聯(lián)網(wǎng)在全世界范圍內(nèi)的廣泛普及, 進(jìn)一步奠定了它在網(wǎng)絡(luò)通信程序開(kāi)發(fā)領(lǐng)域的主宰地位。

系統(tǒng)采用Client/Server模式。通過(guò)以太網(wǎng)轉(zhuǎn)串口模塊的配置軟件,將該模塊設(shè)置成服務(wù)器模式,而主控計(jì)算機(jī)上的控制軟件部分為客戶端" title="客戶端">客戶端,每次啟動(dòng)由主控計(jì)算機(jī)主動(dòng)連接執(zhí)行機(jī)構(gòu)。客戶端和服務(wù)器采用面向連接的通信協(xié)議:控制計(jì)算機(jī)和模塊之間會(huì)建立一個(gè)虛擬連接,這個(gè)連接一旦建立,客戶端和服務(wù)器之間就可以把數(shù)據(jù)當(dāng)作一個(gè)雙向字節(jié)流進(jìn)行交換;如果連接建立不成功,則不會(huì)發(fā)送數(shù)據(jù)。另外,面向連接傳輸?shù)拿恳粋€(gè)報(bào)文都需要接收端確認(rèn),未確認(rèn)報(bào)文被認(rèn)為是出錯(cuò)的報(bào)文。

3.1       通信過(guò)程

Socket有同步阻塞方式和異步非阻塞方式兩種使用,本系統(tǒng)應(yīng)用程序中創(chuàng)建了繼承于CAsyncSocket類的TestSocket類,它是一個(gè)異步非阻塞Socket封裝類。

由于已經(jīng)將以太網(wǎng)轉(zhuǎn)串口模塊設(shè)置為服務(wù)器模式,所以,主控計(jì)算機(jī)段的程序是作為客戶端出現(xiàn)的,該程序的編寫(xiě)大致按照以下步驟進(jìn)行:

1)       首先調(diào)用WSAStartup函數(shù)來(lái)初始化套接字庫(kù)。

2)       調(diào)用socket函數(shù)來(lái)創(chuàng)建一個(gè)套接字。

3)       調(diào)用connect函數(shù)連接服務(wù)器,發(fā)出連接請(qǐng)求

4)       服務(wù)器響應(yīng)連接請(qǐng)求后,與服務(wù)器開(kāi)始進(jìn)行交互操作(接收、發(fā)送數(shù)據(jù)等),直到請(qǐng)求結(jié)束。

5)       調(diào)用closesocket關(guān)閉套接字,釋放套接字資源。

6)       調(diào)用WSACleanup函數(shù)釋放相應(yīng)資源。

客戶端程序與服務(wù)器的通信過(guò)程如圖3所示:


圖3:面向連接服務(wù)的socket調(diào)用模型

在以太網(wǎng)轉(zhuǎn)串口模塊中,服務(wù)器程序調(diào)用listen函數(shù)將此socket置于監(jiān)聽(tīng)狀態(tài),讓這個(gè)socket對(duì)進(jìn)來(lái)的連接進(jìn)行監(jiān)聽(tīng)并確認(rèn)連接請(qǐng)求。當(dāng)服務(wù)器端監(jiān)聽(tīng)到來(lái)自客戶端的連接請(qǐng)求后,一個(gè)正在監(jiān)聽(tīng)的socket將給將給每個(gè)請(qǐng)求發(fā)送一個(gè)確認(rèn)信息,然后調(diào)用accept函數(shù),接著,面向連接的客戶通過(guò)調(diào)用connect函數(shù)啟動(dòng)網(wǎng)絡(luò)對(duì)話。在客戶端和服務(wù)器端建立連接以后,雙方就可以通過(guò)send和recv或其它面向連接的Socket API函數(shù)進(jìn)行網(wǎng)絡(luò)通信了。

3.2       通信協(xié)議

計(jì)算機(jī)和以太網(wǎng)轉(zhuǎn)串口模塊之間用SOCKET進(jìn)行通信,模塊和執(zhí)行機(jī)構(gòu)之間則采用TTL電平通信,采用統(tǒng)一的通信協(xié)議。計(jì)算機(jī)為主動(dòng)通訊設(shè)備,即所有的對(duì)話均由控制計(jì)算機(jī)發(fā)起,執(zhí)行機(jī)構(gòu)只是被動(dòng)的應(yīng)答命令。

協(xié)議中信息幀主要分為兩種:數(shù)據(jù)幀與命令幀。它實(shí)現(xiàn)一般信息通信功能。數(shù)據(jù)幀包含一般的I/O信息,而命令幀則包含控制、查詢及設(shè)置等命令。為保證信息傳送的準(zhǔn)確性,每條命令必須進(jìn)行校驗(yàn)(校驗(yàn)和1),如果命令后有命令參數(shù)的話,要再次校驗(yàn)(校驗(yàn)和2)。執(zhí)行機(jī)構(gòu)返回的信息也要校驗(yàn)。校驗(yàn)的方法可采用逐字節(jié)異或的方式。

控制計(jì)算機(jī)命令格式如下:

 

數(shù)據(jù)頭

命令碼

校驗(yàn)和1

命令參數(shù)

校驗(yàn)和2


執(zhí)行機(jī)構(gòu)返回:

 

數(shù)據(jù)頭

命令返回碼

位置/狀態(tài)/參數(shù)

校驗(yàn)和


數(shù)據(jù)頭一方面作為一次信息開(kāi)始的標(biāo)志,另一方面用作校驗(yàn)命令。命令碼和命令返回碼應(yīng)一致,保證控制計(jì)算機(jī)可以接收到正確的命令返回信息。

3.3       軟件初步模型

圖4是目前用于系統(tǒng)測(cè)試的客戶端軟件的初步模型,通過(guò)調(diào)試驗(yàn)證,其功能已經(jīng)能基本滿足當(dāng)前的測(cè)試需求:

(1)  每個(gè)執(zhí)行機(jī)構(gòu)都有一塊與其對(duì)應(yīng)的以太網(wǎng)轉(zhuǎn)串口模塊,且每個(gè)模塊都有自己固定的IP地址:輸入IP可與指定執(zhí)行機(jī)構(gòu)進(jìn)行連接,可以與多臺(tái)執(zhí)行機(jī)構(gòu)同時(shí)進(jìn)行連接并操控。

(2)  通過(guò)握手指令來(lái)確認(rèn)連接是否已經(jīng)成功。若連接不正常,則進(jìn)行握手時(shí)系統(tǒng)會(huì)收到來(lái)自執(zhí)行機(jī)構(gòu)的錯(cuò)誤報(bào)告。

(3)  可查詢當(dāng)前執(zhí)行機(jī)構(gòu)的運(yùn)行位置、運(yùn)行狀態(tài)、以及其參數(shù)的設(shè)置情況等。

(4)  對(duì)執(zhí)行機(jī)構(gòu)的參數(shù)進(jìn)行遠(yuǎn)程設(shè)置:在執(zhí)行機(jī)構(gòu)投入使用之前,都必須按照需求對(duì)其進(jìn)行相應(yīng)的參數(shù)設(shè)置;在使用過(guò)程中亦可通過(guò)此功能來(lái)改變?cè)O(shè)置。

(5)  可以通過(guò)指定開(kāi)度百分比讓執(zhí)行機(jī)構(gòu)運(yùn)行到任意的目的位置。

(6)  可以指定方向讓執(zhí)行機(jī)構(gòu)正反轉(zhuǎn)或者停止,也可進(jìn)行自主運(yùn)行。

 


圖4:客戶端軟件初步模型

4         總結(jié)及展望

  本文作者創(chuàng)新點(diǎn):給出了基于VC的執(zhí)行機(jī)構(gòu)以太網(wǎng)監(jiān)控系統(tǒng)的設(shè)計(jì)方案,實(shí)現(xiàn)了高效、快捷的遠(yuǎn)程控制。在下一步的開(kāi)發(fā)中,使本系統(tǒng)的應(yīng)用軟件與市面上通用的工控組態(tài)軟件相兼容:比如一般的組態(tài)軟件都會(huì)嵌入ModBus/TCP協(xié)議,本軟件能夠在內(nèi)部完成對(duì)該協(xié)議的轉(zhuǎn)換。也就是當(dāng)組態(tài)軟件發(fā)出控制命令后,本軟件能夠識(shí)別命令并能夠?qū)⑵滢D(zhuǎn)換成執(zhí)行機(jī)構(gòu)能夠識(shí)別的自定義協(xié)議,來(lái)間接的對(duì)執(zhí)行機(jī)構(gòu)進(jìn)行控制。這樣,系統(tǒng)就能夠與組態(tài)軟件實(shí)現(xiàn)控制上的兼容,并達(dá)到現(xiàn)場(chǎng)數(shù)據(jù)的共享。

總之,隨著以太網(wǎng)傳輸速度的不斷加快以及在確定性、實(shí)時(shí)性、可靠性方面性能的不斷改善,工業(yè)以太網(wǎng)無(wú)疑會(huì)在未來(lái)的控制網(wǎng)絡(luò)中扮演越來(lái)越重要的角色。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美有码视频| 欧美一二三视频| 99国产一区| 国内成人精品视频| 欧美成人激情在线| 欧美一区国产二区| 国产精品专区h在线观看| 午夜在线观看免费一区| 亚洲国产成人精品久久| 亚洲天堂男人| 亚洲精品孕妇| 在线精品国精品国产尤物884a| 国产精品欧美在线| 亚洲调教视频在线观看| 亚洲精品午夜精品| 久久精品亚洲乱码伦伦中文 | 久久久久久国产精品mv| 亚洲综合首页| 日韩视频精品| 91久久线看在观草草青青| 亚洲欧美综合| 亚洲欧美成人一区二区三区| 一区二区三区精密机械公司 | 久久久久久久久久码影片| 亚洲综合色婷婷| 亚洲精品一区二区三区不| 亚洲成人在线网| 欧美在线免费视频| 午夜一区二区三区不卡视频| 亚洲一区二区三区欧美| 在线视频一区二区| 亚洲视频一区二区免费在线观看| 亚洲毛片在线观看| 亚洲免费成人av| 亚洲日本电影| 亚洲欧洲精品一区二区三区不卡| 国产亚洲精品一区二区| 国产免费一区二区三区香蕉精| 国产精品网站一区| 国产九九视频一区二区三区| 国产精品99久久久久久久女警| 正在播放日韩| 欧美一区亚洲二区| 欧美成人精品h版在线观看| 欧美日韩精品一本二本三本| 国产精品日韩二区| 激情久久综艺| av成人国产| 欧美伊人久久久久久久久影院| 亚洲日本视频| 亚洲欧美欧美一区二区三区| 久久夜色精品国产噜噜av| 欧美精品18| 国产欧美在线看| 亚洲一区二区三区中文字幕在线| 亚洲男人影院| 久久精品二区三区| 欧美极品一区二区三区| 国产精品国产自产拍高清av| 狠狠狠色丁香婷婷综合激情| 日韩午夜视频在线观看| 欧美亚洲综合久久| 亚洲毛片一区| 欧美伊人久久大香线蕉综合69| 欧美激情五月| 国产在线欧美日韩| 亚洲毛片在线| 亚洲高清在线播放| 亚洲女同在线| 欧美成人一区二免费视频软件| 国产精品久久久久久久浪潮网站| 伊人久久亚洲美女图片| 亚洲午夜免费视频| 亚洲欧洲日本国产| 欧美在线观看www| 欧美日韩大片| 狠狠色噜噜狠狠色综合久| 一区二区三区视频在线| 亚洲国产综合91精品麻豆| 亚洲欧美在线另类| 欧美精品www| 影音先锋亚洲一区| 亚洲欧洲av一区二区三区久久| 99视频一区| 欧美成人首页| 国产专区精品视频| 午夜精品久久久久久久白皮肤| 宅男噜噜噜66国产日韩在线观看| 另类天堂视频在线观看| 国产毛片精品国产一区二区三区| 亚洲精品一区中文| 亚洲黄色天堂| 久久久精品国产免大香伊| 国产精品久久久久一区二区| 亚洲人成人一区二区在线观看| 欧美一区影院| 欧美在线电影| 国产精品爽爽爽| aaa亚洲精品一二三区| 日韩一区二区福利| 免费黄网站欧美| 黄色成人在线观看| 欧美一区二区三区婷婷月色| 亚洲欧美精品在线| 欧美日韩午夜视频在线观看| 亚洲国产专区| 亚洲品质自拍| 免费一级欧美在线大片| 韩国三级在线一区| 欧美一区深夜视频| 久久er精品视频| 国产酒店精品激情| 亚洲伊人第一页| 亚洲欧美在线aaa| 欧美手机在线视频| 欧美在线亚洲在线| 亚洲美女啪啪| 日韩视频免费在线| 欧美激情第一页xxx| 亚洲成人在线| 最新国产成人av网站网址麻豆| 久久一日本道色综合久久| 国内精品久久久久影院优| 久久狠狠婷婷| 久久久久五月天| 韩国三级电影久久久久久| 亚洲二区在线| 免费观看成人| 亚洲人成网站777色婷婷| 亚洲三级毛片| 欧美风情在线观看| 亚洲精品一二三| 一区二区三区四区蜜桃| 国产精品久久久久91| 亚洲一区久久| 欧美在线观看一区二区| 国产一区二区三区丝袜| 亚洲福利一区| 欧美大片专区| 亚洲美女福利视频网站| 亚洲免费在线视频| 国产毛片精品视频| 久久精品亚洲国产奇米99| 欧美jizz19性欧美| 99re亚洲国产精品| 亚洲欧美自拍偷拍| 国产亚洲精品v| 91久久在线观看| 欧美日韩免费在线视频| 亚洲一区二区在线观看视频| 欧美在线视频不卡| 精品91在线| 一区二区日韩精品| 国产精品午夜电影| 欧美在线高清视频| 欧美黄色网络| 亚洲香蕉成视频在线观看| 久久久久国产精品一区| 91久久精品一区二区三区| 亚洲一区免费看| 国产综合久久久久影院| 亚洲人成网站影音先锋播放| 欧美日韩第一区| 午夜国产一区| 欧美国产先锋| 亚洲一区一卡| 欧美va亚洲va国产综合| 国产精品99久久不卡二区| 久久久久99| 日韩系列在线| 久久精品视频网| 亚洲美女在线视频| 久久久www| 一区二区av| 久热精品视频在线观看| 99精品热6080yy久久 | 欧美亚洲三区| 亚洲高清不卡在线| 性欧美暴力猛交另类hd| 亚洲高清视频在线观看| 性亚洲最疯狂xxxx高清| 亚洲国产成人在线播放| 亚洲综合国产激情另类一区| 欧美电影电视剧在线观看| 91久久精品一区二区别| 亚洲人成网站色ww在线| 亚洲精品美女在线观看| 亚洲一区二区网站| 黄色一区三区| 亚洲自拍三区| 在线免费观看日韩欧美| 亚洲淫片在线视频| 亚洲高清在线精品| 欧美中文在线字幕| 亚洲美女啪啪| 免费看亚洲片| 香蕉乱码成人久久天堂爱免费 | 一本到12不卡视频在线dvd| 国内精品国产成人| 亚洲影视在线|