趙珍珠 劉妍希 劉有為 葉劉欣 李嘉懿



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