技術(shù)
導(dǎo)讀:Wi-Fi作為更適合物聯(lián)網(wǎng)連接的技術(shù),它可以作為物聯(lián)網(wǎng)的粘合劑。隨著連接節(jié)點(diǎn)的無(wú)限激增,聯(lián)網(wǎng)設(shè)備的覆蓋面和總量也將隨著快速增長(zhǎng)。其內(nèi)部集成了射頻收發(fā)、MAC、基帶處理、Wi-Fi協(xié)議和配置信息及網(wǎng)絡(luò)協(xié)議棧,用戶利用它可以輕松實(shí)現(xiàn)串口設(shè)備的無(wú)線網(wǎng)絡(luò)功能。
近年來(lái),物聯(lián)網(wǎng)市場(chǎng)競(jìng)爭(zhēng)激烈,從物聯(lián)網(wǎng)平臺(tái)廠商,設(shè)備生產(chǎn)商,到服務(wù)提供商,都在涌入這片紅海。預(yù)計(jì)到2020年,全球聯(lián)網(wǎng)設(shè)備數(shù)量將達(dá)到260億個(gè),年復(fù)合增長(zhǎng)率達(dá)到20%;全球聯(lián)網(wǎng)設(shè)備帶來(lái)的數(shù)據(jù)將達(dá)到44ZB,這一數(shù)據(jù)將是2012年的22倍,年復(fù)合增長(zhǎng)率48%。
物聯(lián)網(wǎng)時(shí)代對(duì)網(wǎng)絡(luò)的需求
物聯(lián)網(wǎng)系統(tǒng)層次
物聯(lián)網(wǎng)系統(tǒng)從架構(gòu)上劃分為三個(gè)層次:感知層、網(wǎng)絡(luò)層、應(yīng)用層:
感知層:解決的是人類世界和物理世界的數(shù)據(jù)獲取問(wèn)題,由各種傳感器以及傳感器網(wǎng)關(guān)構(gòu)成。該層被認(rèn)為是物聯(lián)網(wǎng)的核心層,主要是物品標(biāo)識(shí)和信息的智能采集,它由基本的感應(yīng)器件(例如RFID標(biāo)簽和讀寫器、各類傳感器、攝像頭、GPS、二維碼標(biāo)簽和識(shí)讀器等基本標(biāo)識(shí)和傳感器件組成)以及感應(yīng)器組成的網(wǎng)絡(luò)(例如RFID網(wǎng)絡(luò)、傳感器網(wǎng)絡(luò)等)兩大部分組成。該層的核心技術(shù)包括低速和中高速短距離傳輸技術(shù)、自組織組網(wǎng)技術(shù)、協(xié)同信息處理技術(shù),傳感器網(wǎng)絡(luò)中間件技術(shù)等,涉及的核心產(chǎn)品包括傳感器、電子標(biāo)簽、傳感器節(jié)點(diǎn)、無(wú)線路由器、無(wú)線網(wǎng)關(guān)等。
傳輸層:也被稱為網(wǎng)絡(luò)層,解決的是感知層所獲得的數(shù)據(jù)的接入和傳輸功能,是進(jìn)行信息交換、傳遞的數(shù)據(jù)通路。物聯(lián)網(wǎng)傳輸層分為有線通信傳輸層和無(wú)線通信傳輸層。有線通信技術(shù)包括中長(zhǎng)距離的廣域網(wǎng)絡(luò)和短距離的現(xiàn)場(chǎng)總線;無(wú)線通信層分為長(zhǎng)距離的無(wú)線局域網(wǎng)、中短距離的無(wú)線局域網(wǎng)和超短距離的無(wú)線局域網(wǎng)。而由于物聯(lián)網(wǎng)的網(wǎng)絡(luò)層承擔(dān)著巨大的數(shù)據(jù)量,并且面臨更高的服務(wù)質(zhì)量要求,物聯(lián)網(wǎng)需要對(duì)現(xiàn)有網(wǎng)絡(luò)進(jìn)行融合和擴(kuò)展,利用新技術(shù)以實(shí)現(xiàn)更加廣泛和高效的互聯(lián)功能。
應(yīng)用層:也可稱為處理層,解決的是信息處理和人機(jī)界面的問(wèn)題。網(wǎng)絡(luò)層傳輸而來(lái)的數(shù)據(jù)在這一層里進(jìn)入各類信息系統(tǒng)進(jìn)行處理,并通過(guò)各種設(shè)備與人進(jìn)行交互。處理層由業(yè)務(wù)支撐平臺(tái)(中間件平臺(tái))、網(wǎng)絡(luò)管理平臺(tái)(例如M2M管理平臺(tái))、信息處理平臺(tái)、信息安全平臺(tái)、服務(wù)支撐平臺(tái)等組成,完成協(xié)同、管理、計(jì)算、存儲(chǔ)、分析、挖掘、以及提供面向行業(yè)和大眾用戶的服務(wù)等功能,典型技術(shù)包括SOA技術(shù)、海量存儲(chǔ)、分布數(shù)據(jù)處理、數(shù)據(jù)挖掘、信息管理等先進(jìn)技術(shù)可被廣泛采用。
在各層之間,信息不是單向傳遞的,可有交互、控制等,所傳遞的信息多種多樣,包括在特定應(yīng)用系統(tǒng)范圍內(nèi)能唯一標(biāo)識(shí)物品的識(shí)別碼和物品的靜態(tài)與動(dòng)態(tài)信息。
盡管物聯(lián)網(wǎng)在環(huán)境監(jiān)測(cè)、智能電力、智能交通、工業(yè)監(jiān)控、智能家居等經(jīng)濟(jì)和社會(huì)各個(gè)領(lǐng)域的應(yīng)用特點(diǎn)千差萬(wàn)別,但是每個(gè)應(yīng)用的基本架構(gòu)都包括感知、傳輸和應(yīng)用三個(gè)層次,各種行業(yè)和各種領(lǐng)域的專業(yè)應(yīng)用子網(wǎng)都是基于三層基本架構(gòu)構(gòu)建的。
物聯(lián)網(wǎng)接入?yún)f(xié)議與傳輸協(xié)議的區(qū)別
我們將物聯(lián)網(wǎng)通信協(xié)議分為兩大類,一類是接入?yún)f(xié)議,一類是傳輸協(xié)議:
接入?yún)f(xié)議一般負(fù)責(zé)子網(wǎng)內(nèi)設(shè)備間的組網(wǎng)及通信,接入?yún)f(xié)議大多都不屬于TCP/IP協(xié)議族,只能用于設(shè)備子網(wǎng)(設(shè)備與網(wǎng)關(guān)組成的局域網(wǎng))內(nèi)的通訊;傳輸協(xié)議主要是運(yùn)行在傳統(tǒng)互聯(lián)網(wǎng)TCP/IP協(xié)議之上的設(shè)備通訊協(xié)議,負(fù)責(zé)設(shè)備通過(guò)互聯(lián)網(wǎng)進(jìn)行數(shù)據(jù)交換及通信。
采用接入?yún)f(xié)議的物聯(lián)網(wǎng)設(shè)備,需要通過(guò)網(wǎng)關(guān)進(jìn)行協(xié)議轉(zhuǎn)換,轉(zhuǎn)換成通訊協(xié)議才能接入互聯(lián)網(wǎng)。而采用通訊協(xié)議的物聯(lián)網(wǎng)設(shè)備,則可以直接接入互聯(lián)網(wǎng)。
常用的接入?yún)f(xié)議包括Wi-Fi、RFID、NFC、ZigBee、Bluetooth、LoRa、NB-IoT、GSM、GPRS、3/4/5G網(wǎng)絡(luò)、Ethernet、RS232、RS485、USB等等;常用的通訊協(xié)議包括HTTP、CoAP、MQTT、XMPP、AMQP、JMS等。接入?yún)f(xié)議位于網(wǎng)絡(luò)層次架構(gòu)中的物理/數(shù)鏈層,通訊協(xié)議位于應(yīng)用層。
物聯(lián)網(wǎng)接入?yún)f(xié)議和通訊協(xié)議區(qū)別如下:
那么,既然有了可以直接接入互聯(lián)網(wǎng)的通訊協(xié)議,那么接入?yún)f(xié)議的意義何在呢?接入?yún)f(xié)議的優(yōu)勢(shì)說(shuō)起了,相對(duì)于通訊協(xié)議,接入?yún)f(xié)議所依賴的硬件資源要求更低,功耗更低,網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)量也更小,因此,在控制領(lǐng)域等一些場(chǎng)景中更具優(yōu)勢(shì)。
這些場(chǎng)景中,物聯(lián)網(wǎng)設(shè)備往往沒(méi)有外接電源,因此要求功耗盡可能低,比如,一節(jié)紐扣電池能夠供電一年左右。這樣的要求是HTTP等協(xié)議的所需的硬件環(huán)境難以勝任的。
常用的幾種物聯(lián)網(wǎng)接入?yún)f(xié)議
目前市場(chǎng)上常見的接入?yún)f(xié)議有ZigBee、藍(lán)牙以及Wi-Fi協(xié)議等:
ZigBee目前在工業(yè)控制領(lǐng)域應(yīng)用廣泛,在智能家居領(lǐng)域也有一定應(yīng)用。它有以下主要優(yōu)勢(shì):
低成本:ZigBee協(xié)議數(shù)據(jù)傳輸速率低,協(xié)議簡(jiǎn)單,所以開發(fā)成本也比較低。并且zigbee協(xié)議還免收專利費(fèi)用。
低功耗:由于ZigBee協(xié)議傳輸速率低,節(jié)點(diǎn)所需的發(fā)射功率僅1mW,并采用休眠+喚醒模式,功耗極低。
自組網(wǎng):通過(guò)ZigBee協(xié)議自帶的mesh功能,一個(gè)子網(wǎng)絡(luò)內(nèi)可以支持多達(dá)65000個(gè)節(jié)點(diǎn)連接,可以快速實(shí)現(xiàn)一個(gè)大規(guī)模的傳感網(wǎng)絡(luò)。
安全性:使用crc校驗(yàn)數(shù)據(jù)包的完整性,支持鑒權(quán)和認(rèn)證,并且采用aes-128對(duì)傳輸數(shù)據(jù)進(jìn)行加密。
ZigBee協(xié)議的最佳應(yīng)用場(chǎng)景是無(wú)線傳感網(wǎng)絡(luò),比如水質(zhì)監(jiān)測(cè)、環(huán)境控制等節(jié)點(diǎn)之間需要自組網(wǎng)以相互之間傳輸數(shù)據(jù)的工業(yè)場(chǎng)景中。在這些場(chǎng)景中ZigBee協(xié)議的優(yōu)勢(shì)發(fā)揮的非常明顯。目前國(guó)內(nèi)外很多廠商也將ZigBee運(yùn)用在智能家居方案中。
藍(lán)牙協(xié)議大家都非常熟悉了,特別是隨著藍(lán)牙4.0協(xié)議推出后發(fā)展迅速,目前已經(jīng)成為智能手機(jī)的標(biāo)配通信組件。藍(lán)牙4.0之所以在近幾年發(fā)展迅速,主要有以下兩點(diǎn)原因:
①低功耗:我認(rèn)為這個(gè)是藍(lán)牙4.0的大殺器,使用紐扣電池的藍(lán)牙4.0設(shè)備可運(yùn)行一年以上,這對(duì)不希望頻繁充電的可穿戴設(shè)備具有十分大的吸引力。當(dāng)前基本世面上的可穿戴設(shè)備基本都選用藍(lán)牙4.0方案。
②可手機(jī)接入:近年來(lái)支持藍(lán)牙協(xié)議基本成為智能手機(jī)的標(biāo)配,用戶無(wú)需購(gòu)買額外的接入模塊。
Bluetooth最大的優(yōu)點(diǎn)是不依賴于外部網(wǎng)絡(luò)、便攜、低功耗。只要有手機(jī)和智能設(shè)備,就能保持穩(wěn)定的連接,走到哪連到哪。所以大部分運(yùn)動(dòng)和戶外使用的設(shè)備都會(huì)優(yōu)先考慮Bluetooth。它的主要不足是:不能直接連接云端,傳輸速度比較慢,組網(wǎng)能力比較弱。
Wi-Fi協(xié)議和藍(lán)牙協(xié)議一樣,目前也得到了非常大的發(fā)展。由于前幾年家用Wi-Fi路由器以及智能手機(jī)的迅速普及,Wi-Fi協(xié)議在智能家居領(lǐng)域也得到了廣泛應(yīng)用:
①Wi-Fi可以直接接入互聯(lián)網(wǎng):相對(duì)于ZigBee,采用Wi-Fi協(xié)議的智能家居方案省去了額外的網(wǎng)關(guān),相對(duì)于藍(lán)牙協(xié)議,省去了對(duì)手機(jī)等移動(dòng)終端的依賴。
②Wi-Fi最大的優(yōu)點(diǎn)是連接快速、持久、穩(wěn)定,它是IoT設(shè)備端連接的首選方案,唯一需要考慮的是智能設(shè)備對(duì)Wi-Fi覆蓋范圍的依賴導(dǎo)致smart devices的活動(dòng)范圍比較小,不適合隨時(shí)攜帶和戶外場(chǎng)景。
相當(dāng)于藍(lán)牙和ZigBee,Wi-Fi協(xié)議的功耗成為其在物聯(lián)網(wǎng)領(lǐng)域應(yīng)用的一大瓶頸。但是隨著現(xiàn)在各大芯片廠商陸續(xù)推出低功耗、低成本的Wi-Fi soc(如esp8266),這個(gè)問(wèn)題也在逐漸被解決。
何謂“配網(wǎng)”
WIFI的 “聯(lián)網(wǎng)”和“自動(dòng)聯(lián)網(wǎng)”
連網(wǎng):一般指的是Wi-Fi設(shè)備通過(guò)SSID和密碼來(lái)連接熱點(diǎn)AP或路由器,以加入后者所建立的網(wǎng)絡(luò)的過(guò)程。
自動(dòng)連網(wǎng):一般指的是Wi-Fi設(shè)備在啟動(dòng)、掉線、或掃描到特定的SSID后,會(huì)使用之前保存的SSID與密碼,自動(dòng)連接熱點(diǎn)AP或路由器,而不需要手工重新輸入。其中,WIFI設(shè)備掉線后的“自動(dòng)連網(wǎng)”,又常常被稱為“自動(dòng)重連”。
自動(dòng)連網(wǎng):一般需要在之前配網(wǎng)成功后,將SSID和密碼進(jìn)行保存,以便在需要“自動(dòng)連網(wǎng)”時(shí)可以從保存的地址讀取出來(lái)使用。
Wi-Fi的“配網(wǎng)”
“配網(wǎng)”指的是,外部向Wi-Fi模塊提供SSID和密碼,以便Wi-Fi模塊可以連接指定的熱點(diǎn)或路由器并加入后者所建立的相關(guān)Wi-Fi網(wǎng)絡(luò)。
Wi-Fi模塊一般不像電腦手機(jī)或平板等設(shè)備,有豐富的人機(jī)交互界面,可以方便的實(shí)現(xiàn)配網(wǎng),因此,Wi-Fi模塊的“配網(wǎng)”方式支持,會(huì)成為Wi-Fi模塊特性的一個(gè)基本話題。
能提供方便、靈活多樣、條件約束少的配網(wǎng)方式,常常成為Wi-Fi模塊的賣點(diǎn)之一,更是Wi-Fi模塊的使用者,在選型時(shí)需要慎重考慮評(píng)估的一個(gè)重要方面。
Wi-Fi常用配網(wǎng)方式及原理實(shí)現(xiàn)
常見的配網(wǎng)方式,可歸為如下幾大類:直接配網(wǎng)、WPS配網(wǎng)、WEB配網(wǎng)、SoftAP配網(wǎng)、智能配網(wǎng)配網(wǎng)、聲波配網(wǎng)。用戶可以根據(jù)具體的使用場(chǎng)合選擇各種最適合的配網(wǎng)方式。
直接配網(wǎng)
所謂直接配網(wǎng),就是通過(guò)UART串口、SPI口、SDIO口、I2C等主機(jī)接口,按照一定的通信協(xié)議,將SSID和密碼,直接傳遞給WIFI模塊。Wi-Fi模塊在收到SSID和密碼后去連接熱點(diǎn)或路由器,并將連接的結(jié)果從主機(jī)接口返回。目前斑馬車機(jī)采用的這種方式連接盯盯拍。
例如,常見的通過(guò)UART串口AT指令配網(wǎng)、SPI API函數(shù)配網(wǎng)、SDIO API函數(shù)配網(wǎng)、I2C API函數(shù)配網(wǎng)等。
直接配網(wǎng)方式軟件方案實(shí)現(xiàn)簡(jiǎn)單,但需要鋪設(shè)其他的通信線路,比較適合于板載WIFI模塊,或有其他協(xié)議傳輸線連接的設(shè)備間。因此對(duì)于環(huán)境要求比較高,需要在系統(tǒng)間有其它的通信鏈路存在。
WPS配網(wǎng)
路由器中WPS是由Wi-Fi聯(lián)盟所推出的全新Wi-Fi安全防護(hù)設(shè)定(Wi-Fi Protected Setup)標(biāo)準(zhǔn),該標(biāo)準(zhǔn)推出的主要原因是為了解決長(zhǎng)久以來(lái)無(wú)線網(wǎng)絡(luò)加密認(rèn)證設(shè)定的步驟過(guò)于繁雜艱難之弊病。WPS用于簡(jiǎn)化Wi-Fi無(wú)線的安全設(shè)置和網(wǎng)絡(luò)管理。它支持兩種模式:個(gè)人識(shí)別碼(PIN)模式和按鈕(PBC)模式。
這種方式需要模塊支持WPS功能。使用者往往會(huì)因?yàn)椴襟E太過(guò)麻煩,以致干脆不做任何加密安全設(shè)定,因而引發(fā)許多安全上的問(wèn)題。因?yàn)榘踩缘木壒剩鼛啄暌呀?jīng)逐步被放棄,越來(lái)越多的路由器開始放棄或者自動(dòng)關(guān)閉對(duì)這種方式的支持。
WEB配網(wǎng)
在支持AP模式的Wi-Fi模塊上內(nèi)嵌一個(gè)簡(jiǎn)易的WEB服務(wù)器,在WEB網(wǎng)頁(yè)里提供了配網(wǎng)的交互接口。其他網(wǎng)絡(luò)設(shè)備(例如手機(jī)、平板、電腦等)直接連接上Wi-Fi模塊的AP熱點(diǎn),在瀏覽器上打開該WEB網(wǎng)頁(yè),在WEB網(wǎng)頁(yè)里配置該Wi-Fi模塊去連接其他的AP或路由器。
歸因于近年來(lái)越來(lái)越多的Wi-Fi芯片解決方案都開始支持STA+AP混合模式(即WIFI模塊不僅可以作為工作站STA使用去連接其他路由器或熱點(diǎn),同時(shí)本身也可以作為一個(gè)熱點(diǎn)AP供其他WIFI設(shè)備節(jié)點(diǎn)來(lái)連接),也歸因于近年來(lái)許多Wi-Fi芯片解決方案越來(lái)越高的集成度可以將TCP IP協(xié)議棧直接集成在Wi-Fi模塊上,因此,可以簡(jiǎn)單地在Wi-Fi模塊上直接實(shí)現(xiàn)一個(gè)WEB服務(wù)器,且這個(gè)服務(wù)器可以通過(guò)Wi-Fi模塊的AP模式直接訪問(wèn)(不需要依賴其他網(wǎng)絡(luò),手機(jī)等設(shè)備直接訪問(wèn)WIFI模塊自建立的Wi-Fi網(wǎng)絡(luò)和WEB網(wǎng)頁(yè),進(jìn)行配置)。
這種配網(wǎng)方式的基本思想是,Wi-Fi模塊工作在STA+AP混合模式并啟動(dòng)內(nèi)嵌的WEB服務(wù)器,電腦手機(jī)或平板等Wi-Fi設(shè)備連接WIFI模塊所建立的AP熱點(diǎn),并獲取得到一個(gè)IP地址(即:加入了這個(gè)Wi-Fi模塊的熱點(diǎn)AP模式所建立的Wi-Fi局域網(wǎng)),然后電腦手機(jī)或平板等Wi-Fi設(shè)備通過(guò)其上標(biāo)配的瀏覽器訪問(wèn)Wi-Fi模塊上的WEB服務(wù)器,在打開的WEB網(wǎng)頁(yè)中,完成各種配置,包括設(shè)置Wi-Fi模塊在STA模式下去鏈接第三方熱點(diǎn)或路由器的SSID和密碼,讓W(xué)IFI模塊作為STA去連接其他熱點(diǎn)AP或路由器。
SoftAP配網(wǎng)
SoftAP配網(wǎng)方式在小米智能家居產(chǎn)品中被廣泛應(yīng)用。其原理是在Wi-Fi網(wǎng)絡(luò)中另外啟動(dòng)TCP服務(wù),通過(guò)TCP進(jìn)行SSID和密碼的配置,使智能硬件接入到指定的路由器。
在機(jī)器復(fù)位后,首先智能硬件會(huì)工作在Wi-Fi的AP模式,且開啟TCP服務(wù)器,進(jìn)入監(jiān)聽狀態(tài)。
在此時(shí),使用手機(jī)接入該AP熱點(diǎn),連接成功后,打開客戶端,手機(jī)會(huì)去連接TCP服務(wù)器,三次握手連接成功后,則傳輸協(xié)議數(shù)據(jù),內(nèi)容包括指定智能硬件將要連接的Wi-Fi的SSID和密碼。
硬件成功接收到手機(jī)發(fā)來(lái)的數(shù)據(jù)包解析得到Wi-Fi名字和密碼。回復(fù)手機(jī)正在嘗試連接了。關(guān)閉AP模式,開啟station模式連接路由器,成功連接到指定的路由器。然后手機(jī)切回到指定路由器并開啟UDP通訊,智能硬件用UDP協(xié)議廣播配網(wǎng)成功數(shù)據(jù)。
智能配網(wǎng)(SmartConfig/SmartConnection....)
所謂智能配網(wǎng),就是使用Wi-Fi設(shè)備本身自帶的WIFI信號(hào),在MAC層將SSID和密碼按照一定的協(xié)議格式填充在MAC包中不加密的包頭部分,采用廣播和抓包方式,從手機(jī)等設(shè)備將SSID和密碼分段多次傳遞給WIFI模塊。
目前市面上常見的多種SmartConfig/SmartConnection技術(shù),雖然各個(gè)Wi-Fi芯片方案會(huì)取不同的英文名字,但是基本原理則基本相同,只是填充的數(shù)據(jù)協(xié)議格式稍有區(qū)別。
智能配網(wǎng)一般需要在發(fā)送SSID和密碼的設(shè)備(例如手機(jī))上安裝一個(gè)APP,該APP實(shí)現(xiàn)了和Wi-Fi模塊之間的協(xié)議交互(發(fā)送SSID和密碼)。
這個(gè)功能最早是TI提出并應(yīng)用于CC3200上;不過(guò)從原理上講,只要芯片驅(qū)動(dòng)支持開啟混雜模式(Wi-Fi Promiscuous),就可以支持一鍵配網(wǎng)功能,只是各個(gè)廠家叫法及實(shí)現(xiàn)編碼方式不同而已。
SNAP:格式數(shù)據(jù)包
DA:目標(biāo)MAC地址
SA:源MAC地址
LENGTH:表示后面數(shù)據(jù)的長(zhǎng)度
LLC:表示LLC頭
SNAP:表示3byte的廠商代碼和2byte的協(xié)議類型表示
DATA:載荷數(shù)據(jù)
FCS:幀檢驗(yàn)序列
由于無(wú)線數(shù)據(jù)傳播必定是廣播的,所以必然可以被監(jiān)聽到;如果AP沒(méi)有加密的話,UDP直接可以把相關(guān)的信息發(fā)送出來(lái).但是路由器AP一般都是加密的,而且加密方式不固定。
Wi-Fi模塊在無(wú)法直接解析出數(shù)據(jù)包。從802.11的MAC層幀格式中可以看到, 鏈路層載荷數(shù)據(jù)(即網(wǎng)絡(luò)層頭部及網(wǎng)絡(luò)層數(shù))在數(shù)據(jù)幀中是清晰可辨的, 只要接收到802.11幀就可以立刻提取出載荷數(shù)據(jù), 計(jì)算載荷數(shù)據(jù)的長(zhǎng)度自不用說(shuō), 而這里的載荷數(shù)據(jù), 通常就是密文。
在發(fā)送端,可以采用2種不同的編碼發(fā)送方式:
UDP廣播:從802.11幀格式分析中獲知,無(wú)線信號(hào)監(jiān)聽方的角度來(lái)說(shuō),不管無(wú)線信道有沒(méi)有加密,DA、SA、LENGTH、LLC、SNAP、FCS字段總是暴露的,因此信號(hào)監(jiān)聽方可以從這6個(gè)字段獲取有效信息.從發(fā)送方講,由于操作系統(tǒng)的限制,如果采用廣播只剩下LENGTH發(fā)送方可通過(guò)改變其所需要發(fā)送數(shù)據(jù)包的長(zhǎng)度進(jìn)行控制.所以只要指定出一套利用長(zhǎng)度編碼的通訊協(xié)議,就可利用數(shù)據(jù)包的Length字段進(jìn)行數(shù)據(jù)傳遞;
UDP組播:組播地址是保留的D類地址從224.0.0.0-239.255.255.255,IP地址與MAC地址映射關(guān)系為:將MAC地址的前25位設(shè)定為01.00.5e,而MAC地址的后23位對(duì)應(yīng)IP地址的位;故發(fā)送端可以將數(shù)據(jù)編碼在組播ip的后23bit中,通過(guò)組播包發(fā)送,接收端進(jìn)行解碼即可;
接收端進(jìn)入一鍵配置功能后,Wi-Fi智能硬件從信道1開始監(jiān)聽路由上的數(shù)據(jù),如當(dāng)前監(jiān)聽信道有符合規(guī)則的數(shù)據(jù)包,就停止信道切換,停留在當(dāng)前信道接收完全部數(shù)據(jù).否則就依次切換至信道2.3.4....直到信道14后又從信道1開始繼續(xù)監(jiān)聽依次循環(huán);
當(dāng)然,Wi-Fi智能硬件可以在開啟混雜模式之前,先行掃描當(dāng)前環(huán)境下存在的AP獲取所有當(dāng)前AP的信道,然后只對(duì)當(dāng)前掃描到的信道進(jìn)行依次監(jiān)聽,如當(dāng)前環(huán)境下只存在2個(gè)路由,分別在1.6信道,只需輪流掃描channel1和channel6,這樣可以提高配置效率。
聲波配網(wǎng)
聲波配網(wǎng),即通過(guò)手機(jī)發(fā)出聲波,將SSID、password等信息傳給設(shè)備的一種配網(wǎng)方式。通過(guò)手機(jī)播放聲波把Wi-Fi的初始化連接信息傳遞給智能設(shè)備,讓設(shè)備識(shí)別完成Wi-Fi初始化流程建立網(wǎng)絡(luò)連接。
一定程度上,聲波傳輸可以理解為類似NFC的一種近場(chǎng)通訊技術(shù)。適用于沒(méi)有觸屏或觸屏較小不易于信息輸入,但是擁有麥克風(fēng)的智能設(shè)備,如對(duì)話機(jī)器人,智能音響等。其優(yōu)點(diǎn)是配網(wǎng)速度快、可人耳感知,缺點(diǎn)是受環(huán)境干擾較大。
實(shí)現(xiàn)聲波配網(wǎng),首先需要一套特定的算法庫(kù),算法庫(kù)分手機(jī)端和設(shè)備端兩部分。手機(jī)端算法庫(kù)將ssid信息由字符串轉(zhuǎn)化為聲音信號(hào)(PCM),然后將聲音信號(hào)通過(guò)音頻模塊播放出來(lái)。
同時(shí),設(shè)備端錄下這一段聲音,然后用同一套算法庫(kù)將聲音信息解析出來(lái),還原成原來(lái)的ssid信息(字符串),最后用解析到的ssid信息用于連接WIFI。
編解碼可選擇范圍分為低頻、中頻、高頻三種,其中低頻的頻率范圍為2K~5K,中頻的范圍為8K~12K,高頻的范圍為16K~20K。頻率越高,聲音越尖銳,抗噪性能越強(qiáng)。
顯然聲波配網(wǎng)技術(shù)中的技術(shù)難點(diǎn)就是聲波傳輸技術(shù)。而聲波傳輸?shù)膽?yīng)用其實(shí)已經(jīng)很廣啦:支付寶的聲波支付,QQ音樂(lè)中的歌曲的聲波分享,茄子快傳,蛐蛐兒等。
其實(shí)原理很簡(jiǎn)單,可以近似理解為對(duì)稱加密,加解密的過(guò)程大概如下所示:
僅傳輸ASCII可打印字符。
傳輸U(kuò)TF-8字符串。
簡(jiǎn)單的說(shuō)就是在發(fā)送端把你把要識(shí)別的字符映射成頻率,然后把一個(gè)頻率映射成一個(gè)音節(jié)信號(hào)(單頻率的正弦波)編碼成音頻播放;在接收端接收到音頻信號(hào)后,解析出頻率,然后根據(jù)兩邊共同的碼表找到頻率對(duì)應(yīng)的字符,從而解碼出數(shù)據(jù)。
具體來(lái)說(shuō)就是我們可以將700HZ的正弦波對(duì)應(yīng)成字符'a',800HZ的正弦波對(duì)應(yīng)數(shù)字'b',900HZ的正弦波對(duì)應(yīng)數(shù)字'c',以此類推。那么數(shù)字串"abc"就對(duì)應(yīng)成頻率串就是{700,800,900},然后把這個(gè)頻率串變成3個(gè)音節(jié)的正弦波音頻。如果規(guī)定每個(gè)音節(jié)持續(xù)100ms,則{700,800,900}對(duì)應(yīng)300毫秒的音頻段。接收方錄制聲音,對(duì)收到的聲音進(jìn)行解析,識(shí)別出700HZ,800HZ,900HZ三段正弦波頻率,然后查找碼表,解碼出的字符串就是"abc"。
聲波配網(wǎng)主要流程如下:
首先,在手機(jī)(或平板等其它一代設(shè)備)輸入ssid信息(或獲取當(dāng)前或系統(tǒng)保存的ssid信息),將信息由buffer編碼為pcm數(shù)據(jù);
將使用算法庫(kù)編碼出來(lái)的pcm數(shù)據(jù)通過(guò)喇叭播放出來(lái),同時(shí),設(shè)備端打開錄音,捕獲pcm數(shù)據(jù);
設(shè)備端將pcm數(shù)據(jù)通過(guò)算法庫(kù)解碼回原來(lái)的buffer數(shù)據(jù);
從數(shù)據(jù)中解析出ssid、password等信息,并將其用于連接路由器。
IOT場(chǎng)景下的Wi-Fi配網(wǎng)選擇
Wi-Fi作為最適合物聯(lián)網(wǎng)連接的技術(shù),它可以作為物聯(lián)網(wǎng)的粘合劑。隨著連接節(jié)點(diǎn)的無(wú)限激增,聯(lián)網(wǎng)設(shè)備的覆蓋面和總量也將隨著快速增長(zhǎng)。其內(nèi)部集成了射頻收發(fā)、MAC、基帶處理、Wi-Fi協(xié)議和配置信息及網(wǎng)絡(luò)協(xié)議棧,用戶利用它可以輕松實(shí)現(xiàn)串口設(shè)備的無(wú)線網(wǎng)絡(luò)功能。用戶在實(shí)際使用中可根據(jù)表中各配網(wǎng)方式的優(yōu)劣選擇。
高德今年發(fā)布天貓精靈高德版套裝。車盒借助盯盯拍mini3行車記錄儀的攝像頭實(shí)現(xiàn)AR導(dǎo)航功能。在該案例中,充分考慮產(chǎn)品功能,論證其安全性,采用SoftAP的配網(wǎng)方式。