(北京信息職業(yè)技術(shù)學(xué)院圖書館 北京 100015)
本題目設(shè)計的是超聲波避障小車,類似于生活中使用的掃地機器人。由于采用了Ardunio與超聲波傳感器,Ardunio平臺為開源軟件且模塊化編程,主芯片能耗低、靈敏度高、該項目對于高職院校師生啟發(fā)性強。
避障小車主控模塊(圖1)由以下幾部分組成:Arduino板、Arduino電機驅(qū)動板、Arduino擴(kuò)展板等等。
圖1 避障小車主控模塊
Arduino超聲波避障模塊主要依靠Arduino單片機進(jìn)行分析控制,基于超聲波傳感器數(shù)據(jù),(左,中,右方向)分析,進(jìn)一步實現(xiàn)避障小車前進(jìn)、后退、左右以及掉頭等各個動作。
圖2為超聲波避障小車工作流程,工作中首先通過超聲波模塊采集數(shù)據(jù)、讀入數(shù)據(jù)到Arduino-UNO、單片機分析判斷,進(jìn)一步控制馬達(dá)轉(zhuǎn)速,決定前進(jìn)后退。
圖2 避障小車工作流程
電機驅(qū)動模塊主要功能是將單片機相關(guān)信號通過驅(qū)動模塊轉(zhuǎn)化為小車實際功率。本設(shè)計中采用的電機專用驅(qū)動芯片L298N,L298N耐高電壓并且具有高電流驅(qū)動能力。一般接收TTL邏輯電平,工程師用來驅(qū)動感性負(fù)載(像繼電器,電機等等)。L298N芯片有一個電源VCC引腳、地GND引腳、四個電機驅(qū)動引腳、四個PWM引腳。VCC引腳可以接12V電源用來給芯片和電動機供電。還可將板內(nèi)5V 電壓傳給單片機供電。可實現(xiàn)電機正反轉(zhuǎn)、轉(zhuǎn)矩大、調(diào)速快、性能好、可同時驅(qū)動兩臺直流電機。
超聲波測距借助類似于蝙蝠的超聲波來實現(xiàn),在Ardunio中具體的工作原理與程序是:超聲波傳感器發(fā)射頭發(fā)超聲波,接收頭收超聲波,該模塊發(fā)送8個40khz的方波,HC-SR04自動檢測是否有信號返回,若有信號返回,則Echo端口輸出一個高電平脈沖給單片機相關(guān)I/O口,高電平持續(xù)時間于是就等于超聲波從發(fā)射到返回時間。
方案1:晶宏STC89C52單片機作為核心處理器。STC89C52:低功耗、高性能8位單片機,它含4k Bytes ISP(In-system programmable)Flash只讀程序存儲器,器件采用高密度、非易失性技術(shù)制造,可以反復(fù)擦1萬次以上。兼容MCS-51指令系統(tǒng)和80C51引腳,片內(nèi)集成8位CPU和ISP Flash存儲器,利用STC89C52的I/O口采集傳感器信號并實時驅(qū)動控制步進(jìn)電機。晶宏STC89C52單片機把必需控制內(nèi)容都集成于一個很小的集成電路芯片。它若按功能劃分,由如下內(nèi)部組件組成,即串行口、定時器/計數(shù)器、中斷系統(tǒng)微處理器、數(shù)據(jù)存儲器、程序存儲器、并行I/O口、及特殊功能寄存器。它們由片內(nèi)單一總線連接并且基本結(jié)構(gòu)依舊是CPU+外圍芯片的傳統(tǒng)模式,對各種功能模塊的控制采用特殊功能寄存器來控制。
方案2:Arduino Uno用的芯片基本就是ATmega328p,Arduino Uno核心處理器即ATmega328p-AVR芯片,閃存容量為32KB、上電復(fù)位、可編程、低功耗、高性能、8位控制器;采用RISC體系結(jié)構(gòu)、高耐力、非易失內(nèi)存、含內(nèi)部校準(zhǔn)振蕩器,同時具有外部和內(nèi)部中斷源。
綜合上面分析,同時結(jié)合ATmega328p在Arduino Uno開發(fā)板上集成了大量現(xiàn)成的庫文件,十分方便實用。所以在智能小車創(chuàng)新項目中采用了第二種解決方案。
超聲波避障小車工作原理:打開電源,超聲波傳感器初始化,分析小車正向障礙物距離。若數(shù)值在安全距離內(nèi)小車則直行,若小于安全距離,超聲波傳感器測量左右方向障礙物距離,且對左右向距離進(jìn)行分析判斷,小車下一步需要選取合理路徑。
智能小車(圖3所示)具體工作原理:智能小車安裝超聲波傳感器后程序依據(jù)路況判定,若前方距離大于設(shè)定值,則前進(jìn);不然,左右方向都小于某設(shè)定值,后退;再不然,判斷左右方向距離后再決定行駛路線或者自行掉頭避障。
圖3 小車外觀圖
本文介紹了基于Arduino超聲波避障小車的結(jié)構(gòu)和組成,闡明了超聲波避障小車開發(fā)關(guān)鍵流程。具有一定編程基礎(chǔ)的大學(xué)生可以很方便的創(chuàng)新與二次迭代開發(fā),也可以廣泛應(yīng)用到大學(xué)生電子設(shè)計競賽中去。