一
物聯(lián)網(wǎng)項目在開發(fā)初期,需要云端和設(shè)備端兩個工種的工程師一起談?wù)剬崿F(xiàn)的技術(shù)細(xì)節(jié)。有一個叫作ALink協(xié)議的語言,成功解決了兩個物種之間交流困難的世紀(jì)難題!
ALink協(xié)議是針對物聯(lián)網(wǎng)開發(fā)領(lǐng)域設(shè)計的一種數(shù)據(jù)交換規(guī)范。設(shè)備端按照這個簡單的規(guī)范把數(shù)據(jù)組織一下發(fā)送給云端,云端工程師也懂這個簡單的規(guī)范,可以直接拿這個數(shù)據(jù)進(jìn)行處理。同時還解決了調(diào)試?yán)щy的痛點:云端工程師使用一個叫做MQTT客戶端的電腦工具,就可以發(fā)送符合ALink協(xié)議的測試數(shù)據(jù)調(diào)試云端產(chǎn)品的代碼;設(shè)備端工程師就可以在給單片機(jī)寫代碼的時候直接組織一個符合ALink協(xié)議的測試數(shù)據(jù),從而不用依賴云端下發(fā)。
二
物聯(lián)網(wǎng)將物理世界的萬物接入網(wǎng)絡(luò)并通過整合各類服務(wù)實現(xiàn)智能化?!拔铩保═hings)作為整個網(wǎng)絡(luò)中的基礎(chǔ)節(jié)點和商業(yè)觸手,既是環(huán)境信息的采集者,也是智能服務(wù)的提供者和承載者?!拔铩本褪窃O(shè)備端。
你首先需要對物聯(lián)網(wǎng)中的“物”能做什么,能提供什么樣的服務(wù)進(jìn)行描述。這就需要從產(chǎn)品層面進(jìn)行功能建模,定義物的“屬性”(Property)、“服務(wù)”(Service)和“事件”(Event)。最簡單的情況下你定義一個屬性就夠了,比如零妖的物聯(lián)網(wǎng)彈幕器項目,就僅有兩個屬性。
通過功能建模將各類設(shè)備統(tǒng)一抽象為云端的資源,并對外暴露相應(yīng)的接口,以滿足不同場景下不同系統(tǒng)的調(diào)用和快速集成。
物模型是對設(shè)備是什么,能做什么的描述,包括設(shè)備身份標(biāo)識、連接狀態(tài)、描述信息,以及設(shè)備的屬性(properties)、服務(wù)(services)、事件(events),后三者構(gòu)成了設(shè)備的功能定義。Link Develop通過定義一種物的描述語言來描述物模型,稱之為 TSL(即 Thing Specification Language)。
三
有一種非常簡單的數(shù)據(jù)格式,叫作JSON字符串,有編程基礎(chǔ)的人兩分鐘就能研究清楚那是什么。ALink協(xié)議的數(shù)據(jù)格式就是JSON字符串的格式。零妖只是提一下而已,ALink協(xié)議想讀懂根本不用了解啥是JSON,我要開車了,兄弟們請坐好扶穩(wěn)。
看到了吧,就是這么簡單。上面那個截圖就是設(shè)備上報自己屬性的字符串。設(shè)備端發(fā)送的數(shù)據(jù)其實就是那些內(nèi)容,而且零妖也解釋很清楚了??偨Y(jié)一下,就是 <“屬性”:數(shù)值 >的做法,非常類似 <鍵:值> 的做法。反正對于單片機(jī)來說,想要上報哪個屬性,就發(fā)送哪個,修改一下后面的數(shù)值就行了。
同理,云端下發(fā)的數(shù)據(jù)也是符合ALink協(xié)議的。單片機(jī)想解析這些數(shù)據(jù)就更簡單了,簡直不要太爽。我們只管記住這些固定的格式就行了,其他的不用修改。上行數(shù)據(jù)和下行數(shù)據(jù)在格式上都一樣,但是有些固定的地方是不一樣的,可以去 https://linkdevelop.aliyun.com/developGuide#kgd6wp.html 查看單個設(shè)備的報文,復(fù)制你需要的報文,然后修改其中的屬性名稱和數(shù)值,就可以了。
對于云端開發(fā)的工程師來說,要做的工作就是調(diào)用阿里云提供的API,往里面扔數(shù)據(jù)就行了,自己更需要關(guān)注的是業(yè)務(wù)的實現(xiàn)邏輯而不是這些細(xì)節(jié)問題。云端開發(fā)代碼的流程零妖會在后面的文章里講一個小小的Demo,幫助你快速上手。
四
你一定正在好奇屬性的名稱是怎么得到的。零妖告訴你,屬性的名稱和取值范圍是在 LinkDevelop 平臺上,“設(shè)備開發(fā)”里面,定義產(chǎn)品的時候自己選擇的。零妖的下一篇文章將會講解“設(shè)備開發(fā)”的內(nèi)容,這部分是在云端完成的工作,也是團(tuán)隊開會時候需要確定的內(nèi)容。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2909文章
44726瀏覽量
374374 -
阿里云
+關(guān)注
關(guān)注
3文章
963瀏覽量
43112 -
IOT
+關(guān)注
關(guān)注
187文章
4215瀏覽量
197023
發(fā)布評論請先 登錄
相關(guān)推薦
評論