Jste zde

Testování elektronických zařízení pro inteligentní budovy

Elektronických zařízení pro inteligentní domy a IoT má řadu společných rysů. Je potřeba udělat hardwarové, bezpečnostní a softwarové testy, sledovat elektrické parametry i komunikaci na sběrnici. Pro ukázku jsem si vybral obyčejné KNX tlačítko. Podrobně se podíváme, které testy se musí provést, aby testovací laboratoř dala zelenou k produkci.

Elektronické zařízení lze rozdělit z pohledu testování na dvě kategorie. Hardware a software. Nejdříve si ukážeme, které hardwarové testy se musí provést na KNX zařízení. Testování hardware si můžeme rozdělit na testování Elektromagnetické kompatibility EMC, součástí EMC je odolnost vůči elektrostatickému výboji – ESD. Dalšími testy jsou testy bezpečnostní tzv. safety testy a speciální testy odolnosti vůči poklesu napájení v KNX síti.

Elektromagnetická kompatibilita EMC

EMC testy se skládají z EMI – elektromagnetické vyzařování a EMS – elektromagnetická odolnost.

EMS - elektromagnetická odolnost:

  • ESD (EN61000-4-2) – Tento test zahrnuje odolnost zařízení vůči přímému a nepřímému výboji. Podrobnosti najdete v uvedené normě nebo v přehledném článku „Testovaní odolnosti vůči elektrostatickým výbojům.“ Na obrázku jsou červené body, které se volí pro odolnost vůči přímému výboji. Test se provádí se všemi dostupnými kryty. Běžně se začíná s výbojem 0,5kV a navyšuje se až na hodnotu 8kV. Ve speciálních případech až na 12kV. Námi vybrané KNX tlačítko splňuje standardních 8kV. 

 

  • Imunita vůči elmag. poli(EN61000-4-3) – zařízení se umístí do bezodrazové komory. V této komoře se zařízení ozařuje elektromagnetickým polem v intenzitě 3V/m. Tato hranice je stanovena pro zařízení pro byty a budovy. Další hranicí je 10V/m, která se používá pro zařízení v průmyslových budovách. 
  • Burst (EN61000-4-4) – jedná se o skupinu pulzů, která se pouští na svorky zařízení. Velikost pulzu je od 0,5kV až po 2,5kV. S frekvencí 5kHz a 100kHz. Tento test simuluje rušení v síti, které vzniká při spínání induktivní zátěže. Málokdo si uvědomuje, že rušení může způsobit obyčejný vypínač světla. 

  • Surge(EN61000-4-5) – jedná se o jeden impuls definovaného tvaru, který se pouští na svorky zařízení. Velikost pulsu je od 0,5kV až po 2,5kV.  Tento test simuluje úder blesku do blízkého okolí vedení. Tím vznikne krátký napěťový impulz s velkou energií. Tato energie si hledá nejkratší vybíjecí cestu k zemi. 

  • Imunita – svorky(EN61000-4-6) – Přímo na svorky se pouští definovaný signál v rozmezí 150kHz až 30MHz a zkoumá se funkčnost daného vzorku.
  • Poklesy a přerušení napájecího napětí(EN61000-4-11) – jedná se speciální případy poklesu napájení o určitou úroveň. Tato část se u KNX zařízení nahrazuje testy, které jsou přímo popsány v pravidlech KNX. Jedním základním pravidlem je, že zařízení bude funkční v rozsahu napájecího napětí 19V až 31V. Zařízení musí také naběhnout v tomto rozmezí. Při tomto testu se zařízení napájí z laboratorního zdroje přes tlumivku. Napětí se snižuje a zjišťuje se hranice, kdy zařízení je ještě plně funkční. Námi testovaný vzorek ztratil svou funkci při 17V. Napětí náběhu bylo změřeno 18,5V.
  •  

Při imunitních testech se kontroluje stav zařízení. Tento stav se dělí do čtyř kategorií:

  • A. Normální činnost v rozsahu mezí ve specifikaci
  • B. Dočasné zhoršení nebo ztráta funkce nebo činnosti, která se sama obnovuje. Například dojde pouze k resetu procesoru.
  • C. Dočasné zhoršení nebo ztráta funkce nebo činnosti, která vyžaduje zásah obsluhy nebo znovu nastavení systému. Obsluha musí zařízení resetovat.
  • D. Zhoršení nebo ztráta funkce, která není obnovitelná vlivem poškození zařízení, programového vybavení nebo ztráty dat. Například dojde ke smazání paměti Flash. Musí dojít k opětovnému nahrání firmware programátorem.

Obvykle se zařízení během testu nakonfiguruje tak, že posílá na knx sběrnici střídavě hodnotu „Switch On“ a „Switch Off“. Pomocí ETS aplikace se monitorují data na sběrnici. Pro jednodušší signalizaci se tento telegram naváže na switch actuator, který spíná žárovku a tím je jasně viditelná nefunkčnost zařízení. Je to přehlednější, než hledat telegramy na obrazovce PC. Dalším pomocníkem je tzv. programovací tlačítko, které má každé KNX zařízení. Po namáčknutí svítí červená LED a pokud dojde k resetu procesoru, tato LED shasne.

EMI - Elektromagnetické vyzařování:

Existují dva typy vyzařování - polem a na svorkách. Při měření vyzařování polem se testovaný vzorek umístí do bezodrazové komory, spustí se v režimu běžného užívání a měří se, zda nevyzařuje do okolí rušivé elektromagnetické pole. Běžně se měří v mezích 30MHz až 1Ghz. Při měření vyzařování na svorkách se zařízení nemusí umisťovat do komory. Měří se přímo na svorkách zařízení  v rozsahu 9kHz až 30MHz.

Softwareové testy

Pro softwarové testy se používají následující programy. ETS (Engineering Tool Software) je program pro konfiguraci a nahrání aplikace do KNX zařízení. Její součástí jsou diagnostické nástroje. Nejčastěji se využívá Bus monitor a Group monitor. Bus monitor slouží ke sledování všech telegramů, které se objeví na sběrnici. Group monitor dokáže posílat či vyčítat telegramy přímo ze skupinových adres namapovaných na příslušné objekty. Tento nástroj slouží pro manuální testování, kdy není zapotřebí posílat mnoho telegramů. Pro automatizované testy se používá program EITT.  EITT dokáže posílat sekvenci telegramů a tím simulovat reálný provoz zařízení v instalaci.

Testovaný vzorek:

Jako vzorek jsem vybral KNX tlačítko. Pokud je člověk neznalý v KNX, může si myslet, že otestovat KNX tlačítko bude trvat několik hodin. Bohužel testování funkčnosti tohoto tlačítka zabere 14dní i více. Jak je to možné? Záleží na složitosti aplikace. Námi vybraný vzorek obsahuje 26 objektů a 148 parametrů. U každého parametru si lze vybrat s jedné nebo i několika možností. Pokud se do toho zapletou ještě různé priority, dostáváme se na docela zajímavý obsah, který se má otestovat. Jediné tlačítko může plnit různou funkci právě podle nastaveného parametru. Uvedu jen příklad několika funkcí pro představu složitosti KNX tlačítka.
Funkce jednoho tlačítka:

  • Toggle – krátký stisk – po každém stisku posílá buď hodnotu 1 nebo hodnotu 2. Hodnota námi definovaná může být 1bit nebo 1byte. Dlouhý stisk není podporován. 
  • Switch – krátký stisk – pošle hodnotu definovanou parametrem. Hodnota může být 1bit nebo 1byte. Dlouhý stisk není podporován.
  • Dimming – krátký stisk odešle telegram On nebo Off, Dlouhý stisk pošle telegram Dimm up, další dlouhý stisk pošle telegram Dimm down.
  • Scene – při krátkém stisku pošle telegram s číslem scény, které se má vyvolat. Dlouhý stisk pošle číslo scény, pod kterým se má nastavená scéna uložit
  • Blind/Shutter – Ovládání Žaluzií a Rolet. Krátký stisk je tzv. Step nebo Stop příkaz. Pomocí dlouhého stisku se pošle telegram do blind actuatoru a žaluzie se rozběhnou nahoru nebo dolu. 
  • 8 bit slider - každým krátkým stiskem se odešle hodnota o definovaný krok větší nebo menší. Při dlouhém stisku se posílaná hodnota automaticky přičítá nebo odečítá v určitém definovaném intervalu.
  • Edge – Tato funkce je hodně zajímavá a typicky ukazuje maximálního využití možností jednoho tlačítka. Na jednom tlačítku lze přiřadit 4 akce: akce při stisku tlačítka, akce při uvolnění tlačítka před uplynutím času pro dlouhý stisk, akce při dasažení času dlouhého stisku, akce po uvolnění tlačítka po dosažení času pro dlouhý stisk.

     

Pro každou akci si lze vybrat příslušnou funkcionalitu. Následující seznam je dokonalým příkladem toho, jak lze jednoduché zařízení zbytečně udělat složitým. 

Zařízení obsahuje pro každé tlačítko dvě signalizační diody. Zelenou a Bílou. Opět máme na výběr, zda chceme použít pro signalizaci akce bilou a pro nečinnost zelenou nebo naopak. U každého tohoto stavu lze nastavit intenzitu svitu LEDky. Navíc zařízení má na sobě IR detekci přítomnosti, kdy se všechny LED vypnou a pokud se uživatel přiblíží do určité vzdálenosti, tak se LED rozsvítí. Tuto funkci komplikuje použití funkce Night, kdy se může nastavit, aby při nepřítomnosti zákazníka svítila jen jedna kontrolní LED. Funkce Lock pro zamknutí klávesnice po sběrnici KNX má dalších 3 možné nastavení LED. Složitost zařízení nezná mezí. Do toho se ještě připletou priority. Myslím, že tato ukázka složitosti KNX tlačítka je dostačující.

Testování pomocí ETS:

Pomocí ETS programu musíme nejdříve zařízení správně nakonfigurovat. Používá se nejnovější verze 5.0 a kvůli kompatibilitě i vezre 4.0. Testování musí obsáhnout veškerou funkcionalitu. KNX má tu vlastnost, že se nastaví všechny parametry a přiřadí se příslušné Skupinové adresy k objektům. Pak se vše musí nahrát do zařízení. Pokud budeme chtít změnit nějaký parametr, musíme opět tuto změnu nahrát do zařízení. Proto se v ETS vytváří několik obrazů zařízení s různou individuální adresou reprezentující příslušnou kombinaci nastavených parametrů.
 
 
 
Pomocí programu ETS se musí zkontrolovat defaultní hodnoty jednotlivých parametrů, zda odpovídají specifikaci. Správnost použitého datového typu. Zda příslušný objekt je definovaný jako integer, float, 1bit apod. Pro různé funkce jsou definovány různé datové typy. Existují datové typy pro scény, žaluzie, stmívače, spínače. Vše je podrobně popsáno v KNX pravidlech. 
 
   
Pomocí nástroje Group monitoring v programu ETS se lehce simulují příchozí telegramy. Když potřebujeme například poslat na objekt funkce Lock telegram, který ho zapíná nebo vypíná, zvolíme právě tento nástroj. V Group monitoru je uveden čas telegramu s přesností jedné tisíciny sekundy, zdrojová adresa zařízení, cílová adresa, použitý datový typ a v poli "Info" vidíme surové data se znakem „$“ a převedené data podle zvoleného datového typu.

 

Zařízení připravíme pro automatické testy. Tyto testy se provádí pomocí programu EITT, kde se používají nastavené Skupinové adresy a parametry v ETS programu. Jednotlivé nastavení se vyexportuje do souhrnného pdf souboru, kde jsou všechny zařízení v topologii a námi nastavené parametry a skupinové adresy. Tento souhrnný soubor naleznete v příloze pod článkem.

Testování pomocí EITT:

Program EITT slouží k automatizaci testů na KNX zařízení. Dokáže pomocí jednoduchého skriptu poslat na skupinovou adresu telegram a v očekávaném čase telegram vyčíst ze sběrnice KNX. Dokáže zkontrolovat, zda přišel ve správném tvaru a správném čase. Vše zaznamenává do Trace Bufferu, kde se jednotlivé chyby zobrazují červenou barvou. Jednoduchou formou může komunikovat s testerem a dávat mu příkazy – stiskni tlačítko, uvolni tlačítko, drž tlačítko atd.  Tím se test stává poloautomatickým a hlavně jednoduše opakovatelným. EITT se užívá také pro dlouhodobé testy, kdy zařízení může posílat telegram v různém cyklu. Naše testované tlačítko může posílat cyklicky telegram po 1min, 1hodině nebo dokonce po 1 dni. Právě pro ověření tohoto cyklu se používá EITT, kdy se nechá dlouhodobě zařízení běžet a program kontrolu provede za nás.

Jako příklad jsem si přichystal testování dvou konfigurací funkce stmívače:

 

  • Function 0 - Brighter, 1/2brighter, stop telegram YES,send cyclically NO,Long operation - 0,6s

Tento test spočívá v tom, že tester provede krátký stisk (short press) a zařízení pošle na skupinovou adresu 0/1/0 hodnotu switch on. Provede se to ještě jednou, aby se ověřilo, zda není ve funkci toggle. Pak se provede dlouhý stisk. Při dosažení času pro dlouhý stisk, zařízení pošle telegram  na skupinovou adresu 0/1/4 s hodnotou increase step2. To znamená, že se žárovka připojená ke knx dimeru rozsvítí o polovinu více. Po uvolnění tlačítka pošle zařízení Stop telegram. Čili „dýmení “ se zastaví. Při dalším dlouhém stisku opět pošle hodnotu increase step2. Jelikož je v parametrech nastaveno pouze Brighter.  

 ***********************************************************************
Test function and button 1
***********************************************************************
Push and relase button 1 (Short press)
(1)    >     09:40:18.3 BC 00.02.003 00/1/000 E1 00  81  : EIS2 dimming, position (switch on)
Push and relase button 1 (Short press)
(2)    >     09:40:19.8 BC 00.02.003 00/1/000 E1 00  81  : EIS2 dimming, position (switch on)
Push and hold button 1
(3)    >     09:40:21.9 BC 00.02.003 00/1/004 E1 00  8A  : EIS2 dimming, control (step 2, increase) - 1/2 brightner
Relase button 1
(4)    >     09:40:22.8 BC 00.02.003 00/1/004 E1 00  88  : EIS2 dimming, control (stop, increase)
Push and hold button 1
(5)    >     09:40:24.7 BC 00.02.003 00/1/004 E1 00  8A  : EIS2 dimming, control (step 2, increase) - 1/2 brightner
Relase button 1
(6)    >     09:40:26.1 BC 00.02.003 00/1/004 E1 00  88  : EIS2 dimming, control (stop, increase)
 
  • Function 3 - Brighter and Darker, To max brighteness, To min. brightness and cyclically YES, Long operation - 10s

V této konfiguraci je nastaveno Brighter and Darker. Ze skriptu je vidět, že dochází k přepínání mezi Increase a Decrease hodnotou po každém dlouhém stisku.  To samé platí pro krátký stisk.

***********************************************************************
Test function and button 3
***********************************************************************
Push and relase button 3 (Short press)
(11)   >     09:40:40.8 BC 00.02.003 00/1/002 E1 00  81  : EIS2 dimming, position (switch on)
Push and relase button 3 (Short press)
(12)   >     09:40:42.3 BC 00.02.003 00/1/002 E1 00  80  : EIS2 dimming, position (switch off)
Push and hold button 3
(13)   >     09:40:44.8 BC 00.02.003 00/1/006 E1 00  8A  : EIS2 dimming, control (step 2, increase)
Relase button 3
(14)   >     09:40:46.0 BC 00.02.003 00/1/006 E1 00  88  : EIS2 dimming, control (stop, increase)
Push and hold button 3
(15)   >     09:40:49.5 BC 00.02.003 00/1/006 E1 00  86  : EIS2 dimming, control (step 6, decrease)
Relase button 3
(16)   >     09:40:50.9 BC 00.02.003 00/1/006 E1 00  80  : EIS2 dimming, control (stop, decrease)
Push and relase button 3 (Short press)
(17)   >     09:40:53.8 BC 00.02.003 00/1/002 E1 00  80  : EIS2 dimming, position (switch off)
Push and relase button 3 (Short press)
(18)   >     09:40:56.0 BC 00.02.003 00/1/002 E1 00  81  : EIS2 dimming, position (switch on)
Push and hold button 3
(19)   >     09:40:58.7 BC 00.02.003 00/1/006 E1 00  86  : EIS2 dimming, control (step 6, decrease)
Relase button 3
(20)   >     09:40:59.8 BC 00.02.003 00/1/006 E1 00  80  : EIS2 dimming, control (stop, decrease)
Push and hold button 3
(21)   >     09:41:02.4 BC 00.02.003 00/1/006 E1 00  8A  : EIS2 dimming, control (step 2, increase)
Relase button 3
(22)   >     09:41:03.5 BC 00.02.003 00/1/006 E1 00  88  : EIS2 dimming, control (stop, increase)
Push and relase button 3 (Short press)
(23)   >     09:41:05.4 BC 00.02.003 00/1/002 E1 00  80  : EIS2 dimming, position (switch off)
Push and hold button 3
(24)   >     09:41:07.8 BC 00.02.003 00/1/006 E1 00  8A  : EIS2 dimming, control (step 2, increase)
Relase button 3
(25)   >     09:41:09.0 BC 00.02.003 00/1/006 E1 00  88  : EIS2 dimming, control (stop, increase)
Push and relase button 3 (Short press)
(26)   >     09:41:10.8 BC 00.02.003 00/1/002 E1 00  80  : EIS2 dimming, position (switch off)

 

Závěrem:

Cílem tohoto článku byla jen ukázka testování KNX zařízení. Je to jen několik testů, které se provádějí při vývoji každého KNX zařízení. Při vývoji firmware se softwareové testy opakují v pravidelných cyklech(14dní). Je to náročné na čas a proto každá automatizace v oblasti testování je vítána. EITT není dokonalý nástroj, ale usnadňuje práci a pokud jsou testy dobře napsané, dokáže skript spustit kdokoli jiný a test provést i bez zaškolení. 

Přílohy: 
PřílohaVelikost
PDF icon topology_-_details_verification.pdf237.51 KB
Hodnocení článku: