• 
    

    
    

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

      基于Android和Arduino的語音控制小車設(shè)計(jì)?

      2016-11-28 01:29:25曾祥義張?jiān)苽?/span>樊陽陽
      微處理機(jī) 2016年5期
      關(guān)鍵詞:控制板直流電機(jī)藍(lán)牙

      曾祥義,張?jiān)苽?,陳 嶺,樊陽陽,武 占

      (昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院,昆明650500)

      基于Android和Arduino的語音控制小車設(shè)計(jì)?

      曾祥義,張?jiān)苽?,陳嶺,樊陽陽,武占

      (昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院,昆明650500)

      隨著Android智能平臺(tái)的發(fā)展,為了讓機(jī)器人的控制更加方便和人性化,提出以Android平臺(tái)為研究重點(diǎn),應(yīng)用藍(lán)牙通信技術(shù)實(shí)現(xiàn)Android平臺(tái)無線控制小車運(yùn)動(dòng)的方案。首先,采用科大訊飛語音云平臺(tái)來實(shí)現(xiàn)小車控制軟件語音識(shí)別部分,其次,小車的運(yùn)動(dòng)系統(tǒng)由Arduino控制板來驅(qū)動(dòng),最后,系統(tǒng)通過藍(lán)牙實(shí)現(xiàn)Android平臺(tái)與Arduino開發(fā)板之間的通信。實(shí)驗(yàn)表明,系統(tǒng)能夠較好地達(dá)到語音控制的目的。

      Android平臺(tái);Arduino開發(fā)板;藍(lán)牙;語音識(shí)別;無線通信;串口

      1 引 言

      通過語音與機(jī)器人進(jìn)行交流,讓機(jī)器人讀懂人的意圖,這是人們長(zhǎng)期以來夢(mèng)寐以求的事情。隨著語音技術(shù)的不斷進(jìn)步,人類的這個(gè)理想逐漸得以實(shí)現(xiàn)。以Android平臺(tái)和Arduino開發(fā)板為工具,結(jié)合開放的語音平臺(tái),搭建好完整的語音識(shí)別控制系統(tǒng)。用戶通過Android平臺(tái)(手機(jī)/平板)的麥克風(fēng)輸入語音指令,語音信號(hào)經(jīng)處理、識(shí)別,得出結(jié)果,然后通過藍(lán)牙傳輸給小車并作出動(dòng)作。

      2 系統(tǒng)總體方案設(shè)計(jì)

      整個(gè)語音控制系統(tǒng)由Android平板、Arduino主控板、藍(lán)牙模塊、直流電機(jī)驅(qū)動(dòng)模塊四部分組成。其中,Android平板實(shí)現(xiàn)語音信號(hào)的采集并將采集到的信號(hào)發(fā)送至科大訊飛的語音云平臺(tái)進(jìn)行識(shí)別,然后獲取返回的識(shí)別結(jié)果并將結(jié)果解析為預(yù)設(shè)的指令發(fā)送給Arduino主控板。Arduino控制板根據(jù)指令通過驅(qū)動(dòng)模塊驅(qū)動(dòng)電機(jī)進(jìn)行動(dòng)作。小車的控制界面是運(yùn)行在Android操作系統(tǒng)上的應(yīng)用程序,該程序基于Android4.1.1系統(tǒng)編寫,所用的開發(fā)工具為ADT Bundle,這是已經(jīng)集成好的IDE,包含了Eclipse、ADT插件和SDK Tools,只需要安裝好jdk即可進(jìn)行開發(fā)[1]。

      3 分析及設(shè)計(jì)

      3.1Arduino主控板

      Arduino是一個(gè)開源的單片機(jī)電子設(shè)計(jì)平臺(tái),硬件部分由Atmel AVR單片機(jī)、I/O接口及相關(guān)電路組成,軟件部分則包括標(biāo)準(zhǔn)的程序編譯器和程序下載器,具有使用類似Java和C語言的Processing/Wiring開發(fā)環(huán)境。相對(duì)于傳統(tǒng)單片機(jī),Arduino的特點(diǎn)主要包括免費(fèi)、開源的IDE,開源的硬件(包括原理圖和PCB圖),所有資源都可以免費(fèi)下載,并且可依靠需求自己修改,方便與傳感器及各式各樣的電子組件連接[2]。本系統(tǒng)的主控制器采用Arduino Mega2560。Arduino Mega2560是采用USB接口的核心電路板,核心是Atmega2560單片機(jī),同時(shí)具有54路數(shù)字輸入/輸出口(其中16路可作為PWM輸出),16路模擬輸入,4路UART接口,一個(gè)16MHz晶體振蕩器,一個(gè)USB口,一個(gè)電源插座,一個(gè)ICSP header和一個(gè)復(fù)位按鈕。控制板通過標(biāo)準(zhǔn)USB線纜與電腦連接,便于在線程序調(diào)試[3]。

      3.2電機(jī)驅(qū)動(dòng)板

      小車直流電機(jī)采用Arduino直流電機(jī)驅(qū)動(dòng)擴(kuò)展板模塊進(jìn)行驅(qū)動(dòng)。這個(gè)模塊采用LGS公司優(yōu)秀的大功率電機(jī)專用驅(qū)動(dòng)芯片L298P,可直接驅(qū)動(dòng)2個(gè)直流電機(jī),驅(qū)動(dòng)電流達(dá)2A,電機(jī)輸出端采用8只高速肖特基二極管作為保護(hù)[4]。L298P內(nèi)部包含4通道邏輯驅(qū)動(dòng)電路,是一種二相和四相電機(jī)的專用驅(qū)動(dòng)器,內(nèi)含二個(gè)H橋的高電壓大電流雙全橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn)TTL邏輯電平信號(hào),可驅(qū)動(dòng)46V、2A以下的電機(jī),正好可以滿足小車左右直流電機(jī)的驅(qū)動(dòng)要求。并且L289P具有過溫保護(hù)功能和較高的噪聲抑制比,故十分適用于智能小車中。由于芯片L298P不具有對(duì)電機(jī)轉(zhuǎn)速的控制,因此,通過Arduino程序控制調(diào)節(jié)驅(qū)動(dòng)電機(jī)的PWM信號(hào),改變電機(jī)輸出功率,從而控制左右電機(jī)的轉(zhuǎn)速。

      3.3HC-05藍(lán)牙模塊

      HC-05嵌入式藍(lán)牙串口通訊模塊(以下簡(jiǎn)稱藍(lán)牙模塊)具有兩種工作模式:命令響應(yīng)工作模式和自動(dòng)連接工作模式,在自動(dòng)連接工作模式下模塊又可分為主(Master)、從(Slave)和回環(huán)(Loopback)三種工作角色。當(dāng)模塊處于自動(dòng)連接工作模式時(shí),將自動(dòng)根據(jù)事先設(shè)定的方式連接數(shù)據(jù)傳輸;當(dāng)模塊處于命令響應(yīng)工作模式時(shí)能執(zhí)行所有AT命令,用戶可向模塊發(fā)送各種AT指令,為模塊設(shè)定控制參數(shù)或發(fā)布控制命令。通過控制模塊外部引腳(PIO11)輸入電平,可以實(shí)現(xiàn)模塊工作狀態(tài)的動(dòng)態(tài)轉(zhuǎn)換。

      3.4語音識(shí)別引擎選擇

      智能語音行業(yè)具有很高的行業(yè)技術(shù)壁壘,在全球范圍內(nèi),只有少數(shù)的企業(yè)具有競(jìng)爭(zhēng)實(shí)力。在國(guó)外,有Nuance、蘋果、Google等;在國(guó)內(nèi),有科大訊飛、凌聲芯、思必馳、捷通華聲等。相對(duì)于其他語音引擎,科大訊飛的中文連續(xù)語音識(shí)別率更高、響應(yīng)速度更快、也更易于使用。只需要在其語音云開放平臺(tái)注冊(cè)成為開發(fā)者,為所開發(fā)的應(yīng)用申請(qǐng)appip,并下載相應(yīng)的SDK導(dǎo)入到應(yīng)用開發(fā)項(xiàng)目中即可使用[5]。

      3.5硬件總體設(shè)計(jì)

      系統(tǒng)硬件部分由Arduino Mega2560、Arduino直流電機(jī)驅(qū)動(dòng)擴(kuò)展板L298P模塊、HC05藍(lán)牙模塊組成。通過Arduino控制板配合Arduino直流電機(jī)驅(qū)動(dòng)擴(kuò)展板L298P模塊可以直接驅(qū)動(dòng)兩路直流電動(dòng)機(jī)。由于系統(tǒng)小車底盤采用四路電機(jī)驅(qū)動(dòng),而Arduino直流電機(jī)驅(qū)動(dòng)擴(kuò)展板模塊只有兩路輸出,所以將小車底盤左右兩側(cè)的電機(jī)分別并聯(lián)接入Arduino直流電機(jī)擴(kuò)展板的A、B輸出口。另外,為了實(shí)現(xiàn)藍(lán)牙通信,利用Arduino控制板的TX、RX引腳連接藍(lán)牙模塊的RX、TX引腳,該藍(lán)牙模塊可以將藍(lán)牙信號(hào)轉(zhuǎn)化成串口信號(hào)[6]。Android軟件控制終端用的是華碩Eee Pad Transformer Prime TF201,該平板的操作系統(tǒng)是Android4.1.1版本。

      圖1 系統(tǒng)框圖

      系統(tǒng)通信部分涉及到兩處:第一處是Android平板通過WIFI接入互聯(lián)網(wǎng)與科大訊飛語音云平臺(tái)通信,該通信遵守IEEE802.11協(xié)議標(biāo)準(zhǔn)[7]。第二處是Android平板和Arduino控制板之間的通信,利用藍(lán)牙模塊來實(shí)現(xiàn)二者之間的無線通信,這里主要是從平板發(fā)送小車的動(dòng)作控制指令給Arduino主控板。

      3.6程序設(shè)計(jì)

      系統(tǒng)軟件主要包括兩部分,一部分是Android系統(tǒng)上控制程序的設(shè)計(jì),另外一部分是Arduino控制板中程序的設(shè)計(jì)。Android端的軟件設(shè)計(jì)主要包括設(shè)計(jì)藍(lán)牙配對(duì)連接程序、獲取語音信號(hào)程序、后臺(tái)發(fā)送控制指令程序、手動(dòng)按鍵程序等。

      走到院門口,梨花忍不住回了下頭,看到屋檐下的地上,有一灘她坐過的濕印子;她感覺自己還呆坐在那兒,跟高木走的是另一個(gè)自己。

      藍(lán)牙配對(duì)連接時(shí),首先檢測(cè)當(dāng)前設(shè)備的藍(lán)牙是否開啟,若尚未打開,則開啟藍(lán)牙。接著依次執(zhí)行注冊(cè)廣播接收器、搜索藍(lán)牙設(shè)備方法,當(dāng)搜索到對(duì)應(yīng)MAC地址的藍(lán)牙設(shè)備時(shí)停止搜索,并開啟配對(duì)連接藍(lán)牙線程,當(dāng)連接成功時(shí)即注銷廣播,至此整個(gè)連接過程結(jié)束。

      receiver=new BluetoothReceiver();

      registerReceiver(receiver,intentFilter);

      mBluetoothAdapter.startDiscovery();

      藍(lán)牙連接成功之后即可進(jìn)行語音輸入或手動(dòng)按鍵發(fā)出控制指令。語音輸入時(shí)通過麥克風(fēng)獲取語音信號(hào),隨即調(diào)用遠(yuǎn)程API進(jìn)行識(shí)別,然后獲取返回的識(shí)別結(jié)果,根據(jù)識(shí)別結(jié)果解析成對(duì)應(yīng)指令,最后通過后臺(tái)線程將解析得到的指令發(fā)送給Arduino控制板。

      當(dāng)使用手動(dòng)輸入時(shí),直接根據(jù)相應(yīng)按鍵發(fā)送相應(yīng)的觸發(fā)標(biāo)志到Arduino控制板。該系統(tǒng)軟件語音識(shí)別部分流程圖如圖2所示。

      圖2 語音識(shí)別流程圖

      Arduino控制板端的程序主要是接收Android平臺(tái)發(fā)送過來的語音控制指令信號(hào),進(jìn)而轉(zhuǎn)化為電機(jī)驅(qū)動(dòng)信號(hào)驅(qū)動(dòng)電機(jī)進(jìn)行動(dòng)作。主體程序如下:

      void loop(){

      Bluetooth_Manage();

      Loop()函數(shù)會(huì)循環(huán)執(zhí)行,Bluetooth_Manage()函數(shù)處理藍(lán)牙接收到的數(shù)據(jù)。這里采用串口函數(shù)read()逐個(gè)字節(jié)進(jìn)行讀?。?],并將其轉(zhuǎn)換為char類型,當(dāng)所有字節(jié)讀取完畢之后,按讀取順序拼接所有char類型字符組成字符串inString。這個(gè)inString即是小車運(yùn)動(dòng)的依據(jù),對(duì)應(yīng)關(guān)系如表1所示。Arduino控制端程序流程圖如圖3所示。

      圖3 Arduino控制端程序流程圖

      表1 指令對(duì)應(yīng)關(guān)系

      4 測(cè)試與試驗(yàn)分析

      組裝系統(tǒng)并調(diào)試,測(cè)試該系統(tǒng),控制的小車如圖4所示,通過Android平板軟件實(shí)現(xiàn)小車的運(yùn)動(dòng)控制。通過點(diǎn)擊按鍵或者語音輸入來對(duì)每組命令進(jìn)行循環(huán)測(cè)試,可以輸入的語音命令有前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止等指令詞。Android平臺(tái)軟件界面如圖5所示。

      圖4 小車

      圖5 Android平臺(tái)軟件界面

      具體測(cè)試步驟如下:

      連接好線路,打開電源,此時(shí)藍(lán)牙模塊上的指示燈是快閃狀態(tài),表示尚未連接設(shè)備;點(diǎn)擊控制界面的連接藍(lán)牙按鈕,此時(shí)軟件會(huì)搜索附近的藍(lán)牙設(shè)備;當(dāng)搜索到的設(shè)備中有匹配上預(yù)設(shè)的MAC地址時(shí),則連接該藍(lán)牙設(shè)備。當(dāng)藍(lán)牙模塊上的指示燈進(jìn)入慢閃狀態(tài)時(shí),表示軟件已成功連接上藍(lán)牙模塊,可以進(jìn)行通信。

      藍(lán)牙配對(duì)連接成功之后,先測(cè)試手動(dòng)操作是否成功,分別點(diǎn)擊前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止按鈕,觀察小車是否根據(jù)對(duì)應(yīng)指令做出相應(yīng)的運(yùn)動(dòng),循環(huán)多次,保證系統(tǒng)穩(wěn)定。

      測(cè)試完手動(dòng)操作之后,接下來測(cè)試語音控制的輸入,點(diǎn)擊語音輸入按鈕,然后對(duì)著話筒說出前進(jìn)、停止、后退等控制指令,觀察小車是否能夠根據(jù)語音來實(shí)現(xiàn)相應(yīng)的運(yùn)動(dòng)。

      最后試驗(yàn)分析,該控制程序能夠穩(wěn)定的實(shí)現(xiàn)小車運(yùn)動(dòng)的控制,達(dá)到預(yù)期的目標(biāo)和效果。

      5 結(jié)束語

      設(shè)計(jì)基于Android系統(tǒng)平板和Arduino控制板的語音控制小車,通過控制人的語音或者按鍵來控制小車的運(yùn)動(dòng)狀態(tài),采用Android智能平板進(jìn)行語音處理和科大訊飛語音云平臺(tái)對(duì)語音信號(hào)進(jìn)行識(shí)別,利用藍(lán)牙來傳輸控制指令,然后由Arduino主控板解析指令,最后由Arduino電機(jī)驅(qū)動(dòng)板完成相應(yīng)的動(dòng)作。

      [1]AndroidDevTools[EB/OL].[2015-12-15].http://www.a(chǎn)ndroiddevtools.cn/.

      [2]L.H.M.de Castro,B.L.Lago,F(xiàn)elipe Mondaini.Damped Harmonic Oscillator with Arduino[J].Journal of Applied Mathematics and Physics,2015(3):631-632.

      [3]崔陽,張維華,白云峰.一種基于Arduino的智能家居控制系統(tǒng)[J].計(jì)算機(jī)技術(shù)與應(yīng)用,2014,40(4):123-124.Cui Yang,Zhang Wei Hua,Bai Yun Feng.Intellectual home control system based on Arduino[J].omputer Technology and Its Applications,2014,40(4):123-124.

      [4]戈惠梅,徐曉慧,顧志華,等.基于Arduino的智能小車避障系統(tǒng)的設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2012,37(11):119-120.Ge Hui mei,Xu Xiao Hui,Gu Zhi Hua,et al.Design of arduino based obstacle avoidance system on intelligent car[J].Modern Electronics Technique,2012,37(11):119-120.

      [5]訊飛開放平臺(tái),新手指南[EB/OL].[2015-12-15].http://www.xfyun.cn/doccenter/newer.

      [6]鄭昊.基于Arduino_Android的藍(lán)牙通信系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:湖北大學(xué),2012.Zheng Hao.The design and achieve of the bluetooth communication system based on the Arduino&Android[D].WuHan:HuBei University,2012.

      [7]李曉陽.WIFI技術(shù)及其應(yīng)用與發(fā)展[J].信息技術(shù),2012(2):196-197.Li Xiao Yang.WIFI tecnology and its application and developmen[J].Information technology,2012(2):196-197.

      [8]楊繼志,郭敬.Arduino從基礎(chǔ)到實(shí)踐[M].北京:電子工業(yè)出版社,2013.Yang Ji Zhi,Guo Jing.Begining Arduino[M].Beijing:Publishing House of Electronics Industry,2013.

      Design of Voice Control Car Based on Android and Arduino

      Zeng Xiangyi,Zhang Yunwei,Chen Ling,F(xiàn)an Yangyang,Wu Zhan
      (Faculty of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500,China)

      As the development of Android intelligence platform,in order to make robot control more convenient and humanization,a proposal,using bluetooth wireless communication technology to control car movement on the basis of Android platform,is put forward.First of all,speech recognition of the car control software can be implemented by iFLYTEK Voice Cloud platform.Secondly,the car motor system is driven by the Arduino development board.Lastly,the communication between the Android platform and the Arduino development board is realized by bluetooth.The experiments show that the system can well achieve the voice control.

      Android platform;Arduino development board;Bluetooth;Speech recognition;Wireless communication;Serial

      10.3969/j.issn.1002-2279.2016.05.014

      TP249

      A

      1002-2279(2016)05-0056-04

      ?國(guó)家自然科學(xué)基金(51365019)

      曾祥義(1991-),男,江西省贛州市人,碩士研究生,主研方向:計(jì)算機(jī)技術(shù)。

      張?jiān)苽ィ?972-),男,博士,教授,主研方向:精密測(cè)控技術(shù)。

      2015-12-21

      猜你喜歡
      控制板直流電機(jī)藍(lán)牙
      關(guān)于某家用電器靜電彈簧控制板一拖多自動(dòng)檢測(cè)裝置的研究與應(yīng)用
      日用電器(2023年7期)2023-09-07 00:41:56
      基于模糊PID的無刷直流電機(jī)速度控制系統(tǒng)的設(shè)計(jì)與仿真
      藍(lán)牙音箱的直線之美
      一種橡膠減震裝置
      軌道交通AFC導(dǎo)向標(biāo)識(shí)控制板設(shè)計(jì)
      電子制作(2019年23期)2019-02-23 13:21:22
      簡(jiǎn)單、易用,可玩性強(qiáng)Q AcousticsBT3藍(lán)牙音箱
      適合自己的才是最好的 德生(TECSUN) BT-50藍(lán)牙耳機(jī)放大器
      基于FPGA的雙繞組無刷直流電機(jī)軟件設(shè)計(jì)
      電子制作(2017年1期)2017-05-17 03:54:12
      緊急:藍(lán)牙指尖陀螺自燃!安全隱患頻出
      玩具世界(2017年8期)2017-02-06 03:01:38
      一種機(jī)載SAR中心控制板的設(shè)計(jì)
      景德镇市| 英超| 中牟县| 石嘴山市| 香格里拉县| 屯留县| 磐安县| 许昌市| 崇信县| 拜城县| 通辽市| 沈丘县| 乐都县| 黔南| 堆龙德庆县| 玉屏| 类乌齐县| 剑阁县| 东安县| 宿迁市| 海林市| 柯坪县| 登封市| 巴里| 游戏| 吴忠市| 合山市| 北碚区| 芦溪县| 平泉县| 师宗县| 全州县| 宜良县| 伊春市| 长沙市| 开平市| 东台市| 贵德县| 乐安县| 固阳县| 宜宾县|