SEK | EUR | USD

Z-Wave på nolltid: Två förcertifierade lösningar för smarta hemnätverk

By Jim Turley

Contributed By Digi-Keys nordamerikanska redaktörer

Genom att betona användarvänlighet och interoperabilitet är Z-Wave® en av de ledande trådlösa nätverksteknikerna för konsumenttillämpningar och "smarta hem". Att uppnå Z-Waves karaktäristiska användarvänlighet är dock en utmaning för designers och alla Z-Wave-baserade enheter måste vara officiellt certifierade för överensstämmelse innan de lanseras på marknaden.

Dessa utmaningar ökar kostnaderna och utvecklingstiden i en tillämpning där det är kritiskt att minimera båda för en framgångsrik design. Om det inte finns stark expertis inom radiofrekvensmaskinvara (RF) och fast programvara inom företaget är det klokt för konstruktörer att välja förcertifierade komponenter och färdiga lösningar. RF-design är inte ett lämpligt område för inlärning och experimentering för en konstruktion som troligen kräver ett snävt schema och budget. Nyanserna i RF-utbredning och dess ombord- och miljökopplingseffekter är för invecklade och komplexa.

I den här artikeln beskrivs några av grunderna för trådlösa meshnätverk och Z-Wave i synnerhet. Som ett exempel introduceras sedan den 700 Series Z-Wave-kompatibla mikrostyrenhetschipfamiljen och relaterade utvecklingsverktyg från Silicon Labs för att snabbt visa hur du skapar ett fungerande och certifierbart Z-Wave-nätverk som är lämpligt för nya konsumentenheter.

Vad är Z-Wave?

Z-Wave är en av många konkurrerande standarder för trådlösa hemmeshnätverk (figur 1). Övriga inkluderar Zigbee, Thread och Insteon. Trots att de inte ursprungligen utformades med meshkapacitet har Wi-Fi- och Bluetooth uppdaterats med meshnätverk för att nu även konkurrera i det här utrymmet trots olika effektnivåer och data rates.

Alla trådlösa nätverk har sina för- och nackdelar, men Z-Wave utformades specifikt för konsumentenheter med låg kostnad och låg effekt och utvecklas konstant för att uppfylla nya krav.

Schema över Z-Wave som är ett trådlöst meshnätverkFigur 1: Z-Wave är en trådlös meshnätverksteknik för hemmet som utvecklas konstant för att uppfylla nya tillämpningskrav. (Bildkälla: Digi-Key, från Silicon Labs material)

I ett meshnätverk kan datapaket "hoppa" från en enhet i nätverket till en annan för att slutligen nå en målenhet. Det innebär att två enheter inte nödvändigtvis måste vara inom radioräckvidd från varandra. Så länge en enhet ligger inom räckvidd för en annan enhet i nätverket kan enheten vidarebefordra data till nästa enhet inom räckvidd och så vidare tills data når sin destination. Det kan finnas flera olika vägar mellan två enheter i nätverket, så meshprotokollet avgör den kortaste och mest effektiva vägen. Ju fler anslutna enheter per nätverk desto högre redundans och desto robustare nätverk.

Nätverkshoppningen är konceptmässigt enkel, men svår att implementera i praktiken. Varje Z-Wave-enhet, eller nod måste kunna kommunicera med alla andra noder, oavsett tillverkare, funktioner, ålder, räckvidd eller version av fast programvara. Som medlemmar i ett meshnätverk måste noderna kunna fungera som initiatorer, mål eller mellanhänder mellan andra noder som ligger utanför varandras räckvidd. Varje nod måste även kunna utbyta data på programnivå och kommandon med alla andra noder. Konsumenter kan lägga till – eller ta bort – noder när som helst och nätverket måste fortfarande vara stabilt, fungera sömlöst och utan avbrott. Av användarvänlighetsskäl måste noderna kunna ansluta till (och lämna) nätverket och fungera utan komplicerade användarinställningar, utan dip-omkopplare, utan SSID eller lösenord och potentiellt utan tangentbord, mus eller någon annan typ av användargränssnitt.

På den tekniska sidan är Z-Wave ett trådlöst nätverk med låg hastighet och låg effekt. Datahastigheten begränsas till 100 kilobit per sekund (kbps), men vanliga hastigheter ligger närmare 40 kbps. Den typiska drifträckvidden ligger runt 30 till 40 m, beroende på nätverkets RF-komponenter, design och antennplacering, samt miljöfaktorer som väggar och störningar i omgivningen. Eftersom det är ett meshnätverk och inte ett punkt till punkt-nätverk som Wi-Fi eller Bluetooth hoppar datapaketen i Z-Wave ofta från en nod till en annan, vilket ökar den effektiva räckvidden till några hundra meter från ände till ände, vilket ger gott om täckning för hemtillämpningar.

Eftersom det arbetar i delen under 1 gigahertz (GHz) i det industriella, vetenskapliga och medicinska (ISM) bandet (908.42 megahertz (MHz) i Nordamerika och 868.42 MHz i Europa) utsätts Z-Wave inte för störningar från Wi-Fi eller Bluetooth. Även om Zigbee också kan användas i samma del av ISM-bandet implementeras det normalt i det mer populära 2.4 GHz-bandet som har större global acceptans. Det innebär även att Z-Wave-enheter normalt inte stör dessa andra trådlösa nätverk.

Introduktion till Zen Gecko

Silicon Labs tillverkar ett stort sortiment av billiga mikrostyrenheter med låg effekt i Gecko-familjen. Produktträdet är vidare indelat i flera tillämpningsspecifika områden, inklusive Zen Gecko-delen för Z-Wave-utveckling.

Företaget erbjuder två olika Z-Wave-enheter i Zen Gecko-familjen. Den ena är en smart modemkrets och den andra en komplett självständig onchip-modul. Modemkretsen (artikelnummer EFR32ZG14P231F256GM32-BR) är utformad för att användas tillsammans med en värdprocessor, medan modulen (ZGM130S037HGN1R) kan användas på egen hand utan nästan några externa komponenter.

Båda enheterna baseras på en 39 MHz Arm® Cortex®-M4-mikrostyrenhetskärna, men de båda implementeras på olika sätt. Arms Cortex-arkitektur är en modern, RISC-baserad mikrostyrenhetsdesign som har ett omfattande stöd med programvaru- och maskinvaruutvecklingsverktyg från hundratals leverantörer.

När det gäller ’ZG14-modemkretsen levereras den interna Cortex-M4 förprogrammerad med Z-Wave-protokollstacken. Processorn är inte tillgänglig för användaren och den är i stort sett osynlig för utvecklarna. Det gör modemkretsen möjlighet att behandla komplexa Z-Wave-protokoll, men det kräver också en extern processor av något slag för programkoden. Det gör ’ZG14 till ett bra val for relativt komplexa produkter som har utrymmet och prestandakraven för att stödja en separat mikroprocessor eller mikrostyrenhet. Det gör även Z-Wave-kompatibilitet enkel att lägga till i en befintlig produkt genom att lägga till ’ZG14-smartmodemet och ansluta några få signaler och RF-komponenter.

’130S-modulen, å andra sidan, är helt fristående och kan användas separat som den enda mikrostyrenheten i produkten. Den exponerar sin interna Cortex-M4 för utvecklaren som kan använde den till programkod. ’130S-modulen är fysiskt större än ’ZG14-smartmodemet, men innefattar även betydligt fler funktioner, inklusive analog-till-digital- (ADC) och digital-to-analog-omvandlare (DAC), analoga komparatorer, ett kapacitivt avkänningsgränssnitt (för pekskärmar), räknare, timers, watchdogs och UART, blanda annat. Modulen kräver inte mycket mer än ström-, jord- och antennanslutningar för att uppnå en fullt fungerande Z-Wave-styrenhet.

Tillsammans utgör dessa två enheter 700-serien, Silicon Labs senaste Z-Wave-komponenter som uppfyller de senaste Z-Wave-specifikationerna. Mer specifikt har de stöd för uppdaterade säkerhetsfunktioner (Security-2, eller S2) och SmartStart, ett förenklat användarinställningsalternativ. Båda enheterna har stöd för alla tre Z-Wave-datahastigheter (9,6, 40 och 100 kbps) samt alla globala frekvensband. Som alla Z-Wave-enheter är de bakåtkompatibla med alla tidigare Z-Wave-enheter och styrenheter.

Användare med tidigare erfarenhet som använder Silicon Labs 8051-baserade Z-Wave-enheter (500-serien) kan vilja överföra en del av eller hela sin befintliga kod till de nyare Arm-baserade enheterna. För att hjälpa till med detta tillhandahåller Silicon Labs programvarubibliotek och "byggstenar" för att underlätta övergången. Äldre 8051-kod kanske inte går att kompilera om till nyare Arm-kod, men kodbiblioteken bör var en stor hjälp.

Inuti EFR32ZG14 Z-Wave-kretsen

EFR32ZG14 är ett smart modemsystem-on-chip (SoC) som är konceptmässigt enkelt (figur 2). Det inkluderar ett seriegränssnitt med två ledare till/från en utvändig värdprocessor, en intern Arm Cortex-M4 MCU-kärna för att behandla Z-Wave-protokollstacken samt ett radioavsnitt som tillhandahåller nästan alla komponenter som krävs för en fysisk radio.

Blockdiagram över Silicon Labs EFR32ZG14 Zen Gecko-modem SoCFigur 2: Blockdiagram över EFR32ZG14 Zen Gecko-modem SoC. Kretsen fungerar som ett smart modem för Z-Wave-meshnätverket. Dess enda externa gränssnitt är en UART till/från värdprocessorn och en radiosändtagare. (Bildkälla: Silicon Labs)

I drift kommunicerar ’ZG14 med en värdprocessor via ett enkelt UART-gränssnitt upp till 115 200 baud. Endast två signalledningar krävs, sändning och mottagning. Värdprocessorn skickar kommandon och data via det här UART-gränssnittet och ’ZG14 svarar. En tredje signal för att återställa ’ZG14, RESETn, kan drivas av alla praktiska I/O-stift på värdprocessorn.

Det finns endast tre nödvändiga digitala ledningar till/från värdprocessorn, fyra digitalsignaler mellan ’ZG14 och en enkel IPD (integrerad passiv enhet), en kristall och en handfull enkla analoga komponenter (figur 3).

Konstruktörerna kan även välja att ansluta en aktivt låg SUSPEND-signal, som försätter ’ZG14 i lågeffektstatus och avbryter all radiokommunikation. Beroende på den avsedda tillämpningen kan ’ZG14 tillbringa den mesta av sin tid i det här viloläget för att bevara energi.

Det finns även en alternativ treledaranslutning till kretsens interna flashminne som tillåter utvecklarna att omprogrammera ’ZG14s fasta programvara. Sådan fast programvara tillhandahålls i binärform av Silicon Labs. Som nämnts tidigare är den fasta programvaran på ’ZG14 inte avsedd för användarkod.

Diagram över Silicon Labs EFR32ZG14 Zen Gecko-implementeringFigur 3: I en typisk EFR32ZG14 Zen Gecko-implementering kräver den smarta modemkretsen ~20 externa komponenter och endast ett enkelt treledargränssnitt till värdprocessorn. (Bildkälla: Silicon Labs)

Användningen av ett akustiskt ytvågsfilter (SAW) som visas i figur 3 är ett tillval och kan bero på den geografiska platsen där slutprodukten ska distribueras. Vissa regioner i världen kräver ett SAW-filter, medan andra inte gör det. Konstruktörer kan också välja att inkludera en SAW-filterbank och konfigurera den via de två SAW0- och SAW1-utgångsstiften på ’ZG14. Detta tillåter att slutpunkten anpassar sig själv efter region, vilket förenklar konstruktion, tillverkning och lagerhållning.

Inuti ZGM130S Z-Wave-modulen

’130S-modulen är betydligt mer komplex och kapabel än ’ZG14-modemet SoC. Silicon Labs kallar det ett system-in-package (SiP). Som namnet antyder är ‘130S i grunden flera kretsar i en, vilket gör den till en fristående mikrostyrenhet och Z-Wave-styrenhet (figur 4).

Blockdiagram över Silicon Labs ZGM130S SiP-modul (klicka för att förstora)Figur 4: Blockdiagram över ZGM130S SiP-modul. SiP är en fristående mikrostyrenhet och Z-Wave-styrenhet med en Arm Cortex-M4 och gott om analog och digital I/O tillgängligt för utvecklaren. (Bildkälla: Silicon Labs)

Modulens centrala Arm Cortex-M4-processorkärna kan köras med klockfrekvenser upp till 39 MHz och inkluderar 512 kbyte flashminne och 64 kbyte SRAM. Större delen av det här minnet är tillgängligt för användaren eftersom Z-Wave-protokollstackarna redan ingår i modulens radiosändtagarblock uppe till vänster i blockdiagrammet. Det här blocket motsvarar i praktiken ’ZG14:s smarta modemkrets.

’130S inkluderar sin egen interna DC-DC-regulator och interna kristall. så det behöver inga externa klockkomponenter. Den här modulen innefattar även flera analoga och digitala kringenheter, inklusive ADC:er och DAC:er, en temperatursensor, två analoga komparatorer, tre op-förstärkare, en kapacitivt avkänningsgränssnitt, en DMA-styrenhet, 32 allmänna I/O-stift med mera. LGA64 -paketet för ’130S är stiftbegränsat, så beroende på programvarukonfiguration är vissa I/O-stift inte alltid tillgängliga.

Trots att ’130S ingå i ett 64-ledarpaket är dess externa anslutningar mycket enkla. Som figur 5 och 6 visar kräver enheten endast enkla bypasskondensatorer för ström/jord och en enda anslutning för antennen. Återstående stift är tillgängliga för användar-I/O.

Diagram över Silicon Labs ZGM130S SiP-modulFigur 5: ZGM130S SiP-modulen kräver endast ett par bypass-kondensatorer. (Bildkälla: Silicon Labs)

Diagram över Silicon Labs ZGM130S SiP-modul inkluderar i stort sett alla radiokomponenterFigur 6: ZGM130S SiP-modulen inkluderar i stort sett alla radiokomponenter och har endast ett enda trådgränssnitt till en antenn. (Bildkälla: Silicon Labs)

Börja med startsatsen

Sannolikt är det enklaste sättet att inleda Z-Wave-utvecklingen med Zen Gecko-familjen med Z-Wave 700-startsatsen. Satsen inkluderar två av allt för ett minimalt tvånodnätverk: två huvudkort, två radiokort, två expansionskort med switchar och LED-lampor, två flexibla antenner och två USB-kablar. Det levereras dessutom med två USB-donglar för användning med en PC: den ena med en Z-Wave-radio-sniffertillämpning (Zniffer) och den andra med Z-Wave-styrenhetsfunktion. Maskinvaran och den inkluderade programvaran stödjer alla Z-Wave-alternativ och protokoll i alla globala geografiska områden.

En uppsättning kort, med radiokortet inkopplat upptill och expansionskortet till höger visas i figur 7. Huvudkortet inkluderar inte ZGM130S SiP. Den komponenten är monterad på radiokortet. Istället har huvudkortet en bitmappad LCD-display som är användbar för felsökning eller GUI-utveckling.

Bild på Silicon Labs SLWSTK6050A Z-Wave 700-startsatsFigur 7: En SLWSTK6050A Z-Wave 700-startsats innehåller två identiska uppsättningar huvudkort, radiokort och expansionskort för att skapa ett litet Z-Wave-nätverk. (Bildkälla: Silicon Labs)

Programvaruinstallation

Simplicity Studio är Silicon Labs allt-i-ett-lösning på IDE (Integrated Development Environment – integrerad utvecklingsmiljö) för företagets många mikrostyrenheter, inklusive Zen Gecko. Det har stöd för Windows, MacOS, och Linux.

Installations- och konfigurationsprocessen blir enklare om ett av huvudkorten från utvecklingssatsen (det spelar ingen roll vilket) ansluts till utvecklingssystemet medan Simplicity Studio installeras. IDE identifierar maskinvaran och läser automatiskt in det nödvändiga programvarustödet för den.

Om maskinvaran inte är tillgänglig går det att utföra den här konfigurationen manuellt, enligt beskrivningen här:

När Simplicity Studio körs, klicka på den gröna pilen nära det övre högra hörnet (figur 8).

Bild på huvudskärmen för Simplicity Studio IDEFigur 8: huvudskärmen för Simplicity Studio IDE. Hämtningslänken är markerad. (Bildkälla: Digi-Key Electronics)

Simplicity Studio har två alternativ: "Install by Device" (Installera per enhet) och "Install by Product Group" (Installera per produktgrupp) (figur 9). Båda ger i slutänden samma resultat men det är enklare att välja det tidigare alternativet, så klicka på den stora gröna knappen "Install by Device".

Bild på Simplicity Studio erbjuder två vägarFigur 9: Simplicity Studio har två vägar för att läsa in projektspecifik programvarusupport. (Bildkälla: Digi-Key Electronics)

Om utvecklingskortet har installerats ska Simplicity Studio automatiskt identifiera maskinvaran, men om det inte sker är det enkelt att manuellt leta reda på det programvarupaket som krävs. Skriv "6050A" (en kortare version av utvecklingssatsens fullständiga namn) i sökrutan, enligt figur 10. Dubbelklicka på det programvarusupportpaket som föreslås och klicka på Next (Nästa).

Bild på att skriva in "6050A" i Simplicity Studio-sökrutanFigur 10: Skriv in "6050A" i sökrutan så hittas snabbt programvaran som krävs för utvecklingskortet. (Bildkälla: Digi-Key Electronics)

Simplicity Studio markerar sedan ytterligare programvarusupport som är tillgänglig för den här maskinvarukonfigurationen. I vissa fall begränsas vissa programvarumoduler till användare som har slutfört kompletterande licensavtal och/eller registrerat maskinvaran. Det leder till att vissa alternativ därför kan vara nedtonade och tillfälligt otillgängliga, enligt figur 11.

Bild på Simplicity Studio-maskinvarans köpbevisfönsterFigur 11: Åtkomst till viss programvara är villkorlig enligt bevis på köp av maskinvara eller ytterligare programvarulicenser. (Bildkälla: Digi-Key Electronics)

Till sist: Simplicity Studio visar ett långt manifest för alla programvarualternativ som det avser att installera, inklusive en eller flera C-kompilatorer, realtidsoperativsystem som tillval, profilverktyg och många andra alternativ (figur 12). Vissa alternativ kan manuellt aktiveras eller inaktiveras men det är allmänt sett bäst att acceptera de föreslagna programvarualternativen. Klicka på Next (Nästa) när du är klar.

Bild av slutligt programvarumanifest för Simplicity StudioFigur 12: Slutligt programvarumanifest för Simplicity Studio. Vissa alternativ kan manuellt aktiveras eller inaktiveras men det är allmänt sett bäst att acceptera de föreslagna programvarualternativen. (Bildkälla: Digi-Key Electronics)

Som ett sista steg visar Simplicity Studio sitt huvudlicensavtal för programvara som omfattar alla programvarukomponenter som ska installeras. Läs och acceptera licensen och klicka sedan på Next (Nästa) en sista gång.

Programvaruinstallationen tar flera minuter. När den är klar stänger du och startar om Simplicity Studio. Allt är klart för att börja skapa Z-Wave-meshnätverkstillämpningar, inklusive några enkla förkonfigurerade demoprogram samt exempelkod som kan ändras, allt för att utvecklarna ska komma igång på rätt sätt.

Slutsatser

Z-Wave är avsett att vara enkelt att använda för konsumenter, men den användarvänligheten döljer mycket utvecklings- och certifieringsarbete av konstruktörer. Att skapa en ny Z-Wave-meshnätverksenhet är dock enkelt när konstruktörerna väljer att använda en förkonfigurerad sats med kompatibel maskinvara och förtestad programvara. Z-Wave 700-seriemodemet SoC, SiP-modulen och den förknippade utvecklingssatsen tillhandahåller den maskin- och programvara som krävs för att snabbt bygga ett tvånodnätverk som säkerställer kompatibilitet med det här komplexa, men mycket effektiva protokollet.

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of Digi-Key Electronics or official policies of Digi-Key Electronics.

Om skribenten

Jim Turley

Jim Turley var hårdvaruingenjör innan han blev teknisk analytiker och skribent med fokus på mikroprocessorer, halvledarteknik och inbäddade system. Från 2001 till 2018 drev han analysfirman Silicon Insider. Dessförinnan var han VD på ett mindre, börsnoterat IP-mikroprocessorföretag och innan det var han marknadschef på ett annat mikroprocessorlicensföretag. Han har skrivit sju böcker, varit chefredaktör för Microprocessor Report samt designat inbäddade system och varit ordförande för ESC (Embedded Systems Conference).

Om utgivaren

Digi-Keys nordamerikanska redaktörer