日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 物聯(lián)網(wǎng)技術(shù)文庫
[導(dǎo)讀]   背景   時(shí)間:1年前的某日   坐標(biāo):深圳   在一個(gè)平常的不能再平常的周末下午,幾個(gè)小伙伴聚在了一起,一起暢想“萬物互聯(lián)”的物聯(lián)網(wǎng)未來。小

  背景

  時(shí)間:1年前的某日

  坐標(biāo):深圳

  在一個(gè)平常的不能再平常的周末下午,幾個(gè)小伙伴聚在了一起,一起暢想“萬物互聯(lián)”的物聯(lián)網(wǎng)未來。小伙伴中有硬件開發(fā)者、嵌入式開發(fā)者、軟件開發(fā)者;有互聯(lián)網(wǎng)公司的全棧工程師、也有核電廠的工控系統(tǒng)維護(hù)者、還有路由器廠商的wifi協(xié)議開發(fā)者。我們發(fā)現(xiàn),世面上沒有開源且可商用的物聯(lián)網(wǎng)平臺(tái)或系統(tǒng)。這里的可商用,不是搭建幾個(gè)demo把硬件連上網(wǎng)、app操作兩下這么簡單!

  有以下幾點(diǎn)都是必須著重考慮的:

  必須有完備的硬件、嵌入式、云端一體的協(xié)議及架構(gòu)設(shè)計(jì)

  能夠?qū)崿F(xiàn)真正的硬件智能化,能夠基于數(shù)據(jù)學(xué)習(xí)并自主工作

  必須有很高的性能、穩(wěn)定性及擴(kuò)展性

  必須能夠適應(yīng)成千上萬種不同資源的硬件設(shè)備,從PC到手機(jī)、從計(jì)算資源極其有限的單片機(jī)到網(wǎng)絡(luò)帶寬極其有限的控制器

  必須能適應(yīng)不同的網(wǎng)絡(luò)場景,包括有線、wifi、3g/4g、gprs等

  必須有很可靠的安全性

  需要盡可能降低研發(fā)和生產(chǎn)成本

  在媒體和科技工作者都抱著物聯(lián)網(wǎng)是未來的觀點(diǎn)并翹首觀望時(shí),我們決定做點(diǎn)什么,而不是當(dāng)看客!這個(gè)平常的不能再平常的周末下午,也許對我們不太平凡。

  我們決定啟動(dòng)全套可商用物聯(lián)網(wǎng)系統(tǒng)的設(shè)計(jì)和研發(fā),并在不久的將來,全部開源。

  

  于是大家利用業(yè)余時(shí)間,開始了協(xié)議設(shè)計(jì)及系統(tǒng)設(shè)計(jì),將項(xiàng)目慢慢啟動(dòng)了起來。幾個(gè)月后,第一個(gè)商用版本的研發(fā)成功完成。這期間,好幾個(gè)小伙伴辭去了工作,全職進(jìn)行研發(fā)。我們在沒有融資、沒有資源的情況下一路走到現(xiàn)在,其中辛酸就不多言了。謹(jǐn)以此文記錄我們在系統(tǒng)設(shè)計(jì)和研發(fā)中的走過的路,以饗同樣是物聯(lián)網(wǎng)愛好者的你。

  整體設(shè)計(jì)

  一個(gè)物聯(lián)網(wǎng)系統(tǒng)涉及硬件、軟件、云端、app各個(gè)環(huán)節(jié),必須從整體進(jìn)行頂層設(shè)計(jì),只倚重某個(gè)單一的環(huán)節(jié)進(jìn)行設(shè)計(jì)的系統(tǒng)都不具備良好的適用性和擴(kuò)展性。我們在設(shè)計(jì)時(shí)為了避免這種情況,使系統(tǒng)能夠適應(yīng)最廣泛的物聯(lián)網(wǎng)場景(甚至包括工業(yè)場景),每次的架構(gòu)設(shè)計(jì)討論都是所有團(tuán)隊(duì)成員參與。大體的系統(tǒng)架構(gòu)如下:

  

  協(xié)議

  在一個(gè)物聯(lián)網(wǎng)系統(tǒng)中,協(xié)議是串通上下層的關(guān)鍵紐帶。在物聯(lián)網(wǎng)系統(tǒng)中,我們將協(xié)議分為兩大層:通信層和業(yè)務(wù)層。

  

  通信層基本上是傳統(tǒng)互聯(lián)網(wǎng)的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,負(fù)責(zé)將數(shù)據(jù)在物聯(lián)網(wǎng)系統(tǒng)節(jié)點(diǎn)中的傳輸

  業(yè)務(wù)層分為兩層,底層是負(fù)責(zé)物聯(lián)網(wǎng)場景下數(shù)據(jù)交換格式的規(guī)范,上層是物聯(lián)網(wǎng)場景需要具體傳輸?shù)臉I(yè)務(wù)數(shù)據(jù)規(guī)范。

  通信層互聯(lián)網(wǎng)基礎(chǔ)架構(gòu)目前已經(jīng)非常成熟且通用,但是業(yè)務(wù)層協(xié)議目前還是種類繁多。可以確定的一點(diǎn)是,最終能在物聯(lián)網(wǎng)應(yīng)用中稱霸的協(xié)議,一定也像互聯(lián)網(wǎng)時(shí)代的TCP/IP一樣是開放的、免費(fèi)的。目前符合此特性并使用比較多的有XMPP、MQTT、COAP等。關(guān)于具體的對比,可以參考我之前的另一篇文章《物聯(lián)網(wǎng)通信協(xié)議介紹》。

  文中總結(jié)如下:

  互聯(lián)網(wǎng)中使用較多的HTTP、websocket以及XMPP等協(xié)議,在設(shè)計(jì)時(shí)都是根據(jù)互聯(lián)網(wǎng)應(yīng)用場景設(shè)計(jì)的,雖然很多廠商把他們應(yīng)用在物聯(lián)網(wǎng)系統(tǒng)中,但是必然會(huì)水土不服,這些協(xié)議的通病就是根本無法適用物聯(lián)網(wǎng)設(shè)備的多樣性,無法適用很多物聯(lián)網(wǎng)設(shè)備對低功耗、低成本的需求,難以在極低資源的物聯(lián)網(wǎng)設(shè)備中運(yùn)用。

  COAP協(xié)議針對資源受限的嵌入式設(shè)備設(shè)計(jì),但由于很多物聯(lián)網(wǎng)設(shè)備隱藏在局域網(wǎng)內(nèi)部,COAP設(shè)備作為服務(wù)器無法被外部設(shè)備尋址,在ipv6沒有普及之前,coap只能適用于局域網(wǎng)內(nèi)部(如wifi)通信,這也很大限制了它的適用范圍。

  MQTT在協(xié)議設(shè)計(jì)時(shí)就考慮到不同設(shè)備的計(jì)算性能的差異,所以所有的協(xié)議都是采用二進(jìn)制格式編解碼,并且編解碼格式都非常易于開發(fā)和實(shí)現(xiàn)。最小的數(shù)據(jù)包只有2個(gè)字節(jié),對于低功耗低速網(wǎng)絡(luò)也有很好的適應(yīng)性。有非常完善的QOS機(jī)制,根據(jù)業(yè)務(wù)場景可以選擇最多一次、至少一次、剛好一次三種消息送達(dá)模式。運(yùn)行在TCP協(xié)議之上,同時(shí)支持TLS(TCP+SSL)協(xié)議,并且由于所有數(shù)據(jù)通信都經(jīng)過云端,安全性得到了較好地保障。

  我們最終選擇基于MQTT來作為業(yè)務(wù)傳輸層主要協(xié)議。但是MQTT協(xié)議本身的設(shè)計(jì)是針對開放設(shè)備,對于可商用的物聯(lián)網(wǎng)系統(tǒng)不得不保證設(shè)備的安全性和完善的授權(quán)機(jī)制。所以我們在實(shí)現(xiàn)MQTT協(xié)議時(shí)進(jìn)行了一些定制和限制。

  在業(yè)務(wù)層的上層(business層),目前的物聯(lián)網(wǎng)系統(tǒng)都是各自針對自己的業(yè)務(wù)場景設(shè)計(jì)協(xié)議規(guī)范。有沒有可能根據(jù)物聯(lián)網(wǎng)場景統(tǒng)一業(yè)務(wù)數(shù)據(jù)的規(guī)范呢?我們認(rèn)為是可行的,并且也是必要的。如果把通信協(xié)議比作聲音,光有通信協(xié)議,任何人之間還是無法交流。只有統(tǒng)一語言,大家才能順暢溝通。所以我們抽象出物聯(lián)網(wǎng)節(jié)點(diǎn)中傳感器和執(zhí)行器的業(yè)務(wù)場景,并設(shè)計(jì)出含有物聯(lián)網(wǎng)業(yè)務(wù)數(shù)據(jù)語義的業(yè)務(wù)層協(xié)議。目前已經(jīng)將業(yè)務(wù)層協(xié)議開源,希望對廣大愛好者和從業(yè)者帶來一定參考價(jià)值。

  云端平臺(tái)

  互聯(lián)網(wǎng)時(shí)代的用戶上網(wǎng)終端主要是PC和手機(jī)等設(shè)備,可以想象,物聯(lián)網(wǎng)時(shí)代,上網(wǎng)終端會(huì)呈多樣化、海量化趨勢。保守估計(jì)每人擁有數(shù)十套聯(lián)網(wǎng)設(shè)備,數(shù)據(jù)規(guī)模必然也是幾何倍增長。所以物聯(lián)網(wǎng)云端平臺(tái)注定是一個(gè)大規(guī)模的海量分布式系統(tǒng)。

  目前很多愛好者或者廠商通過搭建簡單的web系統(tǒng)(如php、nodejs、python實(shí)現(xiàn)的web接口)可以實(shí)現(xiàn)設(shè)備的聯(lián)網(wǎng),但是可以想象,在真正的商用場景中,穩(wěn)定性、性能、擴(kuò)展性都必然遭受沖擊,無法應(yīng)對。

  在進(jìn)行技術(shù)選型和架構(gòu)設(shè)計(jì)時(shí),我們也綜合考慮以上因素進(jìn)行設(shè)計(jì)和實(shí)現(xiàn):

  采用go語言作為主要開發(fā)語言。go語言有著簡潔的語法,并且能夠很方便地進(jìn)行高并發(fā)程序的開發(fā),在高性能云計(jì)算系統(tǒng)的開發(fā)中有著得天獨(dú)厚的優(yōu)勢。

  采用microservice分布式架構(gòu)。microservice架構(gòu)能夠構(gòu)建出更穩(wěn)定、擴(kuò)展性更好的分布式系統(tǒng),也是目前分布式系統(tǒng)中最流行的架構(gòu)方式。

  使用docker降低運(yùn)維成本。docker能夠方便地對系統(tǒng)就行升級和出錯(cuò)回滾,保證了系統(tǒng)發(fā)布時(shí)的穩(wěn)定性。

  對外接口采用REST風(fēng)格進(jìn)行設(shè)計(jì)。REST風(fēng)格的接口便于升級和兼容,并擁有非常易于理解的語義,降低開發(fā)者的學(xué)習(xí)門檻。

  多副本部署。任何服務(wù)模塊我們都保證同時(shí)至少有兩個(gè)運(yùn)行實(shí)例,并根據(jù)服務(wù)發(fā)現(xiàn)機(jī)制自動(dòng)進(jìn)行負(fù)載和調(diào)度,以增加系統(tǒng)可用性。

  大體的云端架構(gòu)如下圖

  

  目前我們的系統(tǒng)已經(jīng)發(fā)布到0.8.0版本,后續(xù)會(huì)在安裝和運(yùn)維的便捷性上進(jìn)行優(yōu)化,并計(jì)劃在1.0版本時(shí)開源發(fā)布。

  嵌入式

  物聯(lián)網(wǎng)硬件的嵌入式軟件除了傳統(tǒng)部分,必須加入聯(lián)網(wǎng)邏輯以及傳感器、控制器的管理。為了提高開發(fā)效率、方便復(fù)用,我們設(shè)計(jì)并開發(fā)了輕量級的物聯(lián)網(wǎng)嵌入式開發(fā)框架,并對物聯(lián)網(wǎng)業(yè)務(wù)進(jìn)行了抽象,以便移植到不同的硬件平臺(tái)。我們希望做到的是,在不需要更改任何業(yè)務(wù)層代碼的情況下,一個(gè)物聯(lián)網(wǎng)嵌入式應(yīng)用可以在不同的硬件平臺(tái)運(yùn)行。

  

  當(dāng)前很多大企業(yè)(華為、惠普、google等)都紛紛推出了物聯(lián)網(wǎng)操作系統(tǒng),后續(xù)物聯(lián)網(wǎng)領(lǐng)域會(huì)出現(xiàn)多種操作系統(tǒng)共存的局面。不同的操作系統(tǒng)能運(yùn)行的最低系統(tǒng)資源以及具體應(yīng)用場景都不盡相同,但我們相信,物聯(lián)網(wǎng)的上層業(yè)務(wù)是通用的,這也是我們設(shè)計(jì)物聯(lián)網(wǎng)嵌入式開發(fā)框架的原因。

  安全

  近些日子,各種廠商的物聯(lián)網(wǎng)設(shè)備紛紛傳出被黑的消息。從TCL到特斯拉,黑客都成功實(shí)現(xiàn)破解和隨意操控。和互聯(lián)網(wǎng)時(shí)代一樣,安全在物聯(lián)網(wǎng)目前的早期階段注定是容易被忽略的問題。為此我們也在設(shè)計(jì)系統(tǒng)時(shí)也沒有掉以輕心:

  所有接入層通信都采用tls進(jìn)行加密,包括對app、業(yè)務(wù)服務(wù)器的開放接口。

  用戶、設(shè)備關(guān)鍵信息進(jìn)行加密保存

  針對設(shè)備有完善的用戶鑒權(quán)機(jī)制

  針對互聯(lián)網(wǎng)安全場景的其他安全措施

  安全不是一朝一夕的事情,需要從系統(tǒng)開始構(gòu)建時(shí)就考慮,并不斷完善安全手段和規(guī)則。

  開發(fā)板

  為了降低物聯(lián)網(wǎng)硬件的開發(fā)成本,我們基于esp8266設(shè)計(jì)了物聯(lián)網(wǎng)開發(fā)板TIsan,并在TIsan實(shí)現(xiàn)了我們的嵌入式開發(fā)框架及物聯(lián)網(wǎng)協(xié)議。開發(fā)板相關(guān)的代碼已經(jīng)全部開源,目前在淘寶進(jìn)行眾籌。

  

  為什么推出開發(fā)板?我們認(rèn)為這是一種互相學(xué)習(xí)、交流及沉淀技術(shù)的工具,希望更多的愛好者能一起做出好產(chǎn)品。

  以開源之名

  光陰荏苒,白駒過隙。一路走來,我們執(zhí)著地將所有設(shè)計(jì)慢慢付諸實(shí)現(xiàn),為未來的物聯(lián)網(wǎng)技術(shù)貢獻(xiàn)自己的力量。物聯(lián)網(wǎng)技術(shù)涉及的方向眾多,我們的力量畢竟是有限的,這也是我們從一開始就以開源形式開發(fā)項(xiàng)目的原因。

  Now, we are calling for contributors!

  如果你對物聯(lián)網(wǎng)和開源技術(shù)有著和我們一樣的執(zhí)著和愛好,歡迎關(guān)注或加入我們的開源項(xiàng)目。后續(xù)我們會(huì)逐漸開源發(fā)布所有的系統(tǒng)設(shè)計(jì)和項(xiàng)目。我們希望更多的小伙伴一起為項(xiàng)目做貢獻(xiàn),無論是提交issue,還是貢獻(xiàn)代碼。

  Hope we are not alone.

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉