Jste zde

Meshnetics a jeho Zigbee moduly

O technologii ZigBee kolují, především mezi nezasvěcenými, monumentální fámy o tom co tato technologie umí, zda opravdu funguje, nakolik je její použití obtížné a zda se vůbec o to pokoušet. ZigBee je opravdu dle mého názoru ve srovnání s ostatními konkurenčními technologiemi implementačně náročnější. Počáteční fáze implementace často přinášejí mnoho problémů a nevyřešených otázek. Na trhu s moduly ZigBee již nějaký ten čas figuruje také firma Meshnetics. Jejím cílem je vyvíjet „easy-to-use“ moduly. Jak se jí to daří, můžete po přečtení tohoto článku usoudit sami.

ZIGBIT AMP

Protože nabídka typů modulů, které firma nabízí, je opravdu široká, zaměříme se dnes na jediný typ a tím je ZIGBIT AMP. Jedná se samozřejmě o modul založený na standardu IEEE 802.15.4/ZigBee. Jeho výhodou je malé pouzdro a integrovaný U-FL anténní konektor umožňující zjednodušení designu DPS cílové aplikace.

Modul je postaven na hardwarové platformě AVR Z-link. Kombinuje citlivost přijímače až -104dBm s možným vysílacím výkonem 20dBm. Nízkopříkonový zesilovač poskytuje maximální dosah při zachování nízké spotřeby.

Základní parametry modulu

MSHT_tabulka.png

Podporovaná rozhraní

  • USART/SPI, I2C, 1-wire
  • UART s RTS/CTS podporou
  • JTAG
  • 9 volných GPIO (25 celkem)
  • 9 Volných IQR linek
  • 4 ADC linky

Podporované aplikační stacky

ZigBit moduly jsou schopné pracovat se třemi základními stacky dostupnými na webu Meshnetics:

  • BitCloud ZigBee PRO certifikovaný stack - vyvinutý speciálně pro jednoduché využívání ZigBee sítí ve spolupráci se senzory, při řízení, monitoringu a v aplikacích pro sběr dat. Podporuje MESH a TREE sítě.
  • SerialNet – je používán k programování modulů prostřednictvím sériové linky a AT příkazů. Emuluje standardní BitCloud, takže vývojář nemusí pro jeho úpravy zasahovat do programové paměti MCU.
  • Open Mac – je open source implementací MAC vrstvy IEEE 802.15.4 od Meshnetics. Tento stack je určen primárně pro studijní účely a „zábavu“.

Každý z uvedených stacků má svá specifika, na která se podíváme podrobněji. Dnes začneme prvním z nich BitCloud ZigBee PRO.

BitCloud ZigBee PRO

BitCloud je softwarový stack pro vestavěné aplikace. Poskytuje základ pro spolehlivé, rozšířitelné a zabezpečené bezdrátové aplikace běžící na HW od fy Meshnetics. Je určen primárně pro automatizace v domácnosti, komerčních budovách, sledování pohybu zboží, a průmyslovou automatizaci.

BitCloud využívá možnosti ZigBee PRO, přitom však zůstává plně kompatibilní se standardním ZigBee protokolem pro snímače a řízení. Poskytuje rozšířenou sadu API, které zaručují 100% shodu se standardy a přitom nabízí rozšířené možnosti pro zainteresované vývojáře a usnadňují práci pro ty, jež s touto technologií začínají.

Stack je standardně dodáván jako software development kit (SDK) a obsahuje vše co je nutné pro úpravy a plné využívání:

  • Kompletní dokumentace zarhnující developer’s guide, BitCloud API manuál a uživatelskou příručku SDK.
  • Standardní knihovny.
  • Referenční uživatelskou aplikaci.
  • Kompletní set ovladačů pro podporované platformy.

Mezi klíčové vlastnosti patří

  • Podpora ZigBee PRO.
  • Easy-to-use C API a podpora AT příkazů.
  • Spolehlivý přenos prostřednictvím MESH sítí.
  • Podpora velkých sítí (až 100 zařízení).
  • Optimalizace pro nízkou spotřebud (5-15 při bat. Provozu).
  • Možnost upgradovat software „vzduchem“.
  • Flexibilní a jednoduché vývojové nástroje.
  • Podpora expertů na ZigBee PRO.

BidCloud ZigBee PRO podporuje následující HW:

  • MNZB-24-A2 (ZigBit Module with Dual Chip Antenna)
  • MNZB-24-B0 (ZigBit Module with Balanced RF Output)
  • MNZB-A24-UFL (ZigBit Amp Module)
  • MNZB-A24-U0 (ZigBit Amp Module)
  • MNZB-EVB (MeshBean Development Board)

ZigBitDev.png Je jasné, že popis celého stacku by vydal na několik desítek stran. Proto se jím dopodrobna nebudu zabývat. Zájemci mají k dispozici poměrně hutnou dokumentaci na webu výrobce. My se spíše soustředíme na praktickou stránku věci, na využití připravených aplikací od výrobce. Pro tyto účely se výborně hodí ZigBit AMP Development Kit. Jedná se o poměrně slušně vybavenou sadu vývojových desek osazených již představeným obvodem ZigBit AMP.

V krabici s vývojovým kitem k Vám doputují 2 základové desky MESHBEAN AMP, dva propojovací USB kabely a CD s dokumentací a ovladači. Doporučuji využít automaticky spuštěné instalace, přes kterou se stačí klasicky „proklikat“ metodou „Next“ a „I Agree“. Při připojený vývojových desek můžete být také dotázání na ovladače pro převodník PROFILIC, ty opět najdete na přiloženém CD. Moduly se poté tváří jako zařízení připojené standardní sériovou linkou a tak s nimi i pracujete.

Programování modulů

Výrobce nabízí dvě možnosti jak moduly programovat. Jednou z nich je využití JTAG, což nebudeme dělat. Druhou je programování přes sériovou linku prostřednictvím bootloaderu. Tuto možnost využijeme. K přehrání SW v modulech ZigBit AMP slouží konzolová aplikace Bootloader.exe. Pokud jste využili defaultní cesty pro instalaci, bude pravděpodobně umístěn nějak takto:

C:\Program Files\MeshNetics\ZAmpDK Lite\Bootloader

Využívat jej budeme například:

Bootloader.exe –f soubor.srec –p COM8

Programování si ovšem můžeme rovnou vyzkoušet:

  • Připojte jeden z modulů k PC
  • Ve správci systému překontrolujte číslo COM portu které bylo modulu přiděleno
  • Nakopírujte si soubor blink.srec z adresáře: \ZAmpDK Lite\Sample Applications\Blink\ do adresáře s bootloaderem a spusťte příkazový řádek v adresáři bootloaderu.
  • Odešlete příkazový řádek: Bootloader.exe –f blink.srec –p COM8, kde COM8 nahradíte číslem portu, které bylo vývojové desce přidělelno.

ZigBitcmd.png

  • Konzole oznámí, že čeká na stisk resetovacího tlačítka, jeho stisknutím spustíte přehrání aplikační části FW v modulu.
  • Pokud se vše podaří bez chyby, můžete se kochat blikající červenou LED.

Jako příklad pro využití bootloaderu dobré, ovšem jistě uznáte, že blikání můžeme dosáhnout mnohem levnějšími a rychlejšími metodami.

K vývojovému kitu výrobce přidal také balík příkladů. Stejným způsobem jakým jsme nahrávali předchozí příklad, nahrajeme do obou modulů soubor pingpong.srec. Na jednom z modulů nastavíme na dip přepínačích (S1=0, S2=0, S3=0) - node, na hruhém pak (S1=1, S2=1, S3=0) - coordinator. Po resetu modulů můžeme pozorovat hned několik stavů:

  1. Modul Koordinátora po resetu vyhledává vhodné nody a to dává na vědomí blikáním. Najde-li vhodného noda, svítí stále. Situaci lze opakovat například také resetem modulu noda.
  2. Je-li modul nodu připojen do sítě – oba moduly svítí stále červeně, je možné z koordinátora odeslat zprávu – stisk tlačítka 2. Zpráva je odeslána do modulu noda, odtud přeposlána zpět. Koordinátor přijatou zprávu ohlásí bliknutím žluté LED.
  3. Je možné si vyzkoušet, že pokud není node připojen, neí přijata odpověď a žlutá LED se nerozsvítí.

Hardwarový test

Jestliže si chcete vyzkoušet periferie osazené na DPS modulu máte možnost opět využít příkladu z dodaného CD. Je jím hw_test.srec.:

  • Aplikaci nahrajte do modulu běžnou cestou.
  • Spusťte hyperterminál a spojení nastavte na 3400/8/N/1/N
  • V okne hyperterminálu jsou cyklicky vypisovány údaje o stavu periferií

ZigBitHWtest.png

DOWNLOAD & Odkazy

Hodnocení článku: 

Komentáře

Fámy kolují, protože to nikdo nechce nasadit :-). Uvítal bych reálný test, kde by se ukázalo jaký to má dosah v budově, venku, jak je to schopné zareagovat na překonfigurování sítě. Jakou to má spotřebu atd.

Na podrobnejsich testech se pracuje. Uz jsem ale videl par realnych a funkcnich aplikaci zalozenych prave na Meshneticsu a fungovalo to prekvapive dobre. Oproti tomu v redakci s tim trochu bojujeme, ale to se podda :)

už s tímto obvodem máte někdo zkušenosti??? mám jeden kousek doma a zrovna 2x nevím co stím... byl bych vděčný za každou připomínku...