?AGV小車指裝備有電磁或光學(xué)等自動(dòng)導(dǎo)引裝置 能夠沿規(guī)定的導(dǎo)引路徑行駛,具有安全保護(hù)以及各種移載功能的運(yùn)輸車,工業(yè)應(yīng)用中不需駕駛員的搬運(yùn)車,以可充電之蓄電池為其動(dòng)力來源。一般可通過電腦來控制其行進(jìn)路線以及行為,或利用電磁軌道(electromagnetic path-following system)來設(shè)立其行進(jìn)路線,電磁軌道黏貼於地板上,無人搬運(yùn)車則依靠電磁軌道所帶來的訊息進(jìn)行移動(dòng)與動(dòng)作。

本項(xiàng)目設(shè)計(jì)的AGV小車可以非常方便地與其它不同的物流系統(tǒng)實(shí)現(xiàn)自動(dòng)連接,例如AS/RS(自動(dòng)化立體倉庫/存入取出系統(tǒng))、自動(dòng)積放鏈、各種緩沖站、升降機(jī)和機(jī)器人等;從而實(shí)現(xiàn)在工作站之間對(duì)物料進(jìn)行跟蹤;按計(jì)劃輸送物料并有執(zhí)行檢查記錄;對(duì)輸送進(jìn)行確認(rèn);與生產(chǎn)線和庫存管理系統(tǒng)進(jìn)行網(wǎng)絡(luò)在線連接以向工廠或車間管理系統(tǒng)提供實(shí)時(shí)物流信息。在AGV運(yùn)輸物料過程中,由于AGV按固定規(guī)劃路徑行駛,不易與其它加工設(shè)備或其他障礙物碰撞,很少甚至沒有導(dǎo)致產(chǎn)品或生產(chǎn)設(shè)備的損壞。AGV小車通過安裝地面電纜、磁導(dǎo)航帶或其他不構(gòu)成障礙的地面導(dǎo)引物引導(dǎo),方便。小車中AGVS系統(tǒng)具有極高的可靠性。AGVS是由若干臺(tái)AGV小車組成,當(dāng)一臺(tái)AGV損壞無法工作時(shí),其它AGV的生產(chǎn)效率不受影響并可以保持高度的系統(tǒng)可調(diào)度性。AGV小車采用蓄電池作為動(dòng)力來源,既節(jié)約能源又保護(hù)環(huán)境。AGV小車的充電和驅(qū)動(dòng)系統(tǒng)耗能少,能源利用率高,并且AGV工作噪音低對(duì)制造和倉儲(chǔ)環(huán)境沒有不良影響。

項(xiàng)目實(shí)施過程,通過分組分工及各研發(fā)階段分期實(shí)施完成??虏龣?quán)同學(xué)在導(dǎo)師指導(dǎo)下負(fù)責(zé)整體規(guī)劃和過程實(shí)施;張清同學(xué)主要進(jìn)行市場調(diào)研和數(shù)據(jù)分析,確定AGV小車設(shè)計(jì)功能和成本核算;杜永康、謝延同同學(xué)基于機(jī)電一體化技術(shù)專業(yè)知識(shí),完成AGV小車硬件結(jié)構(gòu)搭建;團(tuán)體進(jìn)行基于自動(dòng)化傳感檢測技術(shù)和智能控制算法,完成AGV小車軟件程序設(shè)計(jì),以及AGV小車測試和改進(jìn)。

具體內(nèi)容:第一階段對(duì)AGV進(jìn)行結(jié)構(gòu)框架設(shè)計(jì),包括傳感器位置安裝;第二階段對(duì)AGV小車進(jìn)行程序編程,包括實(shí)現(xiàn)AGV功能應(yīng)用各類傳感器的程序邏輯結(jié)構(gòu)框架設(shè)計(jì)、AGV前進(jìn)與后退等狀態(tài)的編寫,以及整體程序的調(diào)試;第三階段對(duì)AGV小車整體功能進(jìn)行試驗(yàn),對(duì)故障修理、程序微調(diào)及改善等。

?

智能AGV小車的設(shè)計(jì)與實(shí)現(xiàn)

[摘要]?AGV(Automated Guided Vehicle)即自動(dòng)導(dǎo)引運(yùn)輸車,是指裝備有電磁或光學(xué)等傳感器的自動(dòng)導(dǎo)引裝置,它能夠沿著規(guī)定好的路徑行駛,并且具有安全保護(hù)以及各種移載功能裝置的運(yùn)輸車。

AGV由計(jì)算機(jī),電控設(shè)備,導(dǎo)航設(shè)備等控制,它的自動(dòng)化程度高,目前已經(jīng)廣泛的應(yīng)用工業(yè)、軍事、交通運(yùn)輸、電子等領(lǐng)域。AGV屬于輪式移動(dòng)機(jī)器人(WMR――Wheeled Mobile Robot)的范疇。自第一輛AGV于1953年誕生以來,AGV技術(shù)不斷發(fā)展并趨向成熟。在歐、美等發(fā)達(dá)國家應(yīng)用也最為廣泛。由于AGV技術(shù)門檻較低,在我國已有多家企業(yè)生產(chǎn)此類產(chǎn)品,并逐漸應(yīng)用于各行各業(yè)。

本項(xiàng)目根據(jù)控制系統(tǒng)設(shè)計(jì)要求,選定以STM32單片機(jī)作為CPU進(jìn)行控制系統(tǒng)設(shè)計(jì)。本文分析研究了AGV硬件設(shè)計(jì)基本要求及并給出實(shí)現(xiàn)方案,軟件設(shè)計(jì)方面采用嵌入式系統(tǒng)的設(shè)計(jì)方案,采用無刷直流電機(jī)作動(dòng)力驅(qū)動(dòng)以及 電機(jī)驅(qū)動(dòng)器PID參數(shù)調(diào)整方案。

首先,介紹AGV小車車體結(jié)構(gòu)設(shè)計(jì)基本要求及方案,本項(xiàng)目設(shè)計(jì)作品為前輪轉(zhuǎn)向,后輪獨(dú)立驅(qū)動(dòng)的四輪式設(shè)計(jì)結(jié)構(gòu)。

其次,本項(xiàng)目將AGV自動(dòng)引導(dǎo)小車控制硬件設(shè)計(jì)組成,主要內(nèi)容有:供電系統(tǒng)設(shè)計(jì)方案、控制電路原理圖設(shè)計(jì)方法、各類傳感器設(shè)計(jì)原理方法。

最后,介紹AGV軟件設(shè)計(jì)方法,主要內(nèi)容為利用定時(shí)器中斷、串口中斷、I/O口數(shù)據(jù)傳輸、定時(shí)器定時(shí)等方法實(shí)現(xiàn)AGV自動(dòng)控制功能。

關(guān)鍵詞:AGV,STM32單片機(jī),磁導(dǎo)航設(shè)計(jì),PWM。

 

 

 

 

 

 

 

 

?

?

第一章緒論

1.1 ?AGV小車的背景和發(fā)展

AGV小車一直以來都作為為物料搬運(yùn)使用。世界上第一輛AGV由Barrett電子公司于1953年在美國開發(fā)成功,并且其具有一個(gè)以真空管為基礎(chǔ)的控制器。上世紀(jì)五十年代末到六十年代初期時(shí),已有多種類型的牽引式AGV作用于工廠和倉庫。

在上世紀(jì)六十年代和七十年代AGV技術(shù)則主要在歐洲得到發(fā)展。當(dāng)時(shí)的導(dǎo)引技術(shù)主要依靠地面控制器開關(guān)埋在地下的導(dǎo)線產(chǎn)生的電磁頻率指引AGV沿著規(guī)劃路徑行駛。到了20世紀(jì)八十年代,發(fā)展中心又轉(zhuǎn)移到美國,無線式引導(dǎo)技術(shù)被引入到AGV系統(tǒng)中,例如激光和慣性進(jìn)行導(dǎo)引。

自20世紀(jì)80年代以來,AGV系統(tǒng)已經(jīng)逐步發(fā)展成為生產(chǎn)物流系統(tǒng)中最大的專業(yè)分支之一,并趨向產(chǎn)業(yè)化發(fā)展,成為現(xiàn)代化企業(yè)不可缺少的自動(dòng)化裝備之一。

1.2??自動(dòng)引導(dǎo)小車(AGV)定義和特點(diǎn)

AGV(Automatic Guided Vehicle),即自動(dòng)導(dǎo)引車,根據(jù)美國物流協(xié)會(huì)定義,AGV是指裝備有電磁或光學(xué)傳感器等自動(dòng)導(dǎo)引裝置,并且能夠沿著規(guī)劃好的導(dǎo)引路徑行駛,且具有小車編程和停車選擇裝置、安全保護(hù)以及各種移載或裝卸物料功能的輪式運(yùn)輸車。AGV是以電池為動(dòng)力來源、車體裝有非接觸導(dǎo)向裝置,具備獨(dú)立尋址系統(tǒng)的無人駕駛自動(dòng)運(yùn)輸車。

AGVS(Automatic Guided Vehicle?System)即自動(dòng)導(dǎo)引車系統(tǒng),它由AGV小車、上位機(jī)管理系統(tǒng)、路徑導(dǎo)引系統(tǒng)、通信系統(tǒng)、小車??抗の灰约俺潆姽の坏冉M成。AGVS的上位機(jī)管理系統(tǒng)通過通信系統(tǒng)與系統(tǒng)內(nèi)的AGV小車通信,控制和制定AGV小車作業(yè)調(diào)度和計(jì)劃,并優(yōu)化AGV的作業(yè)過程和控制AGV的運(yùn)行路線、實(shí)時(shí)監(jiān)控AGV的運(yùn)行狀態(tài),使AGV在計(jì)算機(jī)的管制下有條不紊地作業(yè),并通過物流系統(tǒng)軟件而集成于整個(gè)工廠與車間的生產(chǎn)監(jiān)控和管理系統(tǒng)中。自動(dòng)導(dǎo)引車系統(tǒng)(AGVS)易于和其他自動(dòng)化系統(tǒng)集成,并且容易擴(kuò)展。

應(yīng)用AGV小車具有很多特點(diǎn):

1)AGV可以非常方便地與其它不同的物流系統(tǒng)實(shí)現(xiàn)自動(dòng)連接,例如AS/RS(自動(dòng)化立體倉庫/存入取出系統(tǒng))、自動(dòng)積放鏈、各種緩沖站、升降機(jī)和機(jī)器人等;從而實(shí)現(xiàn)在工作站之間對(duì)物料進(jìn)行跟蹤;按計(jì)劃輸送物料并有執(zhí)行檢查記錄;對(duì)輸送進(jìn)行確認(rèn);與生產(chǎn)線和庫存管理系統(tǒng)進(jìn)行網(wǎng)絡(luò)在線連接以向工廠或車間管理系統(tǒng)提供實(shí)時(shí)物流信息。

2)采用AGV后,可以大大減少人工檢取或堆置物料的人力勞動(dòng)力輸出,同時(shí)操作人員可以直接的減少為跟蹤物料而進(jìn)行大量的報(bào)表工作,進(jìn)而加快勞動(dòng)生產(chǎn)率。另外,可以直接取消或者減少非直接勞動(dòng)力如物料倉庫會(huì)計(jì)員、運(yùn)貨車調(diào)度員以及發(fā)料員的工作。

3)在AGV運(yùn)輸物料過程中,由于AGV按固定規(guī)劃路徑行駛,不易與其它加工設(shè)備或其他障礙物碰撞,很少甚至沒有導(dǎo)致產(chǎn)品或生產(chǎn)設(shè)備的損壞。

4)AGV的最初投入可能較高,但絕大多數(shù)購置AGV的使用者均證明,2到3年間內(nèi)均能收回AGV的投資成本。

5)AGV通過安裝地面電纜、磁導(dǎo)航帶或其他不構(gòu)成障礙的地面導(dǎo)引物引導(dǎo),方便。

6)AGVS系統(tǒng)具有極高的可靠性。AGVS由若干臺(tái)AGV小車組成,當(dāng)一臺(tái)AGV損壞無法工作時(shí),其它AGV的生產(chǎn)效率不受影響并可以保持高度的系統(tǒng)可調(diào)度性。

7)AGV采用蓄電池作為動(dòng)力來源,既節(jié)約能源又保護(hù)環(huán)境。AGV小車的充電和驅(qū)動(dòng)系統(tǒng)耗能少,能源利用率高,并且AGV工作噪音低對(duì)制造和倉儲(chǔ)環(huán)境沒有不良影響。

1.3 ?自動(dòng)引導(dǎo)小車(AGV)引導(dǎo)方式

AGV技術(shù)是生產(chǎn)過程自動(dòng)化先進(jìn)性的重要體現(xiàn),AGV之所以能夠?qū)崿F(xiàn)無人駕駛,導(dǎo)航和導(dǎo)引對(duì)其起到了至關(guān)重要的作用,而AGV的導(dǎo)航引導(dǎo)方式是決定AGV能否進(jìn)一步應(yīng)用于復(fù)雜、惡劣環(huán)境的關(guān)鍵因素。隨著技術(shù)的發(fā)展,目前能夠用于實(shí)際運(yùn)行AGV的導(dǎo)航/導(dǎo)引技術(shù)主要有:電磁引導(dǎo)方式、磁帶導(dǎo)引、光學(xué)導(dǎo)引、激光導(dǎo)航、慣性導(dǎo)航、視覺導(dǎo)航、GPS導(dǎo)航等。本項(xiàng)目采用了磁帶引導(dǎo)。

技術(shù)名稱 成熟度 技術(shù)難度 成本 應(yīng)用 先進(jìn)性 前景
電磁導(dǎo)引 成熟 較廣 一般 較好
光學(xué)導(dǎo)引 成熟 中低 較廣 一般 較好
磁帶導(dǎo)引 成熟 一般 很好
超聲定位 較成熟 一般 一般
激光定位 較成熟 較先進(jìn)
視覺導(dǎo)引 較成熟 很先進(jìn)

表 1-1 AGV常用引導(dǎo)應(yīng)用現(xiàn)狀比較

1.3.1 ?磁帶導(dǎo)引(Magnetic Tape Guidance)

磁導(dǎo)引方式與電磁導(dǎo)引相近,用鐵氧(磁體)體料粉與合成橡膠組成的磁帶替代在地面下埋設(shè)金屬線,通過磁感應(yīng)信號(hào)實(shí)現(xiàn)導(dǎo)引,其特點(diǎn)是靈活性比較好,改變或擴(kuò)充路徑容易,磁帶鋪設(shè)簡單,適用于小型或臨時(shí)設(shè)備,但此導(dǎo)引方式易受環(huán)路周圍磁性和金屬物質(zhì)的影響,容易受到機(jī)械損傷,因此,此導(dǎo)引方式受外界影響較大。

磁導(dǎo)航方式被認(rèn)為是一項(xiàng)非常有應(yīng)用前景的技術(shù),主要通過磁傳感器測量路徑上的磁場強(qiáng)度信號(hào)來獲取AGV自身相對(duì)于磁導(dǎo)引帶之間的位置偏差,從而實(shí)現(xiàn)車輛的姿態(tài)控制及導(dǎo)航。磁導(dǎo)航具有很高的測量精度及良好的重復(fù)性,磁導(dǎo)航不受光線變化及路面污損破壞等影響,在應(yīng)用運(yùn)行過程中,磁傳感系統(tǒng)具有很高的可靠性和魯棒性。磁條鋪設(shè)成本低,維護(hù)費(fèi)用低,使用壽命長,且增減、變更路徑容易。

1.4 ?AGV的應(yīng)用現(xiàn)狀

由于AGV具有地上系統(tǒng)簡單、機(jī)能集中、易施工和系統(tǒng)構(gòu)成等優(yōu)點(diǎn),被廣泛地應(yīng)用在汽車制造、港口貨運(yùn)、機(jī)械加工、發(fā)電廠、電子產(chǎn)品裝配、電子行業(yè)、造紙行業(yè)等諸多行業(yè)。AGV的運(yùn)輸速度及負(fù)載能力遠(yuǎn)高于人力運(yùn)輸,速度可達(dá)每分鐘百米,負(fù)載能力可從幾千克到幾十噸,相比人類而言它具備非常高的實(shí)用價(jià)值??梢钥闯?,AGV無人自動(dòng)引導(dǎo)小車是一種非常有發(fā)展前途的物料運(yùn)輸裝備,它在柔性裝配系統(tǒng)(FAS)和柔性制造系統(tǒng)(FMS)中更是一種最有效的物料運(yùn)輸設(shè)備。

隨著電子技術(shù)和自動(dòng)控制技術(shù)的快速發(fā)展,AGV的功能以及其導(dǎo)航技術(shù)也在不斷進(jìn)步,并朝著性能優(yōu)越、自由度更高、廉價(jià)、超大型化和微型化方向發(fā)展。AGV的應(yīng)用領(lǐng)域也在不斷擴(kuò)展,從起初只是用作于工廠內(nèi)的物料運(yùn)輸,到現(xiàn)在己經(jīng)不僅僅局限于工廠或車間之內(nèi),而是已經(jīng)在飯店、醫(yī)院、辦公室、物流和超市等諸多行業(yè)成功的運(yùn)用,并且取得了很好的運(yùn)用效果。

AGV主要應(yīng)用在制造業(yè)領(lǐng)域,在重型機(jī)械運(yùn)輸以及部分非制造行業(yè)中也有運(yùn)用。AGV在制造業(yè)中的運(yùn)用主要有物料裝配、物料分發(fā)和物料加工制方面。其中在裝配作業(yè)中AGV的運(yùn)用量最大,并且AGV也是汽車制造工業(yè)的應(yīng)用大戶。美國通用汽車公司的汽車裝配線有90%應(yīng)用了AGV,在西歐國家更是有57%的運(yùn)用中的AGV被應(yīng)用于汽車裝配。

隨著電子行業(yè)技術(shù)的快速發(fā)展,電子工業(yè)領(lǐng)域中的AGV運(yùn)用潛力越來越大。由于消費(fèi)者需求加大,市場對(duì)生產(chǎn)系統(tǒng)的需求增加, FMS(柔性制造系統(tǒng))作為靈活的生產(chǎn)方式滿足了市場變化的要求,而將AGV用作中小批量元件的運(yùn)輸更是適應(yīng)了這一需求,并且AGV可以根據(jù)不同運(yùn)用場合需要進(jìn)行輸送路徑的編程,從而達(dá)到指定運(yùn)輸任務(wù)。這在超凈電子行業(yè)凈化室中,AGV代替人工作業(yè)更是發(fā)揮了巨大的優(yōu)勢。

而在重型機(jī)械制造行業(yè)中,AGV主要用來運(yùn)輸中大型物料和重型物料。而設(shè)計(jì)功率較大并配置重型物件移栽裝置的AGV便可用來代替人工裝卸運(yùn)輸中的大量勞動(dòng)力輸出,更是增加了生產(chǎn)過程中的安全性。

AGV運(yùn)用在非制造業(yè)中也越來越普遍。例如醫(yī)療部門、郵政部門、食品生產(chǎn)、餐廳點(diǎn)菜等。并且AGV可以代替人類,在具有核輻射危險(xiǎn)的地方,用于核材料的搬運(yùn)。

1.4.1??國外AGV的應(yīng)用現(xiàn)狀

在世界范圍內(nèi),隨著市場需求的增長,近幾年先進(jìn)制造技術(shù)、工廠物流自動(dòng)化有了很大發(fā)展。AGV技術(shù)的發(fā)展,則進(jìn)一步促成了先進(jìn)的柔性生產(chǎn)線、自動(dòng)化物流系統(tǒng)的實(shí)現(xiàn)。國外發(fā)達(dá)國家中日本、美國、德國、意大利、瑞典AGV產(chǎn)品種類齊全,技術(shù)先進(jìn),處于領(lǐng)先地位。

國內(nèi)外在先進(jìn)的加工制造生產(chǎn)線上采用柔性加工系統(tǒng)(FMS),在裝配生產(chǎn)線上使用柔性裝配系統(tǒng)(FAS)技術(shù),在倉庫存取輸送線上使用自動(dòng)化柔性物流系統(tǒng)技術(shù), 進(jìn)而增加了制造生產(chǎn)線和物流系統(tǒng)的柔性, 加快了生產(chǎn)效率, 適應(yīng)了生產(chǎn)多品種產(chǎn)品的市場需求。

1.4.2??國內(nèi)AGV的應(yīng)用現(xiàn)狀

目前,由于國內(nèi)汽車行業(yè)的快速發(fā)展,其對(duì)配套生產(chǎn)廠家的產(chǎn)品質(zhì)量及產(chǎn)量要求不斷提高,特別是裝配制造業(yè)?;谶@種情況對(duì)柔性裝配系統(tǒng)的需求正在不斷提高。

1.5 ?本項(xiàng)目的研究內(nèi)容及AGV的關(guān)鍵技術(shù)

1.5.1??項(xiàng)目主要研究的內(nèi)容

本項(xiàng)目旨在設(shè)計(jì)一款實(shí)用的AGV車開發(fā)平臺(tái),為保證AGV車的導(dǎo)航準(zhǔn)確性、快速糾正性,以及本設(shè)計(jì)作品中所有的軟件和硬件開發(fā)研究,將主要涉及以下幾個(gè)方面:

1)AGVS配送系統(tǒng)相關(guān)研究

2)AGV車體機(jī)械結(jié)構(gòu)設(shè)計(jì)

3)AGV控制器硬件設(shè)計(jì)。將對(duì)控制器與各傳感器進(jìn)行模塊化設(shè)計(jì)。

4)AGV軟件設(shè)計(jì)。涉及傳感器檢測程序、無刷直流電機(jī)驅(qū)動(dòng)程序等。

5)項(xiàng)目設(shè)計(jì)任務(wù)作系統(tǒng)實(shí)驗(yàn)調(diào)試,保證AGV車運(yùn)行性能。

1.5.2 ?AGV的關(guān)鍵技術(shù)

設(shè)計(jì)為一款既具有實(shí)用價(jià)值同時(shí)利于后期拓展開發(fā)的AGV小車平臺(tái),AGV將在手動(dòng)開機(jī)情況下,自主抵達(dá)發(fā)出信息的各個(gè)工位,并進(jìn)行任務(wù)將物料搬運(yùn)抵達(dá)至目標(biāo)工位,其中將主要包括如下幾個(gè)關(guān)鍵問題:

  • AGV如何實(shí)時(shí)判斷當(dāng)前周圍環(huán)境的障礙物并及時(shí)躲避
  • AGV如何與工位進(jìn)行位置數(shù)據(jù)通信以及物料數(shù)據(jù)通訊。
  • AGV如何擇優(yōu)選擇運(yùn)行路徑并抵達(dá)目標(biāo)工位。
  • AGV如何獲取當(dāng)前位置信息并確定當(dāng)前行徑方向。

5)AGV如何適當(dāng)?shù)脑谥钡缽澋兰訙p速度并始終在路徑上行走。

這些問題是對(duì)于實(shí)時(shí)性要求較高的AGV所必需解決的問題,將對(duì)應(yīng)到AGV的傳感器技術(shù)、定位技術(shù)、路徑規(guī)劃策略和運(yùn)動(dòng)控制技術(shù)。對(duì)于AGV而言,及時(shí)響應(yīng)系統(tǒng)下達(dá)的任務(wù)指令,并安全、準(zhǔn)確、無物料丟損、無碰撞的完成指令任務(wù),是AGV最基本的功能。而在各種復(fù)雜環(huán)境中,有效的完成任務(wù),將很大程度上取決于AGV車自身的導(dǎo)航與環(huán)境識(shí)別能力,而這樣一個(gè)自主式程度高的AGV系統(tǒng)一直都為很多AGV研究者重視,而這樣的一種AGV也具有更廣闊的應(yīng)用前景。

?

?

第二章 ?AGV總體結(jié)構(gòu)設(shè)計(jì)

2.1 ?AGVS(Automatic Guided Vehicle System)配送系統(tǒng)組成

AGV自動(dòng)導(dǎo)引小車配送系統(tǒng)由帶輔助裝卸裝置的AGV車、在線自動(dòng)充電系統(tǒng)、地面導(dǎo)航系統(tǒng)、周邊工位及倉庫輸送系統(tǒng)、AGV控制臺(tái)(調(diào)度計(jì)算機(jī))和網(wǎng)絡(luò)通訊系統(tǒng)等構(gòu)成,部分系統(tǒng)工作任務(wù)如下:

1)AGV(Automatic Guided Vehicle)

帶輔助裝卸裝置的AGV小車,完成系統(tǒng)指定從各個(gè)工位的之間輸送任務(wù)。

2)在線自動(dòng)充電系統(tǒng)

為了保證AGV小車全天候運(yùn)行任務(wù)的可靠性,系統(tǒng)會(huì)采用大電流快速充電的方式為AGV蓄電池充電。AGV小車的充電過程是由電量不足情況下向控制臺(tái)發(fā)送電量不足信息,并由控制臺(tái)下達(dá)允許指令后方可執(zhí)行充電程序。

3)地面導(dǎo)航系統(tǒng)

地面導(dǎo)航系統(tǒng)主要由磁導(dǎo)航帶或激光反光板等地面路徑指示標(biāo)志構(gòu)成,使得AGV在規(guī)定的路徑下運(yùn)行運(yùn)輸任務(wù)。

4)周邊輸送系統(tǒng)

周邊輸送系統(tǒng)主要是AGV的自動(dòng)上下貨工位所處的位置,這些設(shè)備在與AGV進(jìn)行裝卸貨物的過程,會(huì)在對(duì)應(yīng)系統(tǒng)監(jiān)控下實(shí)現(xiàn)動(dòng)作的互鎖和協(xié)調(diào)配合,保證物料運(yùn)輸?shù)纳a(chǎn)安全性。

5)AGV控制臺(tái)(調(diào)度計(jì)算機(jī))

控制臺(tái)是AGV小車的上位機(jī)管理系統(tǒng),是所有處在本系統(tǒng)內(nèi)的AGV小車的調(diào)度管理中心。此系統(tǒng)負(fù)責(zé)與監(jiān)控計(jì)算機(jī)交換物料及AGV運(yùn)行數(shù)據(jù)信息,分配系統(tǒng)下各個(gè)AGV的運(yùn)行任務(wù),解決多臺(tái)AGV之間的協(xié)調(diào)問題。同時(shí)將AGV系統(tǒng)的物料搬運(yùn)完成度等狀態(tài)反饋給中心控制管理系統(tǒng)。

6)通訊系統(tǒng)

通訊系統(tǒng)由AGV控制臺(tái)和各AGV之間組成無線局域網(wǎng)(此通訊系統(tǒng)頻率采用開放的2.4GHz頻道,覆蓋范圍500米內(nèi))并進(jìn)行信息交換??刂婆_(tái)通過多個(gè)無線接入點(diǎn)組合通信,從而覆蓋整個(gè)AGV工作區(qū)域,使得AGV在遠(yuǎn)距離跨越區(qū)域時(shí)實(shí)現(xiàn)信息連接。

各系統(tǒng)之間的具體關(guān)系如圖2-1所示。

2.2 AGV車身結(jié)構(gòu)及運(yùn)動(dòng)學(xué)分析

2.2.1 AGV車身硬件結(jié)構(gòu)性能指標(biāo)

1、車身額定載重量:即自動(dòng)導(dǎo)引搬運(yùn)車所能承載貨物的最大重量。通常AGV的載重量范圍在50kg到20000kg,多以中小型噸位。本設(shè)計(jì)的AGV車的載重量在60KG左右,最大載重量70KG,并可以調(diào)整車身部件增加載重量。

2、車體尺寸 :車體尺寸是指車體的長、寬、高外形尺寸。本設(shè)計(jì)作品車體數(shù)據(jù)為650mm*330mm*250mm。

3、導(dǎo)航精度 :指AGV行走時(shí)的精度,本設(shè)計(jì)作品精度±10 mm。

4、停位精度 :指AGV到達(dá)目的工位處并準(zhǔn)備自動(dòng)移載物料時(shí)時(shí)所處的實(shí)際位置與程序設(shè)定的位置之間的偏差值(mm)。停位精度確定移載方式的主要依據(jù),不同的裝卸方式要求不同的停位精度。本設(shè)計(jì)作品停位精度為。

5、最小轉(zhuǎn)彎半徑:是指AGV在空載低速行駛、偏轉(zhuǎn)程度最大時(shí),瞬時(shí)轉(zhuǎn)向中心到AGV縱向中心線的距離。它是確定車輛彎道路徑運(yùn)行所需空間的重要參數(shù)。本項(xiàng)目作品最小轉(zhuǎn)彎半徑。

6、運(yùn)行速度:指自動(dòng)導(dǎo)引搬運(yùn)車在額定載重量下行駛時(shí)所能達(dá)到的最大速度。它是確定車輛作業(yè)周期和搬運(yùn)效率的重要參數(shù)。本設(shè)計(jì)作品運(yùn)行速度0-200m/min。

7、導(dǎo)引方式:采用磁導(dǎo)航方式。

8、控制方式:按鈕開關(guān)、計(jì)算機(jī)遙控、工位調(diào)度控制器。

9、電源:36V15AH鋰電池組。

10、安全裝置:故障報(bào)警、急停按鈕、遠(yuǎn)程非接觸防碰防碰裝置。

11、驅(qū)動(dòng)方式:直流伺服驅(qū)動(dòng)。

12、驅(qū)動(dòng)形式:后置雙輪驅(qū)動(dòng)
13、通訊方式:AGV控制臺(tái)與AGV間采用無線局域網(wǎng)通訊交換信息。

14、信息顯示終端:AGV上帶有顯示信息液晶觸摸屏幕

2.2.2 AGV車身設(shè)計(jì)

本項(xiàng)目采用四輪布置結(jié)構(gòu),前輪由數(shù)字舵機(jī)控制的一組差數(shù)轉(zhuǎn)向組件來實(shí)現(xiàn)AGV小車轉(zhuǎn)向,后輪由兩組無刷直流電機(jī)獨(dú)立驅(qū)動(dòng)。傳動(dòng)系統(tǒng)如圖2-2所示。

 

 

 

 

 

 

 

AGV的車架結(jié)構(gòu)采用2525鋁合金材料制作而成,既符合了AGV小車的載重設(shè)計(jì)要求同時(shí)也在外觀上符合了審美。車架三視圖設(shè)計(jì)如圖2-3所示,圖2-4為小車車架實(shí)物。

 

 

本項(xiàng)目設(shè)計(jì)的AGV小車轉(zhuǎn)向結(jié)構(gòu)采用數(shù)字舵機(jī)控制轉(zhuǎn)向組件,達(dá)到AGV小車的轉(zhuǎn)向功能,具體轉(zhuǎn)向部件設(shè)計(jì)細(xì)節(jié)如下圖所示。

 

項(xiàng)目設(shè)計(jì)的AGV小車機(jī)身結(jié)構(gòu)考慮了作為AGV開發(fā)平臺(tái)的拓展性,因而在外形以及結(jié)構(gòu)形狀設(shè)計(jì)上充分考慮了后期的改造方便性,并且始終兼顧了它的實(shí)用性能,最終小車的機(jī)身設(shè)計(jì)實(shí)物圖如圖2-8所示。

 

2.2.3 AGV驅(qū)動(dòng)電機(jī)選型

AGV小車的主要功能是作為物料運(yùn)輸用途,因此要特別考慮小車的負(fù)載驅(qū)動(dòng)能力(電機(jī)功率參數(shù)),同時(shí)要需要考慮在小車運(yùn)行過程中的停車精度問題,因此選擇一款既具備高低速運(yùn)行情況下力矩良好同時(shí)精度有高的驅(qū)動(dòng)電機(jī)極為重要。因此項(xiàng)目將通過以下參數(shù)計(jì)算選擇電機(jī)型號(hào)。

1、計(jì)算小車最大負(fù)載時(shí)拉力(F)值,圖2-9為小車受力分析。

 

 

 

 

小車自身重量

最大負(fù)載重量

滾動(dòng)摩擦力f值得大小在零與靜摩擦力之間,即

則小車牽引力為 :

2、本項(xiàng)目中小車驅(qū)動(dòng)輪尺寸為6寸,半徑約為9.9cm,換算得出負(fù)荷力矩為:

為了使得AGV具備適當(dāng)?shù)呐榔履芰Γ剐≤囋谂榔逻^程中仍具備較大力矩,經(jīng)過爬過過程的小車受力計(jì)算(如圖2-10所示),本設(shè)計(jì)中提高了電機(jī)輸出扭距參數(shù)要求使之達(dá)到5.9的力矩。

 

 

 

 

 

????3、小車設(shè)計(jì)最大速度為200m/min,驅(qū)動(dòng)輪半徑為9.9cm

則,輪子周長 :

得出電機(jī)輸出軸轉(zhuǎn)速為 :

4、根據(jù)電機(jī)功率計(jì)算公式,得出 :

經(jīng)過上面的詳細(xì)參數(shù)計(jì)算,選擇的是一款型號(hào)為Z5BLD250-24A-30S的無刷直流電機(jī),通過1:7.5減速箱減速,可以達(dá)到空載轉(zhuǎn)速400r/min,力矩達(dá)到5.97N·m,滿足了AGV設(shè)計(jì)的要求。表2-1為電機(jī)性能參數(shù)。

型號(hào) Z5BLD250-24A-30S
額定電壓 24V
額定功率 250W
額定電流 13.0A±10%
額定轉(zhuǎn)速 3000RPN±10%
額定力矩 0.796
空載電流  
空載轉(zhuǎn)速 3600RPN±10%
電機(jī)壽命 5000h
電氣強(qiáng)度 660V/S
絕緣等級(jí) B
防護(hù)等級(jí) IP20
使用環(huán)境溫度  

 

 

 

 

?

第三章 ?AGV硬件設(shè)計(jì)

本項(xiàng)目設(shè)計(jì)的AGV是采用次導(dǎo)航技術(shù),其系統(tǒng)技術(shù)構(gòu)成如圖3-1所示。其中主要包括:供電單元、主控單元、驅(qū)動(dòng)單元、安全感應(yīng)系統(tǒng)、導(dǎo)向系統(tǒng)、站點(diǎn)識(shí)別單元、通訊單元、車體。其中供電單元、主控單元、驅(qū)動(dòng)單元、導(dǎo)向系統(tǒng)是本章節(jié)敘述核心。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.1 AGV小車供電系統(tǒng)

AGV的供電系統(tǒng)用以給主控單元、導(dǎo)向系統(tǒng)、驅(qū)動(dòng)單元等設(shè)備提供電能,是AGV小車的連續(xù)工作、穩(wěn)定工作、安全工作的重要保證。AGV小車的電壓采集模塊通過 A/D 轉(zhuǎn)換,實(shí)時(shí)采集當(dāng)前AGV電池的電量,將電壓數(shù)據(jù)反饋給AGV主控制器??刂破魍ㄟ^監(jiān)控當(dāng)前電壓及時(shí)調(diào)整AGV的工作任務(wù)。當(dāng)控制器監(jiān)測到當(dāng)前電池電壓值即將低于正常工作電壓時(shí),則將需要充電的信息反饋調(diào)度計(jì)算機(jī),同時(shí)AGV小車顯示屏報(bào)警顯示電量不足,并在完成當(dāng)前任務(wù)后自行回到充電站充電,充電完成后,解除報(bào)警信號(hào),發(fā)送上位機(jī)當(dāng)前充電完成信號(hào),并接受上位機(jī)調(diào)度任務(wù)。

3.1.1 AGV電池選配

AGV電池一般采用鎳鎘蓄電池、鎳氫蓄電池、鋰電池、鉛酸蓄電池。

本項(xiàng)目選擇的是一款36V15AH的高能鋰電池,體積小,能量大,非常適合作為本文設(shè)計(jì)AGV小車的動(dòng)力電源。如圖3-2是本車電池實(shí)物圖。電池采用DC充電接口,T型供電插口。鋰電池?fù)碛懈吣芰棵芏?,與高容量鎳鎘電池相比,體積能量是其1.5倍,能量密度是其2倍,高電壓,平均使用電壓為3.7V,是鎳鎘電池和鎳氫電池的3倍,使用是電壓穩(wěn)定而且高容量,在溫度-20度-60度使用時(shí),充放電壽命長,經(jīng)過500次放電后其電源容量至少還有70%以上。由于鋰電池具備了能量密度高電壓高,工作穩(wěn)定的特點(diǎn),通常使用在航模等大電流放電設(shè)備上。

 

 

 

3.1.2 供電電路設(shè)計(jì)

為了增加AGV供電可靠性,保證電路設(shè)計(jì)的安全性,本項(xiàng)目中的電路采用電源一鍵啟動(dòng),增設(shè)急停按鈕,電壓顯示器,電源指示燈。以下是電路設(shè)計(jì)圖。

1)電源充電及電源部分電氣圖,圖3-3

 

2)電機(jī)驅(qū)動(dòng)器供電接線圖,圖3-4

3.2 控制器選型與設(shè)計(jì)

3.2.1 STM32F4簡介

STM32F4是由意法半導(dǎo)體(ST)推出的以基于ARM Cortex-M4為內(nèi)核的高性能微控制器,其采用了90nm的NVM工藝和ART技術(shù)(自適應(yīng)實(shí)時(shí)存儲(chǔ)器加速器,Adaptive Real-Time Memory Accelerator)。ART技術(shù)可實(shí)現(xiàn)程序零等待執(zhí)行,提升程序執(zhí)行效率,將M4架構(gòu)的性能發(fā)揮到了極致,使得CPU最大可以運(yùn)行于168MHZ。STM32F4系列的微控制集成了單周器DSP指令和FPU(浮點(diǎn)單元),提升計(jì)算能力,實(shí)現(xiàn)了一些復(fù)雜的計(jì)算和控制。

作為Cortex M3市場的最大占有者,STM32F4主要優(yōu)勢如下:

1、內(nèi)核更加先進(jìn)。STM32F1采用的是Cortex M3內(nèi)核,不帶FPU和DSP指令集,然而STM32F4采用CortexM4內(nèi)核,帶FPU和DSP指令集,優(yōu)勢明顯。

2、STM32F4有更多的資源,高達(dá)1M字節(jié)的片上閃存,擁有多達(dá)192KB的片內(nèi)SRAM,增設(shè)了攝像頭接口(DCMI)、加密處理器(CRYP)、USB高(480Mbit/s)速OTG功能、32位真隨機(jī)數(shù)發(fā)生器(RNG)、OTP 存儲(chǔ)器等。

3、增強(qiáng)了外設(shè)功能。對(duì)于相同的外設(shè)部分,STM32F4 具有更快的ADC模數(shù)轉(zhuǎn)換速度、具備更低的ADC/DAC工作電壓、32 位定時(shí)器、帶日歷功能的實(shí)時(shí)時(shí)鐘(RTC)、 IO復(fù)用功能大大增強(qiáng)、4K字節(jié)的電池備份SRAM以及更快的USART 和SPI通信速度。

4、更高的性能。STM32F4 最高運(yùn)行頻率可達(dá)168Mhz,可運(yùn)行達(dá)到210DMIPS的處理能力,而STM32F1只能達(dá)到 72Mhz;STM32F4 擁有ART自適應(yīng)實(shí)時(shí)加速器,可以達(dá)到相當(dāng)于FLASH零等待周期的性能,可實(shí)現(xiàn)單周期內(nèi)相乘和相加指令,采用單周期的SIMD指令,可實(shí)現(xiàn)同時(shí)多個(gè)數(shù)據(jù)參與運(yùn)算,STM32F1則需要等待周期; STM32F4的FSMC采用32位多重AHB總線矩陣,相比STM32F1的總線訪問速度明顯提高。

5、更低的功耗。 STM32F40x 的功耗為: 238uA/MHZ,其中低功耗版本的 STM32F401 更是低到: 140uA/ MHZ, 而 STM32F1 則高達(dá) 421uA/ MHZ。

3.2.2 STM32F407ZGT6硬件資源介紹

STM32F407ZGT6芯片集成FPU和DSP指令,并具有192KB的SRAM、1024KB FLASH、12個(gè)16 位定時(shí)器、2個(gè)32位定時(shí)器、 2個(gè)DMA控制器(共16個(gè)通道)、2個(gè)全雙工I2S、2個(gè)12位DAC、6個(gè)串口、2個(gè)USB(支持 HOST /SLAVE)、2個(gè)CAN、3個(gè)IIC、3個(gè)SPI、3個(gè)12位ADC、1個(gè)RTC(帶日歷功能)、1個(gè)SDIO 接口、1個(gè)FSMC 接口、1個(gè) 10/100M 以太網(wǎng) MAC 控制器、1個(gè)攝像頭接口、1個(gè)硬件隨機(jī)數(shù)生成器、以及112個(gè)通用IO口等。

3.3.開發(fā)板最小系統(tǒng)

STM32最小系統(tǒng)主要包括:電源電路、外部晶振電路、外部時(shí)鐘電路、復(fù)位電路、下載電路,如圖3-5為開發(fā)板最小系統(tǒng)部分電路原理圖。

 

 

 

 

 

 

 

 

3.4磁導(dǎo)引傳感器控制與設(shè)計(jì)

3.4.1 傳感器控制原理

導(dǎo)向單元的作用是讓AGV小車根據(jù)規(guī)定路徑行駛,本項(xiàng)目采用的是磁導(dǎo)航傳感器,安裝在AGV 車體前方的底部,磁導(dǎo)航傳感器利用其內(nèi)置的8個(gè)采樣點(diǎn),能夠檢測出磁條上方一定程度的微弱磁場,每一個(gè)采樣點(diǎn)都有一路信號(hào)對(duì)應(yīng)輸出,當(dāng)采樣點(diǎn)采集到磁場信號(hào)時(shí),該路信號(hào)就會(huì)輸出低電平,而沒有采集到磁場信號(hào)的信號(hào)輸出則為高電平。AGV運(yùn)行時(shí),磁導(dǎo)航傳感器內(nèi)部垂直于磁條上方的連續(xù) 1-3 個(gè)采樣點(diǎn)會(huì)輸出信號(hào),依靠輸出的這幾路信號(hào),可以判斷磁條相對(duì)于磁導(dǎo)航傳感器的偏離位置,當(dāng)AGV的行駛與導(dǎo)引軌跡一致時(shí),由于此時(shí)磁導(dǎo)航傳感器正好處于磁條軌跡的上方,傳感器正中間的檢測元件測得的磁感應(yīng)強(qiáng)度最大,因而中間的霍爾開關(guān)傳感器輸出低電平信號(hào),控制器 I/O口采集到這幾路信號(hào),比較發(fā)現(xiàn)當(dāng)前AGV 處于路徑中間,控制器將不對(duì)該輸出信號(hào)進(jìn)行處理,AGV保持原行駛軌跡;當(dāng)AGV偏離磁條軌跡時(shí),由于檢測到最大磁感應(yīng)強(qiáng)度的霍爾開關(guān)傳感器不再處于磁導(dǎo)航傳感器的中間,傳感器將該低電平信號(hào)輸出至控制器,控制器 I/O 口采集到這幾路低電平信號(hào),比較發(fā)現(xiàn)當(dāng)前AGV位置與路徑位置有所偏差,據(jù)此AGV控制系統(tǒng)自動(dòng)做出調(diào)整,控制電機(jī)驅(qū)動(dòng)器,使電機(jī)差速糾偏,確保AGV 沿磁條前進(jìn)。磁導(dǎo)航原理圖如下圖3-6所示。

 

 

3.4.2 導(dǎo)航工作控制

AGV的地面磁導(dǎo)航系統(tǒng)是AGV在運(yùn)行過程中所能達(dá)到的路徑,主要由以下幾部分構(gòu)成:運(yùn)行路徑導(dǎo)航線、地標(biāo)導(dǎo)航線和彎道導(dǎo)航線。采用磁導(dǎo)航的方法,運(yùn)行路徑導(dǎo)航線由寬30mm、厚度為1mm的磁性橡膠磁帶鋪設(shè)而成,根據(jù)路徑的具體要求可以進(jìn)行適當(dāng)?shù)牟眉?。地?biāo)導(dǎo)航線由長150mm、寬50mm、厚度為1mm的磁性橡膠鋪設(shè)而成,在地圖上地標(biāo)是各個(gè)站點(diǎn)的標(biāo)志。彎道導(dǎo)航線由路徑導(dǎo)航線和地標(biāo)導(dǎo)航線構(gòu)成,如下圖3-7所示:

AGV在彎道的運(yùn)行分成下述幾個(gè)步驟:

1)找到地標(biāo)。

2)按一定的轉(zhuǎn)彎半徑,AGV靠碼盤的位置編程來完成圓弧的軌跡。

3)以此,AGV尋找導(dǎo)航線,按導(dǎo)航線的路徑行走。

磁導(dǎo)航傳感器是AGV的眼睛,決定了AGV的運(yùn)行穩(wěn)定性。本項(xiàng)目選擇的是LS-06型AGV磁導(dǎo)航傳感器,該傳感器主要應(yīng)用于磁條導(dǎo)航方式的自動(dòng)導(dǎo)引車AGV,自動(dòng)手推車AGC,無軌移動(dòng)貨架,物流揀選等行業(yè)。該磁導(dǎo)航傳感器采用6路采樣點(diǎn)輸出,該系列磁導(dǎo)航傳感器采用8路采樣點(diǎn)輸出,與日本名電舍的ME-9006AM-1性能相同,溫漂,磁飽和等性能指標(biāo)均優(yōu)于進(jìn)口產(chǎn)品

磁條導(dǎo)航方式的自動(dòng)導(dǎo)引車AGV,沿著地面鋪設(shè)的磁條行駛。LS-06型AGV磁導(dǎo)航傳感器,安裝在AGV車體前方的底部,距離磁條表面20-40mm,磁條寬度為30-50mm,厚度1mm.LS-06型AGV磁導(dǎo)航傳感器利用其內(nèi)部間隔10mm平均排布的8個(gè)采樣點(diǎn),能夠檢測出磁條上方100gauss以下的微弱磁場,每一個(gè)采樣點(diǎn)都有一路信號(hào)對(duì)應(yīng)輸出。AGV運(yùn)行時(shí),磁導(dǎo)航傳感器內(nèi)部垂直于磁條上方的連續(xù)2-3個(gè)采樣點(diǎn)會(huì)輸出信號(hào)。依靠6路通道中輸出的2-3路信號(hào),可以判斷磁條相對(duì)于LS-06型AGV磁導(dǎo)航傳感器的偏離位置, AGV會(huì)自動(dòng)作出調(diào)整( PID),確保沿磁條前行。

下表為本作品中磁導(dǎo)航傳感器的技術(shù)參數(shù)。

名稱 內(nèi)容
檢測距離 30±20mm
檢測極性 N極和S極
紅燈N極
綠燈S極
檢測點(diǎn)數(shù)量 6(20mm等距)
輸出極限 耐壓:DC60V
單路輸出電流:50mA
總輸出電流:300mA
相應(yīng)時(shí)間 10mS
保存溫度范圍 -40—+80

 

 

3.4.3 傳感器接線

下圖為傳感器輸出端口定義(圖3-8和圖3-9),表3-2為傳感器接線表)。

 

 

 

 

 

管教名稱 內(nèi)容
1 SW1 第1位輸出
2 SW2 第2位輸出
3 NC
4 SW4 第4位輸出
5 SW5 第5位輸出
6 NC
7 SW6 第6位輸出
8 SW7 第7位輸出
9 OV
10 10-30VDC

 

 

3.5超聲波避障傳感器

3.5.1 AGV小車接近裝置及報(bào)警、停車工作方式

AGV小車的接近檢測裝置一般有紅外區(qū)域掃描、激光測距掃描和超聲探測三種方式,用來檢測AGV運(yùn)行方向是否存在障礙物。采用光電傳感器安裝在磁導(dǎo)航 AGV 車體正前方中部距離地面150mm 處,該傳感器擁有兩級(jí) I/O 輸出,二級(jí)檢測區(qū)域分為左中右三個(gè)區(qū)域,分別能在 0-3m 內(nèi)調(diào)節(jié),當(dāng)該級(jí)監(jiān)測區(qū)域內(nèi)檢測出障礙物時(shí),該檢測單元對(duì)應(yīng)的輸出電路輸出低電平信號(hào),AGV 控制器接收到該低電平信號(hào)后立即控制驅(qū)動(dòng)電機(jī)減速,同時(shí)發(fā)出警告信號(hào)并反饋給地面控制中心,通知前方障礙物離開,直到障礙解除才恢復(fù)正常速度行駛;一級(jí)臨近檢測區(qū)域較二級(jí)監(jiān)測區(qū)域短,但兩側(cè)檢測范圍較二級(jí)檢測區(qū)域大,同樣具有左中右三個(gè)監(jiān)測區(qū)域,分別能夠在 0~1m 內(nèi)調(diào)節(jié),當(dāng)該級(jí)監(jiān)測區(qū)域內(nèi)檢測出障礙物時(shí),該路對(duì)應(yīng)的輸出電路輸出低電平信號(hào),AGV 控制器接收到該低電平信號(hào)后立即發(fā)出急停指令同時(shí)報(bào)警并通知地面控制中心,直至障礙物解除。

警示裝置包括警示燈和警示蜂鳴器,用以提醒應(yīng)用現(xiàn)場的人們及時(shí)發(fā)現(xiàn)正在靠近的AGV 并采取相應(yīng)的措施。

停車按鈕用于 AGV 的受控停車,該按鈕按下之后 AGV 應(yīng)當(dāng)安全可靠地停止運(yùn)行,并且該方式停車能夠通過人工操作簡單快速地使 AGV 恢復(fù)運(yùn)行,該按鈕用以保證 AGV 周圍的臨時(shí)工作人員的安全,采用停車按鈕停車方式可以不切斷 AGV 的驅(qū)動(dòng)電源。磁導(dǎo)航 AGV 在地面控制中心、AGV 車用遙控器和 AGV 車身側(cè)面等三處均設(shè)置停車按鈕,方便操作人員采取停車措施。

緊急停車按鈕用以在緊急情況下中斷 AGV 的運(yùn)行,為便于緊急情況下操作,磁導(dǎo)航 AGV 在地面控制中心、AGV 車用遙控器和 AGV 車身兩側(cè)設(shè)置紅色的急停按鈕。當(dāng)緊急停車按鈕按下后,AGV 切斷一切設(shè)備的動(dòng)力供給,啟動(dòng)制動(dòng)器并報(bào)警,在排除緊急停車原因之前 AGV 維持停止?fàn)顟B(tài)。

3.5.2 超聲波傳感器原理

超聲波傳感器主要包括發(fā)射器和接收器兩大部分,由于超聲波在空氣中傳播的速度為已知(340m/s),我們只需要計(jì)算出從發(fā)射到接收之間的時(shí)間差就可以算出距離。具體的作法是超聲波發(fā)射器向某一方向發(fā)射超聲波,在發(fā)射時(shí)刻的同時(shí)開始計(jì)時(shí),超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波就立即停止計(jì)時(shí)。(超聲波在空氣中的傳播速度為340m/s,根據(jù)計(jì)時(shí)器記錄的時(shí)間t,就可以計(jì)算出發(fā)射點(diǎn)距障礙物的距離(s),即:s=340t/2)。

本項(xiàng)目選用的是HC-SR04型傳感器(圖3-10實(shí)物圖),左邊為接收頭,右邊為發(fā)射頭,共引出分個(gè)引腳,一個(gè)電源正極(5V),一個(gè)電源地,Trig為觸發(fā)信號(hào)觸發(fā)控制端,Echo為回響信號(hào)端。下面介紹一個(gè)超聲波傳感器的時(shí)序圖。

 

 

 

通過時(shí)序圖可知,在使用時(shí),觸發(fā)控制端Trig,首先必須給一個(gè)10us以上的高電平,然后等待發(fā)射頭聲波信號(hào)輸出,一旦有信號(hào)輸出,回響信號(hào)端會(huì)產(chǎn)生高電平,此時(shí)開始計(jì)時(shí)。隨后聲波信號(hào)一直在空氣中傳播,遇到障礙物會(huì)反射回來,當(dāng)反射回來的信號(hào)到達(dá)接收頭時(shí),此時(shí)回想信號(hào)端會(huì)由高電平變?yōu)榈碗娖?,停止?jì)時(shí)。此時(shí)我們就可以算出檢測的距離S=340*(t1-t2)/2 ( t1為開始計(jì)時(shí)時(shí)間,t2為停止計(jì)時(shí)時(shí)間,注意距離為一邊的距離,所以時(shí)間應(yīng)該除以2)。

3.6 電機(jī)驅(qū)動(dòng)器控制和接線

本項(xiàng)目選用的是一款BLCD型號(hào)的高性能,多功能,低成本的帶霍爾傳感器的直流無刷電機(jī)驅(qū)動(dòng)器。驅(qū)動(dòng)器選用全數(shù)字式設(shè)計(jì)可實(shí)現(xiàn)多種輸入控制方式,擁有極高的調(diào)速比,噪聲低,軟硬件保護(hù)功能完善,可以通過串口通信實(shí)現(xiàn)與上位機(jī)連接并進(jìn)行電機(jī)的PID參數(shù)調(diào)整,保護(hù)參數(shù)調(diào)整,電機(jī)參數(shù)調(diào)整,加減速時(shí)間等參數(shù)設(shè)置,同時(shí)可以進(jìn)行IO輸入狀態(tài),模擬量輸入,告警狀態(tài)及母線電壓監(jiān)視。

下圖是電機(jī)驅(qū)動(dòng)器參數(shù)列表

 

 

3.6.1 無刷直流電機(jī)驅(qū)動(dòng)器控制方案

無刷直流電機(jī)(brushless direct current?motor ,BLDCM)轉(zhuǎn)子采用永磁鐵激磁,電機(jī)功率密度高控制簡單,調(diào)速性能良好,因此在無刷直流電機(jī)在交流傳動(dòng)中受到了廣泛應(yīng)用。對(duì)于本項(xiàng)目AGV對(duì)電機(jī)的控制要求,采用了閉環(huán)控制,與開環(huán)控制相比,采用閉環(huán)速度控制系統(tǒng)的機(jī)械特性有很大優(yōu)越性。閉環(huán)控制系統(tǒng)的機(jī)械特性與開環(huán)相比,其整體性能大大提高;理想空載轉(zhuǎn)速相同時(shí),閉環(huán)系統(tǒng)的靜差率S(額定負(fù)載時(shí)電機(jī)轉(zhuǎn)速降落與理想空載轉(zhuǎn)速之比)要小很多;當(dāng)要求的靜差率S相同時(shí),那么對(duì)比開環(huán)系統(tǒng),則閉環(huán)調(diào)速系統(tǒng)的調(diào)速范圍可以大大提高。無刷直流電機(jī)的閉環(huán)速度控制方案如下圖所示。

項(xiàng)目驅(qū)動(dòng)器閉環(huán)調(diào)節(jié)方案采用比例積分微分控制(簡稱PID控制),其輸出結(jié)果為輸入結(jié)果的比例、積分和微分的函數(shù)。PID調(diào)節(jié)器的控制結(jié)構(gòu)比較簡單,參數(shù)容易調(diào)整,可以不必求出被控對(duì)象的數(shù)學(xué)模型,因此PID調(diào)節(jié)器受到了廣泛的應(yīng)用。

3.6.2 無刷直流電機(jī)轉(zhuǎn)速檢測

本項(xiàng)目使用的無刷電機(jī)采用了霍爾傳感器,使得電機(jī)的實(shí)際轉(zhuǎn)速可通過測量轉(zhuǎn)子位置信號(hào)得到,在電機(jī)轉(zhuǎn)動(dòng)過程中,通過霍爾傳感器發(fā)出的信號(hào)可以得到如圖3-6所示的周期信號(hào)。

 

 

 

 

由圖3-6可知,電機(jī)旋轉(zhuǎn)一周便可得到兩個(gè)周期方波,每一相霍爾傳感器產(chǎn)生2個(gè)周期的方波,則周期與電機(jī)轉(zhuǎn)速成正比,如此便可利用霍爾傳感器發(fā)出的信號(hào)得到電機(jī)的實(shí)際轉(zhuǎn)速。為盡可能縮短每次速度的采樣時(shí)間,同時(shí)為了測得每項(xiàng)霍爾傳感器的正脈沖的寬度,則可計(jì)算電機(jī)的實(shí)際轉(zhuǎn)速。

3.6.3 驅(qū)動(dòng)器接線

3.6.3.1接口定義與連接圖,圖3-15

 

 

 

 

1)引腳列表及相關(guān)名稱,表3-3。

端子引腳號(hào) 引腳名 定義說明
1 GND 信號(hào)地
2 ALM 報(bào)警輸出(開漏)電流應(yīng)限制在20mA內(nèi)
3 X1 多段速輸入1
4 PG 霍爾信號(hào)異或輸出(開漏)電流應(yīng)限制在20mA內(nèi)
5 X2 多段速輸入2
6 5V 5V電源輸出,輸出電流應(yīng)小于20Ma(內(nèi)部為線性電源,過大電流會(huì)導(dǎo)致過熱)
7 X3 多段速輸入3
8 SV 模擬信號(hào)輸入
9 FR 方向控制信號(hào)
10 GND 信號(hào)地
11 EN 使能信號(hào),低電平有效
12 BK 剎車信號(hào),高電平剎車,正常應(yīng)接GND

 

2)通訊接口

本項(xiàng)目驅(qū)動(dòng)器采用串行通信方式與計(jì)算機(jī)連接。接口為RS232電平。物理接口采用RJ12-6PIN的電話插座,引腳排列如圖3-17所示,引腳對(duì)于說明見表3-4。

 

 

 

端子引腳號(hào) 引腳名 定義說明
1 NC 常開/空
2 TXD MCU數(shù)據(jù)發(fā)送端
3 VCC 5V電源
4 RXD MCU數(shù)據(jù)接收端
5 GND 接地
6 NC 常開/空

 

 

3)驅(qū)動(dòng)器典型接線連接圖,圖3-18所示。圖3-19、連接時(shí)驅(qū)動(dòng)器U、V、W端口分別對(duì)應(yīng)電機(jī)黃綠藍(lán)相線,HA、HB、HC霍爾信號(hào)端口分別對(duì)應(yīng)電機(jī)黃綠藍(lán)霍爾信號(hào)線。

 

 

 

?

第四章 ?AGV控制軟件設(shè)計(jì)

4.1 ?AGV系統(tǒng)程序流程圖設(shè)計(jì)

STM32微控制器采用中斷方式接受外部傳感器數(shù)據(jù),然而,在串行偶爾會(huì)出現(xiàn)幀數(shù)據(jù)丟失的現(xiàn)象,為了防止產(chǎn)生一直等待,項(xiàng)目使用了看門狗定時(shí)器進(jìn)行監(jiān)視。在串口初始化時(shí)放在了系統(tǒng)初始化中,這里給出了串行接受通信程序流程圖(圖4-1),微控制器的串口發(fā)送程序比較容易,通常采用查詢方式進(jìn)行發(fā)送,此處就不載列出。

本項(xiàng)目要用到定時(shí)器/計(jì)數(shù)器 0 間隔時(shí)間讀取霍爾傳感器轉(zhuǎn)速脈沖數(shù)中斷,串行接受、發(fā)送中斷。未使用的中斷,在相應(yīng)的程序中的中斷地址寫入復(fù)位指令。

本項(xiàng)目作品的開機(jī)初始化過程進(jìn)行IO口舒適化、定時(shí)器/計(jì)數(shù)器初始化、各類模塊數(shù)據(jù)參數(shù)的初始化以及電機(jī)轉(zhuǎn)速初始化、PID參數(shù)初始化等。給出了程序初始化流程圖圖4-2和系統(tǒng)軟件主要流程圖4-3。

圖4-2 主控程序初始化流程圖

 

4.2??驅(qū)動(dòng)器控制程序設(shè)計(jì)

根據(jù)3.5.3節(jié)的電機(jī)控制算法,根據(jù)本文AGV小車的部分程序設(shè)計(jì),這里給出了PID整定輸出產(chǎn)生PWM波main程序。

/******************** (C) COPYRIGHT 2008 STMicroelectronics ********************

* File Name ?????????: main.c

* Author ????????????: MCD Application Team

* Version ???????????: V2.0.1

* Date ??????????????: 06/13/2008

* Description ???????: Main program body

********************************************************************************

* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS

* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.

* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,

* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE

* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING

* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.

*******************************************************************************/

 

/* Includes ——————————————————————*/

#include “System_init.h”

#include “Adjust.h”

/* Private typedef ———————————————————–*/

/* Private define ————————————————————*/

/* Private macro ————————————————————-*/

/* Private variables ———————————————————*/

extern vu16 ADCConvertedValue;

extern unsigned char Flag_1mS;

extern unsigned char Flag_100mS;

extern unsigned char Flag_1S;

extern int U_Set;

extern u16 CCR1_Val;

/* Private function prototypes ———————————————–*/

/*******************************************************************************

* Function Name ?: main

* Description ???: Main program

* Input ?????????: None

* Output ????????: None

* Return ????????: None

*******************************************************************************/

int main(void)

{

unsigned char N=0;

float Pv;

#ifdef DEBUG

debug();

#endif

System_Configuration();

printf(“This is an example of PID!\n\r”);

while (1)

{

switch (N){

case 0:

if(Flag_1mS==1){

if(U_Set-ADCConvertedValue>=10||U_Set-ADCConvertedValue<=-10){

Pv=Vol(U_Set,ADCConvertedValue);

CCR1_Val=CCR1_Val+Pv/2.04;

if(CCR1_Val>=999)

CCR1_Val=999;

else if(CCR1_Val<=1)

CCR1_Val=1;

 

TIM3->CCR1=CCR1_Val;

}

Flag_1mS=0;

}

break;

case 1:

if(Flag_100mS==1){

printf(“%d,”,ADCConvertedValue);printf(“%d ??“,CCR1_Val);

Flag_100mS=0;

}

break;

case 2:

if(Flag_1S==1){

//printf(“The feedback is %d\n\r”,ADCConvertedValue);

Flag_1S=0;

}

break;

default : break;

}

N++;

if(N==3){

N=0;

}

}

}

4.3 數(shù)字舵機(jī)控制程序設(shè)計(jì)

根據(jù)3.5.3節(jié)的超聲波傳感器原理及相關(guān)數(shù)據(jù)資料,根據(jù)本文AGV小車的部分程序設(shè)計(jì),這里給出了超聲波傳感器測距程序。

//晶振=8M

//MCU=STC10F04XE

//Trig ?= P1^0

//Echo ?= P3^2

#include <reg52.h> ????//包括一個(gè)52標(biāo)準(zhǔn)內(nèi)核的頭文件

#define uchar unsigned char //定義一下方便使用

#define uint ?unsigned int

#define ulong unsigned long

//***********************************************

sfr ?CLK_DIV = 0x97; //為STC單片機(jī)定義,系統(tǒng)時(shí)鐘分頻

//為STC單片機(jī)的IO口設(shè)置地址定義

sfr ??P0M1 ??= 0X93;

sfr ??P0M0 ??= 0X94;

sfr ??P1M1 ??= 0X91;

sfr ??P1M0 ??= 0X92;

sfr P2M1 ??= 0X95;

sfr P2M0 ??= 0X96;

//***********************************************

sbit Trig ?= P1^0; //產(chǎn)生脈沖引腳

sbit Echo ?= P3^2; //回波引腳

sbit test ?= P1^1; //測試用引腳

 

uchar code SEG7[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//數(shù)碼管0-9

uint distance[4]; ?//測距接收緩沖區(qū)

uchar ge,shi,bai,temp,flag,outcomeH,outcomeL,i; ?//自定義寄存器

bit succeed_flag; ?//測量成功標(biāo)志

//********函數(shù)聲明

void conversion(uint temp_data);

void delay_20us();

//void pai_xu();

 

void main(void) ??// 主程序

{ ?uint distance_data,a,b;

uchar CONT_1;

CLK_DIV=0X03; //系統(tǒng)時(shí)鐘為1/8晶振(pdf-45頁)

P0M1 = 0; ??//將io口設(shè)置為推挽輸出

P1M1 = 0;

P2M1 = 0;

P0M0 = 0XFF;

P1M0 = 0XFF;

P2M0 = 0XFF;

i=0;

flag=0;

test =0;

Trig=0; ??????//首先拉低脈沖輸入引腳

TMOD=0x11; ???//定時(shí)器0,定時(shí)器1,16位工作方式

TR0=1; ?????//啟動(dòng)定時(shí)器0

IT0=0; ???????//由高電平變低電平,觸發(fā)外部中斷

ET0=1; ???????//打開定時(shí)器0中斷

//ET1=1; ???????//打開定時(shí)器1中斷

EX0=0; ???????//關(guān)閉外部中斷

EA=1; ????????//打開總中斷0

 

while(1) ????????//程序循環(huán)

{

EA=0;

Trig=1;

delay_20us();

Trig=0; ????????//產(chǎn)生一個(gè)20us的脈沖,在Trig引腳

while(Echo==0); //等待Echo回波引腳變高電平

succeed_flag=0; //清測量成功標(biāo)志

EX0=1; ?????????//打開外部中斷

TH1=0; ?????????//定時(shí)器1清零

TL1=0; ?????????//定時(shí)器1清零

TF1=0; ?????????//

TR1=1; ?????????//啟動(dòng)定時(shí)器1

EA=1;

 

while(TH1 < 30);//等待測量的結(jié)果,周期65.535毫秒(可用中斷實(shí)現(xiàn))

TR1=0; ?????????//關(guān)閉定時(shí)器1

EX0=0; ?????????//關(guān)閉外部中斷

 

if(succeed_flag==1)

{

distance_data=outcomeH; ???????????????//測量結(jié)果的高8位

distance_data<<=8; ??????????????????//放入16位的高8位

distance_data=distance_data|outcomeL;//與低8位合并成為16位結(jié)果數(shù)據(jù)

distance_data*=12; ?????????????????//因?yàn)槎〞r(shí)器默認(rèn)為12分頻

distance_data/=58; ??????????????????//微秒的單位除以58等于厘米

} ?????????????????????????????????????//為什么除以58等于厘米, ?Y米=(X秒*344)/2

// X秒=( 2*Y米)/344 ==》X秒=0.0058*Y米 ==》厘米=微秒/58

if(succeed_flag==0)

{

distance_data=0; ???????????????????//沒有回波則清零

test = !test; ??????????????????????//測試燈變化

}

 

/// ??????distance[i]=distance_data; //將測量結(jié)果的數(shù)據(jù)放入緩沖區(qū)

/// ???????i++;

/// ?if(i==3)

/// ?????{

/// ???????distance_data=(distance[0]+distance[1]+distance[2]+distance[3])/4;

/// ???????pai_xu();

/// ???????distance_data=distance[1];

 

 

a=distance_data;

if(b==a) CONT_1=0;

if(b!=a) CONT_1++;

if(CONT_1>=3)

{ CONT_1=0;

b=a;

conversion(b);

}

/// ?i=0;

/// }

}

}

//***************************************************************

//外部中斷0,用做判斷回波電平

INTO_() ?interrupt 0 ??// 外部中斷是0號(hào)

{

outcomeH =TH1; ???//取出定時(shí)器的值

outcomeL =TL1; ???//取出定時(shí)器的值

succeed_flag=1; ??//至成功測量的標(biāo)志

EX0=0; ???????????//關(guān)閉外部中斷

}

//****************************************************************

//定時(shí)器0中斷,用做顯示

timer0() interrupt 1 ?// 定時(shí)器0中斷是1號(hào)

{

TH0=0xfd; //寫入定時(shí)器0初始值

TL0=0x77;

switch(flag)

{case 0x00:P0=ge; P2=0xfd;flag++;break;

case 0x01:P0=shi;P2=0xfe;flag++;break;

case 0x02:P0=bai;P2=0xfb;flag=0;break;

}

}

//*****************************************************************

/*

//定時(shí)器1中斷,用做超聲波測距計(jì)時(shí)

timer1() interrupt 3 ?// 定時(shí)器0中斷是1號(hào)

{

TH1=0;

TL1=0;

}

*/

//******************************************************************

//顯示數(shù)據(jù)轉(zhuǎn)換程序

void conversion(uint temp_data)

{

uchar ge_data,shi_data,bai_data ;

bai_data=temp_data/100 ;

temp_data=temp_data%100; ??//取余運(yùn)算

shi_data=temp_data/10 ;

temp_data=temp_data%10; ??//取余運(yùn)算

ge_data=temp_data;

 

bai_data=SEG7[bai_data];

shi_data=SEG7[shi_data];

ge_data =SEG7[ge_data];

 

EA=0;

bai = bai_data;

shi = shi_data;

ge ?= ge_data ;

EA=1;

}

//******************************************************************

void delay_20us()

{ ?uchar bt ;

for(bt=0;bt<100;bt++);

}

?

第五章 總結(jié)與展望

5.1 總結(jié)

自動(dòng)導(dǎo)引小車(Automated?Guided?Vehicle,簡稱AGV)是一種以電池為動(dòng)力,裝有非接觸式導(dǎo)向裝置的無人駕駛自動(dòng)運(yùn)輸車。其主要功能是:在計(jì)算機(jī)控制下,通過復(fù)雜的路徑將物料按一定的停位精度輸送到指定的位置上。

本作品設(shè)計(jì)的為一款既具有實(shí)用價(jià)值同時(shí)利于后期拓展開發(fā)的AGV小車平臺(tái),選定以STM32單片機(jī)作為CPU進(jìn)行控制系統(tǒng)設(shè)計(jì),可以在功能可靠性保證的前提下,既降低成本,又增加本設(shè)計(jì)作品的拓展性。本項(xiàng)目采用磁導(dǎo)航方式,磁導(dǎo)航方式被認(rèn)為是一項(xiàng)非常有應(yīng)用前景的技術(shù),具有很高的測量精度及良好的重復(fù)性,磁導(dǎo)航不受光線變化及路面污損破壞等影響,在應(yīng)用運(yùn)行過程中,磁傳感系統(tǒng)具有很高的可靠性和魯棒性。

5.2 展望

????本項(xiàng)目采用的自主導(dǎo)航方式為磁導(dǎo)航方式,技術(shù)成熟,設(shè)計(jì)較為簡單,成本也較低,但是作為AGV設(shè)計(jì)人員,我們希望AGV的導(dǎo)航方式更加先進(jìn),自主導(dǎo)航能力更加強(qiáng),為此,在后期的開發(fā)中,會(huì)采取視覺導(dǎo)航方式,利用視覺攝像頭實(shí)現(xiàn)圖像數(shù)據(jù)采集并進(jìn)行圖像中各類物體物理數(shù)據(jù)分析,這一方式會(huì)提高軟件開發(fā)的成本,但是同時(shí)會(huì)大大減少硬件傳感器的成本,視覺導(dǎo)航技術(shù)發(fā)展的越來越快(例如OPENCV),相信日后裝載到AGV的視覺導(dǎo)航技術(shù)也會(huì)逐步實(shí)現(xiàn)。

本項(xiàng)目設(shè)計(jì)的AGV小車在機(jī)械結(jié)構(gòu)上,相對(duì)較重,專向組件的轉(zhuǎn)向半徑較大,需要在車身機(jī)械結(jié)構(gòu)上減輕重量,減小轉(zhuǎn)彎半徑。