


摘""要:設計并實現了一種基于單片機的語音控制智能車系統。系統采用STM32單片機作為主控制器,配合語音識別模塊、紅外避障模塊、循跡模塊和無線通信模塊等的協同工作,實現了小車的自主循跡和語音控制功能。通過語音指令的識別和處理,實現對智能小車的進退、轉向和停止等控制。實驗結果表明,設計的小車對指令的識別和動作執行迅速、準確,行駛穩定,說明設計方法正確有效,可以應用到其他類似的語音控制的場景,為無人駕駛汽車的研究奠定了基礎。
關鍵詞:語音控制""STM32單片機""避障""循跡
中圖分類號:TN912.3;TP23
Design"of"Voice-Controlled"Intelligent"Vehicle
ZHANG"Yan
School"of"Information"Science"and"Engineering,"Dalian"Ocean"University,"Dalian,"Liaoning"Province,"116023"China
Abstract:"In"this"article,"a"voice-controlled"intelligent"vehicle"system"based"on"a"microcontroller"has"been"designed"and"implemented."The"system"uses"the"STM32"microcontroller"as"the"main"controller,"working"in"conjunction"with"a"voice"recognition"module,"an"infrared"obstacle"avoidance"module,"a"tracking"module,"and"a"wireless"communication"module,"to"achieve"autonomous"tracking"and"voice"control"capabilities"for"the"vehicle."Through"the"recognition"and"processing"of"voice"commands,"the"intelligent"vehicle"is"controlled"to"advance,"retreat,"turn,"and"stop."The"experimental"results"show"that"the"designed"vehicle"quickly"and"accurately"recognizes"commands"and"performs"actions,"with"stable"driving,"indicating"that"the"design"method"is"correct"and"effective."It"can"be"applied"to"other"similar"voice-controlled"scenarios"and"has"laid"the"foundation"for"the"research"of"autonomous"driving"vehicles.
Key"Words:"Voice"control;"STM32"microcontroller;"Obstacle"avoidance;"Tracking
信息技術的快速發展推動了汽車行業向智能化轉型,智能小車集成了前沿技術,成為智能制造的關鍵標志,并在多個領域展現出應用潛力。它不僅是技術創新,也極具教育實踐意義,在電子設計大賽和高校科研教學中占有重要地位。智能小車在功能、便攜性和應用范圍上具有優勢,預示著其未來有廣闊的發展空間。
1""整體方案設計
本系統設計了一種集成語音控制、自動循跡和避障功能的小車。硬件包括單片機最小系統、語音識別、避障、循跡和電機驅動模塊,如圖1所示。軟件方面,通過編程和算法設計實現了語音識別、循跡、避障等功能。
2""硬件電路設計
2.1""STM32最小系統
系統的核心是STM32單片機最小系統,系統采用高性能控制器STM32F103RCT6為控制核心,和其他的外圍電路共同將傳感器中采集的信息進行處理,最終實現對語音控制小車的控制功能。STM32最小系統主要包括時鐘電路、復位電路、電源電路等。
STM32晶振電路選擇32MHz的晶振。晶振的輸出連接到單片機的外部時鐘引腳,為單片機提供基準時鐘信號。STM32復位電路用于控制單片機系統啟動和初始化的重要部分。它由復位電源、復位按鈕和復位電路組成。復位電源是為單片機提供復位信號的電源,這里用的是3.3"V電源。
2.2""語音控制模塊
語音信號處理模塊是語音控制小車控制系統的重要組成部分,其主要功能是完成語音信號的采集、處理和識別,從而實現小汽車的語音控制功能。模塊內置STC11L08XE單片機和一個咪頭。在語音信號采集階段,模塊使用內置的咪頭采集環境中的語音信號,并進行采樣和量化處理。在語音信號預處理階段,模塊對采集到的語音信號進行降噪、濾波、分幀等處理,提高信號的質量。在特征提取階段,模塊從經過預處理的語音數據中提取關鍵特征,如Mel頻率倒譜系數(Mel"Frequency"Cepstrum"Coefficient,MFCC)。在建立聲學模型階段,模塊使用訓練好的高斯混合模型(Gaussian"Mixture"Module,GMM)等算法建立聲學模型,以便在語音識別階段進行匹配。在語音識別階段,模塊將采集到的語音信號與建立的聲學模型進行匹配,并輸出識別結果[1]。
2.3""NRF24L01無線模塊
NRF24L01是一種低功耗、高性能的無線通信模塊,被廣泛應用于無線傳輸領域。它具有高速數據傳輸、多通道和多設備通信、低功耗設計、強大的抗干擾能力以及靈活的配置和接口[2]。
本文選擇NRF24L01無線模塊用于單片機與語音控制模塊進行通信,實現語音信號控制小車的運動。使用能發射或接收端CE接單片機的P1.5,CE不能為高電平,為了防止NRF24L01內部發送數據時鎖相環開環控制造成載波振蕩;SPI引腳MISO、MOSI、SCK和CSN用來配置24L01的發射、接收、空閑和掉電模式,分別接到單片機的P1.1~P1.4;中斷端IRQ,接到單片機的P1.0,當NRF24L01接收到有效的語音數據,該模塊就能通過IRQ引腳傳輸數據,單片機從NRF24L0l自帶的RX寄存器中讀出接收到的數據;振蕩器選擇16M晶振,功率放大器供電端VDD_PA輸出為1.8"V,ANT1和ANT2接天線,電源選擇3.3"V[3]。
2.4""電機驅動模塊電路設計
L298N是一種雙H橋直流電機驅動器,通過穩定電源電壓來控制電機的供電,以實現電機的穩定運行。它可以提供高達2"A的電流輸出,并具備雙向驅動功能,適用于直流電機的控制。L298N電路模塊采用了雙橋驅動芯片,通過控制輸入信號來調節電機的轉速和方向。它具有多個引腳用于連接外部控制信號,包括使能端、方向端和PWM輸入端。引腳OUT1、OUT2接電機M1,OUT3、OUT4接電機M2。TN1~TN4引腳分別接單片機的PB5~PB8,可以實現電機的正轉、反轉、制動和停止等操作[4]。
2.5""循跡模塊電路設計
循跡模塊采用一對灰度傳感器對管,分別連接在單片機的PB13、PB14口上,用于實現小車的循跡功能。灰度傳感器對管是2個反射式紅外光電傳感器ST188的組合,能夠檢測地面的反射光強度,從而判斷小車當前所處的軌道位置。循跡模塊中的灰度傳感器對管通過對比不同通道的光強度,可以判斷出黑色和白色地面的差異,從而確定小車是否偏離軌道。當小車偏離軌道時,灰度傳感器對管會檢測到不同的反射光強度,通過控制系統的反饋機制,使小車進行相應的調整,以實現精確的循跡操作。
2.6""紅外避障模塊電路設計
紅外避障模塊是利用ST188配合比較器實現避障功能,模塊輸出端接單片機的PB12引腳上。小車行駛過程中,紅外避障模塊發射紅外光并監測其反射情況。當發射出去的紅外光沒有發射回來,光電晶體管沒有電流處于截止狀態,比較器的同相端電壓比反相端電壓高,輸出高電平,發光二極管處于熄滅狀態,小車判斷前方沒有障礙物。當光線遇到前方物體并反射回來時,光電晶體管導通,比較器的同相端電壓被拉低,比較器輸出低電平,此時,發光二極管被點亮,小車能夠判斷前方存在障礙物。
3""軟件系統設計
3.1""STM32單片機主程序設計
在主程序中,首先進行系統初始化和外設配置,然后進入一個判斷。如果是循跡模式,讀取左右循跡傳感器的數據。程序通過讀取的數據來實時監測前方障礙物和地面黑線,根據監測結果來調整小車的運動狀態,使其能夠實現自動循跡行駛的功能;如果是語音控制模式,通過串口通信和NRF24L01無線模塊,程序能夠接收和發送指令,實現語音控制和數據傳輸。
3.2""NRF24L01無線通信模塊程序設計
NRF24L01無線通信模塊程序首先對24L01模塊進行初始化和檢測,確保模塊正常工作。通過設置寄存器來配置發送和接收地址,程序讀取和寫入寄存器以及發送和接收數據。發送數據時,程序將待發送數據寫入發送緩沖區,并啟動發送過程。發送完成后,程序檢查發送狀態并清除相關中斷標志。對于接收數據,程序等待接收完成并讀取接收緩沖區的數據。整個過程中,程序使用SPI通信,并根據不同情況返回相應的狀態或錯誤碼。
3.3""語音識別模塊程序設計
系統初始化后,通過內置麥克風或外部音頻輸入接口進行音頻采集。采集到的音頻信號需要經過預處理,去除噪音和增強語音特征。通過特征提取算法從音頻信號中提取關鍵的語音特征,將其轉化為可供識別的特征向量。在特征提取完成后,將提取到的特征與預先訓練好的語音模型進行匹配,通過比較相似度確定最可能的識別結果。最后,將識別結果輸出給無線通信模塊,無線通信模塊數據傳輸給單片機,以實現語音控制。
3.4""L298N電機運動控制程序設計
首先,確定哪些引腳用于控制電機的方向和速度,初始化引腳和變量;其次,通過單片機的IO口或PWM輸出來生成相應的控制信號,控制引腳的高低電平和脈沖寬度進而控制電機的運動。
4""系統測試
該系統通過了語音控制功能測試、避障功能測試和循跡功能測試。
語音控制功能測試涵蓋了5種指令:左轉、右轉、前進、后退和停止,平均響應時間低于0.5"s;紅外避障功能測試過程中,以教室的講臺為障礙物,小車可以在20"cm的距離范圍內檢測出障礙物并做出預期的避障行為;循跡功能測試過程中,在教室地面上繪制了一條環形作為指示線路,然后觀察小車的行為。測試結果表明,小車能夠準確地識別和跟蹤地面上的黑線,并沿著指定路徑穩定地行駛[5]。
5nbsp;"結語
本系統通過語音識別模塊將語音指令轉化為控制信號,實現對小車的方向、運動控制。通過紅外傳感器感知周圍環境,自動跟隨指定的軌跡行駛或者探測到障礙物能及時做出避讓動作實現自主循跡、避障功能。這一成果不僅驗證了設計理念,也提供了一個實踐電子設計和編程技能的教學平臺,能夠激發學生對科技探索的熱情,培養他們的創新能力和團隊協作精神。
參考文獻
[1]"丁書亞,王魯云.語音控制遙控小車設計與制作[J].電子元器件與信息技術,2020,4(6):75-76.
[2]"黃凱榮.語音控制智能小車的設計[J].電子制作,2020(15):41-44.
[3]"米媛園,李光宗,喬丹妮.基于LD3320的語音控制和自動避障的智能小車設計[J].計算機測量與控制,2021(24):36-37,40.
[4]"王鈺,朱琳,蘇世雄,等.基于STM32的雙模式智能避障小車系統設計與實現[J].自動化與儀表,2021,36(3):33-36,54.
[5]"田亞立,梁波.語音和射頻遙控的多功能小車設計[J].福建電腦,2022,38(12):61-68.