《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于A(yíng)RM Cortex-M3的電腦鼠控制系統(tǒng)研究
基于A(yíng)RM 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ì)方案可行,,滿(mǎn)足系統(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 電腦鼠工作原理
    電腦鼠周?chē)惭b六組紅外傳感器,分別感知左方,、左前方、前方,、右前方,、右方,發(fā)射端發(fā)射一定頻率的紅外線(xiàn),,接收端通過(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é)紅外線(xiàn)探測(cè)感知,;電源為整個(gè)系統(tǒng)供電穩(wěn)定電壓,,陀螺儀及指南針模塊確定電腦鼠方位,根據(jù)走過(guò)的距離,,從而解析出所在坐標(biāo),。硬件組成如圖1所示。

a.jpg


2.1 電源模塊
    電源調(diào)節(jié)器件通常使用線(xiàn)性穩(wěn)壓器件(如LM7805),,具有輸出電壓可調(diào),、穩(wěn)壓精度高的優(yōu)點(diǎn),但是其線(xiàn)性調(diào)整工作方式在工作有較大的“熱損耗”,,導(dǎo)致電源利用率不高,、滿(mǎn)足不了便攜低功耗需求。開(kāi)關(guān)電源調(diào)節(jié)器,,不同于線(xiàn)性穩(wěn)壓器件,,以完全導(dǎo)通或關(guān)斷的方式工作,,通過(guò)控制開(kāi)關(guān)管的導(dǎo)通與截止時(shí)間,有效的減少工作中的“熱損耗”,,提高了電源利用率,。本設(shè)計(jì)中電源模塊為系統(tǒng)提供三種不同的電壓,12V電源用于驅(qū)動(dòng)電機(jī),,使用開(kāi)關(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總線(xiàn)的外設(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)算速度方面滿(mǎn)足要求,。
2.3 電機(jī)及驅(qū)動(dòng)模塊
   為提高系統(tǒng)功率、降低功耗,,驅(qū)動(dòng)電路采用基于脈寬調(diào)制方式的集成電路芯片L298N,。比較常見(jiàn)的是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è)和處理。紅外線(xiàn)經(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è)電腦鼠是否走在中線(xiàn)上,,以便及時(shí)做出姿勢(shì)校正,;左前方和右前方兩組傳感器主要檢查前方是否有路口;前方兩組傳感器配合電機(jī),,協(xié)同工作實(shí)現(xiàn)45度轉(zhuǎn)彎,。紅外光發(fā)射頻率越高,傳播距離相對(duì)越遠(yuǎn),,在本設(shè)計(jì)中由于迷宮墻壁之間距離16.8cm(單元格18cm.墻壁厚度1.2cm),,而電腦鼠的寬度一般為10cm左右,車(chē)體距兩邊墻體的距離只有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)接收管接收到紅外線(xiàn),,D2導(dǎo)通,,并且反射越強(qiáng),D2阻值越小,,沒(méi)有收到紅外線(xiàn)時(shí),,D2阻值無(wú)窮大,,相當(dāng)于截止;R3和R4兩個(gè)10K電阻提供2.5V的直流偏置,。

d.jpg


3 軟件系統(tǒng)設(shè)計(jì)
   軟件模塊是系統(tǒng)的重要組成部分,,電腦鼠通過(guò)紅外檢測(cè)獲取周?chē)畔ⅲ瓿汕斑M(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繪制曲線(xiàn),電壓值與距離關(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ì)稱(chēng)RC雙T網(wǎng)絡(luò)良好的選頻特性,;電機(jī)及驅(qū)動(dòng)模塊選用效率高、響應(yīng)快的空心杯直流電機(jī),。經(jīng)試驗(yàn)驗(yàn)證,,該設(shè)計(jì)方案可以滿(mǎn)足系統(tǒng)要求。

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