《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于SPCE061A的小車語音控制系統
基于SPCE061A的小車語音控制系統
摘要: 本文設計的語音控制系統主要采用16位單片機SPCE061A來實現。軟件編程則是采用C語言和匯編語言的混合編程來實現的,集兩種語言的優點于一體,實現對硬件的實時控制。
Abstract:
Key words :

  引言

  語音控制系統是一種智能化系統,目前國內較成型的語音控制產品還不多,因此,進行這方面的研究是很有意義的。

  SPCE061A是一款16位微控制器,其高速的處理和特殊的內核結構使它能夠非常快速地處理復雜的數字信號,同時其內嵌32KB的FLASHROM和2KB的SRAM能夠存儲所需的數據和程序,特別是其所提供的語音識別函數可供方便地進行調用,不需要過多地考慮語音算法,為語音識別設計帶來了很大的方便。本文選用SPCE061A作為該系統的控制核心,系統硬件結構如圖1所示。

系統硬件結構圖

圖1系統硬件結構圖

  方案論證

  主控模塊和語音處理模塊的選擇

  較MCS-51系列單片機而言,SPCE061A單片機內部集成有32KB的ROM、2KB的SRAM,更能滿足軟件對空間的要求,且不需要擴展相關存儲器。另外,該類單片機完全支持C語言,軟件編寫比較方便,語音處理模塊采用凌陽的語音壓縮算法,也用軟件來實現。該單片機內部集成有A/D、D/A轉換功能,方便實現語音錄放功能。

  電機模塊的選擇

  電機模塊選擇直流電機。與步進電機相比較而言,直流電機具有轉速快、控制方便等特點,更能夠滿足小車較高速行駛情況的要求,如圖2所示。

電機控制模塊原理圖

圖2電機控制模塊原理圖

  測路程方案的選擇

  本文利用紅外對管來實現對小車的路程測量。在小車的車輪轉軸上安裝一個不透光轉盤,在轉盤邊緣均勻地打N個孔,當紅外發射管發射的紅外光經小孔照射到接收管時,接收管的反向端電平將發生變化,單片機通過檢測這種電平的變化便可以自行計算出小車的運行路程。紅外對管還具有體積較小、安裝較霍爾傳感器更方便、成本低等特點。

  系統硬件結構

  語音控制小車的系統硬件結構主要由兩部分組成:一部分是SPCE061A精簡開發板,另外一部分是電機控制板。SPCE061A精簡開發板為系統主控模塊,電機控制板則驅動小車的前后兩個電機按系統的要求工作。

  小車控制板主要包括接口模塊、電機控制模塊、預留傳感器接口以及電源模塊等幾部分。其中,電源模塊采用集成穩壓芯片L7805,在輸出端(控制板的JP11)并接了一個470μF的去耦電容和一個0.1μF的濾波電容,增強了系統電壓的穩定性和抗干擾性能。

  電機控制模塊是整個控制板的核心部分,其根據61板的具體輸出信號啟動或停止相應的電機,并調整電機的正反轉方向,實現小車的前進、倒退等功能。后電機的控制電路包括方向控制和速度控制兩個單元,前電機的控制電路則只有方向控制單元。控制單元負責小車電機的正轉、反轉和停止三態控制。速度控制單元是擴展單元,以適應不同的場合需求。

  紅外對管測小車運行路程部分的原理圖如圖3所示。

紅外對管電路原理圖

圖3紅外對管電路原理圖

  紅外發光管D2和接收管U4安裝在同一水平線上,發射管D2一直處于發射工作狀態。當D2和U4間沒有被擋住,即D2發射的紅外線照射在U4上時,U4的2腳和3腳導通,同時2腳和1腳也導通,此時晶體管Q1的基極電壓為Ub=VDD×R12/(R12+R10),Q1導通,SPEED端近似于接地,呈低電平狀態。當D2和U4間被擋住時,即D2發射的紅外線不能照射在U4上時,U4的2腳和3腳截止,同時2腳和1腳也截止,此時Q1的基極經電阻R12和R10接地,即基極電壓為0V,此時Q1截止,SPEED端經電阻R11接到VDD,呈高電平狀態。單片機通過檢測這種高低電平的變化來實現小車的路程測量。

  軟件部分

  主程序流程

  小車的主程序流程圖如圖4所示,主要分為四部分:初始化部分、訓練部分、識別部分和重訓操作。

主程序流程圖

圖4主程序流程圖

   初始化部分的初始化操作會將SPCE061A單片機上的IOB13~IOB10設置為輸出端,用以控制電機。將其IOA的低8位IOA0~IOA7設置為下拉的輸入端,用來連接按鍵。

  訓練部分完成的工作是建立語音模型。程序一開始會判斷小車是否被訓練過,如果沒有訓練過,系統會要求對其進行訓練,并且會在訓練成功之后將訓練的模型存儲到Flash中;如果已經訓練過則會把存儲在Flash中的模型調出,裝載到辨識器中。

   在識別環節當中,如果辨識結果是名字,直接置待命標志,然后等待動作命令。只有檢測到待命標志,小車才會根據相應的辨識結果執行動作。如果沒有待命標志,即使識別到動作命令也不會執行動作。小車在執行完對應的命令之后清除待命標志,結束待命狀態。

  考慮到有重新訓練的需求,這里設置了重新訓練的按鍵。程序運行時循環掃描該按鍵,什么時間檢測到此鍵按下,則將擦除語音模型存儲區首單元(0xe000)所在的頁,等待復位到來。復位后,程序重新從頭開始執行,當檢測到語音模型存儲區首地址為0xffff(擦除后的值)時,系統會要求重新對其進行訓練。

  FIQ中斷服務程序

 

  FIQ中斷服務程序用來調用語音辨識子程序,并對a2000格式的語音進行解碼播放。

  調試及性能分析

  系統的調試以程序為主。硬件調試時,首先檢查電路的焊接是否正確,然后用萬用表測試或通電檢測。軟件調試則需要分別進行主程序、FIQ中斷服務程序、顯示子程序等的編程及調試。本程序采用單片機匯編語言編寫,用KEILuVision2編譯器編程調試。軟件調試直到語音能夠控制小車的行駛狀態,并顯示出小車的行駛距離等功能為止。

  結語

  本文設計的語音控制系統主要采用16位單片機SPCE061A來實現。軟件編程則是采用C語言和匯編語言的混合編程來實現的,集兩種語言的優點于一體,實現對硬件的實時控制。通過實驗驗證,該語音控制系統主要可實現以下功能:

  (1)可以通過語音命令來控制小車的行駛狀態,實現前進、后退、左轉、右轉等功能;

  (2)顯示小車的運行時間以及運行路程;

  (3)可以擴展控制板的調速環節,利用系統的PWM資源,實現小車的PWM調速;

  (4)預留多路開關型傳感器接口,可以自行安裝各類傳感器,配合程序實現小車的循跡、避障等功能。

  參考文獻

  1.李晶皎.嵌入式語音技術及凌陽16位單片機應用[M].北京:北京航空航天大學出版社,2003:6-8

  2.劉科斌,韓佳玲,李國賓.監控系統的語音識別與語音提示[J].遼寧師專學報,2002,4(3):19-20

  3.馬忠梅,籍順心等.單片機的C語言應用程序設計[M].北京:北京航空航天大學出版社.2004

  4.ASimpleIntelligentElectricalCarBasedonSCM.電子技術[J].2004(04)

  5.熊慶國.新型16位單片機SPCE061A及應用展望[J].現代電子技術,2003(8):55-56,59

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 我和小雪在ktv被一群男生小说| 特级毛片www| 国产精品日韩欧美亚洲另类| 两个人www免费高清视频| 最近国语免费看| 亚洲色无码国产精品网站可下载 | 18禁免费无码无遮挡不卡网站| 性欧美videos高清喷水| 久久狠狠躁免费观看| 欧美成人片一区二区三区| 免费va人成视频网站全| 色噜噜狠狠狠综合曰曰曰| 国产真实女人一级毛片| 97色精品视频在线观看| 小蝌蚪app在线观看| 久久久久久久伊人电影| 欧洲美女与动zozo| 亚洲男人天堂2017| 精品一久久香蕉国产二月| 国产一级淫片a| 久久国产精品女| 国产老买老妇bbb| caoporm在线视频| 成年丰满熟妇午夜免费视频| 久久精品国产亚洲av瑜伽| 欧美性生交活XXXXXDDDD| 人妻无码中文字幕| 精品天海翼一区二区| 国产中文字幕免费| 国产精品va一级二级三级| 国产精品无码素人福利不卡| 99热这里有精品| 妖精动漫在线观看| 中文字幕亚洲综合久久| 日本高清免费在线视频| 亚洲av午夜精品无码专区| 欧美成人片一区二区三区| 亚洲综合国产一区二区三区| 精品久久久久中文字幕日本| 四虎免费永久在线播放| 蜜臀av性久久久久蜜臀aⅴ|