PLC – UniPi 1.1 s Raspberry Pi pre smarthome a automatizáciu

Mikrokontroléry
0

UniPi 1.1  je nadstavba pre populárnu mikropočítačovú dosku Raspberry Pi, s ktorou tvorí jednoduchou programovateľnú riadiacu jednotku využiteľnú pre jednoduchšie projekty riadenia napríklad inteligentnej domácnosti, prípadne systému zavlažovania, či iného systému  merania a regulácie, prípadne na prototypovanie IoT riešení. 

Video ukazuje inštaláciu operačného systému Mervis, inštaláciu vývojového prostredia Mervis IDE a jednoduchý príklad



UniPi 1.1 je k dispozícii ako samotná doska, alebo kompletná súprava. V súprave je aj mikropočítač Raspberry Pi 3 model B, držiak na uchytenie na DIN lištu, plexisklový ochranný kryt, napájací zdroj 5V 2,4 A na DIN lištu a teplomer s pripojením cez 1-Wire. Je tu aj všetok potrebný spojovací materiál

UniPi 1.1 Lite má 12 (+2) optočlenmi galvanicky oddelených digitálnych vstupov, na čítanie stavu externých zariadení na ktorých môžu byť  napäťové úrovne 5-24 V. Na ovládanie, presnejšie spínanie externých zariadení ako je osvetlenie, zámky dverí a podobne, je k dispozícii 8 relé 250V AC / 5A alebo 24V DC / 5A. Relé sú ovládané po zbernici I2C cez obvod MCP23008 na adrese 0x20. Na komunikáciu a externými zariadeniami ako napríklad digitálne teplomery má doska UniPi 1.1 integrovaný 1-Wire kanál s konektorom RJ45. Komunikáciu zabezpečuje čip DS2482-100. Aj tento obvod je k mikrokontroléru pripojený cez I2C a má adresu 0x18

Digitálne vstupy, aj výstupy spínajúce relé sú vybavené signalizačnými LED diódami, takže aplikácia sa dá pohodlne ladiť. 

Napájanie pre digitálne výstupy zabezpečuje integrovaný 12V zdroj napätia s prúdovým obmedzením 100mA. Preťaženie, prípadne skrat externého zariadenia je indikované LED diódou. Digitálne vstupy majú taktiež možnosť využiť externé napájanie. K dispozícii je aj pamäť typu EEPROM (24C02) s kapacitou 2 kB na ukladanie dôležitých informácií.

Ak to zosumarizujeme, k dispozícii je 

  • 8 × Prepínacie relé pre 250 VAC / 5A alebo 24VDC / 5A
  • 12 × galvanicky oddelené digitálne vstupy spúšťané 5-24 V DC s minimálnou dĺžkou pulzu 5 ms
  • 1 × 1-Wire port pre pripojenie 1-wire teplomerov a ďalších senzorov
  • 1x I2C port

Ako CPU je používaný minipočítač Raspberry Pi. Riadiaci softvér je uložený na microSD pamäťovej karte, ktorá sa zasunie do slotu mikropočítača Raspberry Pi.  Pripravíme si operačný systém pre riadiacu jednotku. Potrebujeme čítačku pamäťových kariet, či už integrovanú v počítači, alebo externú . Zo stránky UniPi technology Knowledge Base stiahneme obraz operačného systému Mervis pre riadiacu jednotku UniPi, Je to súbor vo formáte ZIP, ktorý uložíme do vhodnej zložky. Na prenos operačného systému použijeme aplikáciu balenaEtcher.

Schéma zapojenia 

Ako ďalší krok nainštalujeme do počítača vývojové prostredie Mervis IDE, v ktorom budeme pre riadiacu jednotku vytvárať aplikácie. Vývojové prostredie je k dispozícii na stiahnutie na stránkach UniPi technology Knowledge Base. 

Postup vytvorenia projektu je vo videu.

Ako prvý krok vytvoríme nový projekt, projekt vhodne pomenujeme a v tomto príklade ponecháme označenú implicitnú voľbu Simple Mode. Následne  pridáme do projektu riadiacu jednotku. Ako metódu vyhľadávania vyberieme UDP Broadcast. Keď systém riadiacu jednotku nájde zobrazí sa dialóg s jej názvom. Označíme túto položku, potvrdíme a v nasledujúcom dialógu označíme voľbu Download Configuration.

Niektoré hardvérové komponenty na doske UniPi 1.1, napríklad relé, alebo analógové vstupy sú k mikropočítaču Raspberry pripojené cez komunikačné rozhranie I2C. Preto je do projektu potrebné pridať komunikačné kanály na sprístupnenie tohoto hardvéru. Najskôr vytvoríme komunikačný kanál s riadiacim mikropočítačom, čim sprístupníme vstupy, ktoré sú pripojené priamo na porty Raspberry Pi. 

V kontextovom menu položky PLC aktivujeme voľbu Add  Channel, čím vytvoríme nový kanál. Novovytvorený kanál označíme a v pravom okne Properties nastavíme komunikačný protokol Modbus a linkový protokol TCP. Kanál vhodne pomenujeme, napríklad Modbus TCP.

Pravým tlačidlom myši aktivujeme kontextové menu pre tento kanál a vyberieme voľbu Add Library Device. Vyberieme zariadenie UniPi1 AO/DI/CNT a presunieme do okna Selected Devices. .Následne pridáme ďalší kanál a v ňom nastavíme komunikačný protokol Platform IO a linkový protokol I2C. Kanál pomenujeme napríklad I2C.

Pravým tlačidlom myši aktivujeme kontextové menu pre tento kanál a vyberieme voľbu Add Library Device. Rozbalíme zložku UniPi1.1, a následne aj zložku I2C. V nej vyberieme a presunieme do okna vybraných zariadení položku UniPi 1_Relays. Ak potrebujete využívať aj ďalší hardvér, napríklad analógové vstupy, vyberte aj tie.   

Prepneme sa do okna v ktorom budeme navrhovať program vo forme diagramu funkčných blokov. Zapojenie bude veľmi jednoduché – potrebujeme len prepojiť digitálny vstup s reléovým výstupom. 

V ľavej časti diagramu sú systémové premenné reprezentujúce vstupy. Pravým tlačidlom myši aktivujeme kontextové menu, vyberieme položku globálne premenné a pridáme existujúcu globálnu premennú pre digitálny vstup DI1. 

Na pravú stranu pridáme grafické znázornenie globálnej premennej, ktorá reprezentuje reléový výstup. Rovnakým postupom pridáme existujúcu premennú. Označíme položku príslušnej premennej, v našom prípade RO1. 

Tlačidlom Build preložíme zostavu do spustiteľnej podoby. Zároveň sa kontroluje správnosť konfigurácie. Po zatlačení tlačidla Deploy Solution sa vývojové prostredie spojí s riadiacou jednotkou a nahrá do nej program a konfiguráciu. Následne spustí riadiacu riadiacu jednotku. Takže máme všetko pripravené a fungovanie programu môžeme vyskúšať.

Zobrazit Galériu

Luboslav Lacko

Všetky autorove články
PLC UniPi1.1 Programovanie PLC

Pridať komentár