張永澤 艾長勝 張尉
摘要:隨著社會的發(fā)展與進(jìn)步,人們對自動化生產(chǎn)的迫切需求越來越大。為進(jìn)一步推動生產(chǎn)系統(tǒng)的柔性化中,AGV小車在物料運輸方面起到了重要的作用。AGV小車的分類比較多,如電磁導(dǎo)引小車、激光導(dǎo)引小車、磁條導(dǎo)引小車慣性導(dǎo)引AGV小車等。因慣性導(dǎo)航系統(tǒng)靈活性高、技術(shù)先進(jìn)、定位精度高、適用范圍廣等優(yōu)點。但同時也存在累積誤差比較大并且難以消除等缺點。本文就以慣性導(dǎo)引小車為主要研究對象,并將慣導(dǎo)技術(shù)與視覺傳感器技術(shù)相結(jié)合,實現(xiàn)AGV小車的路徑規(guī)劃。
關(guān)鍵詞:AGV;慣性導(dǎo)航;視覺導(dǎo)航;控制系統(tǒng)1AGV小車簡介及分類
1.1AGV小車簡介
自動導(dǎo)引小車是指裝有電磁或光學(xué)等自動導(dǎo)引裝置, 可以按照指定的或固定路徑行駛的, 并且具有保護(hù)裝置以及運輸功能的運輸小車。
1.2AGV小車的分類
1.2.1磁導(dǎo)引方式
優(yōu)點是磁條的鋪設(shè)過程比較簡單,并且路線調(diào)整比較容易。缺點是磁帶外漏,易受到磨損、污染及機(jī)械損傷。
1.2.2激光導(dǎo)引方式
優(yōu)點是線路比較容易調(diào)整,使用范圍比較廣,無需鋪設(shè)導(dǎo)線。這種導(dǎo)引方式的缺點是受到外界光線的影響比較大。
1.2.3視覺導(dǎo)引方式
優(yōu)點是在AGV小車的前端裝有CMOS視覺傳感器,通過圖像采集卡將采集到的信息轉(zhuǎn)化為能夠被識別的信號。
1.2.4慣性導(dǎo)引方式
這種導(dǎo)引方式的主要元器件是陀螺儀,優(yōu)點是定位精度比較高,靈活性較強;缺點是累積誤差比較大。
2控制系統(tǒng)硬件電路設(shè)計
2.1主控制器的選型
AGV小車需要對紅外避障模塊、防撞模塊、慣導(dǎo)模塊以及視覺傳感器模塊輸出的信號進(jìn)行處理。本文選用STM32F103VET6模塊作為主控制器。STM32F103系列單片機(jī)的內(nèi)核是32位的Cortex-M3 CPU;擁有32K~128K的閃存程序存儲器以及6K~20K的SRAM,其內(nèi)部資源豐富,處理信息的能力很強,可以滿足本文題目的設(shè)計要求。
2.2陀螺儀
2.2.1陀螺儀簡介
陀螺儀是一種慣性傳感器,可組成慣性導(dǎo)航系統(tǒng)。JY-901模塊集成了陀螺儀、加速度計、地磁場傳感器等微處理器以及內(nèi)部帶有動力學(xué)以及卡爾曼濾波算法,可實時輸出模塊當(dāng)前的運動狀態(tài)。
2.2.2陀螺儀輸出信號的處理
由于不同廠家制作的陀螺儀的性能不同,在陀螺儀內(nèi)部進(jìn)行的處理過程也不同。本文采用JY-901模塊,內(nèi)部已集成角速率轉(zhuǎn)換模塊以及濾波模塊。使得該模塊的輸出量為角度。
3電機(jī)驅(qū)動模塊
AGV小車電機(jī)的選擇。慣導(dǎo)AGV小車的電機(jī)選用無刷直流電機(jī)。原因是1)直流電機(jī)有比較好的啟動特性及調(diào)速性能;2)直流電機(jī)的輸出轉(zhuǎn)矩比交流電機(jī)的大;3)直流電機(jī)通用性比較強,更加便于維修。
4視覺傳感器
4.1 視覺傳感器的簡介
現(xiàn)在主流的傳感器有CCD和CMOS,其中CCD攝像頭對比度高、動態(tài)性能好,并且靈敏度比較高,但是必須需要12V的供電電壓,耗能比較大。電路設(shè)計比較復(fù)雜。CMOS攝像頭所采集圖像的靈敏度比較高,電路設(shè)計比較簡單,工作在5V的電壓下即可。并且同等條件下,CMOS圖像傳感器的工作速度高于CCD。因此選擇OV7670 CMOS圖像傳感器比較合適。
5AGV小車控制系統(tǒng)軟件設(shè)計
5.1利用STM32F103VET6單片機(jī)實現(xiàn)PWM調(diào)速
要使STM32的TIM3輸出PWM信號,具體的配置過程:
(1)開啟TIM3時鐘及復(fù)用功能時鐘,配置PB5為復(fù)用輸出;(2)設(shè)置TIM3_CH2重映射到PB5上;(3)初始化TIM3,設(shè)置TIM3的ARR和PSC;(4)設(shè)置TIM3_CH2的PWM模式,使能TIM3的CH2輸出;(5)使能TIM3;(6)修改TIM3_CCR2來控制占空比。
5.2慣導(dǎo)模塊控制系統(tǒng)
為實現(xiàn)利用PC機(jī)接收通過STM32單片機(jī)發(fā)送的來自陀螺儀JY-901的信號,需要將模塊進(jìn)行如下連接:STM32F103串口1的Rx接JY-901的Tx,用于接收J(rèn)Y-901模塊的數(shù)據(jù)。STM32F103串口的Rx接電腦的USB-TTL模塊的Rx,用于向電腦發(fā)送解析后的數(shù)據(jù)。
5.3慣導(dǎo)模塊與圖像傳感器模塊相結(jié)合程序流程圖(圖1)
6試驗結(jié)果分析
JY-901慣導(dǎo)模塊與STM32單片機(jī)連接調(diào)試結(jié)果
(1)JY-901模塊與單片機(jī)連接數(shù)據(jù)采集。采集的數(shù)據(jù)中“Angle:-22.346 -10.366 147.387”是JY-901模塊輸出的角度值。另外可以通過改變程序?qū)崿F(xiàn)單一角度值的輸出。對于輸出的角度值,可以與預(yù)先設(shè)定值進(jìn)行比較,進(jìn)而通過調(diào)節(jié)小車電機(jī)轉(zhuǎn)速實現(xiàn)AGV小車的直線糾偏;(2) STM32單片機(jī)PWM輸出實現(xiàn)AGV小車的速度調(diào)整。1)硬件連接:在單片機(jī)與驅(qū)動器之間接了一個光電耦合器,將輸出的PWM信號接在光耦的輸入端。光耦的輸出端接電機(jī)驅(qū)動器。給單片機(jī)通電,再接通總電源;2)軟件部分:利用keil uVision4軟件,編寫并編譯PWM信號輸出的程序。再利用J-LINK將程序下載到STM32單片機(jī)。
給兩個電機(jī)輸出相同的PWM信號,可實現(xiàn)小車的直線行走。由于電機(jī)性能不同以及其他因素的影響,得到的電機(jī)轉(zhuǎn)速并不相同。此時可以通過調(diào)整其中一個輸出的PWM信號,從而實現(xiàn)小車轉(zhuǎn)速的同步。
7結(jié)論
本文研究了一種基于慣導(dǎo)與視覺相結(jié)合的AGV小車,對小車慣導(dǎo)與視覺控制系統(tǒng)進(jìn)行了較詳細(xì)的分析。當(dāng)AGV小車的視覺傳感器失靈時,小車的慣導(dǎo)模塊開始起作用。慣導(dǎo)模塊的主要元器件是一個陀螺儀,將其固定在AGV小車轉(zhuǎn)軸上,可實時輸出小車的旋轉(zhuǎn)角度。AGV可通過對陀螺儀偏差信號的計算與采集,結(jié)合小車直流電機(jī)上安裝的編碼器來確定小車行走的方向與距離,據(jù)此可以計算出小車行走的路程以及進(jìn)行糾偏。endprint