袁路路,張娓娓
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南 南陽 473000)
?
智能軌跡控制割草機(jī)器人設(shè)計—基于FPGA神經(jīng)網(wǎng)絡(luò)
袁路路,張娓娓
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南 南陽 473000)
為了提高割草機(jī)器人自主導(dǎo)航和定位的精確性和智能性,設(shè)計了一種新型的基于FPGA神經(jīng)網(wǎng)絡(luò)算法的割草機(jī)器人。該設(shè)計采用FPGA可重構(gòu)技術(shù),以3層誤差反向傳播神經(jīng)網(wǎng)絡(luò)作為典型的模型來展開;利用成熟的BP算法公式,設(shè)計了割草機(jī)器人智能控制的模型;利用FPGA技術(shù),設(shè)計了割草機(jī)器人的硬件系統(tǒng);最后采用文本輸入的設(shè)計方法,利用田間試驗(yàn)的方式,對機(jī)器人的軌跡規(guī)劃能力和控制精度進(jìn)行了驗(yàn)證。試驗(yàn)結(jié)果表明:利用FPGA和神經(jīng)網(wǎng)絡(luò)模型可以有效地穿越5個障礙物,并可得到滿意的軌跡規(guī)劃結(jié)果。將普通的PID控制器和神經(jīng)網(wǎng)絡(luò)PID控制器得到的控制結(jié)果誤差進(jìn)行了對比,結(jié)果表明:神經(jīng)網(wǎng)絡(luò)PID控制器得到的割草機(jī)器人控制誤差明顯比傳統(tǒng)的PID控制器誤差小。該方法為神經(jīng)網(wǎng)絡(luò)的硬件實(shí)現(xiàn)提供了可靠的理論基礎(chǔ)。
割草機(jī)器人;神經(jīng)網(wǎng)絡(luò);軌跡規(guī)劃;FPGA重構(gòu);PID控制器
隨著農(nóng)業(yè)機(jī)械化程度的不斷推進(jìn),農(nóng)業(yè)智能化和自動化也得到了飛速的發(fā)展,這期間涌現(xiàn)了各類智能作業(yè)機(jī)器人。割草機(jī)器人屬于新型的農(nóng)業(yè)機(jī)器人,在國內(nèi)的研究和實(shí)際應(yīng)用還比較少。智能控制理論是一門綜合性很強(qiáng)的新興學(xué)科,屬于自動化領(lǐng)域的前沿學(xué)科之一,智能控制的發(fā)展為解決不確定性系統(tǒng)及復(fù)雜的非線性系統(tǒng)的控制開辟了新的途徑。FPGA現(xiàn)場可編程邏輯門陣列應(yīng)用技術(shù)是當(dāng)前的一個研究熱點(diǎn),而對于基于FPGA的神經(jīng)網(wǎng)絡(luò)智能算法的研究具有重要的現(xiàn)實(shí)意義,將其作為嵌入式系統(tǒng)嵌入到割草機(jī)器人的軌跡規(guī)劃和控制系統(tǒng)中,將會發(fā)揮重要的作用。
本文中智能割草機(jī)器人的姿態(tài)控制采用碼盤讀數(shù)的方式。一般機(jī)器人使用碼盤讀數(shù)是利用一定的間隔時間讀數(shù)1次,然后從最底層得到上一次的輪角度數(shù)據(jù),數(shù)據(jù)需要經(jīng)過換算。在割草機(jī)器人智能控制系統(tǒng)中,由于只能將得到的角度值和坐標(biāo)軸值進(jìn)行累加,因此只能間隔一定時間讀出碼盤的測算值,然后將測算值和前一秒的位置進(jìn)行比較,從而獲得偏移量,進(jìn)而補(bǔ)充寫入機(jī)器人的內(nèi)部姿態(tài)存儲區(qū),控制機(jī)器人的運(yùn)動。機(jī)器人的坐標(biāo)位置模型如圖1所示。
圖1 機(jī)器人坐標(biāo)位置模型
cm=πDn/nCe
(1)
其中,Dn為機(jī)器人移動輪的直徑;Cg為編碼器的分辨率,該分辨率表示1個脈沖輪子轉(zhuǎn)過的角度;n為輪軸到碼盤軸的傳動比;Cg為割草機(jī)器人移動距離和碼盤脈沖的轉(zhuǎn)換系數(shù)。因此,左輪和右輪之間的位移Δl、Δr和機(jī)器人的位移Δs分別為
Δl=cmNL
Δr=cmNR
Δs=(Δr+Δl)/2
(2)
其中,x、y向和轉(zhuǎn)角的基本公式為
x′=x+Δscosθ
y′=y+Δssinθ
θ′=θ+Δθ
(3)
割草機(jī)器人通過左右輪移動距離的不同來改變方向。假設(shè)移動方向定義為Δθ,碼盤的采樣周期是20ms,當(dāng)量比較小時有Δθ=(Δr+Δl),則機(jī)器人的位置變化如圖2所示。
圖2 機(jī)器人的運(yùn)動模型
本設(shè)計中的割草機(jī)器人采用雙差速進(jìn)行驅(qū)動,驅(qū)動輪安裝有高轉(zhuǎn)矩、高速可逆直流電機(jī)驅(qū)動,驅(qū)動器上有高分辨率的光電碼盤,碼盤用于高精度的位置測量。
圖3為機(jī)器人的運(yùn)動軌跡控制曲線。軌跡控制包括位移和轉(zhuǎn)角的控制,控制方式采用FPGA控制系統(tǒng)。FPGA是一種專用的集成控制電路,克服了傳統(tǒng)控制電路可編程器件電路數(shù)有限的缺點(diǎn),配合神經(jīng)網(wǎng)絡(luò)控制算法,可大大提高割草機(jī)器人的控制精度及機(jī)器人的設(shè)計效率。
圖3 機(jī)器人運(yùn)動軌跡
人工神經(jīng)網(wǎng)絡(luò)是人工建立的網(wǎng)絡(luò)拓?fù)?,以連續(xù)或者斷續(xù)的輸入和輸出進(jìn)行信息的加工和處理,是基于人的認(rèn)知過程的一種新型算法。假如現(xiàn)在只有一些輸入和輸出數(shù)據(jù),而對于輸入如果得到輸出的機(jī)理并不清楚,因此可以將輸入和輸出之間的關(guān)系看作是一個未知的網(wǎng)絡(luò),通過不斷的訓(xùn)練輸入和輸出網(wǎng)絡(luò),調(diào)節(jié)各節(jié)點(diǎn)的權(quán)值,來獲得滿足需求的輸出,其結(jié)構(gòu)模型如圖4所示。
圖4 神經(jīng)網(wǎng)絡(luò)基本模型
模型由3層構(gòu)成,包括輸入層、輸出層和隱含層,層數(shù)越多表示計算越精確,但需要的計算時間也越長,因此在實(shí)際應(yīng)用時需要根據(jù)實(shí)際需求來設(shè)置層數(shù)。由大腦的神經(jīng)元工作機(jī)理,人們構(gòu)造了人工神經(jīng)網(wǎng)絡(luò)的數(shù)學(xué)模型,是大腦的模擬和簡化,其結(jié)構(gòu)如圖5所示。
關(guān)注營養(yǎng)。營養(yǎng)是衡量創(chuàng)新菜的標(biāo)準(zhǔn),如果菜品具備的色、香、味達(dá)到一定的標(biāo)準(zhǔn),但營養(yǎng)與衛(wèi)生方面存在問題,也會阻礙創(chuàng)新菜的研發(fā)與使用。所以,在創(chuàng)新中國菜時,需要結(jié)合營養(yǎng)搭配的理念,實(shí)現(xiàn)膳食均衡,不僅體現(xiàn)出創(chuàng)新菜的特色,還要體現(xiàn)出菜品的營養(yǎng)與原料的合理配制,才能保證創(chuàng)新菜足夠環(huán)保,為享用者提供健康安全食用的條件[1]。
圖5 神經(jīng)網(wǎng)絡(luò)生物學(xué)模型
圖5中,神經(jīng)元xi對輸入信息的感知能力用wi表示,稱為關(guān)聯(lián)權(quán);f(z)表示輸出函數(shù)。其中,輸出函數(shù)的表達(dá)式為
(4)
其中,sgn(.)為符號函數(shù);θ為閾值。一般來說,一個神經(jīng)網(wǎng)絡(luò)是由多個輸入和輸出構(gòu)成的,當(dāng)wi確定時,不管什么樣的輸入xi,(i=1,2,…,n),都很容易得到輸出值。確定wi的過程也是訓(xùn)練的過程,本次設(shè)計采用單層前向神經(jīng)網(wǎng)絡(luò)模型,表達(dá)式為
Y=f(WTX-θ)
(5)
其中,W=(wij)mxn為權(quán)重系數(shù)的矩陣;X、Y、θ分別為輸入向量、輸出向量和閾值向量。為了確定權(quán)數(shù)wij,修正輸入輸出偏差,權(quán)值的修正公式為
W(t+1)=W(t)+δW(t)
δW(t)=(δwij(t))
δwij(t)=εt((dj(t)-yj(t))xi(t))m×n
(6)
其中,xi(t)、dj(t)(i=1,2,…,m,j=1,2,…,n)分別為t組的輸入和輸出的期望數(shù)據(jù);εt為學(xué)習(xí)的效率,可以調(diào)整計算的速度。同權(quán)值的修正公式類似,閾值的修正公式可以表示為
θ(t+1)=θ(t)+δθ(t)
δθ(t)=εt((dj(t)-yj(t))n×1
(7)
通過更新權(quán)數(shù)和閾值使得輸入輸出偏差趨于零。假設(shè)學(xué)習(xí)步驟的序號為t,t=0表示神經(jīng)網(wǎng)絡(luò)的初始狀態(tài),則割草機(jī)器人神經(jīng)網(wǎng)絡(luò)智能控制的算法實(shí)現(xiàn)步驟如下:
1)初始賦值。指定割草機(jī)器人的初始位置,將神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值分別賦值。
2)計算樣本的輸出值。選擇一個軌跡控制樣本為網(wǎng)絡(luò)輸入,計算軌跡的實(shí)際輸出。對于第p個控制軌跡,其輸出為Y(p)=[Y1(p),…,Yn(p)]。其中,Yi(p)=f(∑wijxj-θi),i=1,…,n。
3)計算輸出誤差,根據(jù)實(shí)際輸出結(jié)果和期望結(jié)果的差值,確定輸出誤差。
4)對權(quán)數(shù)進(jìn)行修正。如果δt=0,則不用調(diào)整;如果其值不為零,則根據(jù)權(quán)值的調(diào)整公式(6)進(jìn)行調(diào)整。
5)訓(xùn)練樣本。對輸入或者輸出誤差進(jìn)行干預(yù),通過一定的學(xué)習(xí)算法,提高計算精度,從而可以提高割草機(jī)器人軌跡控制的準(zhǔn)確性。
軌跡的控制以位移和轉(zhuǎn)角為控制對象,控制器使用FPGA神經(jīng)網(wǎng)絡(luò)控制器。該控制器可以實(shí)現(xiàn)位移和轉(zhuǎn)角的測量,并根據(jù)設(shè)定的值對位移和轉(zhuǎn)角進(jìn)行調(diào)節(jié),其中調(diào)節(jié)算法選用神經(jīng)網(wǎng)絡(luò)算法。整個控制系統(tǒng)的硬件由FPGA核心控制器、光電編碼器、傳感器、信號放大電路、A/D轉(zhuǎn)換模塊和控制執(zhí)行件組成。FPGA采用通斷控制來計算,其控制器按照PID算法,通過FPGA輸出一定周期的PWM波,調(diào)節(jié)繼電器的導(dǎo)通時間,實(shí)現(xiàn)執(zhí)行部件的開關(guān),達(dá)到控制軌跡的目的,其結(jié)構(gòu)如圖6所示。
圖6 軌跡控制系統(tǒng)控制框圖
位移和角度信號通過A/D轉(zhuǎn)換器由模擬量轉(zhuǎn)換為數(shù)字量,將軌跡的檢測值和設(shè)定值進(jìn)行比較。如果不符合設(shè)定值,F(xiàn)PGA神經(jīng)網(wǎng)絡(luò)PID算法根據(jù)給定值和檢測值求出PID控制需要的3個參數(shù);然后,利用PID公式求控制量;最后,將控制量轉(zhuǎn)換為波控制繼電器。如果檢測的值和設(shè)定值比較低于設(shè)定值,則將PWM的波占空比降低,提高軌跡的控制量的數(shù)值。
為了驗(yàn)證基于FPGA和神經(jīng)網(wǎng)絡(luò)算法的鋤草機(jī)器人的智能軌跡控制能力,在田間對鋤草機(jī)器人進(jìn)行了測試。設(shè)計的機(jī)器人樣機(jī)具有三指手爪結(jié)構(gòu),可實(shí)現(xiàn)苗間鋤草和行間鋤草,并可有效地避開禾苗,其結(jié)構(gòu)和作業(yè)過程如圖7所示。
圖7 鋤草機(jī)器人測試示意圖
工作時,機(jī)器人的兩個割刀連續(xù)入土切割,從而實(shí)現(xiàn)鋤草功能。系統(tǒng)根據(jù)機(jī)器視覺來定位苗草的位置信息,并利用FPGA和神經(jīng)網(wǎng)絡(luò)算法進(jìn)行精確定位與導(dǎo)航。為了驗(yàn)證鋤草機(jī)器人的導(dǎo)航功能,在禾苗間和田間設(shè)置了許多障礙物,障礙物在三維空間的神經(jīng)網(wǎng)絡(luò)模型如圖8所示。
圖8 多個障礙物神經(jīng)網(wǎng)絡(luò)模型
圖8中,每一層表示中間的路徑點(diǎn),每個方框都代表了一個障礙物,將各中間點(diǎn)的x和y坐標(biāo)輸入神經(jīng)網(wǎng)絡(luò)各層,模型就可以輸出待調(diào)整的路徑。調(diào)整后的路徑如圖9所示。
圖9 穿越障礙物軌跡規(guī)劃
圖9中共有5個障礙物,各個障礙物靠得比較近,機(jī)器人可以看作是一個質(zhì)點(diǎn)。不同算法的誤差曲線如圖10所示。由圖10的最終收斂結(jié)果可以看出,利用FPGA和神經(jīng)網(wǎng)絡(luò)模型可以得到滿意的結(jié)果。
為了驗(yàn)證神經(jīng)網(wǎng)絡(luò)算法的計算精度,將普通的PID控制器和神經(jīng)網(wǎng)絡(luò)PID控制器得到的結(jié)果進(jìn)行了對比,結(jié)果表明:神經(jīng)網(wǎng)絡(luò)PID控制器得到的割草機(jī)器人控制誤差要明顯比傳統(tǒng)的PID控制器誤差小,從而驗(yàn)證了神經(jīng)網(wǎng)絡(luò)算法在割草機(jī)器人軌跡規(guī)劃中的優(yōu)越性,可以將其在控制系統(tǒng)中進(jìn)行應(yīng)用和推廣。
圖10 不同算法的誤差曲線
基于FPGA技術(shù)和神經(jīng)網(wǎng)絡(luò)算法設(shè)計了一種新型的割草機(jī)器人,并采用成熟的BP算法公式,建立了割草機(jī)器人智能控制的數(shù)學(xué)模型。同時,利用FPGA構(gòu)建了機(jī)器人的硬件控制系統(tǒng),最后采用田間試驗(yàn)和文本輸入的方式對機(jī)器人的軌跡規(guī)劃能力和控制精度進(jìn)行了試驗(yàn)測試。試驗(yàn)結(jié)果表明:割草機(jī)器人使用FPGA和神經(jīng)網(wǎng)絡(luò)算法后可以有效地穿越障礙物。將傳統(tǒng)的PID算法和神經(jīng)網(wǎng)絡(luò)PID控制算法進(jìn)行對比發(fā)現(xiàn),神經(jīng)網(wǎng)絡(luò)算法可以有效地提高控制精度。由于時間和試驗(yàn)條件的限制,本研究沒有引入其他算法進(jìn)行驗(yàn)證。FPGA具有較強(qiáng)的拓?fù)涔δ?,可以在其基礎(chǔ)上開發(fā)各種智能算法,在今后的研究中可以采用更多的智能算法對機(jī)器人進(jìn)行設(shè)計,從而提高割草機(jī)器人自動控制的智能化和控制精度。
[1] 陳運(yùn)鵬,龍慧,劉志杰.我國施肥技術(shù)與施肥機(jī)械的研究現(xiàn)狀及對策[J].農(nóng)機(jī)化研究,2015,37(4):255-260.
[2] 姬江濤,鄭治華,杜蒙蒙.農(nóng)業(yè)機(jī)器人的發(fā)展現(xiàn)狀及趨勢[J].農(nóng)機(jī)化研究,2014,36(12):1-4.
[3] 喬永亮,何東鍵,趙川源,等.基于多光譜圖像和SVM的玉米田間雜草識別[J].農(nóng)機(jī)化研究,2013,35(8):30-34.
[4] 姬長英,周俊.農(nóng)業(yè)機(jī)械導(dǎo)航技術(shù)發(fā)展分析[J].農(nóng)業(yè)機(jī)械學(xué)報,2014,45(9):44-54.
[5] 孟慶寬,何潔,仇瑞承,等.基于機(jī)器視覺的自然環(huán)境下作物行識別與導(dǎo)航線提取[J].光學(xué)學(xué)報,2014,34(7):1-7.
[6] 劉金龍,鄭澤鋒,丁為民,等.對靶噴霧紅外探測器的設(shè)計與探測距離測試[J].江蘇農(nóng)業(yè)科學(xué),2013,41 (7):368-370.
[7] 馬立新,李長樂.智能 PID 在變頻器控制系統(tǒng)中的應(yīng)用研究[J].上海電力學(xué)院學(xué)報,2006(3):278-282.
[8] 馬立新,陳閩軒,李長樂.基于BP神經(jīng)網(wǎng)絡(luò)的 PID 控制兩輪驅(qū)動機(jī)器人[J].自然科學(xué)研究:中文版,2007,12(4):65-72.
[9] 劉玲,王耀南.基于神經(jīng)網(wǎng)絡(luò)和遺傳算法的移動機(jī)器人路徑規(guī)劃[J].計算機(jī)應(yīng)用, 2007, 24(2):264-268.
[10] 劉金帥,賴惠成,賈振紅.基于YCbCr顏色空間和Fisher判別分析的棉花圖像分割研究[J].作物學(xué)報,2011,37(7):1274-1279.
[11] 高國琴,李明.基于 K-means 算法的溫室移動機(jī)器人導(dǎo)航路徑識別[J].農(nóng)業(yè)工程學(xué)報,2014,30(7): 25-33.
[12] 方莉娜,楊必勝.車載激光掃描數(shù)據(jù)的結(jié)構(gòu)化道路自動提取方法[J].測繪學(xué)報,2013,42(2):260-267.
[13] 熊愛武. 基于車載激光云點(diǎn)數(shù)據(jù)的道路模型重建[J].地理信息世界,2013,20(6):86-88.
[14] 魏澤鼎,賈俊國,王占永.基于視覺傳感器的棉花果實(shí)定位方法[J].農(nóng)機(jī)化研究,2012,34(6):66-68.
[15] 王海青,姬長英,顧寶興,等.基于機(jī)器視覺和支持向量機(jī)的溫室黃瓜識別[J].農(nóng)業(yè)機(jī)械學(xué)報,2012,43(3): 163-167.
[16] 王輝,毛文華,劉剛,等.基于視覺組合的蘋果作業(yè)機(jī)器人識別與定位[J].農(nóng)業(yè)機(jī)械學(xué)報,2012,43(12): 165-170.
[17] 李寒,王庫,曹倩,等.基于機(jī)器視覺的番茄多目標(biāo)提取與匹配[J].農(nóng)業(yè)工程學(xué)報,2012,28(5):168-172.
[18] 項(xiàng)榮,應(yīng)義斌,蔣煥煜.田間環(huán)境下果蔬采摘快速識別與定位方法研究進(jìn)展[J].農(nóng)業(yè)機(jī)械學(xué)報,2013,44(11):208-223.
[19] 蔡健榮,孫海波,李永平,等.基于雙目立體視覺的果樹三維信息獲取與重構(gòu)[J].農(nóng)業(yè)機(jī)械學(xué)報,2012,43(3):153-156.
[20] 李立君,李昕,高自成,等.基于偏好免疫網(wǎng)絡(luò)的油茶果采摘機(jī)器人圖像識別算法[J].農(nóng)業(yè)機(jī)械學(xué)報,2012,43(12):209-213.
[21] 王文慶,張濤,龔娜.基于多傳感器融合的自主移動機(jī)器人測距系統(tǒng)[J].計算機(jī)測量與控制,2013,21 (2):343-345.
[22] 韋偉,周凌翱,劉青.一種便攜式的紅外測距系統(tǒng)[J].電子設(shè)計工程,2011,19(21):40-42.
[23] 劉金龍,丁為民,鄧巍.果園對靶噴霧紅外探測系統(tǒng)的設(shè)計與試驗(yàn)[J].江蘇農(nóng)業(yè)科學(xué),2012,40(12):370-372.
[24] 李麗,李恒,何雄奎.紅外靶標(biāo)自動探測器的研制及試驗(yàn)[J].農(nóng)業(yè)工程學(xué)報,2012,28(12):159-162.
[25] 馬锃宏,李南,王漢斌,等.溫室株間電驅(qū)鋤草控制系統(tǒng)設(shè)計與試驗(yàn)[J].農(nóng)業(yè)機(jī)械學(xué)報,2015,46(1):89-93.
Design of Intelligent Control Trajectory FPGA and Neural Network —Based on Robot Mower
Yuan Lulu, Zhang Weiwei
(Henan Polytechnic Institute, Nanyang 473000, China)
In order to improve the accuracy and intelligence of the mowing robot autonomous navigation and localization, design a model of mowing robot based on FPGA (field programmable gate array) and the neural network algorithm, the design using FPGA reconfigurable technology, to three layer back-propagation neural network as a typical model. Using BP algorithm formula, the design of the Intelligent Robot Mower control model. By using the FPGA technology, design the hardware system of the mowing robot. Finally, the design method of the input text, using field experiment, the robot trajectory planning ability and control precision was verified. The experimental results show that using FPGA and the neural network model can effectively through five obstacles, and can get the satisfactory results of trajectory planning. Compared to the ordinary PID controller and neural network PID controller control the error, results can be seen from the, neural network PID controller of the mowing robot control error to be significantly better than the traditional PID controller error small, the method for neural network hardware implementation provides a reliable theoretical basis.
mowing robot; neural network; trajectory planning; FPGA reconstruction; PID controller
2016-01-18
河南省自然科學(xué)基金項(xiàng)目(2015ZCB115);南陽市科技攻關(guān)項(xiàng)目(2012GG029)
袁路路(1982-),女,河南南陽人,講師,碩士。
張娓娓(1985-),女,河南南陽人,助教,碩士,(E-mail)wwandll80@qq.com。
S24;TP391.41
A
1003-188X(2017)04-0212-05