快速建立 Z-Wave:兩個適用於智慧家庭網路的預先認證解決方案
資料提供者:DigiKey 北美編輯群
2019-06-18
Z-Wave® 強調使用的簡便性與互通性,因此在消費性與「智慧家庭」應用中,是一項領先的無線網路技術。不過,要達成 Z-Wave 的簡便性,對設計人員來說是一項挑戰,而且每個 Z-Wave 型裝置都必須取得官方的合規性認證,才可以上市。
這些挑戰會增加應用的成本與開發時間,而成功的設計關鍵在於將兩者降至最低。如果團隊沒有超強的射頻 (RF) 硬體與韌體專業知識,那麼預先認證的元件與現有解決方案,才是設計人員的明智之選。對於時間和預算有限的設計,不適合以學習與實驗的角度進行射頻設計,因為射頻傳播及其板載與環境耦合效應的細微差別,實在是太過複雜。
本文將介紹一些基本的無線網狀網路知識,並且特別說明 Z-Wave 技術。然後以 Silicon Labs 的 700 系列 Z-Wave 相容型微控制器晶片系列及相關的開發工具為例,說明如何快速為新的消費性裝置建立適用且可認證的 Z-Wave 網路。
什麼是 Z-Wave?
Z-Wave 是眾多家用無線網狀網路的競爭標準之一 (圖 1),其他還有 Zigbee、Thread 和 Insteon。Wi-Fi 和藍牙在原先設計時並沒有網狀功能,但如今為了加入市場競爭,也都更新且增加了網狀網路功能,只不過採用了不同的功率位準和數據傳輸率。
每種無線網路都有優缺點,但 Z-Wave 專為低成本、低功耗的消費性裝置而設計,並且還在不斷發展,以滿足新的需求。
圖 1:Z-Wave 是一種家用無線網狀網路技術。此技術還在不斷發展,以滿足新的應用需求。(圖片來源:DigiKey,摘自 Silicon Labs)
在網狀網路中,數據封包可以從網路上的一個裝置「跳躍」到另一個裝置,最終達到目標裝置。因此,這兩個裝置並不一定要在彼此的無線電範圍內。只要裝置至少在網路上另一個裝置的範圍內,該裝置就能將數據轉到該範圍內的下一個裝置,以此類推,直到數據抵達目的地。網路上任意兩個裝置之間或許有多種不同的路由,因此網狀協定將決定最短且最有效率的路由。每個網路中連線的裝置越多,網路的備援程度就越高,網路也會越穩固。
這個網路跳躍的概念看似簡單,但實作起來卻很困難。每個 Z-Wave 裝置,又稱節點,必須能夠與其他任何節點通訊,而無論其製造商、功能、使用壽命、範圍或韌體版本級別為何。作為網狀網路的一員,節點必須能夠充當發起者、目標,或者在其他節點超出彼此範圍時充當兩者之間的中介。此外,每個節點還必須能夠與其他任何節點交換應用層級的數據與命令。消費者隨時都可能新增或移除節點,而網路仍必須維持穩固、無縫運作且不會中斷。為了便於使用,節點必須能夠加入 (並離開) 網路,並且操作上沒有複雜的使用者設定、沒有 DIP 開關、沒有服務集識別碼 (SSID) 或密碼,甚至可能沒有鍵盤、滑鼠或任何類型的使用者介面。
就技術面來看,Z-Wave 是個低速、低功率的無線網路,其數據傳輸率限制在 100 kbps,但一般速度接近 40 kbps。典型的工作範圍大約是 30 m 至 40 m 之間,視網路的射頻元件、設計佈局、天線擺放,以及牆壁、環境干擾等環境因素而定。由於是網狀網路,而非 Wi-Fi 或藍牙等點對點網路,Z-Wave 數據封包常常從一個節點跳躍到另一個節點,將兩端之間的有效範圍延長到數百米,可為家庭應用提供充足的覆蓋率。
Z-Wave 在低於 1 GHz 的工業、科學與醫療 (ISM) 頻段下工作 (北美為 908.42 MHz,歐洲為 868.42 MHz),因此不會受到 Wi-Fi 或藍牙的干擾。雖然 Zigbee 也能在相同的 ISM 頻段工作,但 Zigbee 通常都是在全球接受度更大且更普遍的 2.4 GHz 頻段上實作,這也意味著 Z-Wave 裝置通常不會干擾到這類無線網路。
Zen Gecko 介紹
Silicon Labs 的 Gecko 系列提供了眾多低成本、低功率的微控制器。這個產品樹可進一步細分為多個特定應用區域,包括用於 Z-Wave 開發的「Zen Gecko」分支。
該公司在 Zen Gecko 系列中提供了兩款不同的 Z-Wave 裝置。一款是「智慧數據機」晶片,另一款是完全獨立的晶片上模組。數據機晶片 (零件編號 EFR32ZG14P231F256GM32-BR) 旨在搭配主機處理器使用,而晶片上模組 (ZGM130S037HGN1R) 可單獨使用,幾乎不需要外部元件。
儘管實作方式不同,兩款裝置都採用 39 MHz 的 Arm® Cortex®-M4 微控制器核心。Arm 的 Cortex 架構是一個現代的 RISC 型微控制器設計,受到數百家廠商軟硬體開發工具的廣泛支援。
對於 ’ZG14 數據機晶片,內建的 Cortex-M4 已預先以 Z-Wave 協定堆疊進行編程。該處理器未開放給使用者,而且開發人員基本上無法看見。這讓數據機晶片能夠處理複雜 Z-Wave 協定,但是還需要某些外部處理器來處理應用程式碼。對於需要在空間與效能上支援獨立微處理器或微控制器且相對複雜的產品來說,這讓 ’ZG14 成為理想的選擇。此外,這也提升了 Z-Wave 的相容性,讓其能輕鬆地新增至現有的產品,只需要添加 ’ZG14 智慧數據機並連接幾個訊號和射頻元件即可。
另一方面,’130S 模組功能齊全,可作為產品中僅有的微控制器獨立使用。’130S 將其內建的 Cortex-M4 開放給開發人員,供其自行用於應用程式碼。’130S 模組的體積比 ZG14 智慧數據機要大,但功能也超出許多,包括類比數位 (ADC) 與數位類比 (DAC) 轉換器、類比比較器、電容感測介面 (用於觸控螢幕)、計數器、計時器、監控設備以及 UART 等等。此模組只需要電源、接地及天線連接等,便可實現功能齊全的 Z-Wave 控制器。
這兩款裝置共同構成了 Silicon Labs 的 700 系列,這是該公司符合最新 Z-Wave 規格的最新型 Z-Wave 元件系列。具體來講,此系列支援更新的安全功能 (Security-2,又稱 S2) 以及 SmartStart,這是一種簡化的使用者設定選項。這兩款裝置皆支援 Z-Wave 全部三種數據傳輸率 (9.6、40 和 100 kbps) 以及所有的全球頻段。與所有的 Z-Wave 裝置一樣,這些裝置均向下相容於先前所有的 Z-Wave 裝置和控制器。
以前用過 Silicon Labs 8051 型 Z-Wave 裝置 (即「500 系列」) 的使用者,可能希望將其部分或全部現有程式碼移植到更新的 Arm 型裝置上。為了因應這一需求,Silicon Labs 提供了軟體函式庫和「構建塊」來簡化此轉換。舊的 8051 程式碼可能無法簡單地重新編譯成新的 Arm 程式碼,但程式碼函式庫將會大有幫助。
EFR32ZG14 Z-Wave 晶片的內部
EFR32ZG14 是一款概念簡單的智慧型數據機系統單晶片 (SoC) (圖 2),內含一個與外部主機處理器相連的雙線序列介面、一個可處理 Z-Wave 協定堆疊的內建 Arm Cortex-M4 MCU 核心,以及一個幾乎包含實體無線電設備所需全部元件的無線電區塊。
圖 2:EFR32ZG14 Zen Gecko 數據機 SoC 方塊圖。該晶片充當 Z-Wave 網狀網路的智慧數據機,唯一的外部介面是進出主機處理器的 UART 及無線電收發器。(圖片來源:Silicon Labs)
運作時,’ZG14 透過簡單的 UART 介面,以高達 115,200 Bd 的鮑率與主機處理器通訊。僅需要兩條訊號線,即發送和接收。主機處理器透過該 UART 介面發送指令和數據,’ZG14 作出回應。RESETn 是用於重設 ’ZG14 的第三個訊號,可由主機處理器上任何便利的 I/O 引腳來驅動。
進出主機處理器僅需三條數位線路,而在 ’ZG14 和簡易的內建被動元件 (IPD)、晶體及幾個簡易的類比元件之間有四個數位訊號 (圖 3)。
或者,設計人員可選擇連接低動態 SUSPEND 訊號,讓 ’ZG14 處於低功率狀態並停止所有的無線電通訊。’ZG14 可能會在大多數時間內都處於此暫停狀態以節省能源,依據預期的應用而定。
另外,還有選配的三線連接,可接至晶片的內部快閃記憶體,供開發人員快速地對 ’ZG14 的韌體進行重新編程。此類韌體由 Silicon Labs 以二進制形式提供。如前所述,’ZG14 的韌體不適用於使用者程式碼。
圖 3:在典型的 EFR32ZG14 Zen Gecko 實作中,智慧數據機晶片需要大約 20 個外部元件,且僅需簡易的三線序列介面來連接主機處理器。(圖片來源:Silicon Labs)
如圖 3 所示,所用的表面聲波 (SAW) 濾波器是選配元件,要視終端產品部署的地理位置而定,也就是說,世界上某些地區需要 SAW 濾波器,而某些地區則沒有此需求。設計人員也可以選擇加入 SAW 濾波器組,並透過 ’ZG14 上的兩個輸出引腳 SAW0 和 SAW1 快速地進行設定。這可讓終端產品自行適應任何地區,從而簡化設計、製造與庫存。
ZGM130S Z-Wave 模組的內部
’130S 模組遠比 ’ZG14 數據機 SoC 要複雜,功能也更加強大。Silicon Labs 將其稱為系統級封裝 (SiP)。顧名思義,’130S 其實是多晶片合一,可作為獨立的微控制器兼 Z-Wave 控制器 (圖 4)。
圖 4:ZGM130S SiP 模組方塊圖。該 SiP 是一款獨立的微控制器兼 Z-Wave 控制器,搭載有可供開發人員使用的 Arm Cortex-M4 以及眾多類比和數位 I/O。(圖片來源:Silicon Labs)
該模組的 Arm Cortex-M4 中央處理器核心,可以 39 MHz 的頻率運行,並擁有 512 KB 的快閃記憶體與 64 KB 的 SRAM。由於 Z-Wave 協定堆疊已整合於模組的無線電收發器區塊 (位於方塊圖的左上角),因此大部分記憶體都可供使用者使用。該接收器區塊實際上相當於 ’ZG14 智慧數據機晶片。
’130S 含有內部 DC/DC 穩壓器和內部晶體,因此不需要外部時脈元件。此外,該模組還含有多個類比和數位周邊裝置,包括多個 ADC 和 DAC、一個溫度感測器、兩個類比比較器、三個運算放大器、一個電容感測介面、一個 DMA 控制器以及 32 個一般用途 I/O 引腳等等。’130S 採用 LGA64 封裝,其引腳受限,因此並非所有的 I/O 引腳始終可用,需取決於軟體設定。
儘管 ’130S 採用 64 引線封裝,但其外部連接非常簡單。如圖 5 和圖 6 所示,該裝置的電源/接地僅需簡易的旁路電容,而天線僅需單一連線。剩餘的引腳可用於使用者 I/O。
圖 5:ZGM130S SiP 模組僅需一對旁路電容。(圖片來源:Silicon Labs)
圖 6:ZGM130S SiP 模組幾乎囊括所有的無線電元件,而且僅需單一連線介面接到天線。(圖片來源:Silicon Labs)
從入門套件開始
使用 Z-Wave 700 入門套件,可能是以 Zen Gecko 系列開始 Z-Wave 開發的最簡單方法。該套件包含建立最小雙節點網路所需的一切元件,包括兩個主板、兩個無線電機板、兩個具備開關和 LED 的擴充板、兩個撓性天線,以及兩條 USB 纜線。套件還隨附兩個 USB 硬體鎖,可配合 PC 使用:一個搭載 Z-Wave 無線電探測應用 (Zniffer),另一個搭載 Z-Wave 控制器功能。該硬體與隨附的軟體支援全球所有地理區域的所有 Z-Wave 選項及協定。
圖 7 顯示一組板件,頂部是無線電機板,右側是擴充板。主板未包含 ZGM130S SiP,該元件已安裝在無線電機板上。主板上主要是點陣型 LCD,對於除錯或 GUI 開發很有用處。
圖 7:一套 SLWSTK6050A Z-Wave 700 入門套件包含兩組完全相同的主板、無線電機板和擴充板,可建立小型的 Z-Wave 網路。(圖片來源:Silicon Labs)
軟體安裝
Simplicity Studio 是 Silicon Labs 的多合一整合開發環境 (IDE),可供該公司的眾多微控制器 (如 Zen Gecko ) 使用。該軟體支援 Windows、MacOS 和 Linux。
若在 Simplicity Studio 安裝期間,將開發套件的其中一個主板 (無論是哪一個) 連接到開發系統,則安裝與設定過程會更容易。IDE 會偵測硬體並自動為其載入必要的軟體支援。
如果硬體不可用,則可手動執行此設定,如下所述:
Simplicity Studio 執行後,按一下右上角附近的綠色箭頭 (圖 8)。
圖 8:Simplicity Studio IDE 主畫面。下載連結會以高亮度顯示。(圖片來源:DigiKey)
Simplicity Studio 提供兩種選項:「Install by Device」(依裝置安裝) 或「Install by Product Group」(依產品群組安裝) (圖 9)。不管哪一種方式,最後都會獲得相同的結果,但選擇前一個選項會更簡單,因此請按一下大大的「Install by Device」(依裝置安裝) 綠色按鈕。
圖 9:Simplicity Studio 提供兩種載入特定專案軟體支援的途徑。(圖片來源:DigiKey)
如果已安裝開發板,Simplicity Studio 將自動偵測硬體,但如果沒有,手動找到所需的軟體套件也很容易。只需在搜尋方塊輸入「6050A」(該開發套件的全名簡稱),如圖 10 所示。按兩下建議的軟體支援套件,然後按一下「Next」(下一步)。
圖 10:在搜尋方塊中輸入「6050A」可快速找到開發板所需的軟體。(圖片來源:DigiKey)
接下來,Simplicity Studio 會以高亮度顯示此硬體配置可用的其他軟體支援。在某些情況下,只有擁有完整補充授權協議,和/或已註冊硬體的使用者,才有權使用某些軟體模組。因此,有些選項可能會顯示為灰色且暫時無法使用,如圖 11 所示。
圖 11:對某些軟體的存取權限,要視硬體購買憑證或額外的軟體授權而定。(圖片來源:DigiKey)
最後,Simplicity Studio 會顯示預期安裝的所有軟體清單,包括一個或多個 C 編譯器、可選的即時作業系統、分析工具,以及其他許多選項 (圖 12)。您可依照需求手動停用或啟動某些選項,但一般來說,最好的做法是接受建議的軟體選項。準備好後,按「Next」(下一步)。
圖 12:Simplicity Studio 最終軟體清單。您可依照需求手動停用或啟動某些選項,但一般來說,最好的做法是接受建議的軟體選項。(圖片來源:DigiKey)
在最後一個步驟中,Simplicity Studio 會顯示主軟體授權協議,其中涵蓋所有即將安裝的軟體組件。請閱讀並接受此授權協議,然後最後一次按「Next」(下一步)。
軟體安裝需要數分鐘的時間。完成後,請關閉並重新啟動 Simplicity Studio。萬事俱備,可以開始建立 Z-Wave 網狀網路應用了;包含一些簡單且預先設定的示範程式,以及可供修改的範例程式碼,這些都能讓開發人員有個好的開始。
結論
Z-Wave 的設計宗旨是讓消費者輕鬆使用,但要達到此便利性,需要設計人員進行大量的底層開發及認證工作。不過,若設計人員選擇使用預先設定的套件,便可透過相容的硬體及預先測試的軟體,輕鬆建立新的 Z-Wave 網狀網路裝置。Z-Wave 700 系列數據機 SoC、SiP 模組以及相關的開發套件,提供了快速打造雙節點網路所需的硬體和軟體,可確保與此複雜又高效率的協定相容。

聲明:各作者及/或論壇參與者於本網站所發表之意見、理念和觀點,概不反映 DigiKey 的意見、理念和觀點,亦非 DigiKey 的正式原則。