声波通讯的原理
聲波傳輸是利用聲音作為傳輸方式的一種數(shù)據(jù)通訊方法。用戶聲音傳輸信號(hào)其實(shí)我們每天都會(huì)用到,比如說(shuō)我們說(shuō)話其實(shí)就是一個(gè)使用聲波進(jìn)行信號(hào)傳輸?shù)牡湫屠?#xff0c;說(shuō)話過(guò)程可以理解成把信號(hào)編碼成聲音的過(guò)程,而我們聆聽(tīng)的過(guò)程就相當(dāng)于把音頻信號(hào)解碼成語(yǔ)言文字的過(guò)程,而我們使用的中文文字與拼音之間的對(duì)應(yīng)關(guān)系就相當(dāng)于該通訊過(guò)程的音頻協(xié)議。而音樂(lè)可以同樣理解成一種聲波通訊的方式,只是其音頻協(xié)議與說(shuō)話不一樣,音樂(lè)的音頻協(xié)議可以理解成是樂(lè)譜,而演奏就是把樂(lè)譜編碼成聲音的過(guò)程。而我們古代戰(zhàn)爭(zhēng)中戰(zhàn)鼓實(shí)際上也是一種聲波傳輸?shù)囊环N方式,戰(zhàn)鼓的不同敲擊方式代表著進(jìn)攻、退兵等等章法細(xì)節(jié)就是其音頻協(xié)議。
所以利用聲波來(lái)傳輸其實(shí)我們并不陌生,不但我們天天會(huì)用上,而且古而有之。
但我們今天所說(shuō)的聲波通訊的音頻協(xié)議一般來(lái)自chirp的技術(shù)文檔,其應(yīng)用場(chǎng)景也一般是指電腦、android\iphone等智能手機(jī)、各種單片機(jī)設(shè)備、或者其它各種能發(fā)聲的設(shè)備之間的信息傳播。
chirp描述了一個(gè)智能設(shè)備之間依靠聲音進(jìn)行數(shù)據(jù)通訊的技術(shù)細(xì)節(jié),但其實(shí)聲波通訊的音頻協(xié)議是可以任意自己設(shè)計(jì),比如說(shuō)把chirp音頻協(xié)議中的聲音改成雙頻音、甚至是多頻音,以加大單位時(shí)間內(nèi)的信息容量,從而提高傳輸速度,這都是可以的,只要是有這個(gè)應(yīng)用需求。
chirp的音頻協(xié)議技術(shù)細(xì)節(jié)是這樣的:
建立一個(gè)含有32個(gè)字符([0-9,a-v])的表,并將每個(gè)字符映射到頻率表。頻率表是根據(jù)樂(lè)理,通過(guò)伴音的計(jì)算生成。
0?=?1760hz
1?=?1864hz
…
v?=?10.5khz
一個(gè)完整的聲波包包含20個(gè)音(即20個(gè)字符),每87.2毫秒發(fā)一個(gè)音?。前兩位為信息頭,采用“hj”,用以通知接收端開(kāi)始接收。中間10位為有效的信息位,是有效的傳輸信息,即Key值經(jīng)過(guò)映射后的頻率信息。最后8位為RS校驗(yàn)位,通過(guò)RS校驗(yàn)算法,對(duì)中間10位進(jìn)行計(jì)算,生成8位的校驗(yàn)信息。。如下圖:
| 2位 | 10位 | 8位 |
| hj | 數(shù)據(jù) | rs校驗(yàn)碼 |
校驗(yàn)主要用來(lái)處理由于噪聲干擾造成的信息接收錯(cuò)誤。通過(guò)RS校驗(yàn),可以糾正25%的錯(cuò)誤信息。
接收端需要記錄聲音,并將其進(jìn)行解碼以及容錯(cuò)處理。其對(duì)算法的要求相對(duì)較高,降噪及容錯(cuò)處理對(duì)能否得到正確的解碼信息是至關(guān)重要的,其解碼端的難點(diǎn)也就是在這里。
聲波通訊的應(yīng)用場(chǎng)景:
這里也把現(xiàn)在市場(chǎng)上的一些應(yīng)用到了聲波的先列一下:支付寶的聲波支付,微信的聲波雷達(dá)加好友,QQ音樂(lè)中的歌曲的聲波分享,茄子快傳,蛐蛐兒等等,國(guó)外的apple,google對(duì)聲波通訊也都有應(yīng)用。
聲波實(shí)際上可以看成是一種比二維碼可友好的傳輸方式,二維碼能實(shí)現(xiàn)的功能與聲波有很大的相似性,但聲波使用時(shí)會(huì)更友好。做以上這些功能的時(shí)候,基本上都是只要靠近在手機(jī)上點(diǎn)一下/劃一下/推一下/甩一下/搖一下(這是你自己定的)就可以了,而不需要像二維碼一樣還要打開(kāi)攝像頭、對(duì)準(zhǔn)去拍那樣比較麻煩。相比來(lái)說(shuō),聲波傳輸更像刷卡一樣方便簡(jiǎn)單,可以理解為類似NFC的一種近場(chǎng)通訊技術(shù)。
比如說(shuō)你可以用聲波支付,聲波會(huì)員卡,聲波券票,聲音名片,聲波簽到,聲波排隊(duì),做wifi和密碼共享或者設(shè)定,做文件/圖片、你App里面的任何項(xiàng)目分享,用聲波關(guān)注微博、微信等等。
聲波支付的流程前面有講過(guò),實(shí)際上有可能稍微復(fù)雜一點(diǎn),但大概是這樣的思路。
聲波會(huì)員卡是指用戶到店鋪后不需要帶物理卡了,而是手機(jī)代替了所有的會(huì)員卡,在商家一碰,會(huì)員信息就自動(dòng)顯示出來(lái)了。
聲波券票也很簡(jiǎn)單,比如說(shuō)一張電子團(tuán)購(gòu)券,電子電影券,可以設(shè)置成一個(gè)唯一的編碼,到場(chǎng)后與錄音設(shè)備一碰,系統(tǒng)就能識(shí)別到這張券票
聲波簽到是指在固定位置安裝簽到軟件,用戶到達(dá)后,可以快速完成簽到操作。?
聲波分享以文件/圖片、或者你App里面的任何項(xiàng)目為例:比如A要把一張圖片發(fā)送給B,那么A點(diǎn)擊一下共享按鈕(或者一推一丟都行),這時(shí)手機(jī)通過(guò)聲音把這個(gè)圖片的編號(hào)發(fā)送出去,當(dāng)B收到這個(gè)標(biāo)志時(shí),馬上從你平臺(tái)的服務(wù)器上下載這張圖片。最后的效果就是A在要分享的圖片上一點(diǎn),B就能收到該張圖片,非常的方便快捷。
??
聲波通訊的傳輸效率不是很高,所以對(duì)大數(shù)據(jù)傳輸一般采用如下流程:
微信小程序版演示,請(qǐng)點(diǎn)這里(效果超牛的聲波通信,聲音指紋識(shí)別)。
詳情可查看:http://blog.csdn.net/softlgh
作者: 夜行俠 微信號(hào):softlgh, QQ:3116009971, 郵件:3116009971@qq.com
android/iphone/windows/linux/微信 聲波通信庫(kù)及源碼:
百度盤(pán)下載:https://pan.baidu.com/s/1co0TaQ5KAFFc-MBdrIA6MA
CSDN下載
相關(guān)參考:
效果超牛的基于聲波通信和聲音指紋的微信互動(dòng)平臺(tái)(微信小程序版)
聲波通訊的原理
3分鐘為你的應(yīng)用添加聲波通訊功能
android/iphone/windows/linux聲波通訊庫(kù)
Android/iphone手機(jī)通過(guò)聲波初始化智能設(shè)備的WIFI信息
總結(jié)
- 上一篇: git第一次提交代码至远程仓库步骤
- 下一篇: win10开启oracle服务器配置,W