張海兵++郭峰++岳彩浩++溫艷
摘 要:本文旨在基于STM32單片機(jī)設(shè)計(jì)一款處理速度快、精準(zhǔn)循跡、行駛穩(wěn)定的智能小車。對(duì)于路面狀況信息的采集,我們采用光電對(duì)管的技術(shù)來實(shí)現(xiàn);同時(shí)利用光電開關(guān)設(shè)置來采集障礙物信息;對(duì)于單片機(jī)不能識(shí)別的信息,我們用單片機(jī)內(nèi)部自帶的模數(shù)轉(zhuǎn)換來識(shí)別。單片機(jī)處理這些信息,然后對(duì)各個(gè)模塊進(jìn)行控制,實(shí)現(xiàn)小車的智能巡線。
關(guān)鍵詞:STM32;智能巡線小車;PWM控制
DOI:10.16640/j.cnki.37-1222/t.2017.07.137
1 引言
近年來,隨著科技的快速發(fā)展,關(guān)于智能車的研究越來越受人關(guān)注,該設(shè)計(jì)可以應(yīng)用于運(yùn)輸,機(jī)器人,醫(yī)療器械等許多方面,現(xiàn)實(shí)意義很強(qiáng)。智能巡線小車,它集成機(jī)械、電子、計(jì)算機(jī)控制于一體,在倉庫智能管理、高壓線路除冰等領(lǐng)域有著廣闊的應(yīng)用前景。小車通過紅外收發(fā)對(duì)管采集預(yù)先已鋪好的路徑信息,通過后輪電機(jī)驅(qū)動(dòng)前進(jìn)和前輪舵機(jī)控制前進(jìn)方向驅(qū)動(dòng)小車行駛,從而實(shí)現(xiàn)小車的巡線功能。
2 基于STM32的智能巡線小車的總體設(shè)計(jì)方案
STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計(jì)的ARM Cortex-M3內(nèi)核。小車系統(tǒng)以STM32為主控芯片,利用紅外收發(fā)對(duì)管采集道路信息,充分利用STM32串口資源和高速的運(yùn)算、處理能力來實(shí)現(xiàn)巡線功能;通過調(diào)節(jié)PWM占空比實(shí)現(xiàn)調(diào)節(jié)電機(jī)的轉(zhuǎn)速,根據(jù)傳感器采集到的路徑位置計(jì)算偏差,通過PD算法調(diào)整舵機(jī)轉(zhuǎn)動(dòng)的角度,從而實(shí)現(xiàn)精確巡線。
系統(tǒng)采用2種供電方式。由于STM32需要3.3V恒壓供電,而現(xiàn)有的充電電池隨著用電時(shí)間會(huì)有所變化,勢(shì)必會(huì)影響芯片的正常工作,因此本設(shè)計(jì)采用7.2V 充電電池和低壓差穩(wěn)壓芯片TPS7350和TPS7333,以達(dá)到3.3V恒壓的目的;后輪采用飛思卡爾B車電機(jī),供電電源采用7.2V充電電池和升壓芯片B0512使電壓達(dá)到12V。
3 硬件電路設(shè)計(jì)
硬件電路是由電源模塊、單片機(jī)最小系統(tǒng)模塊、循跡模塊和電機(jī)驅(qū)動(dòng)模塊組成的。下面分別介紹下電源模塊、循跡模塊和單機(jī)驅(qū)動(dòng)模塊。
3.1 電源模塊電路
整個(gè)供電系統(tǒng)是通過一節(jié)飛思卡爾專用7.2V充電電池供電,STM32單片機(jī)需要3.3V電源,循跡模塊需要5V電源,電機(jī)用電池直接供電,所以采用壓降比較小的TPS7350和TPS7333穩(wěn)壓到5V和3.3V。
3.2 循跡模塊電路
小車循跡模塊是由發(fā)射電路、接收電路及比較電路組成。按照跑道線行進(jìn)的前提是能檢測(cè)到跑道信息,跑道采用黑色絕緣膠帶。發(fā)射電路發(fā)出紅外光線,經(jīng)地面(白底、黑線)反射后被接收管接收,采用帶有差動(dòng)輸入的4運(yùn)算放大器LM393為核心器件判斷小車所處的位置。
3.3 電機(jī)驅(qū)動(dòng)模塊電路
電機(jī)驅(qū)動(dòng)模塊是由可以承受大電流的MOS管和驅(qū)動(dòng)芯片IR2104構(gòu)成的,單片機(jī)輸出PWM波形給驅(qū)動(dòng)芯片,驅(qū)動(dòng)芯片經(jīng)過處理控制電機(jī)的正轉(zhuǎn),反轉(zhuǎn)以及停止。
4 軟件代碼調(diào)試
系統(tǒng)開始工作,首先初始化IIC、UART串口、PWM、外部中斷,初始化結(jié)束程序進(jìn)入大循環(huán)。首先對(duì)循跡模塊進(jìn)行初始化,當(dāng)循跡模塊采集道路信息放給單片機(jī)后,單片機(jī)會(huì)把信息進(jìn)行處理同時(shí)對(duì)電機(jī)驅(qū)動(dòng)模塊輸出PWM波。
5 結(jié)論
本文針對(duì)智能巡線小車的設(shè)計(jì),對(duì)其控制原理、結(jié)構(gòu),軟件設(shè)計(jì)及其硬件設(shè)計(jì)做了充分的介紹。通過軟硬件的修改、參數(shù)的整定,實(shí)現(xiàn)了送貨小車自主送貨的基本的功能。在此過程中學(xué)習(xí)了硬件結(jié)構(gòu),軟件調(diào)試、了解了各種結(jié)構(gòu)和功能。通過這段時(shí)間的學(xué)習(xí),給了我在智能車的這條道路上繼續(xù)探索的信心。另外,讓我能夠體會(huì)到發(fā)明創(chuàng)造給我?guī)淼氖斋@,帶動(dòng)了我的興趣,讓我能夠在這條道路上學(xué)習(xí)到許多書本上沒有的知識(shí)。
參考文獻(xiàn):
[1]李維軍,韓小剛,李晉.基于單片機(jī)用軟件實(shí)現(xiàn)直流電機(jī)PWM調(diào)速系統(tǒng)[J].機(jī)電一體化,2004,10(05):49-51.
[2]藍(lán)厚榮.單片機(jī)的PWM控制技術(shù)[J].工業(yè)控制計(jì)算機(jī),2010,23(03):97
-98.
[3]蔣華龍.基于單片機(jī)的輪式機(jī)器人設(shè)計(jì)[D].成都:電子科技大學(xué),2009:30-40.
[4]周淑娟.基于單片機(jī)智能循跡小車的設(shè)計(jì)方案[J].工業(yè)技術(shù)與職業(yè)教育,2011,9(02):12-18.
[5]譚浩強(qiáng).C程序設(shè)計(jì)(第四版)[M].清華大學(xué)出版社.
基金項(xiàng)目:省級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目:基于STM32單片機(jī)的智能巡線小車(編號(hào)201610379131)
作者簡(jiǎn)介:張海兵(1996-),男,安徽淮南人,學(xué)生。