• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于STM32的智能跑步機控制系統(tǒng)設(shè)計*

      2013-07-24 05:09:00
      電子測試 2013年1期
      關(guān)鍵詞:子程序寄存器語音

      李 琳 張 峰

      (西安石油大學(xué) 電子工程學(xué)院 陜西 西安 710065)

      0 引 言

      跑步機自從20 世紀(jì)80 年代面世以來,隨著集成電路和數(shù)字電路的飛速發(fā)展,其控制系統(tǒng)也已從最初的模擬單閉環(huán)控制系統(tǒng)發(fā)展到了今天的數(shù)字式雙閉環(huán)控制系統(tǒng),而從近些年來科學(xué)技術(shù)的進步和國內(nèi)外數(shù)字智能運動控制系統(tǒng)的發(fā)展趨勢來看,未來跑步機控制系統(tǒng)的智能化、數(shù)字化將成為主流的發(fā)展趨勢,這也符合人性最基本的規(guī)律,也將是改變現(xiàn)行的體育鍛煉模式的最好途徑。

      現(xiàn)今跑步機控制系統(tǒng)多以PIC 系列單片機、AVR 系列單片機為控制核心,而對于要求較高的數(shù)字化、智能化的控制系統(tǒng)來說,以上幾種控制芯片顯然滿足不了未來系統(tǒng)的要求。為滿足跑步機對高性價比、高度智能化和自動化的發(fā)展需要。系統(tǒng)就以STM32 微控制器為控制核心設(shè)計了一種新型跑步機控制系統(tǒng)。系統(tǒng)不僅可以實現(xiàn)常規(guī)的PWM 調(diào)速控制,而且還可以通過語音識別功能直接控制跑步機系統(tǒng),通過語音播放功能實現(xiàn)MP3 和故障信息播放,并且還具備心率檢測、心率控速等功能,從而使跑步機更加數(shù)字化、智能化、人性化。

      1 系統(tǒng)組成框圖

      如圖1 所示,本系統(tǒng)主要以STM32 微控制器作為主控制器,由按鍵輸入、語音識別及輸出電路、心率電路、晶振電路、反饋電路、電源電路、調(diào)速電路、顯示電路組成。既可通過心率電路來檢測跑步者身體狀態(tài),也可根據(jù)按鍵或者語音輸入的信息來進行電機調(diào)速,并且將當(dāng)前的狀態(tài)通過顯示電路顯示出來。

      2 系統(tǒng)的硬件設(shè)計

      本文主要從主控制器、電源電路、反饋電路、調(diào)速電路、心率電路、語音識別及輸出電路來介紹系統(tǒng)的硬件結(jié)構(gòu)以及工作原理。

      圖1 系統(tǒng)組成框圖

      2.1 主控制器STM32F103RBT6

      系統(tǒng)選用ST 公司的STM32F103RBT6 為主控制器。該芯片使用Cortem-M3 內(nèi)核,工作頻率為72 MHz,內(nèi)置高速存儲器,豐富的增強I/O 端口和鏈接到兩條APB 總線的外設(shè)。STM32 系列所有型號的器件都包括2 個12 bit 的ADC、3 個通用16 bit 定時器和一個PWM 定時器,還包括標(biāo)準(zhǔn)和先進的通信接口:多達(dá)2 個I2C 和SPI、3 個US-ART、一個USB 和一個CAN。其工作電壓為常見的3.3V。該內(nèi)核是專門設(shè)計于滿足集高性能、低功耗、實時應(yīng)用、具有競爭性價格于一體的嵌入式領(lǐng)域的要求[1-2]。

      2.2 電源電路

      系統(tǒng)中既要給電機提供電壓,也要給調(diào)速電路、語音識別及語音播放芯片、主控芯片分別提供15 V、5 V、3.3 V 電壓。對電機的電源輸入,通過對220 V 交流經(jīng)過整流、濾波[3]后變成直流電壓經(jīng)過IGBT[4]的調(diào)制加在直流電機兩端??刂葡到y(tǒng)中所需要的15 V、5 V、3.3 V 的電壓,由于對于功率要求不大,分別采用了LM7815、LM7805、LM1117 穩(wěn)壓芯片來提供電壓。

      2.3 反饋電路[5]

      系統(tǒng)采用雙閉環(huán)數(shù)字調(diào)節(jié),反饋量包括電流反饋和速度反饋[6]。電流反饋通過采樣電阻將IGBT E 極流出的電流進行采樣,并轉(zhuǎn)換成電壓信號,然后通過放大電路[3]把電壓放大至3.3 V 輸入到主控制芯片ADC 轉(zhuǎn)換口PA2。速度反饋利用帶有光電傳感器的碼盤,將碼盤產(chǎn)生的脈沖信號進行整形后輸入到主控制器的定時器口PA0。

      2.4 PWM 驅(qū)動電路

      PWM 控制就是對脈沖寬度進行調(diào)制的技術(shù)即通過調(diào)制其占空比實現(xiàn)對電機轉(zhuǎn)速的平滑控制[4]。本系統(tǒng)所用的STM32F103RBT6 具有PWM 輸出功能,由于輸出的波形幅值只有3.3 V,所以要對單片機輸出的PWM 信號進行隔離放大。圖2 為PWM 驅(qū)動電路。其中,PWM 信號由STM32F103RBT6 定時器TIM3 的CH3 產(chǎn)生,從PB0 輸出,PWM 信號經(jīng)過隔離后進入電機專用驅(qū)動芯片IR2101,經(jīng)過驅(qū)動后加在IGBT 的G 極,通過IGBT 完成對電機的控制。

      圖2 PWM 驅(qū)動電路

      2.5 心率電路

      系統(tǒng)采用了手握式心率檢測模塊,該模塊對手部的電極信號進行采集,產(chǎn)生脈沖信號,然后對其進行放大至3.3 V,接著進行濾波和整形后輸入到主控制器定時器口PA1。在測量數(shù)據(jù)超過正常人體心跳范圍時,系統(tǒng)對自動調(diào)低電機的轉(zhuǎn)速。

      2.6 語音識別及語音輸出電路

      圖3 為語音識別及播放部分電路原理圖[7]。LD3320是集成了語音識別和播放功能的專用語音芯片,其內(nèi)部集成了快速穩(wěn)定的優(yōu)化算法,不需外接Flash、RAM,不需要用戶事先訓(xùn)練和錄音而完成非特定人語音識別,識別準(zhǔn)確率高。本系統(tǒng)的人機對話功能就由語音識別實現(xiàn)。

      圖3 中,LD3320 芯片與STM32F103RBT6 以并行方式相連接,它的P0-P7 為8 根數(shù)據(jù)線與主控芯片的8 個I/O口相連接;其A0、RDB、WRB、CSB 四個控制信號以及一個中斷返回信號INTB 也直接與主控制器的I/O 相連接,復(fù)位信號RSTB 與主控芯片共用一個復(fù)位按鍵;語音輸入是AIN_P、AIN_N 兩個端口經(jīng)過濾波電路連接一個麥克風(fēng),而語音輸出是SPP、SPN 兩個端口直接連接一個550 mW 的揚聲器,通過改變EQ3 端的滑動變阻器可調(diào)節(jié)語音播放的音量;它的時鐘是與主控芯片共用的;它的兩個LED 是復(fù)位指示燈。當(dāng)有語音輸入的時候,芯片首先對輸入的語音進行頻譜分析,然后提取語音特征,通過語音識別器將提取的語音特征與提前寫入的識別列表中的語音特征進行比對得出識別結(jié)果,將識別的結(jié)果放入專用寄存器中,完成識別的過程。識別完成后由中斷程序讀取識別的結(jié)果,這時通過對4 個控制信號判定是否從P0-P7 口將識別的結(jié)果發(fā)送給主控器。

      圖3 語音識別及輸出電路

      3 系統(tǒng)的軟件設(shè)計

      本系統(tǒng)軟件是以MDK uVision4 ARM 為開發(fā)平臺,使用直接調(diào)用寄存器來設(shè)置端口程序。整個軟件系統(tǒng)設(shè)計包括系統(tǒng)初始化、LD3320 的語音播放及語音識別子程序、LCD 顯示子程序、按鍵掃描子程序、PWM 輸出子程序、輸入捕獲子程序程序、PID 調(diào)節(jié)子程序和主程序。本文主要介紹主程序、PWM 輸出子程序、語音識別子程序的設(shè)計。

      3.1 主程序設(shè)計

      如圖4 示,主程序負(fù)責(zé)整個系統(tǒng)的協(xié)調(diào)和控制工作,通過調(diào)用不同的子程序?qū)崿F(xiàn)相應(yīng)的功能。

      3.2 PWM 輸出子程序

      本程序通過直接調(diào)用寄存器來控制PWM 的輸出,首先通過設(shè)置時鐘寄存器選擇定時器的類型,再通過設(shè)置通用I/O 口的控制寄存器選擇I/O 的輸出類型及功能,接著對定時器的ARR 和PSC 兩個寄存器賦值,確定PWM 的輸出周期,然后設(shè)置定時器PWM 模式,以及使能定時器通道,最后通過修改定時器中CCRx 寄存器的值來改變占空比。大概步驟為:開啟定時器,配置P 口類型、設(shè)置定時器的ARR 和PSC、設(shè)置定時器所用通道的PWM 模式、使能定時器通道,使能定時器、修改定時器的寄存器CCRx 中的值,改變占空比[9]。

      圖4 主程序流程圖

      3.3 語音識別子程序

      圖5 為語音識別子程序及其中斷設(shè)計流程圖[10],其各步驟說明如下:

      (1)通用初始化和語音識別用初始化。本過程主要完成軟復(fù)位、模式設(shè)定、時鐘頻率設(shè)定、FIFO 設(shè)定。

      (2)寫入識別列表。列表規(guī)則是,每個識別條目對應(yīng)一個特定的編號(1 個字節(jié)),不同識別條目的編號可以相同,并且不用連續(xù),但數(shù)值不能超過256(00H-FFH)。芯片最多支持50 個識別條目,每個識別條目是標(biāo)準(zhǔn)普通話的漢語拼音(小寫),每2 個字(漢語拼音)之間用一個空格間隔。如表1 所示,編號可以相同,且不連續(xù),但數(shù)值要小于256,表中“xi an”和“gu du”對應(yīng)同一編號,說明這兩個值會得到相同的結(jié)果。

      表1 識別列表

      (3)開始識別。設(shè)置幾個相關(guān)的寄存器,就可以控制LD3320 芯片開始語音識別。

      (4)響應(yīng)中斷。如果麥克風(fēng)采集到聲音,不管是否識別出正常結(jié)果,都會產(chǎn)生一個中斷信號。而中斷程序要根據(jù)寄存器的值分析結(jié)果。讀取BA 寄存器的值,可以知道有幾個候選答案,而C5 寄存器里的答案是得分最高、最可能正確的答案。

      (5)發(fā)送識別結(jié)果至MCU。讀取C5 寄存器中的值,通過P0-P7 口發(fā)送至MCU,其中4 個端口A0、CSB、WRB、RDB 負(fù)責(zé)控制信號的讀寫類型。

      圖5 語音識別子程序設(shè)計流程圖

      4 實驗結(jié)果及其分析

      為了保證本系統(tǒng)中語音智能模塊的穩(wěn)定性、語音識別率以及響應(yīng)時間,本文根據(jù)語音識別電路對語音智能模塊進行了相應(yīng)的實驗,實驗環(huán)境分別為安靜的實驗室和嘈雜的室外,共7 條語音指令,每條指令進行10 次實驗,每個環(huán)境下對每個人進行一共70 次實驗,只記錄成功識別的次數(shù)。實驗結(jié)果如表2 所示。

      表2 語音識別實驗結(jié)果

      實驗中第一組人和和第二組人為女性,第三組人為男性,由實驗數(shù)據(jù)可以看出在安靜的環(huán)境下對三組人的實驗成功率達(dá)到了90%以上,而在嘈雜的環(huán)境下識別率也可達(dá)到82%以上。由此看來在安靜環(huán)境下的語音識別率和穩(wěn)定性都明顯高于嘈雜環(huán)境。安靜環(huán)境下發(fā)出最多2 次語音指令就能識別,嘈雜環(huán)境下則要最多4 次才能識別。在模塊的實時響應(yīng)方面,安靜的環(huán)境下能保證響應(yīng)時間不超過1 S,在嘈雜環(huán)境下響應(yīng)時間要長一點。由于跑步機大都在家庭或者健身房這些相對安靜的環(huán)境下工作,因此對于芯片的識別度的要求不是非常的精準(zhǔn),而LD3320 不僅可以進行語音識別、語音播放功能;而且其價格也相對于同類型的凌陽系列單片機有優(yōu)勢,再加上其資料豐富更易于開發(fā),從而顯示出了其更好的市場應(yīng)用前景。

      5 結(jié) 論

      本文提出了一種基于STM32 的智能型跑步機系統(tǒng)的設(shè)計方案,硬件上重點介紹了PWM 驅(qū)動電路的設(shè)計以及LD3320 外圍電路的設(shè)計。軟件上介紹了如何通過直接操作STM32 寄存器來編寫端口初始化程序,重點介紹了主程序和語音識別程序的設(shè)計流程,該驅(qū)動程序也可用于其他相關(guān)的控制領(lǐng)域,對這些控制領(lǐng)域也有一定的研究價值。文中涉及到的很多內(nèi)容,包括語音識別和語音播放的程序及硬件設(shè)計,STM32 系列芯片的選型和設(shè)計對相關(guān)嵌入式的設(shè)計具有一定參考價值。整個系統(tǒng)設(shè)計簡潔,可靠性高,具有很高的性價比。

      [1]STM32F103x8/B 增強型系列中容量產(chǎn)品數(shù)據(jù)手冊[EB/OL].(2012-09-01).http://www.stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.htm.

      [2]STMicroelectronics.STM32F10xxx 硬件開發(fā)使用入門[EB/OL].(2012-09-01).http://www.stmicroelectronics.com.cn/stonline/mcu/STM32_AN.htm.

      [3]童詩白,成華英.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2001.

      [4]王兆安,黃俊.電力電子技術(shù)(第4 版)[M].北京:機械工業(yè)出版社,1980.

      [5]胡松濤.自動控制原理[M].4 版.北京:科學(xué)出版社,2006.

      [6]陳伯時.電力拖動自動控制系統(tǒng)[M].2 版.北京:機械工業(yè)出版社,2003.

      [7]ICRoute.LD332X 數(shù)據(jù)手冊[EB/OL].[2010-03-10].http://www.icroute.com/web_cn/DownLoad.html.

      [8]K.N.King.C 語言程序設(shè)計:現(xiàn)代方法[M].2 版.北京:人民郵電出版社,2010.

      [9]STM32F10xxx 參考手冊[EB/OL].(2012-09-01).http://www.stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.htm.

      [10]ICRoute.LD332X 開發(fā)手冊[EB/OL].(2012-09-01).http://www.icroute.com/web_cn/DownLoad.html.

      猜你喜歡
      子程序寄存器語音
      Lite寄存器模型的設(shè)計與實現(xiàn)
      魔力語音
      基于MATLAB的語音信號處理
      電子制作(2019年14期)2019-08-20 05:43:38
      基于MQ3與MP3的價廉物美的酒駕語音提醒器
      電子制作(2019年9期)2019-05-30 09:42:10
      對方正在輸入……
      小說界(2018年5期)2018-11-26 12:43:42
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      淺談子程序在數(shù)控車編程中的應(yīng)用
      子程序在數(shù)控車加工槽中的應(yīng)用探索
      西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
      簡化編程與子程序嵌套的應(yīng)用
      科技傳播(2011年24期)2011-08-29 05:39:46
      巴彦淖尔市| 南投市| 临武县| 德州市| 阜康市| 洛阳市| 芦山县| 壤塘县| 辽中县| 连州市| 合阳县| 台州市| 中阳县| 荔浦县| 四川省| 昭苏县| 达拉特旗| 阳新县| 华安县| 德兴市| 会宁县| 松原市| 南乐县| 桦川县| 靖江市| 全南县| 鹤峰县| 惠安县| 龙门县| 浦东新区| 孙吴县| 拜泉县| 镶黄旗| 襄汾县| 崇信县| 和平区| 黔东| 福贡县| 平乐县| 合山市| 柳河县|