趙珍珠 劉妍希 劉有為 葉劉欣 李嘉懿
摘要
在當(dāng)今,企業(yè)對(duì)智能搬運(yùn)車需求很強(qiáng)烈。全自動(dòng)智能車在企業(yè)運(yùn)輸貨物不但能夠降低人類因貨物運(yùn)輸時(shí)發(fā)生意外而受到傷害,而且能夠大大地縮減企業(yè)雇人的開支、提高企業(yè)運(yùn)作效率??紤]到智能貨車的巨大市場需求和實(shí)際效益,此課題的研究非常重要。本論文主要研究了基于STM32F103ZET6-ARM微處理器的智能搬運(yùn)小車的自動(dòng)控制、避障以及定制路線翻譯系統(tǒng)。我們致力于完善智能貨車的性能,使其能夠盡快投入生產(chǎn)。
【關(guān)鍵詞】微處理器 智能車 路線翻譯 物流搬運(yùn)車
20世紀(jì)90年代開始智能車輛的研究開始進(jìn)入大規(guī)模階段,其設(shè)計(jì)內(nèi)容涵蓋機(jī)械、汽車、電子、自動(dòng)控制、計(jì)算機(jī)、傳感技術(shù)等多個(gè)學(xué)科的知識(shí)領(lǐng)域,作為一門新興的綜合技術(shù),可廣泛的應(yīng)用于工廠自動(dòng)料車、固定場地搬運(yùn)車等技術(shù)領(lǐng)域,具有良好的應(yīng)用前景。目前,隨著我國現(xiàn)代工業(yè)快速發(fā)展,工業(yè)物資運(yùn)輸需要提升自身的自動(dòng)化、智能化程度,迅速跟上我國智能制造的步伐。實(shí)時(shí)采集傳感器信號(hào),智能分析外部環(huán)境、路徑信息,自動(dòng)實(shí)現(xiàn)方向控制及速度調(diào)節(jié),是智能車控制系統(tǒng)的主要特點(diǎn),它也可應(yīng)用于復(fù)雜、惡劣的工作環(huán)境,是物流系統(tǒng)環(huán)節(jié)搬運(yùn)設(shè)備的代表。因此,針對(duì)智能搬運(yùn)車巨大的市場需求以及企業(yè)需要的低成本高效率,開發(fā)一種智能設(shè)備實(shí)現(xiàn)替代人員去完成貨物運(yùn)輸任務(wù)具有十分重要的意義。本文闡釋自主開發(fā)一款適用于廠區(qū)環(huán)境的搬運(yùn)智能車模型樣車,在預(yù)設(shè)定路線的基礎(chǔ)上完成對(duì)障礙物的自動(dòng)躲避。分別從硬件和軟件兩方面介紹智能車的設(shè)計(jì)思路以及做出的改進(jìn)。在模塊化設(shè)計(jì)的思想下,把系統(tǒng)分解成多個(gè)功能模塊。最后進(jìn)行小車運(yùn)行中的避障仿真和測試,使得智能小車設(shè)計(jì)符合要求。
本文介紹了智能小車的各個(gè)模塊設(shè)計(jì),重點(diǎn)介紹研發(fā)一款翻譯軟件,它能把企業(yè)所需路線的表述自動(dòng)轉(zhuǎn)化為可以直接控制小車的編程語言。通過把常用的智能車運(yùn)行方式的文字語言對(duì)應(yīng)的編程語言歸納匯總,使得智能搬運(yùn)小車適應(yīng)各種企業(yè)物流路線,使智能搬運(yùn)車的使用能夠更簡潔方便,也為之后智能車的研發(fā)提供一種新思路。
1 智能循跡小車設(shè)計(jì)方案
小車控制系統(tǒng)的組成部分主要包括主微控制器、紅外避障模塊、720P高清攝像頭模塊、電源模塊以及動(dòng)力驅(qū)動(dòng)模塊,該系統(tǒng)結(jié)構(gòu)如圖1所示,主控芯片采用STM32F103ZET6-ARM單片機(jī),將所得的紅外信號(hào)和圖像信息分析處理后將對(duì)應(yīng)的PWM波傳送至左右電機(jī),若左右電機(jī)轉(zhuǎn)速相同,則實(shí)現(xiàn)智能車前進(jìn),反之轉(zhuǎn)速不相同時(shí),根據(jù)差速原理實(shí)現(xiàn)繞點(diǎn)轉(zhuǎn)向。本文詳細(xì)介紹了路徑信息采集模塊的方案選取和電路設(shè)計(jì)原理,以及系統(tǒng)調(diào)試方法策略。以STM32F103ZET6最小系統(tǒng)板作為整個(gè)系統(tǒng)處理信息和控制命令的核心,通過將定制路線以文字形式輸入經(jīng)過我們自主研發(fā)的翻譯軟件轉(zhuǎn)化為控制器能夠理解的機(jī)器語言,結(jié)合紅外傳感器實(shí)現(xiàn)避障等功能。
2 智能搬運(yùn)小車硬件平臺(tái)設(shè)計(jì)
2.1 核心控制模塊設(shè)計(jì)
為使本次對(duì)智能搬運(yùn)小車在循跡、避障等功能上的研究能夠順利進(jìn)行,使智能搬運(yùn)小車在實(shí)際運(yùn)用中能夠穩(wěn)定、準(zhǔn)確地完成物流搬運(yùn)任務(wù);本設(shè)計(jì)采用32位微處理器STM32F103ZET6-ARM單片機(jī)作為核心控制芯片。STM32F103系列是以arm32位的cortex-M3作為內(nèi)核,存儲(chǔ)器為64KB的SRAM,擁有串行調(diào)試(SWD)和JTAG接口兩種模式,8個(gè)定時(shí)器,可實(shí)現(xiàn)PWM波形輸出功能,48~144個(gè)通用及復(fù)用I/O端口,是一個(gè)高性能、功能強(qiáng)大的處理器。
設(shè)計(jì)過程中,選擇將需要使用的I/O口引出端子,以便核心系統(tǒng)板與電機(jī)驅(qū)動(dòng)模塊、攝像頭模塊、循跡模塊以及避障模塊等進(jìn)行連接和測試。其核心控制器的原理圖如圖1所示。
2.2 電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)
電機(jī)驅(qū)動(dòng)控制模塊是為智能搬運(yùn)小車提供動(dòng)力的重要部件,直接控制電機(jī)的運(yùn)行,驅(qū)動(dòng)電路是否穩(wěn)定可靠對(duì)智能搬運(yùn)小車的性能影響很大。本文采用L298N電機(jī)驅(qū)動(dòng)電路可以確保智能循跡小車持續(xù)穩(wěn)定地行駛。本次研究中智能搬運(yùn)小車采用直流電機(jī)驅(qū)動(dòng),四個(gè)馬達(dá)獨(dú)立驅(qū)動(dòng)運(yùn)行。驅(qū)動(dòng)芯片使用L298N,L298N是ST公司生產(chǎn)的一種高電壓、大電流電機(jī)驅(qū)動(dòng)芯片。該芯片采用15腳封裝,其主要特點(diǎn)是:工作電壓高,最高工作電壓可達(dá)46V,輸出電流大,瞬間峰值電流可達(dá)3A,持續(xù)工作電流為2A;額定功率25W;集成雙H橋驅(qū)動(dòng)器,驅(qū)動(dòng)直流電動(dòng)機(jī)。實(shí)驗(yàn)中使用PWM軟件調(diào)速,使小車按規(guī)定速度穩(wěn)定行駛。
2.3 紅外避障模塊設(shè)計(jì)
為保證智能搬運(yùn)小車的安全性,本次對(duì)智能搬運(yùn)車的研究中加入了避障模塊。兩個(gè)紅外避障傳感器安裝在小車的前方左右兩端,使智能搬運(yùn)小車能夠及時(shí)檢測到前方一定距離內(nèi)的障礙物,并發(fā)出信號(hào)通知核心控制中心進(jìn)行避障處理。實(shí)驗(yàn)中采用HJ-IR2紅外避障傳感器,此傳感器的主要優(yōu)點(diǎn)是:靈敏、不怕光;能夠保證小車在室外模式下及時(shí)檢測到路障。此款傳感器的基本原理是利用物體的反射性質(zhì)。在一定范圍內(nèi),若有障礙物,紅外線遇到障礙物后會(huì)被反射,傳感器接收頭接收到反射回來的紅外線,就可以確認(rèn)正前方有障礙物,隨即發(fā)送信號(hào)給單片機(jī),單片機(jī)立刻進(jìn)行避障處理。若無障礙物,發(fā)射出的紅外線,隨傳播距離變遠(yuǎn)而逐漸減弱,傳感器接收頭接收不到強(qiáng)的紅外線信號(hào),小車正常行駛。
3 智能搬運(yùn)小車控制語言與語言轉(zhuǎn)化軟件設(shè)計(jì)
設(shè)計(jì)一種小車控制語言,將人類理解的路線以適當(dāng)形式描述后輸入到小車的控制系統(tǒng)中,使小車能夠理解人類的思想,并且根據(jù)指令沿特定路線完成任務(wù)。至于如何轉(zhuǎn)化為適當(dāng)形式,則需要一款翻譯軟件,將小車指令,即主要對(duì)特定路線的描述,翻譯成小車能夠理解的語言。
3.1 路線語言設(shè)計(jì)
根據(jù)實(shí)際路線的各個(gè)參數(shù)進(jìn)行描述,如直行車道長度、路口轉(zhuǎn)彎角度等,配合軟件的使用,軟件操作界面設(shè)想如圖所示,設(shè)置好前行長度,如五米,點(diǎn)擊向上箭頭,即生成五米長的車道,再根據(jù)路口處小車行駛需要轉(zhuǎn)彎的角度在半圓處設(shè)置好角度,再點(diǎn)擊向左或向右的箭頭,轉(zhuǎn)彎即可生成,如此重復(fù),根據(jù)實(shí)際需求用軟件繪制出路線,再將略縮圖與地圖比較,確認(rèn)無誤后點(diǎn)擊完成,即可生成該線路的代碼。若是不小心點(diǎn)錯(cuò),或者長度角度的設(shè)置出了問題,也不要緊,點(diǎn)擊撤銷便可重新進(jìn)行上一步操作。該軟件可根據(jù)小車芯片的型號(hào)將輸入的路線翻譯成相對(duì)應(yīng)的語言,只要在一開始時(shí)選擇對(duì)應(yīng)的型號(hào)即可,路線繪制完成后生成的代碼可直接復(fù)制粘貼,依照常規(guī)操作將代碼燒錄到小車當(dāng)中,小車便可按照輸入的路線自動(dòng)行駛。
3.2 語言轉(zhuǎn)化軟件
如圖2所示,該軟件采用圖像繪制的形式,將路線手動(dòng)繪制在軟件界面上,控制面板上的大部分按鍵都對(duì)應(yīng)一段代碼,標(biāo)有“線路1”界面處,黃色箭頭代表前進(jìn)方向,前進(jìn)或者轉(zhuǎn)彎時(shí)附帶有3D動(dòng)畫效果,可進(jìn)行小幅度縮放,配合右上角略縮圖可檢查路線是否正確,紅點(diǎn)代表所處位置,紅點(diǎn)閃爍表達(dá)提示效果,點(diǎn)擊完成操作界面左側(cè)即生成對(duì)應(yīng)的代碼。每條線路可編號(hào)命名,也可以個(gè)性化自定義,多條線路可疊加生成地圖,將小車放置于對(duì)應(yīng)的起點(diǎn),根據(jù)編號(hào)沿不同形狀的路線行駛,起點(diǎn)終點(diǎn)位置不可顛倒,若需沿原路線返回,則需要把原來的終點(diǎn)當(dāng)作起點(diǎn),原來的起點(diǎn)變?yōu)榻K點(diǎn),輸入新的路線。
4 定制路線下自動(dòng)駕駛智能車整機(jī)測試
4.1 硬件測試
測試方案如下:對(duì)于驅(qū)動(dòng)電機(jī)模塊。將STM32單片機(jī)兩路的PWM輸出接到L298N芯片腳,改變兩路PWM波的占空比控制電機(jī)兩端電壓,調(diào)節(jié)直流電機(jī)轉(zhuǎn)速,檢測小車能否基本的正反轉(zhuǎn)、制動(dòng)等如表1所示功能。對(duì)于紅外避障模塊,通過可調(diào)電阻,將物體和傳感器間距離調(diào)試為30CM后,接入單片機(jī)AD轉(zhuǎn)換電路,燒寫程序,檢測小車是否能夠完成精準(zhǔn)避障。
4.2 軟件調(diào)試
軟件調(diào)試步驟如下:首先完成單片機(jī)輸出PWM信號(hào)到驅(qū)動(dòng)芯片的調(diào)試,因該程序可以直觀地看到,并且在此基礎(chǔ)上,即可方便驗(yàn)證其他模塊的運(yùn)行結(jié)構(gòu)正確與否。此處,應(yīng)反復(fù)模擬各種情況,改變各數(shù)據(jù),以確保程序無偶然性。因后續(xù)程序量加大,對(duì)程序進(jìn)行邊加邊調(diào)試的方法。最后檢測語言轉(zhuǎn)化軟件能否正確編寫出運(yùn)行程序。在調(diào)試的過程中,結(jié)合軟硬件聯(lián)調(diào),結(jié)合debug和仿真器調(diào)試,調(diào)試所有功能代碼,并在硬件電路上進(jìn)行驗(yàn)證工作。
4.3 綜合測試
綜合測試即為讓小車按照軟件設(shè)定好的路線上行駛,觀測小車能否準(zhǔn)確地接收任務(wù),并自動(dòng)完成指定任務(wù),以及在行駛過程中,遇到障礙物時(shí)能否自動(dòng)選擇避開。此時(shí),應(yīng)特別關(guān)注小車行駛的穩(wěn)定性,出現(xiàn)偏差后,可從小車的算法處理,紅外傳感設(shè)定距離等方面進(jìn)行修改,增強(qiáng)小車的穩(wěn)定性。測試表明:該小車能夠按照定制路線行駛。
5 結(jié)語
本文根據(jù)設(shè)計(jì)內(nèi)容和市場需求,從硬件設(shè)計(jì)和軟件設(shè)計(jì)出發(fā),基于STM32F103微控制器設(shè)計(jì)了一款避障智能車,采用Keil Vision4平臺(tái)進(jìn)行開發(fā),并利用C語言編寫各功能模塊子函數(shù),加以調(diào)試,具有良好的實(shí)用性,且在此基礎(chǔ)上可進(jìn)一步開發(fā),拓展性強(qiáng)。此款小車主要用于工廠等場合的貨物搬運(yùn),配合機(jī)械手臂可大大提高工作效率。整個(gè)設(shè)計(jì)由主控程序融合各個(gè)子控程序,加以配合,互相輔助,實(shí)現(xiàn)了小車的前進(jìn)、轉(zhuǎn)彎和停止,并且配合傳感器,使小車能夠?qū)崿F(xiàn)簡單避障,在實(shí)際應(yīng)用中能夠產(chǎn)生良好效果。
參考文獻(xiàn)
[1]莫太平,周園園,張?jiān)茝?qiáng).面向工業(yè)物流服務(wù)的智能車及循跡算法的研究[D],桂林電子科技大學(xué),2017:146-151.
[2]繆璐婷.基于stm32的循跡避障智能車設(shè)計(jì)[D].江蘇大學(xué),2017:140-146.
[3]張堵明,王瑋.智能搬運(yùn)車控制系統(tǒng)研究[D].山東壽光,2016:253-260.
[4]王紹坤.基于ARM9的無線遙控車系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].吉林大學(xué),2011:3-4.
[5]嚴(yán)芳,李穎沖.基于的智能小車控制器設(shè)計(jì)[J].電氣傳動(dòng)自動(dòng)化,2009,31(05):12-15.