1. 程式人生 > >物聯網常見通訊型別介紹

物聯網常見通訊型別介紹

物聯網領域常見通訊型別 有線通訊如下: RS485:兩線制,差分訊號傳輸,半雙工通訊,最大通訊距離千米以上。
RS232:三線制,全雙工通訊,一般通訊距離小於 10 米。
乙太網:4 線或 8 線,多主通訊,高效能。普通網線通訊距離 100 米以內。
CAN:兩線制,多主通訊,高效能,高可靠性,每次最多傳輸 8 個位元組的資料。通訊距離千米以上。
M-Bus:兩線制,半雙工,專為遠端抄表系統專門設計的匯流排,傳送速度為 300 至 9600 Baud。
單匯流排:單線制,主裝置口可以直接驅動200米範圍的從裝置,傳輸速率一般為16.3Kbit/s,最大可達142 Kbit/s。
電力載波:利用現有電力線,通過載波方式將模擬或數字訊號進行高速傳輸的技術。

無線通訊:


Wifi:2.4G/5G射頻頻段,民用最常用無線通訊方式,通訊距離100米內。
藍芽:2.4G短距離無線通訊,常見的通訊距離為10米左右。
Zigbee:低功耗無線通訊協議,低功率一般傳輸距離 100 米以內,高功率的 1000 米左右。
LoRa:基於擴頻技術的超遠距離無線傳輸方案。低功耗,多節點。通訊距離 1千米~8千米。
GPRS:通用分組無線服務技術,廣域網通訊。
NB-IoT:IoT 領域一個新興的技術,支援低功耗裝置在廣域網的蜂窩資料連線,亦稱低功耗廣域網(LPWA)。433M/470M無線通訊:小功率經濟型無線數傳通訊,通訊距離一般1000米左右。數字無線電臺:藉助DSP技術和無線電技術實現的高效能專業資料傳輸電臺,免申請頻段為2.4G,通訊波特率為9600~19200Bps,根據功率不同,一般通訊距離1千米~15千米

晶片級通訊:

l  TTL串列埠:三線制,和RS232或RS485一樣,都屬於序列通訊,只是為TTL電平,大部分是晶片對晶片,近距離通訊。
l  SPI:四線制,高速全雙工,同步的通訊匯流排。l  I2C:兩線制,由Philips公司開發的一種簡單、雙向同步序列匯流排。
l  SDIO:主要為SD卡模組定義的外設介面,有些wifi模組也採用了SDIO介面和MCU通訊。

其他通訊方式:
l  模擬量訊號輸入:0~20mA/0~5V/0~20Vl  開關量訊號輸入:0~24VlÂ
繼電器訊號輸出: 通斷,幹接點 物聯網領域常見通訊協議
Modbus RTU:施耐德公司制定的基於 RS485/RS232 的序列通訊匯流排協議。
Modbus TCP: 施耐德公司制定的基於乙太網的通訊匯流排協議。
CJ/T188-2004:中國城鎮建設行業標準,主要在抄表系統中常用。
DL/T645-2007:國家電力行業電測量標準化技術委員會頒佈的多功能電能表通訊協議。
TCP/IP:網路通訊協議,是Internet最基本的協議,由網路層的IP協議和傳輸層的TCP協議組成(TCP是有連線的協議,UDP是無連線的協議)。
Http:超文字傳輸協議,所有的WWW檔案都必須遵守這個標準。協議構建在TCP之上。
MQTT:訊息佇列遙測傳輸,IBM開發的一個即時通訊協議。目前已經成為主流物聯網平臺預設使用的通訊協議。CoAP:可以理解為精簡的Http協議,主要在資源受限的物聯網裝置上使用。
PPI:西門子公司專為 S7-200 系列 PLC 開發的通訊協議。Profibus:是一種國際化、開放式、不依賴於裝置生產商的現場匯流排標準。
CANopen:是一種架構在 CAN 上的高層通訊協協議,包括通訊子協議及裝置子協議。
KNX :是被正式批准的住宅和樓宇控制領域的開放式國際標準。
Alink:阿里巴巴推出的一種物聯網通訊協議。

MQTT協議它具有以下主要的幾項特性:

1、使用釋出/訂閱訊息模式,提供一對多的訊息釋出和應用程式之間的解耦;
2、訊息傳輸不需要知道負載內容;
3、使用 TCP/IP 提供網路連線;QoS0,最多一次送達。也就是發出去就fire掉,沒有後面的事情了。QoS1,至少一次送達。發出去之後必須等待ack,沒有ack,就要找時機重發QoS2,準確一次送達。訊息id將擁有一個簡單的生命週期。
4、小型傳輸,開銷很小(固定長度的頭部是 2 位元組),協議交換最小化,以降低網路流量;
5、使用 Last Will 和 Testament 特性通知有關各方客戶端異常中斷的機制;
CoAP採用與HTTP協議相同的請求響應工作模式。CoAP協議共有4中不同的訊息型別。
CON——需要被確認的請求,如果CON請求被髮送,那麼對方必須做出響應。
NON——不需要被確認的請求,如果NON請求被髮送,那麼對方不必做出迴應。
ACK——應答訊息,接受到CON訊息的響應。
RST——復位訊息,當接收者接受到的訊息包含一個錯誤,接受者解析訊息或者不再關心傳送者傳送的內容,那麼復位訊息將會被髮送。

CoAP協議與MQTT的區別:
MQTT和CoAP都是行之有效的物聯網協議,但兩者還是有很大區別的,比如MQTT協議是基於TCP,而CoAP協議是基於UDP。從應用方向來分析,主要區別有以下幾點:
1、MQTT協議不支援帶有型別或者其它幫助Clients理解的標籤資訊,也就是說所有MQTT Clients必須要知道訊息格式。而CoAP協議則相反,因為CoAP內建發現支援和內容協商,這樣便能允許裝置相互窺測以找到資料交換的方式。
2、MQTT是長連線而CoAP是無連線。MQTT Clients與Broker之間保持TCP長連線,這種情形在NAT環境中也不會產生問題。如果在NAT環境下使用CoAP的話,那就需要採取一些NAT穿透性手段。
3、MQTT是多個客戶端通過中央代理進行訊息傳遞的多對多協議。它主要通過讓客戶端釋出訊息、代理決定訊息路由和複製來解耦消費者和生產者。MQTT就是相當於訊息傳遞的實時通訊匯流排。CoAP基本上就是一個在Server和Client之間傳遞狀態資訊的單對單協議。
MQTT基於TCP,在做反控裝置的時候比UDP更可靠,比如CoAP走3G、4G的時候甚至需要實現CoAP over TCP,否則反控很不穩定甚至無法聯通。
MQTT非同步Pub/Sub實現,好比發個微信,無需等待對方確認便可以繼續,而不像CoAP那樣必須等待對方應答才能返回的同步模式。CoAP在功耗方面有優勢。
SoAP協議SoAP(簡單物件訪問協議)XMPP協議XMPP(可擴充套件通訊和表示協議)是一種基於可擴充套件標記語言(XML)的協議
從當前物聯網應用發展趨勢來分析,MQTT協議具有一定的優勢。因為目前國內外主要的雲端計算服務商,比如阿里雲、AWS、百度雲、Azure以及騰訊雲都一概支援MQTT協議。還有一個原因就是MQTT協議比CoAP成熟的要早,所以MQTT具有一定的先發優勢。但隨著物聯網的智慧化和多變化的發展,後續物聯網應用平臺肯定會相容更多的物聯網應用層協議。

瞭解更多幹貨文章,關注小程式八斗問答