<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 汽車(chē)電子 > 設計應用 > 基于單片機的AGV智能車(chē)的設計

基于單片機的AGV智能車(chē)的設計

作者: 時(shí)間:2012-04-09 來(lái)源:網(wǎng)絡(luò ) 收藏

隨著(zhù)計算機和信息技術(shù)的快速發(fā)展,在運輸、倉儲等工業(yè)領(lǐng)域獲得了廣泛的應用。特別是隨著(zhù)現代物流業(yè)的飛速發(fā)展,運輸以及倉儲成本問(wèn)題已成為物流企業(yè)在成本核算中一個(gè)無(wú)法忽視的問(wèn)題,實(shí)現產(chǎn)品的零庫存是節約成本、提高產(chǎn)品競爭力的目標之一。一方面是為了節約成本,實(shí)現零庫存;另一方面是為了獲得規模效益而不斷擴大的儲備倉庫,要實(shí)現不同產(chǎn)品的自動(dòng)歸庫和自動(dòng)出倉,需要一種可以實(shí)現自動(dòng)化操作的智能設備,來(lái)完成這些無(wú)人化工作,從而實(shí)現高效管理和自動(dòng)控制的目標。恰好可以實(shí)現這樣的功能。本文基于的原理,探討和模擬了在倉庫中實(shí)現對產(chǎn)品的自動(dòng)歸庫和自動(dòng)出倉的工作方式。

本文引用地址:http://dyxdggzs.com/article/196984.htm

1 方案選擇及硬件電路設計

1.1 MC9S12DJ128

MC9S12DJ128 MCU是一種16 bit的MCU,其內部主要由MCU的基本部分和CAN功能模塊組成。MCU的基本部分主要包括:

(1)時(shí)鐘和復位產(chǎn)生模塊CRG(Clock and Reset Generator)。包括低電流振蕩器或是標準振蕩器的選擇、鎖相環(huán)時(shí)鐘頻率放大器、看門(mén)狗、實(shí)時(shí)中斷和時(shí)鐘監控器。

(2)存儲器包括128 KB的Flash、 8 KB的RAM、 2 KB的EEPROM。具有5V輸入和驅動(dòng)能力,CPU的工作頻率可達到50 MHz,并支持單線(xiàn)背景調試模式(BDM),可以在線(xiàn)調試。

(3)29路獨立的數字I/O接口,20路帶中斷和喚醒功能的數字I/O接口;2個(gè)8通道的10位A/D轉換器、具有外部轉接觸能力;具有8通道的輸入捕捉/輸出比較,還具有8個(gè)可編程PWM通道,可配置成8通道8位或4通道16位PWM,其每個(gè)通道的周期和占空比均可以通過(guò)編程獨立設置。

(4)具有2個(gè)串行異步通信接口SCI、2個(gè)同步串行外設接口SPI、Byteflight,Inter-IC總線(xiàn)以及SAE J1850 Class B數據通信網(wǎng)絡(luò )接口[1]。

為了實(shí)現AGV智能車(chē)的控制實(shí)現無(wú)人化操作,硬件電路的設計主要包括路徑信息采集分離模塊、電源管理模塊、舵機控制模塊、電機驅動(dòng)控制模塊及速度檢測控制電路等。其設計框圖如圖1所示。

11.jpg

為了方便硬件電路調試、便于硬件電路的分割處理、避免硬件電路可能出現的信號干擾、串擾問(wèn)題,方便機械結構的設計,本設計采用模塊化設計,不同模塊之間可以通過(guò)屏蔽線(xiàn)或同軸電纜實(shí)現信號傳輸,通過(guò)實(shí)驗,其效果比較理想。

1.2 電源管理模塊

本設計中AGV智能車(chē)采用7.2 V的電池組供電。常用的直流低壓控制電路可采用開(kāi)關(guān)穩壓和串聯(lián)穩壓方式。開(kāi)關(guān)穩壓芯片的工作效率高但電路有較大的電源噪聲,適用于耗電量較大的電路[2]。當電路的電池電壓由于消耗變低時(shí),通用的LM7805芯片輸出電壓就難以保證,容易造成的自復位。另外在考慮到驅動(dòng)電機有較大的電流,尤其智能車(chē)在啟動(dòng)和加速時(shí),可能會(huì )造成電池比較大的輸出壓降。

基于以上的考慮,本設計電源模塊的主控芯片分別采用MAX1771CSA和MAX1626ESA,該芯片有較大的電壓輸入范圍,能有效地保證由于電池的損耗輸出電壓降低而造成的穩壓電路的較大電壓波動(dòng)輸出。采用MAX1771CSA構成12 V升壓電路,MAX1626ESA構成5 V降壓電路。單片機主控制電路、舵機驅動(dòng)、速度檢測均需要+5 V的控制電壓,而視頻采集電路需+12 V控制電壓。該電源供電模塊設計完全可以滿(mǎn)足控制要求。

1.3 CCD視頻采集分離模塊

本文采用Clarion CC-450型車(chē)載前端攝像頭,該攝像為NTSC制式,掃描525線(xiàn)30幀/s的圖像。CCD攝像頭輸出標準的視頻復合信號,通過(guò)行掃描的方式,將圖像信息轉換為一維的視頻模擬信號輸出。通過(guò)對比S12單片機采集圖像分辨率的特點(diǎn)及路徑檢測所需圖像分辨率的要求可以發(fā)現,在安裝CCD攝像頭的時(shí)候,只要將其旋轉90°,則圖像信息也將旋轉90°,如圖2所示。通過(guò)A/D轉換器采集的圖像信息,水平分辨率與垂直分辨率會(huì )發(fā)生互換,從原來(lái)的水平分辨率低、垂直分辨率高的圖像,變成水平分辨率高、垂直分辨率低的圖像,正好可以滿(mǎn)足道路參數檢測的要求。

22.jpg

由于攝像頭采集的信號數據量較大,采用單片機本身自帶的A/D轉換I/O口可能出現轉換速度無(wú)法滿(mǎn)足要求的情況,所以,在本設計中另外采用了1片A/D信號轉換芯片ADC1775CIMTC,以滿(mǎn)足攝像頭信號采集和轉換使用。步信號分離芯片LM1881和ADC1775CIMTC的A/D轉換可以對視頻信號進(jìn)行采集,從而得到CCD的灰度圖像數據,經(jīng)二值化處理就可以在圖像上得到黑色路徑軌跡的點(diǎn)陣[3],視頻信號通過(guò)比較器與設定的值進(jìn)行比較,從而得到視頻電壓的二值化。二值化電路原理圖如圖3所示。A/D信號轉換芯片ADC1775CIMTC如圖4所示。調節設定電壓比較值,將該值設定為視頻信號中黑白亮色的分界電壓值,以提高輸出圖像識別效果。攝像頭采集電路如圖5所示。

33.jpg

44.jpg

55.jpg

1.4 電機驅動(dòng)模塊

AGV智能車(chē)上采用RS-380SH型驅動(dòng)電機,為了可靠保證智能車(chē)的速度,提高其負載能力,本設計采用2片并聯(lián)使用的具有短路保護、欠壓保護與過(guò)溫保護功能的MC33887芯片驅動(dòng)電機,保證電機的驅動(dòng)能力,實(shí)現對速度進(jìn)行控制。通過(guò)將各種狀態(tài)引入單片機的中斷口,使單片機能對外界的異常情況進(jìn)行實(shí)時(shí)處理。采用2部分電路對稱(chēng)布置,如圖6所示為其中的1片硬件電路。

66.jpg

1.5 舵機控制模塊

本設計采用SRM-102型舵機,其響應速度為0.2s/60°??刂贫鏅C的脈沖可以使用S12單片機的1路PWM產(chǎn)生。單片機中有8路PWM輸出端口,可以將其中相鄰的2路PWM輸出級聯(lián)成一個(gè)16位PWM輸出。在單片機為24 MHz時(shí),設置級聯(lián)PWM周期常數為60 000,對應PWM周期為20 ms的脈沖信號,PWM占空比常數為4 500時(shí)對應輸出為1.5 ms。改變占空比常數可以改變輸出脈沖的寬度。另外,脈沖寬度與轉角的線(xiàn)性關(guān)系計算公式為:

a=(L-1.5)×90°

式中,a是舵機的轉角,單位為度(°);L是脈沖寬度,單位是ms。

其轉角和脈沖寬度對應關(guān)系如圖7所示。

77.jpg

測試過(guò)程中,發(fā)現舵機一定的轉角有時(shí)間的延遲,時(shí)間延遲正比于旋轉過(guò)的角度,反比于舵機的響應速度,通過(guò)分析可知,舵機的響應速度直接影響小車(chē)轉彎的速度。而且在實(shí)際的控制現場(chǎng),還影響轉向的精確度。通過(guò)不斷的測試發(fā)現可以適當抬高攝像頭的高度,使其能夠探測更遠的距離,提前采集彎道信息,提前對舵機給以響應。但同樣存在一個(gè)問(wèn)題,攝像頭抬得過(guò)高會(huì )出現采集回來(lái)的路徑的灰度值偏低,必須通過(guò)不斷的實(shí)驗找到一個(gè)合適的結合點(diǎn)。

1.6 速度檢測模塊

本設計采用齒槽圓盤(pán)加直射式光電對射傳感器構成車(chē)速檢測電路。通過(guò)光電傳感器讀取齒槽圓盤(pán)轉動(dòng)脈沖。傳感器輸出的電壓信號可以由單片機的A/D端口進(jìn)行讀取,其余的輸出脈沖信號可以利用單片機I/O端口輸入到單片機內部的定時(shí)器/計數器模塊中進(jìn)行測量。通過(guò)周期讀取計數器的計數數值,可以反映脈沖的頻率,從而得到車(chē)速信息。

假設n為后軸的轉速(單位為r/s);N為1個(gè)采樣周期T內光電傳感器記錄的脈沖個(gè)數;P為齒槽盤(pán)的齒數;T為采樣周期(單位s)。則:

N=T×n×P (1)

因此小車(chē)后輪的轉速為:

n=N/(P×T) (2)

經(jīng)測量,小車(chē)后輪直徑D=55 mm,則可以得到小車(chē)瞬時(shí)速度為:

V=π×n×D (3)

固定在后軸上的齒槽盤(pán)是1個(gè)圓周被分成60個(gè)等份的齒槽圓盤(pán)。齒槽盤(pán)上的1個(gè)齒和1個(gè)缺口連續通過(guò)速度傳感器后,速度傳感器就會(huì )生成1個(gè)脈沖信號。經(jīng)過(guò)整形處理有單片機的I/O口對其進(jìn)行計數捕捉,每捕捉到1個(gè)脈沖信號,智能車(chē)前進(jìn)的路程就可用下式得到:

L=1/60×π×D (4)

把D=55 mm代入公式(4)中可以得到:

L=1/60×π×55 mm=2.879 mm (5)

通過(guò)測試可以確定,當速度采樣周期為0.2 s時(shí)效果最佳。如果采樣周期太長(cháng),則脈沖累加器得到的數量太多,在軟件編程時(shí)對算法不利?;谏鲜龇治?,將定時(shí)器時(shí)間設定為48 ms,即每隔48 ms定時(shí)器就產(chǎn)生1次中斷并讀取脈沖累加器中的數值。設定經(jīng)過(guò)4個(gè)間隔后做1次PID算法來(lái)改變電機的驅動(dòng)信號,進(jìn)而改變智能車(chē)的速度。在PID算法中的檢測值(反饋值)由這4次讀取脈沖累加器的值平均后得到,其目的在于防止檢測信號突變而干擾控制。為了濾除干擾信號,在PID控制算法中加1個(gè)滑動(dòng)平均濾波器。按上述設定定時(shí)器設定值和脈沖累加器后,可以推算出智能車(chē)的速度表達式如式(6)所示,從而完成對智能車(chē)的速度的測量。
V=(L×N)/48 (6)

1.7 鍵盤(pán)顯示控制模塊

本設計采用的單片機自身帶有可用于擴展鍵盤(pán)和顯示的I/O口,硬件設計直接采用外置式8針插拔4×4鍵盤(pán),以及帶有字庫的外置式點(diǎn)陣液晶顯示模塊,以方便在調試過(guò)程中及時(shí)糾正智能車(chē)在運行過(guò)程中的路徑偏差。在實(shí)際的控制現場(chǎng),可以采用無(wú)線(xiàn)通信模塊來(lái)給AGV傳輸指令,實(shí)現遠距離操控[1]。

2 系統軟件設計

2.1 系統初始化

在系統運行開(kāi)始時(shí),首先需要進(jìn)行初始化,初始化主要包括時(shí)鐘初始化、A/D口初始化、PWM初始化、IRQ初始化以及I/O口初始化。其中,A/D和IRQ在CCD圖像采集過(guò)程中使用,PWM主要應用在舵機的控制和電機驅動(dòng)的控制上。

2.2 PID算法設計

舵機轉角與電機轉速算法從最遠的一行圖像開(kāi)始,根據預設的標志位判斷該行是否有效。如果不是有效行,則判斷下一行,直到找到有效的第1行為止。找到有效行就可以獲得中心線(xiàn)的位置信息,繼續尋找最后一行有效黑線(xiàn),據此計算出黑線(xiàn)的斜率。將黑線(xiàn)中心位置及黑線(xiàn)的斜率代入本設計的舵機控制量與中心位置公式,計算出舵機應有的控制量,從而確定相應的舵機轉角及電機的轉速。計算公式如下:

舵機控制量=比例控制量+積分控制量+微分空置量 (7)

式中,比例控制量根據黑線(xiàn)中心位置乘以比例系數得到,積分控制量根據黑線(xiàn)斜率計算得到,微分空置量則是第K次與第K-1次比例控制量的差值[5]。各控制量的系數值均通過(guò)測試選定。

對于電機速度的控制,主要根據在起始時(shí)給定智能車(chē)的運行速度以及啟動(dòng)后計算出的舵機控制量判斷智能車(chē)是否行駛在直道上,如果是在直道上則加快速度,否則根據控制量的大小進(jìn)行適當的減速,以保證智車(chē)能在過(guò)彎時(shí)能更加順暢和精確。

2.3 CCD圖像采集

本設計采用的CCD圖像傳感器采集圖像的幀周期為33.4 ms,行周期為63.6 μs。在智能車(chē)行駛過(guò)程中需要對采集的圖像進(jìn)行實(shí)時(shí)處理,并不斷進(jìn)行反饋以對舵機轉角和速度進(jìn)行控制,因此,在采集工程中以半幀為1個(gè)采集周期,每8線(xiàn)采集1線(xiàn),剩余時(shí)間執行其他任務(wù)。

2.4 圖像處理

通過(guò)CCD采集獲得的是一幅灰度圖像,為了確定路徑,需要進(jìn)行二值化并對中心線(xiàn)進(jìn)行直線(xiàn)擬合。由于單片機要不斷地進(jìn)行圖像采集,所以計算時(shí)間剩余十分有限,為此進(jìn)行二值化和直線(xiàn)擬合就需要采用計算量最小的算法來(lái)完成。

2.5 圖像閾值的確定

由于攝像頭采集的圖像信息數據量比較大,而且必須是動(dòng)態(tài)實(shí)時(shí)的路徑信息?;趩纹瑱C的處理速度和時(shí)間,本文采用固定的閾值進(jìn)行圖像的二值化。單片機本身無(wú)法進(jìn)行動(dòng)態(tài)計算,所以需要確定一個(gè)比較合理的方法來(lái)確定一個(gè)固定閾值。本設計利用分割最優(yōu)閾值迭代算法進(jìn)行閾值計算[6]。當采集完1幅圖像之后進(jìn)行最優(yōu)閾值計算,計算完成后將計算結果發(fā)給單片機,然后進(jìn)行下一幅圖像采集,如此循環(huán)。

在迭代算法中,需要對分割出的圖像分別求出其灰度平均值,計算如下:

8.jpg

式中,E{g(x,y)}表示灰度平均值,f(x,y)表示圖像二維定義,e(x,y)表示偏差函數。
(8)式、(9)式說(shuō)明了隨著(zhù)迭代次數的增加,平均灰度值將趨向于真值。因此,用迭代算法求得的最佳值不受噪聲干擾的影響。

在計算過(guò)程中,首先選擇一個(gè)近似值作為初始值,然后進(jìn)行分割,產(chǎn)生子圖像;并根據子圖像的特性選取新的值,然后用新的值分割圖像,經(jīng)過(guò)幾次循環(huán),使錯誤分割圖像像素點(diǎn)降到最少。這樣做的結果明顯優(yōu)于用初始值直接分割圖像的效果,值的改進(jìn)策略是用迭代算法的關(guān)鍵[7]。具體步驟如下:
(1)選擇一個(gè)初始值的估算值

10.jpg

14.jpg

通過(guò)分析,確定16為圖像的固定閾值。實(shí)驗證明,經(jīng)過(guò)以16為閾值的二值化處理后的圖像比較清晰,在實(shí)驗室光照較好的條件下,沒(méi)有出現離散斑點(diǎn),智能車(chē)的自主識別效果很好。在軟硬件程序的聯(lián)合調試過(guò)程中,在實(shí)驗室正常燈光環(huán)境下,智能車(chē)能很好地沿線(xiàn)行駛,在實(shí)際的調試中發(fā)現如果光線(xiàn)太暗,會(huì )造成CCD攝像頭采集回來(lái)的圖形灰度值偏低的情況。針對這種情況,可以嘗試采用補光的措施,來(lái)滿(mǎn)足攝像頭對環(huán)境光照的要求。智能車(chē)控制系統流程如圖8所示。

88.jpg

智能車(chē)在直線(xiàn)行駛過(guò)程中,舵機與前軸夾角為90°,考慮到車(chē)輛行駛中偏離路徑出現的誤差,當其夾角范圍在80°~100°范圍內時(shí),直接輸出舵機的計算值;當檢測到的夾角超出此范圍值時(shí),為保證智能車(chē)的正確行駛方向,由光電傳感器進(jìn)一步檢測其行駛路徑,并輸出計算的舵機轉角。

智能車(chē)是在預先設置好的路徑上行駛。在實(shí)際的倉庫環(huán)境中,由于智能車(chē)會(huì )有較大的負載,為了保證安全,在智能車(chē)出現錯道情況時(shí),必須讓其強制停止。在到達箱體貨物跟前必須減速。所以針對這種情況可以安裝其他設備,如紅外傳感器和行程開(kāi)關(guān),以保證檢測信息足夠讓智能車(chē)安全行駛。

本文通過(guò)模擬在大型倉庫中,AGV自主尋跡智能車(chē),來(lái)實(shí)現倉庫的無(wú)人化管理。通過(guò)實(shí)驗證明,本智能車(chē)在這種環(huán)境中實(shí)現的可行性?;诙鄠鞲衅餍畔Ш较到y在大型倉庫管理中實(shí)現智能車(chē)無(wú)人化管理,給工業(yè)現場(chǎng)多信息導航智能系統提供有益的參考。

pid控制相關(guān)文章:pid控制原理


pwm相關(guān)文章:pwm是什么


單片機相關(guān)文章:單片機教程


單片機相關(guān)文章:單片機視頻教程


單片機相關(guān)文章:單片機工作原理




關(guān)鍵詞: AGV 單片機 智能車(chē)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>