熟悉 RS485 網路的人都知道,RS485 是一種半雙工的非同步傳輸方式,本身並沒有碰撞處理機制,因此在大多數的應用方式中(例如 MODBUS RTU),都以 Master/Slave 方式通訊,也就是網路上只有一個 Master,其餘設備為 Slave,所有 Slave 設備都會等到 Master 設備的詢問後才具備發言權。這樣的通訊方式簡潔易懂,不必處理複雜的碰撞機制,然而卻無法有效的達到對等(Peer to peer)傳輸的需求,因為 Slave 設備無法主動獲取需要的資訊。

對於強調整合性的 BACnet 架構而言,簡易的 Master/Slave 通訊架構是無法有效勝任的。因此 BACnet 透過複雜的權仗交替的動作,使地址 0~127 的設備輪流當 Master,而取得發言權。這些具備權杖交替能力的設備在 MS/TP 網路中都視為 Master

為了保有 Slave 設備的簡易性,MS/TP 網路仍定義單純的 Slave 設備,Slave 設備可以在地址 0~127 中,也可以在1 28~254 (地址 255 保留給廣播使用)

 

就個人的開發與使用經驗,MS/TP 設備有以下的優缺點。

  1. MS/TP 設備具備低設備成本優勢:只要具備 RS485 非同步傳輸通訊能力的低價晶片(MCU)即可,不需高價 MCU 或特定廠牌產品。
  2. MS/TP 設備具備低網路成本優勢:使用 RS48 5網路,因此具備 RS485 網路所有低設備成本,低網路成本的優勢
  3. MS/TP Master 設備具備真實的對等通訊功能:具備主動讀寫功能(DS-RP-ADS-WP-A)的 MS/TP Master 可以主動發送封包讀取與寫入數值至其他設備,不需要特殊設備協助,因此可以輕易的達到主動資料交換的應用需求(這點再跨系統與前後期工程整合時有極大的優勢)
  4. MS/TP 設備頻寬較低:在標準的 9600bps 速率時,大部分的頻寬用在權仗交換,使真正資料交換量更顯不足,在網路封包沒有有效管制的場合,可能發生擁塞的風險。
  5. MS/TP Master 設備需要較高的及時性:MS/TP 權狀交換有嚴格的時間要求,必須至少 5 ms 處理一次權杖交替運算,因此使用 WindowsLinux 等較大的作業系統時,可能無法順暢的傳遞。
  6. MS/TP 網路受到干擾時,通訊效率嚴重降低:MS/TP 當權狀傳遞過程受到干擾而中斷時,網路必須重新產生權杖才能順利傳輸訊息,因此 MS/TP 網路受干擾時的對通訊效率的影響,將會較一般 Master/Slave 通訊方式嚴重許多。
  7.  MS/TP Slave 設備必須透過其他方式才可以在網路上被識別:BACnet 大部分都具備主動回答 who-is 的詢問封包,以利在網路上被其他設備辨識,唯讀 MS/TP Slave 設備不具備主動的發言權,因此必須透過其他具備『僕設備代理人』(Slave-Proxy)機制代為回答,才能夠在網路上被看見。因此使用 MS/TP Slave 設備而沒有配套措施,是無法成功上線的。

因此要開發 BACnet MS/TP 產品時,如果可以,宜盡量以 Master 設備為標的,並注意通訊頻寬的管制,在網路通訊品質容許的狀況下,提升傳輸速度(例如 38400 bps),使 MS/TP 產品發揮最大的效益。