關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 網(wǎng)絡(luò)遠(yuǎn)程控制作業(yè)機(jī)械手的設(shè)計(jì)與實(shí)現(xiàn)

網(wǎng)絡(luò)遠(yuǎn)程控制作業(yè)機(jī)械手的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2007-08-29 來(lái)源:網(wǎng)絡(luò) 收藏
摘要:隨著等信息產(chǎn)業(yè)的發(fā)展,作業(yè)和智能設(shè)備的監(jiān)控成為現(xiàn)代人生活發(fā)展的方向,通信則是一個(gè)值得研究的問(wèn)題。本文以遠(yuǎn)程控的實(shí)例,介紹了遠(yuǎn)程串行通信的基本架構(gòu)及過(guò)程,分析了直接控制機(jī)89C51硬件及其軟件的
關(guān)鍵詞:遠(yuǎn)程;串行通訊;單片機(jī);

0引言

化操作和遠(yuǎn)程控制成為很多企業(yè)和科研機(jī)構(gòu)鉆研的方向,要對(duì)現(xiàn)場(chǎng)設(shè)備進(jìn)行管理和控制,就需要與這些設(shè)備進(jìn)行通訊連接,進(jìn)行相關(guān)數(shù)據(jù)交換,以達(dá)到管理、控制和監(jiān)控的目的。同樣嵌入式領(lǐng)域中,為了達(dá)到遠(yuǎn)程監(jiān)控,也必須基于。在水下或者惡劣環(huán)境作業(yè)的,在特定的時(shí)候需要遠(yuǎn)程控制。網(wǎng)絡(luò)遠(yuǎn)程控制機(jī)械手進(jìn)行作業(yè)成為了可能。

在遠(yuǎn)程控制中,通信是值得討論的技術(shù)問(wèn)題。傳統(tǒng)的通信只是局限于脫離網(wǎng)絡(luò)的通信,如兩個(gè)PC機(jī)之間通信,或者是上位機(jī)為PC機(jī),下位機(jī)為單片機(jī)。在遠(yuǎn)程控制機(jī)械手系統(tǒng)中,采用的是基于Internet的遠(yuǎn)程串口通信,遠(yuǎn)程串行通訊是指客戶端與下位機(jī)或通訊對(duì)象之間通過(guò)串口進(jìn)行的遠(yuǎn)距離通訊,而傳統(tǒng)的遠(yuǎn)程通訊只是它其中的一部分,通過(guò)客戶端傳送指令給下位機(jī)至控制部件,從而實(shí)現(xiàn)遠(yuǎn)程監(jiān)控。

1 遠(yuǎn)程串口通訊系統(tǒng)的基本構(gòu)架及實(shí)現(xiàn)

(一)基本構(gòu)架概述

在軟件系統(tǒng)體系結(jié)構(gòu)中,C/S和B/S是當(dāng)今世界開(kāi)發(fā)模式技術(shù)架構(gòu)的兩大主流技術(shù)。

C/S模式采用的是兩層體系結(jié)構(gòu),即客戶端和服務(wù)器,通過(guò)該架構(gòu)可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到Client端和Server端來(lái)實(shí)現(xiàn),客戶端進(jìn)行顯示界面和事務(wù)處理,服務(wù)器進(jìn)行數(shù)據(jù)處理和應(yīng)答請(qǐng)求處理。在客戶端需要安裝客戶端軟件才能訪問(wèn)服務(wù)器。不但軟件升級(jí)不便,而且也增加了客戶端的負(fù)載和投資成本。

B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過(guò)瀏覽器來(lái)實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn), 數(shù)據(jù)處理則由數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行,形成所謂三層結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本,但僅在B/S模式下還不能直接實(shí)現(xiàn)與被控對(duì)象進(jìn)行數(shù)據(jù)通訊。

基于B/S模式實(shí)現(xiàn)與被控對(duì)象進(jìn)行數(shù)據(jù)通訊的遠(yuǎn)程串行通訊采用四層體系結(jié)構(gòu),增加了一個(gè)控制層,瀏覽器端為表示層,WEB服務(wù)器為功能層,數(shù)據(jù)庫(kù)服務(wù)器為數(shù)據(jù)層,控制層為通過(guò)WEB服務(wù)器傳送指令到控制服務(wù)器,控制服務(wù)器作為上位機(jī),通過(guò)串口控制下位機(jī),直到控制執(zhí)行部件。這里不僅增加了控制層,而且對(duì)功能層和數(shù)據(jù)層也都進(jìn)行了擴(kuò)展。這種體系結(jié)構(gòu)即具有B/S模式的優(yōu)良特性,又增加了控制服務(wù)功能,充分利用了現(xiàn)有的網(wǎng)絡(luò)資源和工業(yè)現(xiàn)場(chǎng)資源,并且使兩者有機(jī)地結(jié)合在一起,達(dá)到了與被控設(shè)備通過(guò)串口進(jìn)行遠(yuǎn)程通訊的目的。表示層、功能層、數(shù)據(jù)層和控制層既有一定的相互聯(lián)系又具有相對(duì)獨(dú)立性,各層是通過(guò)Internet相連接,通過(guò)HTTP協(xié)議和串口通訊協(xié)議進(jìn)行信息通訊。如圖1所示

(二)遠(yuǎn)程串口通訊各部件的功能及實(shí)現(xiàn)

(1)瀏覽器端:用戶通過(guò)瀏覽器登陸web服務(wù)器,通過(guò)輸入用戶名和密碼,和數(shù)據(jù)庫(kù)中的數(shù)據(jù)比較驗(yàn)證通過(guò)后,成為合法的用戶,然后在相應(yīng)的表單中輸入控制數(shù)據(jù)。按提交按鈕后,數(shù)據(jù)傳送到web服務(wù)器。瀏覽器端再作為顯示端,能夠顯示遠(yuǎn)程執(zhí)行部件的反饋位置。

(2)WEB服務(wù)器:能夠接收瀏覽器端發(fā)送過(guò)來(lái)的控制數(shù)據(jù),并處理相應(yīng)的數(shù)據(jù)后,把數(shù)據(jù)發(fā)送給控制服務(wù)器,或者直接作為控制服務(wù)器,通過(guò)串口把數(shù)據(jù)發(fā)送給執(zhí)行部件。

(3)數(shù)據(jù)庫(kù)服務(wù)器端:存放合法用戶的用戶名和密碼,以進(jìn)行檢驗(yàn)。同時(shí),在發(fā)送執(zhí)行數(shù)據(jù)時(shí),如果需要特定的轉(zhuǎn)換數(shù)據(jù),也可直接到數(shù)據(jù)庫(kù)中獲取。實(shí)現(xiàn)系統(tǒng)的數(shù)據(jù)處理,并把運(yùn)行結(jié)果反饋給web服務(wù)器。

(4)控制服務(wù)器:作為直接通過(guò)串口發(fā)送命令給執(zhí)行部件的上位機(jī),或者直接由web服務(wù)器本身?yè)?dān)任。接收web服務(wù)器從瀏覽器端接收過(guò)來(lái)的數(shù)據(jù)。通過(guò)串口通訊協(xié)議及握手信號(hào),把數(shù)據(jù)發(fā)送給下位機(jī)。

(5)下位機(jī):通過(guò)串口通訊協(xié)議接收控制服務(wù)器(上位機(jī))的執(zhí)行數(shù)據(jù),再通過(guò)相應(yīng)的驅(qū)動(dòng)電路,帶動(dòng)執(zhí)行部件工作。

(6)執(zhí)行部件:按照傳送過(guò)來(lái)的指令進(jìn)行工作,并通過(guò)傳感器把當(dāng)前執(zhí)行部件的位置和姿態(tài)化作數(shù)據(jù)再通過(guò)串口回送到控制服務(wù)器,直至到達(dá)瀏覽器端,使得用戶不在執(zhí)行部件的現(xiàn)場(chǎng)也可以遠(yuǎn)程控制并得到部件執(zhí)行之后的效果

在瀏覽器中,登陸驗(yàn)證后,通過(guò)HTTP協(xié)議,把數(shù)據(jù)傳送給web服務(wù)器,再傳給控制服務(wù)器。控制服務(wù)器作為上位機(jī),打開(kāi)串口,通過(guò)通訊協(xié)議把數(shù)據(jù)發(fā)送給下位機(jī)。下位機(jī)根據(jù)通訊協(xié)議,收到上位機(jī)發(fā)送過(guò)來(lái)的數(shù)據(jù),并啟動(dòng)D/A轉(zhuǎn)換器,控制執(zhí)行部件。同時(shí)通過(guò)傳感器把執(zhí)行部件的姿態(tài)反饋給上位機(jī)。下位機(jī)可以為單片機(jī)、DSP、ARM等微處理器。

2 遠(yuǎn)程控機(jī)械手系統(tǒng)的實(shí)現(xiàn)

基于web的機(jī)械手的遠(yuǎn)程控制,在高溫、水下等惡劣的工作環(huán)境下,需要遠(yuǎn)程控制機(jī)械手實(shí)行操作。在遠(yuǎn)程通過(guò)瀏覽器輸入操縱數(shù)據(jù),通過(guò)網(wǎng)絡(luò)傳送給主控機(jī),主控機(jī)采用一般的PC機(jī),主控機(jī)通過(guò)串口把數(shù)據(jù)發(fā)送給下位機(jī),該作業(yè)機(jī)械手系統(tǒng)中采用89C51單片機(jī)作為直接控制計(jì)算機(jī)。現(xiàn)場(chǎng)通過(guò)監(jiān)控設(shè)備把作業(yè)機(jī)械手的姿態(tài)反饋到遠(yuǎn)程控制機(jī),同時(shí)通過(guò)傳感器采集現(xiàn)場(chǎng)數(shù)據(jù)返回到控制機(jī)。圖2為遠(yuǎn)程控機(jī)械手的系統(tǒng)示意圖。

在瀏覽器端登陸主控機(jī)擔(dān)當(dāng)?shù)姆?wù)器,取得合法身份驗(yàn)證之后,發(fā)送數(shù)據(jù)。主控機(jī)收到信息后,通過(guò)串口把數(shù)據(jù)發(fā)給直接控制機(jī)89C51。

(一) 單片機(jī)系統(tǒng)的硬件組成部分

(1) 以89C51為微處理器的為核心,擴(kuò)展RAM6254、鎖存器、時(shí)鐘電路、復(fù)位電路等。

(2) 串口通訊電路:主控機(jī)向89C51傳送數(shù)據(jù)時(shí),采用串口通信,常用的串行通信總線接口是美國(guó)電氣協(xié)會(huì)EIA制定的RS-232C。鑒于單片機(jī)串行口TXD,RXD均為TTL電平,而PC機(jī)配置的是RS-232C標(biāo)準(zhǔn)串行接口,在應(yīng)用時(shí),必須進(jìn)行電平轉(zhuǎn)換。在作業(yè)機(jī)械手控制系統(tǒng)中,采用MAX232作為接口轉(zhuǎn)換芯片。

(3) 數(shù)模轉(zhuǎn)換電路:通過(guò)串口,主控機(jī)把機(jī)械手的動(dòng)作指令數(shù)據(jù)發(fā)送給89C51,89C51通過(guò)總線把數(shù)據(jù)發(fā)送給D/A轉(zhuǎn)換電路數(shù)據(jù)端口,在該系統(tǒng)中采用DA0832數(shù)模轉(zhuǎn)換芯片來(lái)實(shí)現(xiàn)。

(4) 驅(qū)動(dòng)電路:機(jī)械手的作業(yè)動(dòng)力來(lái)自液壓系統(tǒng),采用伺服閥來(lái)實(shí)現(xiàn)對(duì)機(jī)械手的回路控制,為驅(qū)動(dòng)伺服閥,相應(yīng)的驅(qū)動(dòng)電路

(5) 模數(shù)轉(zhuǎn)換電路:用角度電位計(jì)和位移傳感器采集機(jī)械手的實(shí)際操作數(shù)據(jù),傳感器標(biāo)定之后,采集的位移量和角度模擬信號(hào)要轉(zhuǎn)換數(shù)字信號(hào)傳送給89C51,再向上發(fā)送,該系統(tǒng)中采用AD0809模數(shù)轉(zhuǎn)換芯片來(lái)實(shí)現(xiàn)。

(二) 主控機(jī)與單片機(jī)軟件系統(tǒng)的實(shí)現(xiàn)

(1) 主控機(jī)程序

主控機(jī)由PC機(jī)擔(dān)任,用VC++開(kāi)發(fā)操縱界面,通過(guò)串口控件MSComm對(duì)串口通訊協(xié)議進(jìn)行串口初始化,從后臺(tái)數(shù)據(jù)庫(kù)SQLServer中提出從WEB發(fā)送的控制機(jī)械手的數(shù)據(jù),控制機(jī)械手各個(gè)關(guān)節(jié)的執(zhí)行的角度量,同時(shí)等待接收89C51回送回來(lái)的數(shù)據(jù)。軟件系統(tǒng)的流程圖如圖3所示。

(2) 89C51單片機(jī)主程序

89C51作為直接控制計(jì)算機(jī),用C語(yǔ)言來(lái)編寫主程序,初始化串口,分配內(nèi)存緩沖區(qū)存放接收數(shù)據(jù),開(kāi)中斷,等待外部以中斷形式進(jìn)行數(shù)據(jù)的發(fā)送和接收。89C51的主程序流程圖如圖4所示。

(3) 89C51中斷處理子程序

中斷子程序中首先清除中斷標(biāo)志,然后判斷是接收還是發(fā)送引起的中斷,根據(jù)相應(yīng)的中斷源進(jìn)行處理。89C51中斷處理子程序的流程圖如圖5所示。



3
結(jié)束語(yǔ)

本文作者創(chuàng)新點(diǎn)在于把89C51單片機(jī)與機(jī)械手的作業(yè)聯(lián)系起來(lái),通過(guò)網(wǎng)絡(luò)遠(yuǎn)程通信達(dá)到了遠(yuǎn)程控制機(jī)械手實(shí)驗(yàn)室的實(shí)現(xiàn),為遠(yuǎn)程控制作業(yè)的研究提供了一個(gè)具體的實(shí)例參考,目前該系統(tǒng)實(shí)現(xiàn)了網(wǎng)上發(fā)送數(shù)據(jù)到主控機(jī),存儲(chǔ)在數(shù)據(jù)庫(kù)中,需要手工在主控機(jī)調(diào)動(dòng)數(shù)據(jù)來(lái)實(shí)現(xiàn)對(duì)機(jī)械手的控制。能夠完全脫離人的介入,直接通過(guò)網(wǎng)絡(luò)來(lái)控制作業(yè)還在進(jìn)一步的研究中。實(shí)驗(yàn)應(yīng)用和市場(chǎng)證明,在網(wǎng)絡(luò)現(xiàn)代化的今天和未來(lái),遠(yuǎn)程通信必將出現(xiàn)在未來(lái)的人類生活中,有可觀的研究意義和實(shí)用價(jià)值。

參考文獻(xiàn):

[1] 馬忠梅、籍順心編著 單片機(jī)的C語(yǔ)言應(yīng)用程序 北京航空航天大學(xué)出版社 2000
[2] 鄭笑寧 水下遙操作實(shí)驗(yàn)系統(tǒng)工具庫(kù)控制系統(tǒng)的研究 哈爾濱工程大學(xué)論文 2003-
[3] 陳龍三編著 8051單片機(jī)C語(yǔ)言控制與應(yīng)用 清華大學(xué)出版社 2001
[4] 何立民 MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)北京航空航天大學(xué)出版社 1990年
[5] 張開(kāi)生 基于89C51的紙漿智能計(jì)量管理系統(tǒng)設(shè)計(jì) 微計(jì)算機(jī)信息雜志 2005年第7-2期



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉