Instalační příručka pro routery DIGI Modbus DC DAL

Pokyny k instalaci Modbus DC pro routery Digi DAL
Protokol změn

Pokyny k instalaci a automatickému spuštění
Následující instrukce je třeba provést v rámci web rozhraní routerů Digi DAL
a) Instalace
Nahrajte soubor mb_dc.zip a požadovaný soubor config.cfg, slaves.cfg a veškerý potřebný soubor CSV s mapou registrů. filedo kořenového adresáře routerů Digi DAL pomocí FTP. Nahrávání novější verze bude vyžadovat nahrání nového souboru mb_dc.zip.
b) Nastavení automatického spouštění aplikace prostřednictvím web rozhraní
- a. Přihlaste se do místního Web UI
- b. Přejděte do sekce Systém -> Naplánované úlohy -> Vlastní skripty
- c. Chcete-li přidat volitelné argumenty, klikněte na tlačítko + Přidat skript.
- d. Do seznamu vlastních skriptů zadejte `python mb_dc.zip [volitelné argumenty]' (bez uvozovek)

- e. Povolte vlastní skript.
- f. Přidejte popisek, který bude použit k identifikaci vlastního skriptu.
- g. Vyberte režim, který bude použit.
- h. Vyberte běhové prostředí, které bude představovat konkrétní čas, kdy se úloha spustí, ve formátu HH:MM.
- i. Můžete povolit nebo zakázat protokolování výstupu skriptu pomocí stdout streamu do systémového protokolu.
- j. Můžete povolit nebo zakázat protokolování skriptů stdeer streamu do systémového protokolu.
- k. Vyberte maximální množství paměti, které chcete alokovat pro vlastní skript a jeho spuštěné procesy.
- l. Spouštění skriptu v pískovci můžete povolit nebo zakázat, abyste zabránili jeho ovlivnění systému.
- m. Zvolte, zda chcete povolit nebo zakázat spuštění skriptu jednou v zadaném čase, viz (h).
- n. Klikněte na tlačítko „Použít“ v pravém horním rohu pro použití změn.
c) Přidání parametrů
volitelné argumenty:
-h, –help zobrazit tuto zprávu s nápovědou a ukončit
–debug, -d Zobrazit další výstup
–file_log, -l Zapne informační a ladicí zprávy pro file těžba dřeva
–print_log, -p Výpis informací a ladicích zpráv do terminálu
Konfigurace souboru Slaves.cfg File
Otroci.cfg file obsahuje informace o koncových Modbus slave zařízeních, která budou komunikována s aplikací. Následující informace popisují parametry konfigurace Slaves.cfg file:

a) [otrok1]/[otrok2] – Název konfigurační sekce konkrétního, individuálního podřízeného zařízení. Použije se pro název datového proudu a je vyžadován při zápisu do registrů.
b) režim - Způsob komunikace. Možnosti jsou „tcp“ nebo „rtu“.
c) ID_slave - ID podřízeného zařízení. Toto se použije při vytváření dotazu pro čtení nebo zápis do zařízení.
d) adresa - IP adresa podřízené jednotky. Toto je vyžadováno pouze v režimu „tcp“.
e) přístav - V režimu „rtu“ se jedná o název portu sériového adaptéru TransPortu, který je připojen k podřízenému zařízení. V režimu „tcp“ se jedná o TCP port podřízeného zařízení (pokud není znám, použijte 502).
f) mapa_registrů - File cesta mapy registrů file
g) little_endian - 0 = vyšší bity jsou v dolním registru; 1 = nižší bity jsou v dolním registru.
Pokud není v souboru slaves.cfg definován parametr little_endian file, aplikace použije výchozí big endian (little_endian = 0).
Konfigurace souboru config.cfg file
Soubor Config.cfg file obsahuje informace o tom, jak často bude aplikace dotazovat data a nahrávat je do Digi Remote Manageru. Tato část popisuje parametry souboru Config.cfg. file:

a) [modbus_dc] Název konfigurační sekce obecných možností aplikace.
b) frekvence_pollů Doba čekání mezi čteními registrů v sekundách. Hodnoty registrů Modbus.
se nahrávají při spuštění aplikace mb_dc. Nahrávání probíhá každých několik sekund s frekvencí dotazování, pokud se změnila hodnota čtení registru. Dotazy jsou naplánovány od půlnoci. NapříkladampPokud je nastaveno na 300, pak se dotazy budou provádět v časech 12:05, 12:10, 12:15 atd. Výchozí hodnota je 900. Pokud je poll_frequency = 0, použijí se níže popsané hodnoty poll_times.
c) upload_on_change Pravda/Nepravda. Pokud je hodnota pravdivá, aplikace bude průběžně prohledávat definované podřízené jednotky/registry a nahrávat položky, které se změní. Výchozí hodnota je Nepravda.
d) počet_počtů_pollů Celočíselný seznam časů, kdy má senzor provést měření. Časy uvedené v tomto nastavení odpovídají UTC. Nastavení poll_times se použije pouze v případě, že nastavení poll_frequency je rovno 0. Jinak se nastavení poll_times ignoruje. poll_times je volitelná položka v souboru config.cfg. Pokud poll_times není v souboru config.cfg, časy dotazů budou každou hodinu 1 23.
e) force_upload Seznam registrů oddělených čárkami, které by měly být vždy nahrány během hlasování, bez ohledu na to, zda se změnily či nikoli. Výchozí hodnota je prázdná (zakázáno).
f) interval_skenování Počet sekund, které se mají čekat mezi jednotlivými prohledáváními změn. Používá se pouze tehdy, když je upload_on_change nastaven na hodnotu true. Výchozí hodnota je 5.
g) Procento prahové hodnoty skenování Minimální procentotagzměna, kterou musí hodnota splňovat, aby byla považována za novou při použití funkce upload_on_change. Nastavením na 0 se tato funkce deaktivuje. Výchozí hodnota je 0 (deaktivováno).
Registrace sloupců mapy v souboru CSV
Soubor CSV file musí obsahovat následující záhlaví v pořadí zleva doprava. Povinné záhlaví: sloupce register_type, name, data_type a starting_address jsou povinné. Pokud je data_type „Char“, je povinná délka. Další požadavky při použití funkcí reset_delay a/nebo data_factor naleznete v následujících popisech. Příkladample CSV file je součástí aplikace.
a) typ_registru Typ registru, který uchovává popsaná data. Možnosti jsou `coil', `discrete_input', `holding_register' a `input_register'. Hodnota register_type je povinná.
b) jméno Název datového proudu, který bude přijímat data registru. Tento název bude také použit při zápisu hodnot. Název hodnota je povinný.
c) datový_typ Typ dat obsažených v registru. Možnosti (# registrů):
a. Int (2)
b. Plovoucí (2)
c. Char (definované uživatelem)
d. long_long (4)
např. unsigned_long (2)
f. unsigned_short (1)
g. unsigned_long_long (4)
krátká h. (1)
i. dvojitý (4)
j. dlouhý (2)
k. unsigned_int (2)
d) počáteční_adresa Adresa registru Modbus, který obsahuje datovou položku. Počáteční adresa je povinná.
e) délka Počet registrů, které se mají dotazovat pro získání celé datové položky. Toto pole je povinné, pokud data_type = char, jinak aplikace toto pole přepíše počtem registrů definovaných v popisu data_type výše. Hodnota (prázdná hodnota je přijatelná) je pro tento sloupec povinná, pokud je vyžadováno zpoždění resetu nebo data_factor. Viz následující popisy reset_delay a data_factor.
f) zpoždění_resetu Po zápisu do registru je reset_delay minimální počet sekund, které uplynou, než se registr nastaví na hodnotu `0`. Registry s reset_delay budou nastaveny na `0` při spuštění aplikace. Tento sloupec je povinný (výchozí = 0 = bez resetu), pokud je vyžadován data_factor.
g) datový_faktor Zápis do registru: hodnota bude před provedením zápisu do registru vydělena parametrem data_factor. Čtení do registru: hodnota bude před nahráním hodnoty do datového proudu vzdálené správy vynásobena parametrem data_factor. Tento sloupec není povinný. Výchozí hodnota je „1“.
Čtení registrů Modbus
a. Hodnoty registrů Modbus definované v konfiguraci fileSoubory budou nahrány do služby Device Cloud DataStreams. Název streamu bude založen na ID zařízení Digi DAL Device, názvu podřízeného zařízení a názvu dat. Rutinní dotazování bude probíhat na základě nastavení konfigurace poll_frequency.
b. Průzkum lze iniciovat pomocí zpětného volání „scan_now“. Např.ampten:

Device_id by mělo být požadované zařízení a „name_of_device“ by mělo být nahrazeno názvem zařízení nakonfigurovaného v souboru slaves.csv.

Zápis registrů Modbus
c. Registry nebo cívky Modbusu, které jsou definovány v konfiguraci fileDo datových objektů lze zapisovat pomocí požadavku Device Cloud SCI. Např.ampten:

Text elementu „device_request“ bude odeslán do aplikace. Jsou vyžadovány tři argumenty oddělené čárkami.
- První argument: Název podřízeného modulu, definovaný v souboru slaves.cfg
- Druhý argument: Název dat, definovaný v mapě registrů přiřazené názvu podřízené jednotky
- Třetí argument: Hodnota k zápisu. Musí být celé číslo.
Více informací o odeslání požadavku SCI naleznete na následující stránce:
https://www.digi.com/wiki/developer/index.php/SCI#Sending_the_request_and_getting_the_response
Odpověď bude indikovat úspěch nebo neúspěch zápisu v atributu „status“ elementu „response“. Např.ampten:

Tato odpověď indikuje, že byla přijata odpověď od Modbus slave zařízení. Hodnota přijatá od Modbus slave zařízení je obsažena v textu prvku „response“. Po zápisu registru/cívky ověřte, zda tato hodnota odpovídá očekávané hodnotě. Očekávaná „odpověď“ od slave zařízení zahrnuje odpověď = „hodnota registru“ při zápisu do Holding Register o délce 1 (zkratka pro např.ample) a odpověď = „2“ (počet slov nebo počet registrů) při zápisu do uchovávacího registru o délce 2 (celé číslo a číslo s desetinnou čárkou např.ample)

Pokud je atribut „status“ elementu „response“ nastaven na „failed“, zobrazí se v textu elementu „response“ jedna z následujících chybových zpráv.
- Nesprávné argumenty - Argumenty uvedené v požadavku SCI nebyly v následujícím formátu:
- Název_podřízené_jednotky, název_dat, 5
- Zápis selhal - Zápis do podřízené jednotky Modbus se nepodařilo úspěšně zpracovat.
- Otrok nenalezen - Soubor slaves.cfg file neobsahuje informace o požadovaném názvu podřízeného zařízení.
- Nepodařilo se zapsat před vypršením časového limitu, zdroj je zaneprázdněn. - Aplikace prováděla jiné operace I/O před zpracováním úlohy v rámci 30sekundového časového limitu.
Dokumenty / zdroje
![]() |
Routery DIGI Modbus DC DAL [pdf] Instalační průvodce Routery Modbus DC DAL, routery DC DAL, routery DAL, routery |
