藍牙Mesh 技術 一起學 入門篇(3)

還記得上次咱們講到哪裡了嗎? 對了,藍牙mesh的地址。其實,上次我們講了幾個藍牙mesh的關鍵術語。

  • 一對一,多對一還是網狀網(mesh)
  • 設備和節點(Devices and Nodes)
  • 元素(Elements)
  • 消息(Messages)
  • 地址(Addresses)

大家都還記得這些內容嗎?想不起來的話翻翻前面一篇。今天還要給大家將幾個重要的內容。

(「後排說話的同學要向中間玩手機的同學學習,不要打擾前邊睡覺的同學!,對,說你呢!「)

藍牙mesh的基本概念(續)。n

  • 發布和訂閱(Publish/Subscribe)

在藍牙mesh裡面發消息的動作我們叫做發布(Publish)。光從字面意思理解大家基本上就能看懂了。我想告訴別人什麼事情發生或者做什麼事情就叫做發布。誰對某些消息感興趣就可以訂閱這些內容。就像是在知乎裡面,如果是你對哪個專欄或者內容感興趣, 可以進行訂閱。所有發布到這個專欄的文章你都會收到。節點發布消息到單播地址,組播地址或者虛擬地址。節點有興趣接收這些數據的可以訂閱這些地址。

這張圖是SIG在介紹這一章節的時候使用的例子。我給這些燈和開關標了號以便於理解。在上圖中,開關1 發布信息給組播地址」廚房「, 節點燈1, 燈2, 燈3 每個都註冊到了」廚房「這個地址上, 因此他們能收到處理髮給廚房的消息。換句話說, 燈1,燈2 和燈3 都能被開關1控制開關。 開關2 發布消息到」餐廳「,只有燈3訂閱了"餐廳"這個地址,所以只有燈3能被開關2控制。在這個例子里同樣說明了每個節點可以訂閱多個確切的地址。同樣的,你一定也注意到了,開關5和開關6同樣都可以發布消息到」花園「。

使用這種方式的一個很大的好處是當需要有一些節點添加,刪除或者替換的時候,其他的節點不用重新配置。比如你新買了一個開關,把它配網以後發布到」花園「, 那麼」花園「里的燈一樣可以被這個新的開關和開關6控制。如果你之前接觸過其他的一些技術,例如MQTT_百度百科,你一定對這種發布/訂閱的方式完全不陌生。

  • 狀態和屬性(States and Properties)

在藍牙mesh中,元素的不同情況叫做狀態(States),狀態是一個特定類型的值,在每個元素內部存在。除了本身的值以外,狀態還有一些相關的行為。 拿燈來說,藍牙mesh定義了一個狀態叫」Generic OnOff.「 燈收到了一個ON的狀態,理解以後就會執行相應的動作比方說 點亮燈泡的行為。

還記得屬性(Properties)嗎?在之前的BLE的規範里, 每一個Characteristic都有自己的屬性。但是Characteristic是沒有上下文含義的?(什麼意思?) 就是說他只是表明了一個量,但這個兩你可以用在很多的場合,比如一個溫度值,她並沒有體現這裡溫度值和什麼相關。

在藍牙mesh裡面的屬性它提供一個來解釋Characteristic的上下文。(完了!越說越迷糊了)。來來來,我們舉個例子。如果有一個Characteristic,叫做Temperature 8,一個8位的溫度狀態類型,它有著一些相關聯的屬性, 包含現在室內環境溫度和現在室外環境溫度。這兩個屬性允許一個感測器來發布感測器消息,收到的客戶端(關於客戶端和伺服器端的內容我們後面會講)會根據屬性得知到底是哪個溫度信息。這樣就有上下文的概念啦。

這兩天身體不適,(饅頭噎著了吧)打字有些慢,見諒啊!

推薦閱讀:

邊緣計算是什麼,和雲計算的區別是什麼?
如何評價Microsoft Azure IoT Suite?
創建你自己的私有 LoRa 網路
中國傳統製造業的變革之路——解讀馬雲在無錫物聯網大會發言中關於製造業發展的論述
「智能城市」比拼,美國「矽谷」恐不及中國「烏鎮」

TAG:蓝牙Bluetooth | Mesh | 物联网 |