《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM Cortex-M3的電腦鼠控制系統(tǒng)研究
基于ARM Cortex-M3的電腦鼠控制系統(tǒng)研究
電子元器件應(yīng)用
張輝輝,崔琪琳,仵杰,劉珍,周新剛,王昭
摘要: 為了使電腦鼠更加高效完成迷宮搜尋沖刺任務(wù),設(shè)計(jì)了以STM32F103RCT6增強(qiáng)型處理器為核心的電腦鼠控制系統(tǒng)。通過(guò)接收管感應(yīng)反射光的光強(qiáng)來(lái)判斷電腦鼠與墻壁之間的距離,改進(jìn)傳統(tǒng)數(shù)字式紅外傳感器只能判斷有無(wú)障礙而無(wú)法測(cè)距的不足,定時(shí)器輸出PWM信號(hào)控制空心杯直流電機(jī),軟件部分采用模塊化設(shè)計(jì)方法。試驗(yàn)結(jié)果驗(yàn)證該設(shè)計(jì)方案可行,滿足系統(tǒng)要求。
Abstract:
Key words :

    電腦鼠(micromouse)是一種由微處理器控制的集環(huán)境感知、動(dòng)態(tài)決策與規(guī)劃、行為控制與執(zhí)行等多種功能于一體的微型機(jī)器人。目前大多數(shù)電腦鼠采用Luminarv Micro Stellaris R系列LM3S101、LM3S102、LM3S615或者單片機(jī)微控制器,其紅外檢測(cè)模塊采用了一體式紅外傳感器,只能判斷有無(wú)障礙物,無(wú)法進(jìn)行測(cè)距;電機(jī)部分采用步進(jìn)電機(jī),耗電大、速度慢;此外軟件系統(tǒng)多采用傳統(tǒng)中左或中右算法,效率較低。本文設(shè)計(jì)了基于Cortex-M3內(nèi)核的32位ARM芯片STM32F103RCT6作為運(yùn)算控制中心,由其產(chǎn)生PWM信號(hào)調(diào)制紅外發(fā)射接收實(shí)現(xiàn)測(cè)距,配套空心杯直流電機(jī),通過(guò)改進(jìn)智能迷宮算法,使電腦鼠出色高效地完成迷宮搜尋及沖刺任務(wù)。

1 電腦鼠工作原理
    電腦鼠周圍安裝六組紅外傳感器,分別感知左方、左前方、前方、右前方、右方,發(fā)射端發(fā)射一定頻率的紅外線,接收端通過(guò)六個(gè)方向的反射波來(lái)判斷是否有障礙物,實(shí)時(shí)地儲(chǔ)存單元格的資料,通過(guò)六組紅外傳感器反饋的迷宮信息,控制電腦鼠完成避障、轉(zhuǎn)彎、加速等動(dòng)作,運(yùn)用智能算法對(duì)迷宮的部分單元格或全部單元格進(jìn)行遍歷,并將迷宮的信息以有效的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ),微控制器根據(jù)這些記錄信息運(yùn)用迷宮高效算法找到一條最優(yōu)化路徑,從而實(shí)現(xiàn)從起點(diǎn)到終點(diǎn)的最大化沖刺。

2 硬件電路設(shè)計(jì)
    為完成迷宮探測(cè)和沖刺任務(wù),電腦鼠需具備以下各功能模塊:ARM微處理器作為控制核心協(xié)調(diào)各功能模塊正常工作;電機(jī)及驅(qū)動(dòng)模塊實(shí)時(shí)控制電機(jī)啟動(dòng)、制動(dòng);紅外檢測(cè)模塊負(fù)責(zé)紅外線探測(cè)感知;電源為整個(gè)系統(tǒng)供電穩(wěn)定電壓,陀螺儀及指南針模塊確定電腦鼠方位,根據(jù)走過(guò)的距離,從而解析出所在坐標(biāo)。硬件組成如圖1所示。

a.jpg


2.1 電源模塊
    電源調(diào)節(jié)器件通常使用線性穩(wěn)壓器件(如LM7805),具有輸出電壓可調(diào)、穩(wěn)壓精度高的優(yōu)點(diǎn),但是其線性調(diào)整工作方式在工作有較大的“熱損耗”,導(dǎo)致電源利用率不高、滿足不了便攜低功耗需求。開關(guān)電源調(diào)節(jié)器,不同于線性穩(wěn)壓器件,以完全導(dǎo)通或關(guān)斷的方式工作,通過(guò)控制開關(guān)管的導(dǎo)通與截止時(shí)間,有效的減少工作中的“熱損耗”,提高了電源利用率。本設(shè)計(jì)中電源模塊為系統(tǒng)提供三種不同的電壓,12V電源用于驅(qū)動(dòng)電機(jī),使用開關(guān)式電源LM2596將12V直流電壓降到5V給紅外模塊、人機(jī)交互模塊供電,再通過(guò)AMS1117將5V降到3.3V,供ARM處理器及其他模塊使用。
2.2 微處理器模塊
   微處理器是整個(gè)控制系統(tǒng)的核心,它完成從紅外檢測(cè)模塊獲取路徑信息,采集瞬時(shí)速度,進(jìn)行數(shù)據(jù)處理,控制算法運(yùn)算,輸出實(shí)時(shí)控制量等功能。為了保證系統(tǒng)的實(shí)用性和易擴(kuò)展性,本控制系統(tǒng)采用意法半導(dǎo)體推出的“增強(qiáng)型”系列STFM32F103RCT6,STM32F103xx增強(qiáng)型系列使用高性能的ARM Correx-M3 32位的RISC內(nèi)核,工作頻率為72MHz,內(nèi)置高速存儲(chǔ)器(高達(dá)128K字節(jié)的閃存和20K字節(jié)的SRAM),豐富的增強(qiáng)I/O端口和聯(lián)接到兩條APB總線的外設(shè)。所有型號(hào)的器件都包含2個(gè)12位的ADC、3個(gè)通用16位定時(shí)器和一個(gè)PWM定時(shí)器,還包含標(biāo)準(zhǔn)和先進(jìn)的通信接口:多達(dá)2個(gè)I2C和SPI、3個(gè)USART、一個(gè)USB和一個(gè)CAN,在存儲(chǔ)容量和運(yùn)算速度方面滿足要求。
2.3 電機(jī)及驅(qū)動(dòng)模塊
   為提高系統(tǒng)功率、降低功耗,驅(qū)動(dòng)電路采用基于脈寬調(diào)制方式的集成電路芯片L298N。比較常見的是15腳Muliwart封裝的L298N,內(nèi)部包含四通道邏輯驅(qū)動(dòng)電路,即內(nèi)含兩個(gè)H橋的高電壓大電流雙全橋式驅(qū)動(dòng)器,可以驅(qū)動(dòng)和控制兩個(gè)直流電機(jī),芯片采用供給電機(jī)電源和邏輯電平電源的雙電源供電,可接受標(biāo)準(zhǔn)TTL邏輯電平信號(hào),驅(qū)動(dòng)46V,2A以下的電機(jī),并可驅(qū)動(dòng)電感性負(fù)載。其中ENA、ENB是控制使能端,IN1、IN 2、IN3、IN4是控制電平輸入端,電路如圖2所示。本設(shè)計(jì)中采用空心杯直流電機(jī),它具有突出的節(jié)能特性、靈敏方便的控制特性和穩(wěn)定的運(yùn)行特性,最大效率一般在70%以上,部分產(chǎn)品可達(dá)到90%以上;起動(dòng)、制動(dòng)迅速,響應(yīng)極快;其重量、體積相對(duì)減少1/3-1/2,通過(guò)PWM調(diào)節(jié)脈沖占空比進(jìn)行調(diào)速。

b.jpg


2.4 紅外檢測(cè)模塊
    紅外檢測(cè)模塊主要負(fù)責(zé)迷宮環(huán)境監(jiān)測(cè)和處理。紅外線經(jīng)調(diào)制后由發(fā)射管發(fā)出,接收管接收迷宮墻壁反射光,根據(jù)接收反射信號(hào)強(qiáng)弱來(lái)判斷與隔墻的距離。本系統(tǒng)相對(duì)傳統(tǒng)紅外檢測(cè)方法做如下特點(diǎn):
(1)紅外傳感器由原來(lái)的5組增加到6組。除了正前、正左、正右以及正前方兩個(gè)45度斜角外,正前方增加1組紅外傳感器,通過(guò)正前方兩組傳感器信息的融合實(shí)現(xiàn)路口45度斜走,相對(duì)于以往的90度直角調(diào)整,節(jié)約了時(shí)間,提高了效率。
(2)采用基于雙T選頻網(wǎng)絡(luò)的放大器設(shè)計(jì),紅外傳感器根據(jù)反射信號(hào)的強(qiáng)弱實(shí)現(xiàn)電腦鼠與障礙物之間的測(cè)距。以往使用的是一體化紅外接收傳感器(如IRM8601S),其接收頭內(nèi)部集成自動(dòng)增益控制電路、帶通濾波電路、解碼電路及輸出驅(qū)動(dòng)電路,但由于檢測(cè)信號(hào)輸出的是數(shù)字信號(hào),只能判斷有或無(wú)障礙物,不能根據(jù)檢測(cè)信號(hào)輸出的強(qiáng)度計(jì)算距離。本設(shè)計(jì)中采用基于雙T選頻網(wǎng)絡(luò)和TLC084組成的選頻放大設(shè)計(jì),實(shí)現(xiàn)頻率不同增益不同,對(duì)有用信號(hào)進(jìn)行放大處理,濾除或抑制無(wú)用信號(hào)。
(3)發(fā)射三種頻率調(diào)制波,減少信號(hào)之間的干擾。6組傳感器分為三組,正左和正右兩組傳感器負(fù)責(zé)檢測(cè)電腦鼠是否走在中線上,以便及時(shí)做出姿勢(shì)校正;左前方和右前方兩組傳感器主要檢查前方是否有路口;前方兩組傳感器配合電機(jī),協(xié)同工作實(shí)現(xiàn)45度轉(zhuǎn)彎。紅外光發(fā)射頻率越高,傳播距離相對(duì)越遠(yuǎn),在本設(shè)計(jì)中由于迷宮墻壁之間距離16.8cm(單元格18cm.墻壁厚度1.2cm),而電腦鼠的寬度一般為10cm左右,車體距兩邊墻體的距離只有3cm左右,所以正左方和正右方發(fā)射頻率選擇為33kHz,左前方和右前方發(fā)射35kHz,正前方距離最遠(yuǎn),發(fā)射頻率為38kHz。具體如圖3所示。

c.jpg

    本設(shè)計(jì)進(jìn)行了硬件電路改進(jìn),由STM32定時(shí)器輸出三路PWM信號(hào),每?jī)山M紅外發(fā)射管共用一路PWM信號(hào),遇到障礙物后返回,紅外接收管進(jìn)行信號(hào)采集,通過(guò)選頻放大器對(duì)有用信號(hào)進(jìn)行放大處理,送入STM32的12位逐次逼近型AD轉(zhuǎn)換器。由于整流濾波有延時(shí),所以此處采用交流采樣,ADC在最高速采樣的時(shí)候需要1.5十12.5個(gè)ADC周期,在14M的ADC時(shí)鐘下達(dá)到1Msps的速度。紅外測(cè)距電路如圖4所示,當(dāng)接收管接收到紅外線,D2導(dǎo)通,并且反射越強(qiáng),D2阻值越小,沒有收到紅外線時(shí),D2阻值無(wú)窮大,相當(dāng)于截止;R3和R4兩個(gè)10K電阻提供2.5V的直流偏置。

d.jpg


3 軟件系統(tǒng)設(shè)計(jì)
   軟件模塊是系統(tǒng)的重要組成部分,電腦鼠通過(guò)紅外檢測(cè)獲取周圍信息,完成前進(jìn)、轉(zhuǎn)彎、沖刺、停止等基本動(dòng)作,此外還要通過(guò)以獲取信息實(shí)現(xiàn)最優(yōu)路徑的搜尋并完成最后的沖刺。本設(shè)計(jì)才用模塊化設(shè)計(jì),通過(guò)主程序調(diào)用各個(gè)功能子程序,主程序流程圖和中斷流程圖如圖5(a)(b)所示。

e.jpg

4 實(shí)驗(yàn)驗(yàn)證及分析
(1)紅外傳感器測(cè)距系統(tǒng)中使用基于選頻網(wǎng)絡(luò)的放大設(shè)計(jì),由于電阻電容選用國(guó)標(biāo),無(wú)法使中心頻率恰好落在38kHz,雙T選頻網(wǎng)絡(luò)中心頻率f0=1/2πRC,選擇R/C=10k/430pF,f0=37kHz,用multisim仿真出的幅頻特性如圖6所示,搭建硬件實(shí)驗(yàn)電路,中心頻率并未落在37kHz而是30kHz,減小RC值多次試驗(yàn),當(dāng)R/C=9.1k/430pF,中心頻率落在38kHz。

f.jpg


(2)迷宮墻壁由空心的白色塑料做成,有很大一部分紅外光發(fā)生透射,加之日光影響,因此如法給發(fā)射管套用黑色外管,減少外界干擾;由ARM微處理器產(chǎn)生PWM信號(hào)送人紅外發(fā)射管,接收管接收經(jīng)過(guò)調(diào)制的紅外信號(hào);用三極管實(shí)現(xiàn)電平轉(zhuǎn)換,調(diào)節(jié)電位器增加發(fā)射功率,使信號(hào)調(diào)整放大到A/D轉(zhuǎn)換的最佳量程范圍內(nèi),獲得期望的處理精度。通過(guò)實(shí)驗(yàn)多次測(cè)量,得到一組紅外測(cè)量距離與輸出電壓的數(shù)據(jù),以障礙物距離S為橫坐標(biāo),選頻放大后的電壓值U為縱坐標(biāo),用matlab繪制曲線,電壓值與距離關(guān)系式為U=0.1195+4.5962*S-1,如圖7所示。

g.jpg


(4)利用STM32定時(shí)器功能,通過(guò)軟件編程調(diào)制出需要的PWM信號(hào),以此控制電機(jī)、發(fā)射紅外,圖8是Timer4的CH1通道輸出頻率為38kHz,占空比為30%的PWM信號(hào)。

5 結(jié)束語(yǔ)
    本文設(shè)計(jì)了基于STM32F103RCT6的電腦鼠控制系統(tǒng),在matlab、muhisim仿真基礎(chǔ)上,確定了選頻網(wǎng)絡(luò)的RC參數(shù),并通過(guò)實(shí)驗(yàn)得到距離與電壓值的關(guān)系圖,體現(xiàn)了對(duì)稱RC雙T網(wǎng)絡(luò)良好的選頻特性;電機(jī)及驅(qū)動(dòng)模塊選用效率高、響應(yīng)快的空心杯直流電機(jī)。經(jīng)試驗(yàn)驗(yàn)證,該設(shè)計(jì)方案可以滿足系統(tǒng)要求。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。