張玉政++莫琦++莫松穎
摘要:隨著科技的日益發(fā)達(dá),人類社會(huì)正在向自動(dòng)化,智能化的方向快速發(fā)展。由于人的雙手有太多的局限性,比如:人的雙手沒(méi)有太多的力量,也不能在高溫、嚴(yán)寒、深海、外太空等特殊的環(huán)境下工作,而且,隨著高科技時(shí)代的發(fā)展,凡事早也不是都靠人的雙手來(lái)做了。因此設(shè)計(jì)出機(jī)械臂來(lái)代替人的手臂也就顯得很有必要。再者,目前大多數(shù)機(jī)械手臂控制系統(tǒng)不夠完善,控制起來(lái)比較繁瑣,要想讓機(jī)械手爪到達(dá)某一目的地需要好幾個(gè)控制指令,又不能通過(guò)網(wǎng)絡(luò)進(jìn)行超遠(yuǎn)程控制,基于這些問(wèn)題我們這個(gè)團(tuán)隊(duì)打算設(shè)計(jì)此智能機(jī)械手臂,其可以在控制者發(fā)出指令后,手機(jī)app處理語(yǔ)音指令,然后通過(guò)互聯(lián)網(wǎng)發(fā)送給機(jī)械臂小車,小車根據(jù)指令與周圍環(huán)境自動(dòng)處理指令并執(zhí)行相應(yīng)動(dòng)作,此過(guò)程中便不再人為參與。
關(guān)鍵詞:機(jī)械臂;控制;信息處理
中圖分類號(hào):TP29 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2017)10-0047-02
1 項(xiàng)目實(shí)施的目的及意義
通過(guò)設(shè)計(jì)制作遠(yuǎn)程可控制機(jī)械臂,意在培養(yǎng)大學(xué)生的創(chuàng)新動(dòng)手能力,思考及處理問(wèn)題的能力,旨在把關(guān)于電子信息專業(yè)的理論知識(shí)轉(zhuǎn)化為實(shí)踐,把理論與實(shí)踐相結(jié)合才能有效提高我們的綜合素質(zhì)及能力。近年來(lái)隨著互聯(lián)網(wǎng)的快速發(fā)展,“互聯(lián)網(wǎng)+”已經(jīng)是現(xiàn)代信息社會(huì)的潮流,再者,各類傳感器的發(fā)展與使用,計(jì)算機(jī)技術(shù)的發(fā)展,芯片集成度的提高,使得自動(dòng)化技術(shù)日益成熟并向AI的方向前進(jìn),所以我們認(rèn)為設(shè)計(jì)這個(gè)機(jī)械臂小車,以電子信息技術(shù)為基礎(chǔ),通過(guò)各類傳感器的應(yīng)用,并與計(jì)算機(jī)通信網(wǎng)絡(luò)相結(jié)合,使得此機(jī)械臂小車可在不同的網(wǎng)絡(luò)中被語(yǔ)音控制,一來(lái)適用于當(dāng)今自動(dòng)化控制的技術(shù),第二為以后智能機(jī)器人的研究做鋪墊。
2 系統(tǒng)組成
2.1 系統(tǒng)結(jié)構(gòu)
系統(tǒng)由手機(jī)app上位機(jī)遠(yuǎn)程控制部分和機(jī)械臂[1]小車兩部分組成,如圖1所示。
硬件系統(tǒng)以小車平臺(tái)做底座,一來(lái)可以作為一個(gè)搭載平臺(tái),二是可以讓機(jī)械臂小車來(lái)回移動(dòng)以實(shí)現(xiàn)遠(yuǎn)程控制機(jī)械臂的目的。機(jī)械臂和小車平臺(tái)的控制系統(tǒng)主要是用stm32核心板來(lái)控制,用來(lái)控制電機(jī),舵機(jī)運(yùn)行,以及PID的調(diào)節(jié)[2]。其次是arm9處理器,主要是用來(lái)處理信息指令,當(dāng)手機(jī)app通過(guò)網(wǎng)絡(luò)將語(yǔ)音指令發(fā)送給arm9處理器后,處理器便進(jìn)行語(yǔ)音識(shí)別,并翻譯成第二級(jí)指令,然后發(fā)送給stm32,stm32收到指令后翻譯成機(jī)器指令,進(jìn)而控制機(jī)械臂以及小車的動(dòng)作。再者,當(dāng)遠(yuǎn)距離通信時(shí),我們需要時(shí)刻關(guān)注小車狀態(tài),這時(shí)就需要通過(guò)傳感器將小車狀態(tài)以及周圍環(huán)境實(shí)時(shí)傳輸給控制者,這是就需要arm9處理器來(lái)處理并傳輸這些信息 。
2.2 研究?jī)?nèi)容
2.2.1 小車平臺(tái)PID調(diào)節(jié)、六方向舵機(jī)械手臂控制算法[3]
小車平臺(tái)是所有硬件搭建的基礎(chǔ),因此對(duì)于小車平臺(tái)的調(diào)節(jié)使其精確的到達(dá)某一地點(diǎn)便很有必要,所以在控制小車平臺(tái)時(shí)我們就需要其有自動(dòng)調(diào)節(jié)能力,目前最簡(jiǎn)單且方便的自動(dòng)控制算法便是PID。
所謂PID調(diào)節(jié),其實(shí)就是一個(gè)閉環(huán)自主控制調(diào)節(jié)[2],其目的是通過(guò)算法及程序控制使得小車工作在設(shè)計(jì)者設(shè)計(jì)初衷狀態(tài)下,我們知道,如果小車在一般情況下工作,電機(jī)的參數(shù)會(huì)不同,電源之間也會(huì)有差異,工作環(huán)境也不是理想環(huán)境,所以,隨著時(shí)間的推移,小車行走路徑就會(huì)有改變,如此便達(dá)不到我們的目的,因此使用PID調(diào)節(jié)非常有必要,根據(jù)電機(jī)編碼盤傳輸回來(lái)的參數(shù)與設(shè)定值比較,然后通過(guò)比例,積分,微分使得參數(shù)值維持與設(shè)定值相同,然后再把此參數(shù)值輸入到電機(jī)中,這樣我們就可以精確控制小車平臺(tái)的走向,進(jìn)而達(dá)到預(yù)定目的地。
目前PID控制方式一般有兩種:模擬PID控制和數(shù)字PID控制[3],由于我們是使用芯片來(lái)控制的,屬于數(shù)字信號(hào),所以使用的是數(shù)字PID控制,其中數(shù)字PID控制又包含位置式、增量式算法、積分分離算法、梯形積分算法、模糊算法等,選好一種合適的算法后還要考慮參數(shù)的整定??刂破鲄?shù)整定:指決定調(diào)節(jié)器的比例系數(shù)、積分時(shí)間Ti、微分時(shí)間Td和采樣周期Ts的具體數(shù)值,其實(shí)質(zhì)是通過(guò)改變調(diào)節(jié)器的參數(shù),使其特性和過(guò)程特性相匹配,以改善系統(tǒng)的動(dòng)靜態(tài)指標(biāo),取得最佳的控制效果。整定調(diào)節(jié)器參數(shù)的方法一般有理論計(jì)算整定法和工程整定法,理論計(jì)算整定法有對(duì)數(shù)頻率特性法和根軌跡法,工程整定法有湊試法、臨界比例法、經(jīng)驗(yàn)法、衰減曲線法和響應(yīng)曲線法等,基于我們這個(gè)小車平臺(tái),移動(dòng)速度不會(huì)太快,硬件本身穩(wěn)定性比較好,所以我們使用增量式PID算法,而機(jī)械臂去抓取某一物體時(shí),由于物體的不同機(jī)械臂的調(diào)整也會(huì)不同,所以這部分我們采用的是模擬算法,而當(dāng)小車平臺(tái)去實(shí)現(xiàn)到某一個(gè)指定地點(diǎn)時(shí),只需要判斷方位即可,所以我們采用湊試法來(lái)整定參數(shù),機(jī)械臂則根據(jù)探測(cè)器反饋的物體參數(shù)利用相應(yīng)曲線來(lái)整定。
舵機(jī)是機(jī)械臂的主要組成部分,舵機(jī)的控制是影響手機(jī)械臂性能的重要因素[1],因此,為了精準(zhǔn)的操作機(jī)械臂,那就需要更好地控制舵機(jī)。舵機(jī)控制如圖2所示,舵機(jī)內(nèi)部一般是由小型直流馬達(dá)、電子控制板、可調(diào)電位器、變速齒輪組等組成。
舵機(jī)是用PWM信號(hào)進(jìn)行控制的,利用空占比的變化改變舵機(jī)轉(zhuǎn)軸的位置,舵機(jī)的控制一般需要一個(gè)20ms左右的時(shí)基脈沖,該脈沖的高電平部分一般為0.5ms—2.5ms范圍內(nèi)的角度控制脈沖部分。如何設(shè)計(jì)這個(gè)脈沖信號(hào)進(jìn)而使舵機(jī)發(fā)生不同的轉(zhuǎn)動(dòng)呢?在這里,我們用stm32單片機(jī)作為舵機(jī)的控制單元,其原因有:第一,stm32單片機(jī)能夠模擬PWM信號(hào),第二,stm32單片機(jī)便于與舵機(jī)相連接,而且系統(tǒng)穩(wěn)定,不易受到干擾,它能使PWM信號(hào)的脈沖寬度實(shí)現(xiàn)微妙級(jí)的變化,進(jìn)而也能提高舵機(jī)的轉(zhuǎn)角精度。stm32單片機(jī)完成控制算法,再將計(jì)算結(jié)果轉(zhuǎn)化為PWM信號(hào)輸出到對(duì)應(yīng)的舵機(jī)。其中,stm32單片機(jī)系統(tǒng)實(shí)現(xiàn)對(duì)舵機(jī)輸出轉(zhuǎn)角的控制,必須首先完成兩個(gè)任務(wù):首先是產(chǎn)生基本的PWM周期信號(hào);其次是脈沖寬度的調(diào)整,即單片機(jī)模擬PWM信號(hào)的輸出,并且調(diào)整占空比。但是如果要機(jī)械手臂完成到達(dá)某一指定位置的動(dòng)作,則需要以此控制六個(gè)舵機(jī),這樣一來(lái)既浪費(fèi)時(shí)間又會(huì)導(dǎo)致控制精度不夠。所以為了便于操作者操控,并且體現(xiàn)出其智能一面,我們只需要一條語(yǔ)音指令便能實(shí)現(xiàn)操作者目的,這樣,當(dāng)我們的語(yǔ)音指令發(fā)送過(guò)來(lái)后,arm9處理器便分析此語(yǔ)音指令,其目的是將此語(yǔ)音指令翻譯成能夠控制六個(gè)舵機(jī)的機(jī)器命令,這樣當(dāng)控制者發(fā)送過(guò)語(yǔ)音指令后便不再參與此過(guò)程,整個(gè)過(guò)程完全由機(jī)器完成,由此,如何只通過(guò)一條語(yǔ)音指令轉(zhuǎn)換成六個(gè)機(jī)械臂指令變成了最大的問(wèn)題,而且整個(gè)過(guò)程為保證機(jī)械臂的穩(wěn)定性,還需要上述的PID調(diào)節(jié),因此,在一條語(yǔ)音指令控制機(jī)械臂的過(guò)程中,為了使機(jī)械臂和小車平臺(tái)能夠自主分析要抵達(dá)位置,我們?cè)谛≤嚻脚_(tái)上安裝了兩個(gè)超聲波模塊以及攝像頭模塊,然后數(shù)學(xué)公式以及圖像處理來(lái)分析當(dāng)前環(huán)境,判斷此物體以機(jī)械臂小車為基準(zhǔn)的偏角,高度,經(jīng)過(guò)arm9處理器處理后,將機(jī)械臂將要到達(dá)的位置信息發(fā)送給stm32,從而能夠精確的到達(dá)目的位置。endprint
2.2.2 無(wú)線遠(yuǎn)程通信的內(nèi)網(wǎng)間信息通信
遠(yuǎn)程人機(jī)交互主要利用網(wǎng)絡(luò)來(lái)實(shí)現(xiàn),語(yǔ)音指令由手機(jī)app接收然后app通過(guò)網(wǎng)絡(luò)將指令發(fā)送給小車的arm9處理器;arm9將機(jī)械臂周圍的環(huán)境以及小車狀態(tài)通過(guò)網(wǎng)絡(luò)返回給操縱者,從而實(shí)現(xiàn)數(shù)據(jù)的交互。其中首先要解決的問(wèn)題是“兩內(nèi)網(wǎng)間通信問(wèn)題”,如何讓兩個(gè)處于不同內(nèi)網(wǎng)的機(jī)器通信一直是一個(gè)比較難以解決的問(wèn)題,一般解決的辦法有:使用服務(wù)器作為中間媒介,先把信息發(fā)送到外網(wǎng)服務(wù)器中,然后再由服務(wù)器轉(zhuǎn)發(fā)到另一局域網(wǎng)的機(jī)器中,或者通過(guò)虛擬局域網(wǎng)間接的把兩臺(tái)不同局域網(wǎng)的主機(jī)連接到同一個(gè)局域網(wǎng)中,以實(shí)現(xiàn)兩者之間的通信。但是基于目前通信軟件數(shù)量極多,所以借用這些通信軟件的服務(wù)器便是一個(gè)不錯(cuò)的選擇,我們的解決辦法是使用微信的開源軟件,將我們自己開發(fā)的app模塊以插件的方式嵌入到微信中去,再者小車平臺(tái)搭載有arm9處理器,其可以上安卓操作系統(tǒng),所以安裝一個(gè)微信軟件也比較容易,以此解決內(nèi)網(wǎng)間的通信問(wèn)題。
2.2.3 語(yǔ)音識(shí)別
在此項(xiàng)目中我們主要通過(guò)控制者的語(yǔ)音信息來(lái)操作機(jī)械臂小車,但是我們需要遠(yuǎn)程控制(實(shí)現(xiàn)不同網(wǎng)絡(luò)中進(jìn)行通信控制),所以以硬件設(shè)備來(lái)實(shí)現(xiàn)語(yǔ)音到控制指令的識(shí)別轉(zhuǎn)換并不可取,所以這里我們用自己編寫的app插件來(lái)進(jìn)行語(yǔ)音識(shí)別轉(zhuǎn)換。事先app先把語(yǔ)音信息識(shí)別成文字,然后通過(guò)網(wǎng)絡(luò)把文字信息發(fā)送給機(jī)械臂小車,機(jī)械臂小車接收到文字指令后便轉(zhuǎn)換成機(jī)器指令,最終實(shí)現(xiàn)語(yǔ)音控制。
3 結(jié)語(yǔ)
機(jī)械臂的設(shè)計(jì)給人們帶來(lái)了極大的方便,幫助人們完成非正常條件下人們幾乎無(wú)法完成的事情,其應(yīng)用范圍十分廣泛,比如:工業(yè)制造、醫(yī)學(xué)治療、娛樂(lè)服務(wù)、軍事上可以排雷,應(yīng)用于爆破、半導(dǎo)體制造、短距離運(yùn)輸以及太空探索,深海探索方面可以幫助采集樣品等,而本設(shè)計(jì)作品主要是幫助大學(xué)生了解機(jī)械臂的基本知識(shí),培養(yǎng)其創(chuàng)新意識(shí),提高動(dòng)手能力,學(xué)習(xí)控制算法PID以及衍生算法,嵌入式開發(fā),網(wǎng)絡(luò)以及app編程,語(yǔ)音識(shí)別等多項(xiàng)技術(shù)。
參考文獻(xiàn)
[1]田海波,馬宏偉,魏娟.串聯(lián)機(jī)器人機(jī)械臂工作空間與結(jié)構(gòu)參數(shù)研究[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2013,04:196-201.
[2]王琨.提高串聯(lián)機(jī)械臂運(yùn)動(dòng)精度的關(guān)鍵技術(shù)研究[D].中國(guó)科學(xué)技術(shù)大學(xué),2013.
[3]甘亞輝,戴先中.多機(jī)械臂協(xié)調(diào)控制研究綜述[J].控制與決策,2013,03:321-333.endprint