《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 業界動態 > 基于AVR和51單片機的機器魚語音控制系統設計與實現

基于AVR和51單片機的機器魚語音控制系統設計與實現

2017-05-18

  近年來,海洋資源開發日趨焦點,機器魚作為一項現代化的新成果,具有廣泛的現實意義,它可以更逼真的模擬魚的游動原理,在水下的運動更符合流體力學原理,具有更好的加速和轉向能力,利用它可以探測海洋資源,尋找和檢測海域中受污染的地方,也可以用來勘探地形等等。隨著科技的發展,人類對智能化產品的研究步伐在不斷加快。但是,作為一項比較新的產品,機器魚的智能化程度還遠遠不夠,伴隨著研究的加深,機器魚的功能也會更趨完善。語音識別作為一門交叉學科,它的出現實現了長期以來人們渴望與機器交流的夢想。語音識別技術就是讓機器通過識別和理解過程把語音信號轉變為相應的文本或命令的高技術。近年來,語音識別技術發展迅速,取得顯著進步,并且已經開始被應用于通信、家庭服務、汽車電子、醫療、家電、消費電子產品等各個領域。截至目前,還沒有出現針對語音識別系統和機器魚結合的設計。本文實現了機器魚和語音識別系統結合的硬件設計。

  1 芯片介紹

  1.1 LD3320語音芯片介紹

  LD3320是一顆基于ASR技術非特定人語音識別的語音識別芯片。語音識別ASR技術,是基于關鍵詞語列表識別的技術。只需要軟件編輯好要識別的關鍵詞語列表,并把這些關鍵詞語以字符形式傳送到芯片內部,就可以對人說出的關鍵詞語進行識別,不需要作任何錄音。比如,在51單片機編程中,簡單地設置語音芯片的寄存器,諸如把“ni hao”這樣的識別關鍵詞動態地傳入芯片中,芯片就可以識別這個關鍵詞語了。并且在同一時刻,最多可以在50條關鍵詞語中進行識別,可以根據場景需要,在終端隨時編輯和更新這50條關鍵詞語。另外,芯片上集成了高精度的D/A和A/D接口,并且接有Flash和RAM,只需把麥克風接在芯片的AD引腳上即可實現語音識別/聲控/人機對話功能。

  1.2 AVR芯片介紹

  本例使用ATmega128單片機作為魚體控制芯片,ATmega128具有以下特點:低功耗的8位微處理器,有133條指令,且大多數指令可以在一個時鐘周期內完成;53個可編程I/O口線;128K字節的系統內可編程Flash;4K字節的EEPROM;優化的外部存儲器空間多達64K字節;兩個帶有獨立預分頻器和比較器的8位定時器/計數器;兩個帶有預分頻器、比較功能和捕捉功能的16位定時器/計數器;兩路8位PWM;6路分辨率可變(2到16位)的PWM;兩個可編程的串行USART;8路10位的ADC。

  2 硬件設計實現

  2.1 整體設計方案

  語音識別系統識別到語音數據會產生一個中斷信號給51單片機,然后單片機通過程序判斷語音數據的正確性(可能是噪音),如果正確就通過P0口讀取語音數據,并且將數據通過WAP200B無線通訊模塊發送給魚體主控芯片AVR單片機,此時AVR就可以根據命令產生相應占空比的PWM波。整體方案設計如圖1所示。

  46b464bc5a480be627347601dd974f51.jpg

  2.2 語音控制部分

  M-LD3320進行語音識別時,需要有較高純凈度的3.3V直流電源供電和合適的晶振信號(我們使用了12M正方形有源晶振)。使用51單片機編寫程序主控LD3320芯片,來實現語音識別功能。同時必須保證51單片機和語音模塊的最終供電電源統一。

  麥克風采集到聲音,不管是否識別到正常結果,芯片都會產生一個中斷信號通過IRO管腳返回給51單片機,并且將數據通過ICR_P0~ICR_P7傳送給51單片機進行處理,然后中斷程序要根據寄存器的值分析結果,如果識別成功,就將識別得到的數據通過無線通訊模塊發送出去。由于本文在語音模塊傳送數據給MCU時采用并行方式,所以MD直接接地,如果采用串行方式需要使MD管腳置高。它與51單片機(基于STC89C52)的連接示意圖如圖2所示。

  25db102a08c7b84df895050e6b63ef39.jpg

  模塊PCB板已經將連接麥克風的引腳接到模塊的MIC插座上,所以在連接電路的時候11~19和22~31引腳懸空不用。與51單片機連接時,ICR_P0~ICR_P7(2和33-39引腳)必須連接在單片機的數據總線上,同時需要在P0-P7,以及RDB,MD,INTB,WRB,CSB這些控制管腳上焊接1K /10K的上拉電阻(上拉到3.3V即可),這樣可以輔助系統穩定運行。CLK引腳的連接有兩種選擇:1)直接將51單片機的晶振信號通過導線輸入到LD3320的CLK管腳,但是導線不宜過長。2)將正方形有源晶振直接焊接在模塊上預留的連接點,此時CLK管腳需要懸空。本文采用的第二種方法。

  2.3 AVR控制部分

  AVR是魚體的主控MCU,主要用來控制機器魚的的動力部分。機器魚的動力來自舵機,設計關節數為三個,即有三個舵機。每個舵機由十五位的不同占空比的PWM波來控制轉動不同的角度,三個舵機需要配合形成魚體波來控制魚體擺動。魚體結構如圖3。

  a970c3344e887a6ff69080ad32077b3f.jpg

  魚體波是利用桿系機器魚對真實魚游動形態的擬合,可以認為魚體波曲線是魚體波幅包絡線和正弦曲線的合成,它開始于魚體慣性力的中心,延伸至尾柄,其曲線方程可表示為

  25bd357534910e0872763f47195d872a.jpg

  式中,yboby是魚體的橫向位移(背腹軸),x是魚體的軸向位侈(頭尾軸),c1是魚體波波幅包絡線的一次項系數,c2是魚體波波幅包絡線的二次項系數,k是波長倍數(k=2π/λ),λ是魚體波的波長,w是魚體波的頻率(w=2πf=2π/T)。

  由于計算機控制是一種離散的數字量,魚體波曲線也需要離散化,所以把時間參數t從魚體波運動函數yboby(x,t)中分離出來,方程即為

  b308187e9baa0d72643222c5e32bd957.jpg

  式中,i表示一個擺動周期內的樣條曲線序列的第i個變量;N表示魚體波分辨率,即在一個擺動周期內整個魚體波被離散的程度,其上限不能大于驅動機構擺動的最高頻率。

  為了更好地表征魚體波動的參數,提高魚體方向控制特別是轉彎過程中的靈活性,在方程2的特征參數基礎上,增加波長倍數k相對于x的二次增益,修改后的方程如下

  e.jpg

  通過調整k1和k2的值,根據x的變化可以得到更多的魚體波曲線。同時,在機器魚的設計過程中,可通過微調身體波參數來增加運動的機動性和靈活性。

  根據實際魚體選擇合適的魚體波參數,通過仿真工具模擬出一個擺動周期內i從0~N的所有魚體波,就可以計算舵機在各種情況下所需轉動的角度,然后就可以設定各個舵機的PWM波占空比,就可以產生所需要的魚體波。本文設定參數為c1=0.05;c2=0.09;k1=0.5;k2=0.1;N=10的一條魚體波曲線如圖4,直線段為實際中三節舵機配合形成的魚體波,曲線為理想魚體波曲線。

  s.jpg

  使用AVR的USART0與無線通信模塊連接。當51單片機通過無線通訊模塊將數據傳送到AVR時,AVR單片機軟件控制會產生一個串行中斷,此時可以判斷接收到的命令,根據命令改變PWM波的占空比,從而改變機器魚的游動方向。

  2.4 WAP200B無線通訊傳輸部分

  無線模塊WAP200B總共有10個管腳:VCC_CPU為MCU電源輸入,VCC_RF為RF短路電源,VCC_PA為RF功放電源,它們三個管腳接DC3.3V;SET為配置或者正常工作模式選擇信號輸入管腳,低電平時WAP200B為配置模式,此時串口的數據作為配置指令而不會被傳送出去,高電平(3.3V)時模塊使能接發功能;RXD/TXD是串口數據從WAP200B輸入/輸出的管腳,3.3V/5V兼容TTL邏輯電平,RESET為復位信號輸入管腳,正常工作接高電平;ANTENNA為天線接口。連接方式如圖5所示。

  dcb731943c43fc00305fb4a63d2f8917.jpg

  無線通訊模塊的TXD/RXD分別與51單片機的RXD/TD相連,就相當于51單片機的一個串口。在使用無線通汛模塊之前,需要配置它的波特率、串口模式、頻道以及發射功率(SET置低),兩個互相通訊的模塊必須保證具有相同的波特率和頻道,同時51單片機串口的波特率也必須和通訊模塊一致,發射功率可以根據發射的距離遠近設定。

  3 控制軟件設計流程

  51單片機是語音芯片的主控CPU,它的軟件主要包括主程序,串口初始化(波特率和串口模式設定需要和無線通訊模塊一致),語音系統的識別控制,命令數據的發送。51程序流程如圖6所示。

  7491dc1e16ed7ad5b9ce68223e487428.jpg

  AVR是魚體主控芯片,它的軟件主要包括主程序,串口初始化(波特率和串口模式需要同上一致,還設置接收中斷打開狀態),產生使機器魚直游的PWM波,無論在什么狀態,只要串口接收到命令就會產生中斷,就需要根據命令改變PWM波的占空比,從而改變機器魚的游動方向,需要注意的是在改變PWM波占空比以后,只需要保持此占空比一段時間(該時間段內有可能有新的命令),在魚體改變方向以后就需要再次將占空比改為直游。AVR控制流程如圖7所示。

  4 實驗結果

  此語音控制系統在實驗中已經得到實現。我們在51單片機中編輯了“zuo”、 “you”、 “qian”等命令:在AVR單片機的接受中斷編輯了相應命令的PWM波占空比;所有串口通訊參數設置為:波特率9600bps;串口模式為8個數據位,1個停止位,無校驗位;頻道設置為28;發射功率設為最大(FF)。使用了奧林巴斯ME52的麥克風作為語音接收設備。

  表1是魚在直游(前)的時候,三個舵機在十個離散周期各自的轉角。在轉向的時候,前兩個舵機偏轉,第三個舵機保持不變;在進行“左”轉命令時,舵機1和舵機2在直游基礎上加上負40°;“右”轉時加上正40°。由于舵機轉角與PWM波占空比是線性關系,在此基礎上,我們匹配了PWM波占空比與舵機轉角的數學關系式

    jiaodu是定義的直游時各舵機的轉角數組,j是舵機號,i是周期,pianjiao是左轉右轉等附加給直游時的角度(正負40°);xiuzheng是實際中需要調試的補償角度。

  實際操作中,當發出“左”、 “右”、 “前”等命令時,機器魚會立即做出相應的動作。

  5 結束語

  文中主要介紹了語音識別技術在機器魚上的應用以及魚體波的產生原理,實現了語音控制機器魚的游動方向,相信隨著機器魚的研究深入,可以在語音系統基礎上實現更多功能,使機器魚更加趨于智能化,最終可以為人類探索海洋提供更多幫助和便利。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品99久久久久久人| 国语自产精品视频在线看抢先版结局| 欧美在线首页| 国产有码一区二区| 麻豆精品一区二区综合av| 91久久久久久国产精品| 亚洲国产日韩欧美综合久久| 欧美劲爆第一页| 亚洲欧美日韩第一区| 欧美一区成人| 亚洲高清久久网| 欧美日韩国产成人精品| 亚洲欧美制服中文字幕| 销魂美女一区二区三区视频在线| 狠狠色狠狠色综合人人| 欧美承认网站| 亚洲欧美怡红院| 亚洲国产精品小视频| av成人国产| 国产一级一区二区| 欧美女激情福利| 性欧美办公室18xxxxhd| 久久国产精品高清| 亚洲精品在线免费| 国产精品一二三| 美女视频一区免费观看| 亚洲特色特黄| 亚洲成人在线视频播放 | 久久精品五月| 这里是久久伊人| 精品动漫3d一区二区三区免费 | 亚洲精品九九| 国产亚洲成av人在线观看导航| 欧美国产日韩一区二区三区| 亚洲欧美一区二区三区久久| 最新成人av网站| 亚洲欧美另类中文字幕| 亚洲精品九九| 国产综合在线看| 国产精品久久久久久久久婷婷| 另类天堂av| 欧美一区二区视频97| 亚洲精品日本| 欧美亚洲一区二区三区| 亚洲精品一区二区三区婷婷月| 国产一区视频在线观看免费| 国产精品国产三级国产专区53| 免费不卡中文字幕视频| 欧美在线999| 亚洲图片你懂的| 亚洲精品乱码久久久久久久久| 午夜精品久久久久久久99热浪潮 | 亚洲精品网址在线观看| 欧美一区1区三区3区公司| 日韩亚洲一区二区| 在线播放中文一区| 国产日韩欧美精品一区| 欧美日韩视频在线第一区| 毛片基地黄久久久久久天堂| 欧美专区日韩视频| 一区二区三区久久网| 亚洲高清视频一区| 欧美一区二区| 午夜国产精品视频| 亚洲五月婷婷| 一本久道综合久久精品| 亚洲精品国产精品国自产观看浪潮 | 99精品国产热久久91蜜凸| 亚洲国产裸拍裸体视频在线观看乱了中文| 国产伦精品一区| 国产精品劲爆视频| 国产精品vvv| 国产精品v日韩精品| 欧美喷潮久久久xxxxx| 免费看亚洲片| 久久一区二区三区国产精品 | 欧美在线观看一区二区| 亚洲欧美一区二区激情| 亚洲永久在线| 亚洲欧美日韩视频二区| 亚洲资源av| 亚洲女人av| 校园激情久久| 欧美专区第一页| 久久av资源网站| 久久久免费av| 另类春色校园亚洲| 免费观看欧美在线视频的网站| 快射av在线播放一区| 久久久一本精品99久久精品66| 久久精品亚洲一区二区三区浴池| 欧美一区二区三区免费观看 | 久久精品99国产精品日本| 久久精品一区二区国产| 久久国产精品色婷婷| 久久久精品午夜少妇| 久久久久久免费| 久久这里有精品视频| 久久乐国产精品| 欧美高清视频| 欧美日韩一区二区三区在线观看免| 欧美三级不卡| 国产精品一区二区三区观看| 国产曰批免费观看久久久| 狠色狠色综合久久| 1000精品久久久久久久久| 亚洲日韩中文字幕在线播放| 中文一区字幕| 性视频1819p久久| 亚洲国产精品一区二区www在线| 亚洲免费电影在线| 亚洲欧美成人一区二区三区| 欧美一区激情视频在线观看| 久久久久国内| 欧美大片在线看免费观看| 欧美日韩在线一区二区| 国产精品日韩专区| 狠狠入ady亚洲精品| 亚洲欧洲一区二区三区在线观看 | 另类酷文…触手系列精品集v1小说| 欧美福利视频在线| 欧美视频网址| 国产在线乱码一区二区三区| 亚洲人成小说网站色在线| 亚洲一区二区视频| 亚洲国产欧美日韩精品| 亚洲无限av看| 久久久久久9| 欧美三级视频在线观看| 国产一在线精品一区在线观看| 亚洲欧洲三级| 午夜精品久久久久久99热软件| 亚洲经典自拍| 午夜精品影院在线观看| 久久亚洲捆绑美女| 欧美网站在线观看| 黄色资源网久久资源365| 亚洲精品免费在线观看| 性久久久久久久| 一区二区三区产品免费精品久久75| 欧美专区福利在线| 欧美国产精品人人做人人爱| 国产精品视频在线观看| 亚洲国产精品嫩草影院| 亚洲欧美日韩第一区| 99精品热视频| 久久野战av| 国产精品免费网站| 亚洲国产精品毛片| 欧美一区二区三区四区夜夜大片| 一区二区久久| 免费视频久久| 国产亚洲毛片| 亚洲午夜免费视频| 日韩香蕉视频| 久久久综合免费视频| 国产精品免费网站| 99精品国产99久久久久久福利| 亚洲国产美女久久久久| 久久精品国产久精国产思思| 欧美日韩在线精品| 亚洲国产老妈| 久久精品成人一区二区三区蜜臀| 亚洲欧美乱综合| 欧美日本一道本| 精品成人一区二区| 亚洲欧美中文日韩v在线观看| 宅男66日本亚洲欧美视频| 欧美xart系列在线观看| 国产亚洲免费的视频看| 一区二区三区高清在线| 艳女tv在线观看国产一区| 免播放器亚洲一区| 国产在线乱码一区二区三区| 亚洲午夜羞羞片| 亚洲午夜精品17c| 欧美日韩国语| 亚洲国产日韩欧美在线99| 久久精品国产久精国产爱| 欧美自拍偷拍午夜视频| 国产精品福利网站| 一区二区三区.www| 亚洲视频免费看| 欧美日韩精选| 亚洲精品久久久久久久久| 亚洲伦理中文字幕| 欧美国产精品v| 亚洲观看高清完整版在线观看| 久久国产精品久久久| 久久久久国产精品一区二区| 国产免费成人在线视频| 亚洲欧美日韩在线不卡| 欧美资源在线观看| 国产伪娘ts一区| 欧美在线网址| 老司机67194精品线观看| 激情91久久| 亚洲二区三区四区| 麻豆精品视频在线观看| 在线成人www免费观看视频|