Ovladač systému REXYGEN pro Monarco HAT
(modul MonarcoDrv)
Uživatelská příručka
Plzeň
15.12.2023
Obsah
1.1 Úvod
1.2 Instalace ovladače na vývojovém počítači
1.3 Instalace ovladače na cílovém počítači (Raspberry Pi)
2 Zařazení ovladače do projektu
2.1 Přidání ovladače MonarcoDrv do projektu
2.2 Připojení vstupů a výstupů do řídicího algoritmu
3 Připojení vstupů a výstupů v kontrolním algoritmu
3.1 Přímé vstupní a výstupní signály
3.2 Komunikace protokolem Modbus přes RS-485
3.3 1-Wire senzory a rozšiřující moduly
4 Co dělat při problémech
Kapitola 1
Ovladač MonarcoDrv a systém REXYGEN
1.1 Úvod
Tento manuál popisuje ovladač MonarcoDrv pro přímý přístup ke vstupům a výstupům Monarco HAT [1] uvnitř systému REXYGEN. Tento ovladač byl vyvinut společností REX Controls.
Pro rychlé instrukce pro začátek viz [2]
1.2 Instalace ovladače na vývojovém počítači
Ovladač MonarcoDrv se instaluje jako balíček řídicího systému REXYGEN. Je
obsažen v instalátoru vývojových nástrojů systému REXYGEN, pro jeho
nainstalování je pouze nutné ho v instalačním programu systému REXYGEN
zaškrtnout. Po typické instalaci se řídicí systém REXYGEN nainstaluje do cílového
adresáře
C:\Program Files\REX Controls\REX <verze>.
Po úspěšné instalaci se do cílového adresáře zkopírují soubory:
- Bin\MonarcoDrv_H.dll – Konfigurační část ovladače MonarcoDrv.
- Doc\PDF\CZECH\MonarcoDrv_CZ.pdf – Tato uživatelská příručka.
1.3 Instalace ovladače na cílovém počítači (Raspberry Pi)
Pokud ještě nemáte nainstalovaný runtime modul RexCore řídicího systému REXYGEN, nainstalujte jej nejdříve podle příručky Začínáme se systémem REXYGEN [2]. Instalace obsahuje všechny nezbytné ovladače včetně MonarcoDrv.
Pokud chcete nainstalovat MonarcoDrv samostatně, můžete tak učinit z příkazové
řádky Raspberry Pi pomocí příkazu
sudo apt-get install rex-monarcodrvt
Kapitola 2
Zařazení ovladače do projektu
Zařazení ovladače do projektu spočívá v přidání ovladače do hlavního souboru projektu a z připojení vstupů a výstupů ovladače v řídicích algoritmech.
2.1 Přidání ovladače MonarcoDrv do projektu
Přidání ovladače MonarcoDrv do hlavního souboru projektu je znázorněno na obr.2.1.
Pro zařazení ovladače do projektu slouží blok IODRV přejmenovaný na MNR a připojený k výstupu Drivers základního bloku EXEC. Jménem tohoto bloku (MNR, viz obr- 2.1) začínají všechny vstupní a výstupní signály tohoto ovladače. Čtyři nejdůležitější parametry jsou:
- module – název modulu připojeného k tomuto ovladači, v tomto případě MonarcoDrv – POZOR! Jméno rozlišuje velká a malá písmena!
- classname – třída ovladače, v tomto případě MonarcoHatDrv – POZOR! Jméno rozlišuje velká a malá písmena!
- cfgname – název konfiguračního souboru ovladače, např. monarcohat.rio
- factor – násobek parametru tick bloku EXEC definující periodu vykonávání úloh ovladačem.
Právě popsané parametry bloku IODRV se konfigurují v programu REXYGEN Studio v dialogovém okně, které je rovněž ukázáno na obrázku 2.1.
Tlačítko Configure otvírá konfigurační dialog ovladače MonarcoDrv, který je popsán v kapitole 2.2.
2.2 Připojení vstupů a výstupů do řídicího algoritmu
Konfigurační dialog může být aktivován tlačítkem Configure v parametrickém dialogu bloku IODRV (viz kapitola 2.1).
Sekce RS-485 konfiguruje parametry sběrnice RS-485 pro připojení k vnějším zařízením.
DŮLEŽITÉ: Nutno poznamenat, že vnitřní komunikace mezi CPU a Monarco HAT MCU využívá komunikaci UART (/dev/ttyAMA0 na Raspberry Pi) s hodnotou baudrate na 115200, 8 bity na byte, bez parity a 1 stop bitem. Tyto hodnoty musíte použít v konfiguraci ovladače Modbusu, pokud ho chcete použít. Více informací najdete na http://www.monarco.io.
Sekce konfigurace SPI slouží k určení komunikace mezi CPU a Monarco HAT MCU (/dev/spidev0.0 na Raspberry Pi, maximální frekvence hodin jsou 4 MHz).
Kapitola 3
Připojení vstupů a výstupů v kontrolním algoritmu
Vstupy a výstupy ovladače musí být propojeny s jednotlivými úlohami pomocí funkčních bloků. Jednotlivé úkoly (bloky QTASK nebo TASK) jsou připojeny k výstupům QTask, Level0,…, Level3 hlavního bloku EXEC.
3.1 Přímé vstupní a výstupní signály
Ke vstupům a výstupům ovladače MonarcoDrv se lze dostat tak, jak je zobrazeno na obr. 3.1.
Přístup k signálům ovladače se provádí pomocí jejich názvů – tzv. vlajek. Pro čtení signálu se využívá funkční blok From, pro zápis signálu se využívá funkční blok Goto. Oba tyto bloky mají parametr Goto tag, který je nastaven na název signálu.
Na obrázku jsou znázorněny dva bloky typu From, které umožňují uživateli přečíst vstupy. Tyto bloky mají parametry Goto tag nastaveny na MNR__DI1 a MNR__DI2. Číslo v názvu vlajky odpovídá vývodu terminálu. Dále jsou na obrázku dva bloky typu Goto, které umožňují nastavit výstup. Jejich parametry Goto tag jsou nastaveny na MNR__DO3 a MNR__DO4. Bloky mají vždy předponu MNR na začátku názvu vlajky následovanou dvěma znaky „_“ (podtržítko).
Podobně pro ostatní vstupy a výstupy můžeme využít například tyto parametry:
- Goto, MNR__DO4 – digitální výstup 4
- Goto, MNR__AO1 – analogový výstup 1
- From, MNR__AI1 – analogový vstup (voltage mode 0..10V)
- From, MNR__AI2C – analogový vstup (current mode 0..20mA)
- Goto, MNR__LED5 – Vestavěná LED 5
- Goto, MNR__LED5_Mask – Pouze pokud je TRUE, může být vestavěná LED 5 ovládána algoritmem
Obecně se odkaz na konkrétní signál skládá z názvu ovladače MNR, dvou podtržítek __, reference signálu, čísla signálu případně znaku definujícího mód vstupu. Číslování terminálu Monarco HAT je zobrazeno na obr. 3.2.
Instalace systému REXYGEN obsahuje knihovnu příkladů, kde je mimo jiné sekce 0121_Monarco_HAT věnována použití MonarcoDrv. Příklad 0121-00_IO_Flags obsahuje knihovnu použitelných vstupů a výstupů.
3.2 Komunikace protokolem Modbus přes RS-485
Sběrnice RS-485 poskytuje běžné rozhraní ke komunikaci s vnějšími zařízením (serva, měřiče energie atd.), případně k rozšíření I/O možností samotného Monarco HAT. Typicky se využívá komunikace přes protokol Modbus. V systému REXYGEN existuje speciální ovladač pro protokol Modbus, viz [3].
DŮLEŽITÉ: Nutno poznamenat, že vnitřní komunikace mezi CPU a Monarco HAT MCU využívá komunikaci UART (/dev/ttyAMA0 na Raspberry Pi) s hodnotou baudrate na 115200, 8 bity na byte, bez parity a 1 stop bitem. Tyto hodnoty musíte použít v konfiguraci ovladače protokolu Modbus, pokud ho chcete použít. Více informací najdete na http://www.monarco.io
Obr. 3.3 zobrazuje příklad hlavního souboru projektu s více I/O ovladači.
3.3 1-Wire senzory a rozšiřující moduly
Sběrnice 1-Wire poskytuje přídavné rozhraní pro rozšíření I/O možností Monarco HAT (například pomocí senzorů teploty, relativní vlhkosti, relé modulů atd.). V systému REXYGEN existuje speciální ovladač pro 1-Wire komunikaci, viz [4].
Obr. 3.3 zobrazuje příklad hlavního souboru projektu s více I/O ovladači.
Kapitola 4
Co dělat při problémech
Ze všeho nejdříve je vhodné prozkoumat knihovnu příkladů, zejména sekci 0120_Raspberry_Pi, která se týká použití MonarcoDrv.
V případě, že v diagnostických prostředcích systému REXYGEN jsou neočekávané nebo nesprávné hodnoty vstupů nebo výstupů, je vhodné nejdříve ověřit jejich funkci nezávisle na systému REXYGEN (pomocí nástrojů příkazového řádku, jednoduchých skriptů atd.). Dále je nutné překontrolovat konfiguraci. Nejčastější chyby jsou:
- Chyba v hardware – špatné zapojení
- Chyba vnitřní komunikace – Sběrnice SPI, I2C nebo UART jsou okupovány jinou službou nebo programem.
V případě, že daný vstup či výstup funguje pomocí jiných softwarových nástrojů správně a při shodném zapojení v systému REXYGEN nefunguje, prosíme o zaslání informace o problému emailem na adresu podpora@rexygen.cz. Pro co nejrychlejší vyřešení problému by informace měla obsahovat:
- Identifikační údaje Vaší instalace vyexportované pomocí programu REXYGEN Studio (Target Licensing Export).
- Stručný a výstižný popis problému.
- Co možná nejvíce zjednodušenou konfiguraci řídicího systému REXYGEN, ve které se problém vyskytuje (ve formátu souboru s příponou .mdl nebo .rio).
Literatura
[1] REX Controls s.r.o.. Internetové stránky www.monarco.io, 2020.
[2] REX Controls s.r.o.. Začínáme se systémem REXYGEN a platformou Monarco HAT, 2020. .
[3] REX Controls s.r.o.. Ovladač systému REXYGEN pro komunikaci Modbus – Uživatelská příručka, 2020. .
[4] REX Controls s.r.o.. Ovladač OwsDrv systému REXYGEN pro 1-Wire zařízení – Uživatelská příručka, 2020. .
Referenční číslo dokumentace: 15831
2023 © REX Controls s.r.o., www.rexygen.com