帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
透過 1-Wire 通訊有效連接 IoT 端點中的感測器
 

【作者: Rich Miron】   2021年10月08日 星期五

瀏覽人次:【4248】

本文說明開發人員如何利用1-Wire通訊協定,以符合成本效益的單一線路加上接地方式連接 IoT 感測器;並且探討1-Wire通訊協定如何大幅延伸感測器的範圍,以及在相同電線上提供電力與數據。


物聯網(IoT)與工業物聯網(IIoT)端點經常會採用局部控制區域,有些端點甚至要連接遠離主機微控制器位置一公尺外的簡易型感測器。傳統的作法,會使用 SPI或I2C介面以便與這些感測器進行通訊。然而由於控制演算法日益複雜,要部署的感測器也越來越多,微控制器必須使用更多SPI與 I2C線路,才可觸及這些感測器,這樣子會增加接線的複雜性,進而提高配置與維護的成本,尤其是距離拉長的時候。


本文說明開發人員如何利用Maxim Integrated的1-Wire通訊協定,以符合成本效益的單一線路加上接地方式連接 IoT 感測器;並且探討1-Wire通訊協定的優點,包括大幅延伸感測器的範圍,以及在相同電線上提供電力與數據。同時會介紹一款橋接裝置,可將 1-Wire 訊號轉換成 SPI 或 I2C,以及介紹一款開發套件與軟體,協助設計人員著手開發。


延伸 IoT 與 IIoT 感測器的用途

IoT 與 IIoT 網路的延伸,在擴充功能性的同時,也讓系統與製程更加有效率。這當中涉及使用感測器收集資料。在家裡某個房間中可能有一個恆溫器,其中含有溫度感測器,若是自動化大樓或 IIoT 網路則會在房間,甚至在整個大樓或設施中放置多個溫度與濕度感測器。舉例而言,額外的感測器可能放在暖通空調(HVAC)管道中,並且搭配壓力感測器。保全系統也有可能會使用不同類型的感測器,而且也有可能放在不同的位置。


製造以及輸送帶系統使用感測器的情況也越來越常見,以便監測製程並記錄資料,藉此進行分析,例如如何讓系統更有效率以便節省能源,同時還可提升安全性。


這些應用最常見的感測器有環境型,包括溫度、濕度與壓力;至於視覺型感測器,包括可見光與電容量接近感測器;位置感測器則包括微機電系統(MEMS)加速計、MEMS陀螺儀、振動感測器。


MEMS技術的小型化與進展得以讓封裝內的感測器尺寸比指甲更小,且僅消耗數百 mA。絕大多數感測器都可輕鬆透過SPI或I2C通訊介面進行存取,兩種介面幾乎任何微控制器都有內建。介接這些簡易型感測器時,若單純只是為了進行溫度取樣,就打造整個 IoT或IIoT端點或子節點,其實是不實際的。因此通常較簡單且更快速的作法是鋪設直接連到感測器的 SPI 或 I2C 通訊線路就好。


在某些情況下,仍會使用類比感測器,例如高溫熱電偶與一些壓力感測器。在這些情況下,微控制器會介接感測器端的SPI或I2C類比數位轉換器,以便以本機方式對類比感測器進行取樣。如此即可避免類比感測器線路上出現壓降,進而提升準確性。


介接遠端的 SPI 與 I2C 感測器

延伸SPI與I2C數據線路的範圍,微控制器即可與這些感測器通訊。然而,I2C的範圍限制在一公尺以內,SPI的限制也差不多。此外,全雙工SPI需要四個引腳,包括每個SPI的單獨周邊選擇引腳。


有鑑於此,若要觸及匯流排上的四個SPI周邊,就需要七個引腳,加上電源及接地,總共會有九個引腳。半雙工 I2C 則需要兩個引腳,再加上電源與接地,要連接周邊,共需要四個引腳。同時,許多高速訊號都會增加電磁干擾(EMI),然後產生串音,這會降低訊號完整性並降低系統可靠度。需要的解決方案,必須能降低功耗與資料寫入,並簡化操作,同時還可與既有的 I2C 和 SPI 感測器維持相容性。


為了解決連接更遠的遠端感測器問題,同時減少電線數量,Maxim Integrated開發出1-Wire通訊協定,只需透過一條電線加上接地,就能連接絕大多數的SPI與I2C感測器。比起 SPI 的六條電線與I2C的四條,1-Wire可減少電線數量至兩條,並可同時傳輸數據與電力至最遠100 公尺。


運用 1-Wire

使用1-Wire時,遠端感測器具有1-Wire 通訊橋接器,可將 1-Wire 通訊協定轉換成相容的SPI或I2C訊號,以便介接感測器。1-Wire橋接器與感測器都只要透過1-Wire訊號再加上接地線即可寄生受電,如此即可在小型區域中佈建1-Wire訊號,也因為使用更少電線,因此能夠節省成本。


SPI與I2C都採用專屬時脈訊號,而1-Wire則內建時脈並搭配數據訊號。SPI 可針對各個周邊,使用個別選擇訊號對特定周邊進行定址;I2C則使用沿著數據線傳輸的 7 位元匯流排位址;相較之下,I2C則採用56位元位址,以硬接線方式接到各個單獨的通訊橋接器。寬廣的定址範圍不僅可在匯流排上增加獨特周邊的數量,也可提升安全性,因此惡意人士更不容易猜到 1-Wire 匯流排上周邊裝置的位址。


1-Wire 周邊匯流排的字組大小為 8 位元。微控制器 1-Wire 匯流排主機可位元響應 1-Wire 通訊協定,但亦有簡易 UART 驅動程式的支援。因此甚至能讓 8 位元微控制器當作 1 位元匯流排主機。1 位元匯流排可含有 SPI 或 I2C 周邊,但無法兩者兼備。此一致性可預防匯流排上產生衝突與衝撞,並可簡化通訊協定的編程作業。


實際的 1-Wire 解決方案

若設計人員想要在 1-Wire 匯流排上介接 SPI 或 I2C 周邊,Maxim Integrated 提供 DS28E18Q+T 1-Wire 對 I2C/SPI 橋接器搭配命令定序器。



圖1 : DS28E18Q+T 1-Wire 對 I2C/SPI 橋接器搭配命令定序器可介接 1-Wire 匯流排 IO 與 GND 引腳。(source:Maxim Integrated)
圖1 : DS28E18Q+T 1-Wire 對 I2C/SPI 橋接器搭配命令定序器可介接 1-Wire 匯流排 IO 與 GND 引腳。(source:Maxim Integrated)

在圖 1 中,當 IO 處於高位時會從匯流排擷取寄生電源,並可在 SENS_VDD 引腳上取用以供電給周邊裝置。橋接器會緩衝並轉換 1-Wire 命令成適當的 I2C 或 SPI 命令。


IO 引腳與GND會連接到 1-Wire匯流排,並以其狀態機傳送到前端。每個裝置會以 56 位元ROM ID進行識別,並以8位元的 1-Wire 系列代碼作為前綴,藉此指明DS28E18Q+T的修訂版本。如此即可透過微控制器的韌體,提供特定DS28E18Q+T的唯一識別資訊,就可靈活地在裝置系列中指出任何變更。裝置有48位元的唯一序號,搭配 8 位元的循環冗餘檢查(CRC)碼。


前端會使用144位元組命令緩衝器,將轉換後的資料傳送到命令定序器,緩衝器中含有來自IO匯流排的128位元組資料,及內部用的16位元組。命令定序器會處理命令並在緩衝器中儲存多達512位元組的I2C或SPI命令,以便之後傳送到周邊裝置,而不是由 1-Wire匯流排依序處理命令。


此512位元組緩衝器亦可讓DS28E18Q+T協調其本身內部的電源活動,如此一來,在與周邊裝置通訊的時間,也可維持寄生電力。命令定序器可在傳送指令到I2C/SPI主控與 GPIO控制器時維持此時間,並由控制器處理資料,以便符合 I2C 與 SPI 標準。


外接的470 nF電容會接至CEXT引腳,可在1-Wire匯流排工作期間當作DS28E18Q+T的儲備電源。寄生電源可供連接到SENS_VDD引腳的周邊裝置使用。若是SPI作業,四個引腳SS#、MISO、MOSI與SCLK可提供全雙工通訊給連接的周邊。I2C作業僅會使用兩個引腳搭配交替功能引腳SDA與SCL。SPI作業用的引腳SS#與MISO,在I2C作業中並不會使用,因此可當作一般用途 I/O(GPIO)搭配交替功能SPIOA與GPIOB。如此即可提供更高靈活性,可用來點亮感測器位置的診斷LED,或管理感測器或ADC上的配置引腳,以更改裝置的行為。


透過DS28E18Q+T,微控制器上的單獨UART就只需要兩條電線加上接地匯流排,即可跟相同1-Wire上的眾多感測器進行通訊;每個感測器都可連接到最遠100 m外的 DS28E18Q+T。此特點在HVAC系統僅可沿著風道佈設兩條電線時特別實用,如此即可在各個出風口全程監測溫度與濕度。監測阻礙可能導致的熱點或冷點,有助於提升系統的效率。


1-Wire 的開發

若要開始使用 1-Wire 通訊協定進行開發,Maxim Integrated提供 DS28E18EVKIT# 評估系統。此系統含有硬體開發板(圖 2)與軟體。


圖2 : Maxim 的 DS28E18EVKIT# 評估板能讓開發人員輕鬆將 SPI 或 I2C 周邊裝置連接到 1-Wire 匯流排。隨附的軟體可用來對匯流排及周邊裝置的行為進行編程與監測,並有助於產生微控制器裝置的驅動程式。(source:Maxim Integrated)
圖2 : Maxim 的 DS28E18EVKIT# 評估板能讓開發人員輕鬆將 SPI 或 I2C 周邊裝置連接到 1-Wire 匯流排。隨附的軟體可用來對匯流排及周邊裝置的行為進行編程與監測,並有助於產生微控制器裝置的驅動程式。(source:Maxim Integrated)

此評估板可讓開發人員對 DS28E18Q+T 進行編程與監測。若是開發用途,此板件隨附的 USB 配接器可將板件介接到 Windows 電腦的 USB 連接埠。開發人員需要下載並執行 DS28E18EVKIT# 評估套件軟體協助進行開發。如圖 3 所示,評估軟體可對 DS28E18Q+T 與其連接的周邊進行編程與監測。



圖3 : DS28E18EVKIT# 評估軟體能讓開發人員透過 USB 配接器配置板載 DS28E18Q+T,並監測其行為。512 位元組的命令定序器記憶體可儲存資料,然後傳送到周邊裝置以便執行感測器作業。(source:Maxim Integrated)
圖3 : DS28E18EVKIT# 評估軟體能讓開發人員透過 USB 配接器配置板載 DS28E18Q+T,並監測其行為。512 位元組的命令定序器記憶體可儲存資料,然後傳送到周邊裝置以便執行感測器作業。(source:Maxim Integrated)

此軟體可傳送命令到 DS28E18Q+T 評估板,並針對目標 SPI 或I2C 周邊進行配置。可選擇周邊裝置的位址範圍,並用要執行的周邊裝置命令填滿 512 位元組的命令定序器記憶體。


此軟體亦可協助針對目標微控制器來配置 UART 驅動程式,如此即可省去學習 1-Wire 通訊協定所有細節的麻煩,開發人員亦可在其應用中使用評估板,即可省下打造並配置感測器節點的時間與心力。


結論

隨著 IoT 與 IIoT 系統添加更多感測器,感測器的接線越趨複雜與昂貴,特別是距離拉長時。傳送電力到感測器也是考量之一,會讓感測器網路的架設更為複雜。如本文所述,透過1-Wire 通訊協定與相關硬體能讓感測器網路的介接更加簡便且有效率,只需透過單一電線加上接地,即可供應數據與電力。


(本文由Digi-Key Electronics公司提供)


相關文章
【Arduino Cloud】視覺化Arduino或ESP感測器資料的五種方式
利用邊緣運算節約能源和提升永續性
Arduino推出支援Elastic的函式庫
電學、光學PPG感測器應用在健康穿戴的設計與挑戰
讓壓力感測不再受限天時與地利
comments powered by Disqus
相關討論
  相關新聞
» 帆宣與佳世達合組「達宣智慧」公司 啟動智慧醫療引擎
» 台灣三豐攜手SAP 轉型上雲 鞏固量測儀器市場優勢
» 鐳洋參與美國華盛頓衛星展 秀立方衛星成果和地面追星技術
» IDC:2023年亞太區PC市場衰退16.1%
» 助工具機業者拓展海外市場 經濟部提供融資20億元


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.34.237.245.80
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw