技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于TCP/IP的七自由度機(jī)械臂遠(yuǎn)程控制

基于TCP/IP的七自由度機(jī)械臂遠(yuǎn)程控制

時(shí)間:2008-10-22 09:53:00來(lái)源:ronggang

導(dǎo)語(yǔ):?針對(duì)七自由度機(jī)械臂遠(yuǎn)程控制的需要,構(gòu)建了基于TCP/IP網(wǎng)絡(luò)的控制系統(tǒng)。首先通過(guò)設(shè)計(jì)單片機(jī)系統(tǒng)實(shí)現(xiàn)本地端控制
摘 要:針對(duì)七自由度機(jī)械臂遠(yuǎn)程控制的需要,構(gòu)建了基于TCP/IP網(wǎng)絡(luò)的控制系統(tǒng)。首先通過(guò)設(shè)計(jì)單片機(jī)系統(tǒng)實(shí)現(xiàn)本地端控制,然后運(yùn)用WinSockets類創(chuàng)建基于TCP/IP的遠(yuǎn)程控制程序,使連接在Internet網(wǎng)絡(luò)上的任意客戶端均可實(shí)現(xiàn)對(duì)機(jī)械臂的遠(yuǎn)程控制。結(jié)合視頻網(wǎng)絡(luò)服務(wù)器,實(shí)現(xiàn)了對(duì)機(jī)械臂的實(shí)時(shí)監(jiān)控操作。 關(guān)鍵詞:機(jī)械臂;TCP/IP;遠(yuǎn)程控制;視頻服務(wù)器 Abstract: A tele-control system for a 7-dof robot arm based on TCP/IP network is created. AVR singlechip is adopted to build a local control system. In order to link clients and the server in the Internet web, WinSockets class is applied to program using Visual c++. It is convenience to real-time observe tele-operation combined with video network server. KeyWords: Robot arm; TCP/IP; Tele-control; video network server   Rhino XR-2機(jī)器人[1]是一個(gè)典型的機(jī)電一體化產(chǎn)品,它模擬人的上肢,肩關(guān)節(jié)可從-45到+135度旋轉(zhuǎn);肘關(guān)節(jié)可從-135到90 度旋轉(zhuǎn);手腕可以上下90度旋轉(zhuǎn),左右170度旋轉(zhuǎn),是一個(gè)具有7個(gè)自由度的機(jī)械臂系統(tǒng)。通過(guò)適當(dāng)調(diào)節(jié)各關(guān)節(jié),該機(jī)器人能夠從指定位置抓取較小物體。為了實(shí)現(xiàn)遠(yuǎn)程控制,構(gòu)建了基于TCP/IP網(wǎng)絡(luò)的七自由度機(jī)械臂遠(yuǎn)程控制系統(tǒng),如圖1所示。通過(guò)該系統(tǒng),連接在Internet網(wǎng)絡(luò)上的任意客戶端均可登錄指定服務(wù)器獲取操作權(quán)限實(shí)現(xiàn)對(duì)七自由度機(jī)械臂的遠(yuǎn)程控制,并通過(guò)視頻網(wǎng)絡(luò)服務(wù)器實(shí)時(shí)監(jiān)控機(jī)械臂操作結(jié)果。 [align=center] 圖1 七自由度機(jī)械臂遠(yuǎn)程控制系統(tǒng)[/align] 1.本地端控制系統(tǒng)設(shè)計(jì)   首先設(shè)計(jì)本地端控制器,由于每個(gè)關(guān)節(jié)單獨(dú)由一個(gè)Brevel電機(jī)驅(qū)動(dòng),因此只要在本地端實(shí)現(xiàn)對(duì)各個(gè)電機(jī)的單獨(dú)控制包括啟動(dòng)、停止、調(diào)速即可。   1.1基于 ZLG7289B的本地控制   ZLG7289B[2] 是周立功單片機(jī)發(fā)展有限公司自行設(shè)計(jì)的數(shù)碼管顯示驅(qū)動(dòng)及鍵盤掃描管理芯片,可直接驅(qū)動(dòng)8 位共陰式數(shù)碼管(或64 只獨(dú)立LED),同時(shí)還可以掃描管理多達(dá)64 只按鍵。ZLG7289B 內(nèi)部含有顯示譯碼器,可直接接收BCD 碼或16 進(jìn)制碼,并同時(shí)具有2 種譯碼方式。ZLG7289B 采用SPI 串行總線與微控制器接口,僅占用少數(shù)幾根I/O 口線。   本例中采用AVRmega128單片機(jī)作為微控制器,通過(guò)ZLG7289B實(shí)現(xiàn)對(duì)鍵盤的操作,從而觸發(fā)8個(gè)電機(jī)的不同動(dòng)作,實(shí)現(xiàn)對(duì)機(jī)械臂的控制。AVR高端芯片MEGA128擁有53個(gè)IO口輸出,8個(gè)PWM輸出口,8個(gè)外部中斷,16位定時(shí)器與8位定時(shí)器各兩個(gè)。它采用單指令周期,處理速度快,在滿足I/O的情況下,足以滿足電機(jī)控制的運(yùn)算要求。利用該單片機(jī)產(chǎn)生8路PWM信號(hào)通過(guò)兩個(gè)L298N驅(qū)動(dòng)模塊實(shí)現(xiàn)8個(gè)電機(jī)的驅(qū)動(dòng)。每個(gè)L298N驅(qū)動(dòng)模塊包含2塊電機(jī)驅(qū)動(dòng)芯片L298N、16個(gè)保護(hù)二極管、4個(gè)電源濾波穩(wěn)定電容、2個(gè)輸入信號(hào)邏輯處理單元、4個(gè)控制電機(jī)輸出插座。由于每個(gè)L298N芯片控制2個(gè)電機(jī),則每個(gè)驅(qū)動(dòng)模塊可以控制4個(gè)電機(jī),其實(shí)物圖如圖2所示。 [align=center] 圖2 L298N驅(qū)動(dòng)模塊[/align]   為方便操作,使用了液晶顯示模塊LCMxxZK,其繪圖顯示畫面提供一個(gè)64*256 點(diǎn)的繪圖區(qū)域,電源操作范圍寬(2.7V to 5.5V),此外,低功耗設(shè)計(jì)可滿足產(chǎn)品的省電要求同時(shí)與單片機(jī)的接口界面非常靈活。如圖3所示,利用設(shè)計(jì)的單片機(jī)控制系統(tǒng),根據(jù)液晶顯示屏的提示通過(guò)鍵盤操作可以實(shí)現(xiàn)對(duì)機(jī)械臂的控制,同時(shí)操作結(jié)果通過(guò)液晶顯示屏反饋給操作者。 [align=center] 圖3 液晶屏與鍵盤[/align]   1.2基于串口通信的上位機(jī)控制   為了構(gòu)建基于TCP/IP網(wǎng)絡(luò)的遠(yuǎn)程控制系統(tǒng),需要在本地建立服務(wù)器端控制器。本例中采用PC機(jī)作為遠(yuǎn)程控制的服務(wù)器,同時(shí)作為單片機(jī)控制系統(tǒng)的上位控制器。   該上位機(jī)系統(tǒng)采用DB9-RS232串口線作為數(shù)據(jù)總線,通過(guò)串行通信與下位機(jī)建立聯(lián)系。PC機(jī)通過(guò)數(shù)據(jù)總線把位選、轉(zhuǎn)向、轉(zhuǎn)速等信息傳遞給下位單片機(jī)AVR Mega128,通過(guò)對(duì)I/O口置1或清零來(lái)控制相應(yīng)電機(jī)的轉(zhuǎn)向,并通過(guò)改變PWM信號(hào)占空比來(lái)控制轉(zhuǎn)速。   由于數(shù)據(jù)總線的使用,各部分都相互獨(dú)立,只需要遵守相同的數(shù)據(jù)傳輸協(xié)議即可工作,使得擴(kuò)展功能變得十分容易。有時(shí)候甚至不需對(duì)芯片進(jìn)行重編程或電路板進(jìn)行大幅度修改,只需要更換部分模塊就可以實(shí)現(xiàn)功能升級(jí)。在Visual C++ 6.0環(huán)境下運(yùn)用串口類編寫了上位機(jī)控制程序[3],通過(guò)該程序,可利用個(gè)人PC實(shí)現(xiàn)對(duì)機(jī)械臂的控制。 2.基于TCP/IP網(wǎng)絡(luò)的遠(yuǎn)程控制   通過(guò)設(shè)計(jì)本地端控制系統(tǒng)后,可以在本地端實(shí)現(xiàn)七自由度機(jī)械臂的各關(guān)節(jié)速度控制,從而實(shí)現(xiàn)機(jī)械手運(yùn)動(dòng)到適當(dāng)位置抓取物體,并傳送到另一位置。為了實(shí)現(xiàn)異地遠(yuǎn)程控制,需要設(shè)計(jì)遠(yuǎn)程控制系統(tǒng)。基于TCP/IP的以太網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程控制是一個(gè)好的選擇。本例中構(gòu)建了一個(gè)基于C/S(Client/Server)結(jié)構(gòu)的遠(yuǎn)程控制體系,該體系包含服務(wù)器端和客戶端,服務(wù)器端接收到客戶端程序發(fā)來(lái)的數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行處理,進(jìn)而發(fā)出相應(yīng)的指令通過(guò)串口通信控制主控單片機(jī),從而控制各關(guān)節(jié)的相應(yīng)動(dòng)作。   服務(wù)器端程序功能如下:   (1)創(chuàng)建監(jiān)聽Socket進(jìn)行監(jiān)聽,當(dāng)有客戶端請(qǐng)求連接時(shí)建立一個(gè)新的接收Socket處理這個(gè)客戶的數(shù)據(jù)發(fā)送與接收;   (2)接收客戶端發(fā)來(lái)的數(shù)據(jù)并向客戶端返回相應(yīng)信息;  ?。?)對(duì)接收到的數(shù)據(jù)進(jìn)行處理,然后向下位單片機(jī)發(fā)送控制命令。   客戶端程序功能如下:  ?。?)建立與服務(wù)器程序的連接   (2)向服務(wù)器程序發(fā)送數(shù)據(jù)信息,接收從服務(wù)器程序返回的信息   (3)關(guān)閉與服務(wù)器程序的連接   在Visual C++ 6.0環(huán)境下運(yùn)用WinSockets類來(lái)編寫基于TCP/IP的遠(yuǎn)程控制程序,其中服務(wù)器端監(jiān)聽程序如下。   if(Accept(*pSocket))  ?。?pDlg->m_pAcceptList.AddTail(pSocket);   CString strAddr,strAddr1;   UINT unPort,unPort1; pSocket->GetPeerName(strAddr1,unPort1); //得到遠(yuǎn)程IP地址和端口號(hào) pSocket->GetSockName(strAddr,unPort); //得到本地IP地址和端口號(hào)   pDlg->m_strNetMsg.Format("本地IP%s端口%d連接上遠(yuǎn)程客戶IP%s端口%d", strAddr,unPort,strAddr1,unPort1);   pDlg->UpdateMsgData();   }   else  ?。?   delete pSocket;  ?。?   CSocket::OnAccept(nErrorCode);   其部分界面如圖4所示: [align=center] 圖4 服務(wù)器端界面[/align]   由圖4可知,該服務(wù)端控制程序既可以由操作人員單擊圖中按鈕實(shí)現(xiàn)本地端對(duì)七自由度機(jī)械臂的控制,也可以通過(guò)客戶端發(fā)送相應(yīng)信息由服務(wù)端響應(yīng)后自動(dòng)調(diào)用相應(yīng)的函數(shù)實(shí)現(xiàn)對(duì)機(jī)械臂的控制。 3.基于視頻網(wǎng)絡(luò)服務(wù)器的遠(yuǎn)程控制   為了監(jiān)控七自由度機(jī)械臂遠(yuǎn)程控制的操作結(jié)果,利用視頻網(wǎng)絡(luò)服務(wù)器將機(jī)械臂運(yùn)動(dòng)的實(shí)時(shí)圖像通過(guò)Internet網(wǎng)絡(luò)傳送到客戶端。   視頻網(wǎng)絡(luò)服務(wù)器是一種對(duì)視頻數(shù)據(jù)進(jìn)行編碼處理并完成網(wǎng)絡(luò)傳輸?shù)膶S迷O(shè)備,它將攝像機(jī)輸入的模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),再通過(guò)Internet傳輸,客戶端便可在任何地方通過(guò)上網(wǎng)來(lái)瀏覽圖像。它具有獨(dú)立完成傳輸?shù)墓δ?,不需要另外設(shè)置計(jì)算機(jī),能實(shí)現(xiàn)簡(jiǎn)單的IP方式組網(wǎng),是傳統(tǒng)的模擬監(jiān)控所無(wú)法實(shí)現(xiàn)的。   本例中采用RILAN-F1004四路視頻網(wǎng)絡(luò)服務(wù)器,通過(guò)以太網(wǎng)將實(shí)時(shí)的圖像通過(guò)網(wǎng)絡(luò)傳輸。該服務(wù)器采用了先進(jìn)的操作系統(tǒng)和視頻壓縮算法,使得圖像傳輸更加流暢,并且顯示更加清晰細(xì)膩;系統(tǒng)調(diào)度效率高,運(yùn)行穩(wěn)定可靠,支持通過(guò)Internet瀏覽器進(jìn)行遠(yuǎn)程圖像訪問(wèn)。由于用于操作控制的服務(wù)器端和視頻服務(wù)器地址相互獨(dú)立,為了便于遠(yuǎn)程操作和監(jiān)控,把兩個(gè)服務(wù)端的登錄集成在一個(gè)客戶端界面中。當(dāng)服務(wù)器端啟動(dòng)服務(wù)器后,客戶端首先可以通過(guò)Internet瀏覽器登錄視頻網(wǎng)絡(luò)服務(wù)器,從圖5中可以看到,位于機(jī)械臂不同位置的四路視頻圖像實(shí)時(shí)顯示在界面的左側(cè);此時(shí)可以向控制服務(wù)器端發(fā)出請(qǐng)求,服務(wù)器端響應(yīng)后,返回允許操作的信號(hào),操作者即可根據(jù)右側(cè)控制面板進(jìn)行七自由度機(jī)械臂的遠(yuǎn)程控制,同時(shí)可以實(shí)時(shí)觀察機(jī)械臂動(dòng)作,圖中所示為機(jī)械手抓住一小物體正準(zhǔn)備釋放。 [align=center] 圖5 客戶端界面[/align] 4.結(jié)論   本文作者創(chuàng)新點(diǎn):提出兩種不同方法,利用高端ARV單片機(jī)與PC機(jī)實(shí)現(xiàn)了七自由度機(jī)械臂本地端控制。構(gòu)建了一個(gè)融串口類對(duì)象和WinSockets類對(duì)象于一體的基于C/S(Client/Server)結(jié)構(gòu)的遠(yuǎn)程控制體系,通過(guò)視頻網(wǎng)絡(luò)服務(wù)器反饋的視頻信息,有效地實(shí)現(xiàn)了七自由度機(jī)械臂遠(yuǎn)程控制。 參考文獻(xiàn)   1. http://www.rhinorobotics.com[EB/OL]   2. http://www.zlgmcu.com/philips/hotic/ZLG7289.asp[EB/OL]   3. 朱培武、熊光明、彭波、龔建偉.基于Rabbit 2000的無(wú)線調(diào)度系統(tǒng)液晶漢字顯示方法.微計(jì)算機(jī)信息.2005,21卷,8期

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:ZN28A-12型真空斷路器的改造...

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)