基于ARM Cortex系的視覺導(dǎo)航AGV雙核控制器設(shè)計(jì)_第1頁
基于ARM Cortex系的視覺導(dǎo)航AGV雙核控制器設(shè)計(jì)_第2頁
基于ARM Cortex系的視覺導(dǎo)航AGV雙核控制器設(shè)計(jì)_第3頁
基于ARM Cortex系的視覺導(dǎo)航AGV雙核控制器設(shè)計(jì)_第4頁
基于ARM Cortex系的視覺導(dǎo)航AGV雙核控制器設(shè)計(jì)_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、收稿日期:2013-05-15作者簡(jiǎn)介:王可(1989-,男,江蘇南京人,主要從事智能移動(dòng)機(jī)器人方面的研究.E-mail:andrew.wang1989通信聯(lián)系人:黃曉華,男,副教授,碩士生導(dǎo)師.E-mail:mishhxh基于ARM Cortex 系的視覺導(dǎo)航AGV雙核控制器設(shè)計(jì)王可,黃曉華*,張健,仇家強(qiáng)(南京理工大學(xué)機(jī)械工程學(xué)院,南京210094摘要:為了實(shí)現(xiàn)視覺導(dǎo)航AGV 的有效地實(shí)時(shí)控制,一方面需要高性能的運(yùn)算處理器快速運(yùn)行圖像處理算法和路徑跟蹤算法,另一方面需要可靠的微控制器實(shí)現(xiàn)多樣化的傳感器信號(hào)采集及電機(jī)控制等低層行為。對(duì)此設(shè)計(jì)了基于ARM Cortex-A8和M3系列SoC 的

2、車載雙核控制器。首先進(jìn)行了操舵型AGV 的機(jī)電系統(tǒng)分析,其次針對(duì)AGV 的控制器功能需求分別進(jìn)行了控制器的硬件設(shè)計(jì)和軟件設(shè)計(jì),其中使用了層次化的硬軟件設(shè)計(jì)模型,并對(duì)主要功能程序模塊進(jìn)行了詳細(xì)說明。最后在自主研制的AGV 平臺(tái)Anrot-I 上進(jìn)行了控制器的實(shí)驗(yàn),通過對(duì)實(shí)際路徑跟蹤的數(shù)據(jù)圖表分析,驗(yàn)證了該控制器能夠同時(shí)運(yùn)行圖像處理算法和路徑跟蹤算法,并對(duì)AGV 機(jī)電系統(tǒng)進(jìn)行實(shí)時(shí)控制。實(shí)驗(yàn)結(jié)果顯示,該控制器在性能和結(jié)構(gòu)上的有效性。關(guān)鍵詞:自動(dòng)導(dǎo)航車;視覺導(dǎo)航;雙核控制器;ARM 中圖分類號(hào):TP24文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1001-4551(201310-1284-04Dual-core cont

3、roller based on ARM cortex series for vision-based AGVWANG Ke ,HUANG Xiao-hua ,ZHANG Jian ,QIU Jia-qiang(School of Mechanical Engineering ,Nanjing University of Science and Technology ,Nanjing 210094,ChinaAbstract :Aiming at realizing the effect control of the vision-based AGV ,on the one hand there

4、 is a need of high performance processors to run the image processing algorithm and path tracking algorithm ,on the other hand there is a need of reliable micro controllers to collect a variety of sensor signals and to control the motors.A dual-core vehicle controller based on ARM Cortex-A8and M3was

5、 designed and realized.Firstly the electro-mechanical system of steering type AGV was analyzed.Then according to the functions that need ,both hardware and software designed of the dual-core controller were implemented ,where the hierarchical design model was used.And the main modules for the progra

6、m were explained in detail.Finally the controller was tested on the independently developed AGV platform Anrot-I.The results of the experiment indicate the effectiveness and progressiveness on performance and structure.Key words :automatic guided vehicle (AGV ;visual navigation ;dual-core controller

7、 ;ARMDOI :10.3969/j.issn.1001-4551.2013.10.0280引言ARM 是一種當(dāng)前最為流行的嵌入式處理器架構(gòu),也是各類半導(dǎo)體廠商設(shè)計(jì)嵌入式低功耗、高性能SoC 的首選架構(gòu)1?;贏RM v7架構(gòu)的Cortex 系列分為A 、R和M 三類,旨在服務(wù)于不同的應(yīng)用需求:“A ”系列面向尖端的基于虛擬內(nèi)存的操作系統(tǒng)和高性能計(jì)算應(yīng)用,除了ARM 多內(nèi)核之外,SoC 常整合DSP 與圖形加速芯片以提高系統(tǒng)處理能力;“R ”系列針對(duì)實(shí)時(shí)系統(tǒng),常用于要求嚴(yán)苛的工業(yè)現(xiàn)場(chǎng);“M ”系列針對(duì)高性能微控制第30卷第10期2013年10月Vol.30No.10Oct.2013機(jī)電工程J

8、ournal of Mechanical &Electrical Engineering器,常用于對(duì)于價(jià)格、功耗敏感的領(lǐng)域,以取代傳統(tǒng)的8位或16位單片機(jī)2。基于視覺的AGV (Automated Guided Vehicle 車載控制器一方面需要高性能的處理器進(jìn)行實(shí)時(shí)圖像處理3-4和實(shí)現(xiàn)圖形化的人機(jī)界面5-6,另一方面需要實(shí)時(shí)可靠的工控技術(shù)來實(shí)現(xiàn)AGV 的機(jī)電動(dòng)作,并且需要盡可能的降低系統(tǒng)功耗7-8。本研究利用ARM Cortex-A 系列高性能計(jì)算技術(shù)和Cortex-M 系列微控制器技術(shù)的集成9,能夠發(fā)揮各自的優(yōu)勢(shì)10,為操舵型視覺導(dǎo)航AGV 小車Anrot-I 設(shè)計(jì)與實(shí)現(xiàn)雙核控制

9、器。1操舵型AGV 機(jī)電結(jié)構(gòu)操舵型AGV 小車Anrot-I 是一個(gè)基于視覺導(dǎo)航的靈活的、低成本輪式移動(dòng)機(jī)器人,它可以根據(jù)設(shè)定在地面上的黑色導(dǎo)引線,實(shí)現(xiàn)跟蹤直線路徑、識(shí)別十字路口、圓弧轉(zhuǎn)彎等基本運(yùn)動(dòng)功能。借助于超聲波傳感器和觸碰開關(guān)實(shí)現(xiàn)障礙物檢測(cè)的二級(jí)安全動(dòng)作,即在接近障礙物時(shí)減慢車身速度,在碰撞到障礙物時(shí)能急停。操舵型AGV 示意圖如圖1所示,小車的后驅(qū)單元(4是通用的400W 無刷直流電機(jī)和差速器,配合電機(jī)驅(qū)動(dòng)器反饋的表征速度的相線電壓信號(hào),實(shí)現(xiàn)速度閉環(huán)控制。實(shí)現(xiàn)轉(zhuǎn)向的是60W 空心杯有刷直流電機(jī)(5,裝有大比率行星齒輪減速箱和光電編碼器,通過伺服驅(qū)動(dòng)器內(nèi)置的閉環(huán)控制實(shí)現(xiàn)精確的位置動(dòng)作。另

10、一只前輪是萬向自由輪, 起支撐和跟轉(zhuǎn)作用。圖1操舵型AGV 示意圖1控制器;2電源模塊;3驅(qū)動(dòng)輪;4后驅(qū)電機(jī);5轉(zhuǎn)舵電和自由輪;6自由輪;7觸碰開關(guān);8超聲波傳感器;9CMOS 攝像頭;10接近開關(guān)48V 酸鉛蓄電池和DC-DC 隔離電源為AGV 的所有功率和控制部件提供穩(wěn)定的電壓,控制器是AGV 的核心,收集來自CMOS 攝像頭、超聲波傳感器、觸碰開關(guān)、驅(qū)動(dòng)電機(jī)速度反饋、轉(zhuǎn)舵電機(jī)位置反饋、蓄電池電壓等信息,向后驅(qū)電機(jī)驅(qū)動(dòng)器、前舵輪伺服驅(qū)動(dòng)器和其他執(zhí)行器輸出控制信號(hào)。2控制器硬件設(shè)計(jì)本研究選擇三星公司基于Cortex-A8內(nèi)核SoC 芯片“S5PV210”作為實(shí)現(xiàn)圖像處理與人機(jī)界面的單元,選擇

11、意法半導(dǎo)體公司基于Cortex-M3內(nèi)核SoC 芯片“STM32F103”作為實(shí)時(shí)工控單元,配合輸入/輸出接口單元、LCD 電容觸摸屏、WIFI 無線網(wǎng)卡、蓄電池與隔離電源模塊、電機(jī)驅(qū)動(dòng)器及其他部件,共同實(shí)現(xiàn)AGV 車載控制系統(tǒng)運(yùn)行和調(diào)試所需的功能。控制器的硬件系統(tǒng)如圖2所示。基于Cortex-A8ARM 內(nèi)核的S5PV210有32K 一級(jí)緩存、512K 二級(jí)緩存,支持VFP 硬浮點(diǎn)指令,工作頻率1GHz 時(shí)能達(dá)到2000MIPS 的計(jì)算性能。外設(shè)集成的USB 控制器、64位多層總線、GPU 單元、音/視頻編解碼硬處理單元等,這讓多媒體應(yīng)用更加獨(dú)立于CPU 內(nèi)核。本研究搭載該SoC 的電路板運(yùn)

12、行Linux 2.6操作系統(tǒng),豐富的外設(shè)驅(qū)動(dòng)資源能夠用于輕易地搭建基于USB CMOS 攝像頭的導(dǎo)航單元,通過內(nèi)置圖像處理算法識(shí)別路徑。7LCD 電容觸摸屏作為人機(jī)界面(HumanMachine Interface HMI 可以顯示功能配置、路徑、實(shí)時(shí)狀態(tài)等信息,并且能夠進(jìn)行在線的AGV 人機(jī)交互。系統(tǒng)通過WIFI 無線網(wǎng)卡實(shí)現(xiàn)PC 機(jī)對(duì)AGV 的遠(yuǎn)程控制。基于Cortex-M3ARM 內(nèi)核的STM32F103,工作溫度-4080,主頻最高72MHz ,SoC 內(nèi)部集成512K Flash ,64K SRAM ,可以外擴(kuò)512K SRAM 和16M NorFlash ,集成了微控制器常見的外設(shè)

13、,并且外設(shè)可以通過程序配置任意向某個(gè)GPIO 映射,保證了硬件設(shè)計(jì)的靈活性。搭載該微控制器的電路板運(yùn)行實(shí)時(shí)操作系統(tǒng)(RTOS ,便于程序的編寫與擴(kuò)展。通過輸入/輸出接口板,連接AGV 的開關(guān)、傳感器及執(zhí)行器。微控制器的外部連接主要分為3個(gè)部分:通過UART 接口或者USB 接口,接收來自A8板的控制與導(dǎo)航信息,發(fā)送AGV 運(yùn)動(dòng)狀態(tài)信息;通過UART 接口向前舵輪的伺服控制器發(fā)送位置信息,通過ADC 模數(shù)轉(zhuǎn)換后接收來自后輪驅(qū)動(dòng)器的電壓(速度信號(hào), 控制圖2控制器硬件系統(tǒng)圖第10期王可,等:基于ARM Cortex 系的視覺導(dǎo)航AGV 雙核控制器設(shè)計(jì)··1285機(jī)電工程第30卷

14、 信號(hào)通過DAC 數(shù)模轉(zhuǎn)換后發(fā)送至后輪驅(qū)動(dòng)器;通過光耦隔離輸入來自觸碰開關(guān)、接近開關(guān)、超聲波傳感器、急停與啟停開關(guān)的信號(hào),通過繼電器輸出功率電源通斷信號(hào)、警示燈和聲音信號(hào)等。典型的光耦隔離輸入與繼電器輸出接口如圖3和圖4所示。留出保留的I/O 接口,包括光耦隔離輸入和繼電器輸出,以控制AGV的特定輔助功能如移載貨物等。 圖3光耦隔離輸入 圖4繼電器輸出控制器的電能由兩組24V20AH 的酸鉛蓄電池提供,經(jīng)過隔離的DC-DC 電源模塊,轉(zhuǎn)換成各個(gè)控制器所需的電壓。其中,后驅(qū)輪的驅(qū)動(dòng)器的48V 電壓和前舵輪的伺服驅(qū)動(dòng)器的24V 電壓直接由蓄電池引出。系統(tǒng)的供電原則是控制電源和電機(jī)功率電源完全隔離,

15、電源模塊的功率容積留出安全余量。3控制器功能模型設(shè)計(jì)雙核控制器的設(shè)計(jì)目的是為了能夠處理兩種不同的控制任務(wù),這里使用了基于分層(高層低層的信息模型。分層功能模型如圖5所示,是程序設(shè)計(jì)的主要框架。運(yùn)行Linux 2.6的A8處理器承擔(dān)了圖像采集與處理、HMI 顯示與指令輸入、遠(yuǎn)程WIFI 控制信號(hào)的任務(wù),并且將這些所有的外部高層信息通過集中決策,產(chǎn)生動(dòng)作控制指令并傳遞給M3處理器。這個(gè)板級(jí)之間的指令是一串預(yù)先明確定義的字符串,A8和M3都有專門的板級(jí)通訊模塊來處理。由于Linux 是一個(gè)完善而且強(qiáng)大的操作系統(tǒng),從程序開發(fā)的角度來看,基于Linux 圖像采集與處理、人機(jī)界面和遠(yuǎn)程通訊的功能都是便于實(shí)

16、現(xiàn)的。M3處理器運(yùn)行的是實(shí)時(shí)操作系統(tǒng),與非實(shí)時(shí)的Linux 操作系統(tǒng)不同的是,對(duì)于緊急事件,如優(yōu)先級(jí)最高的外部碰撞中斷、急停開關(guān)等,系統(tǒng)總是能夠以最快的速度響應(yīng),這從實(shí)際的AGV 動(dòng)作執(zhí)行層面確保了系統(tǒng)的安全性與可靠性。另外,由于實(shí)時(shí)系統(tǒng)本身的設(shè)計(jì)理念以及其復(fù)雜度較小,也易于實(shí)現(xiàn)時(shí)序準(zhǔn)確的功能。從板級(jí)通訊模塊得到的上層控制信息主要有AGV 工作模式、路徑偏差值、路徑的曲率、何時(shí)需要轉(zhuǎn)彎或者停車等,這由“信號(hào)解釋器”任務(wù)進(jìn)行解讀,并通過“定時(shí)器任務(wù)同步與分發(fā)器”進(jìn)行各種功能的觸發(fā)。在AGV 正常沿直線路徑行駛時(shí),“路徑跟蹤器”產(chǎn)生后驅(qū)輪的目標(biāo)速度以及前舵輪的目標(biāo)轉(zhuǎn)角位置,通過“后輪控制器”和“前

17、輪控制器”發(fā)出實(shí)際的電機(jī)控制指令。由于Anrot-I 型AGV 車實(shí)際的電機(jī)與驅(qū)動(dòng)器選用,這里的“前輪控制器”只需要單向地通過串口向Elmo 驅(qū)動(dòng)器發(fā)出位置、速度和加速度指令,而“后輪控制器”則需要通過ADC 轉(zhuǎn)換得到的速度進(jìn)行閉環(huán)算法,最終由DAC 得到驅(qū)動(dòng)器所需的模擬控制電壓,這個(gè)過程的示意在圖2中展現(xiàn)。在收到上層傳達(dá)的十字路口轉(zhuǎn)彎或者圓弧路徑跟蹤信號(hào)時(shí),“路徑跟蹤器”可以執(zhí)行與正常沿直線路徑行駛不同的算法,以保證在這種狀態(tài)下的AGV 的最佳運(yùn)動(dòng)軌跡。在收到上層傳達(dá)的定點(diǎn)停車或者外部急停開關(guān)、超聲波傳感器、碰撞開關(guān)得到的信號(hào)時(shí),一個(gè)優(yōu)先級(jí)最高的任務(wù)被觸發(fā),進(jìn)入“緊急事件處理器”進(jìn)行動(dòng)作。4

18、基于Anrot-I 平臺(tái)的實(shí)驗(yàn)與分析根據(jù)以上小車的機(jī)電系統(tǒng)設(shè)計(jì)方案,本研究在自主研制的Anrot-I 型AGV 平臺(tái)上進(jìn)行實(shí)驗(yàn)。雙核控制器的實(shí)物示意圖如圖6所示,操舵型AGV跟蹤弧線時(shí)圖5分層功能模型··1286的實(shí)驗(yàn)如圖7所示。具體實(shí)現(xiàn)AGV 導(dǎo)航和運(yùn)動(dòng)功能的程序模塊主要有以下幾種:(1圖像處理算法(A8。從CMOS 攝像頭采集圖像并提取路徑信息,能夠得到路徑的距離偏差與角度偏差量;能識(shí)別道路分叉口,并提取轉(zhuǎn)彎信息。(2上層信息決策算法(A8。根據(jù)3個(gè)信息源決策產(chǎn)生給下層CPU 發(fā)送的指令序列。(3基于RTOS 的任務(wù)同步算法(M3。基于RTOS 的程序編寫中,將各個(gè)相對(duì)

19、獨(dú)立的功能劃分為不同的模塊,稱為任務(wù)。首先,不同的任務(wù)之間需要有先后的次序,任務(wù)之間的同步與通訊是通過OS 提供的API 實(shí)現(xiàn)的;其次,重要的任務(wù)需要較高的優(yōu)先級(jí),以保證系統(tǒng)設(shè)計(jì)的可靠性與安全性;再次,每個(gè)控制周期都需要保證執(zhí)行特定的任務(wù)。例如從上層CPU 發(fā)送來的控制信息周期是100ms ,則實(shí)現(xiàn)運(yùn)動(dòng)控制的周期就需要小于100ms ,才能滿足最好的實(shí)時(shí)性指標(biāo)。(4路徑跟蹤算法(M3。本研究根據(jù)從上層控制器接收到的“直線跟蹤”、“弧線跟蹤”和“岔路轉(zhuǎn)彎”信息,選擇不同的算法。算法的輸入信息是速度設(shè)定值、當(dāng)前路徑的曲率大小、距離偏差量和角度偏差量,輸出信息是控制前舵輪的轉(zhuǎn)角和后驅(qū)輪的速度。(5后

20、驅(qū)輪控制算法(M3。本研究根據(jù)后輪反饋的速度信號(hào), 產(chǎn)生輸入后輪電機(jī)驅(qū)動(dòng)器的控制電壓。圖6 雙核控制器圖7Anrot-I 型AGV 小車為了進(jìn)行基于視覺導(dǎo)航的AGV 路徑跟蹤實(shí)驗(yàn),本研究在地面上設(shè)置了黑色的標(biāo)示線,含有直線與弧線的不同路段。在一定的初始位姿偏差狀態(tài)下開始路徑的跟蹤。試驗(yàn)中控制器記錄的AGV 相對(duì)于路徑的位姿偏差如圖8 所示。圖8路徑跟蹤實(shí)驗(yàn)實(shí)驗(yàn)結(jié)果顯示,本研究研制的操舵型AGV 能夠在較大初始位姿偏差的情況下快速、協(xié)調(diào)地跟蹤路徑,在直線路段能達(dá)到近似零偏差的穩(wěn)定行駛狀態(tài),該狀態(tài)保持在預(yù)設(shè)最大允許角度偏差(3°和距離偏差(10mm 之內(nèi)。在路徑變化導(dǎo)致偏差突變的情況下,該控制器能自動(dòng)開啟車身調(diào)整周期,重新返回到正常的路徑跟蹤狀態(tài)。5結(jié)束語筆者通過實(shí)驗(yàn)證實(shí)了本研究設(shè)計(jì)研制的基于ARMCortex 系列高性能嵌入式SoC 的雙核控制器對(duì)操舵型AGV 具備有效的控制性能。在視覺導(dǎo)航的實(shí)驗(yàn)中,Cortex-A8內(nèi)核的S5PV210處理器以低能耗實(shí)現(xiàn)了實(shí)時(shí)運(yùn)行圖像處理算法,Cortex-M3內(nèi)核STM32處理器能高速、穩(wěn)定地運(yùn)行實(shí)時(shí)操作系統(tǒng),實(shí)現(xiàn)AGV 底層的可靠執(zhí)行。輸入/輸出接口板能夠兼容常見種類的車載傳感器,并使它們與控制板電氣隔離,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論