Jste zde

TEST - MODBUS Master terminály pro PC - 4. Modbus Poll

Další terminálový program pro PC pro komunikaci se zařízeními připojenými na průmyslovou sběrnici Modbus je software s názvem Modbus Poll. I když není freewarem ( je placený), lze jej 30 dní používat v testovacím režimu. Výhodou tohoto programu je hlavně možnost současně komunikovat s více zařízeními na společné sběrnici, kde každá Modbus jednotka má vlastní komunikační okno, kde se zobrazují jen její data. Další plus je i záznam parametrů sledovaného Modbus zařízení do Excel souboru .xls.

Program ModbusPoll pro OS Windows patří z pohledu přehlednosti a snadného používání k těm lepším. Alespoň z mého pohledu je vše „tradičně uspořádáno“ tak, že prostě v horní nabídkové liště si dle srozumitelných anglických popisek menu vyberete to, co potřebujete a v následujícím otevřeném okně se případně provede příslušné nastavení. Navíc je poskytován na stránkách programu velmi dobře přehledný a srozumitelný on-line návod s obrázky obrazovek i podrobný mnohastránkový pdf manuál, kde je popsána úplně každá položka.

Instalace Modbus Poll

Instalace se provádí klasicky pod OS Windows kliknutím na instalační EXE soubor. Následně se do nabídnutého nebo Vámi zvoleného adresáře nainstaluje, vytvoří položku v nabídce START a případně i na ploše, pokud to při instalaci zaškrtnete. Tedy takto to probíhá pod OS Windows XP a Windows 7 (Windows 8 bohužel ještě v žádném PC nemám...). Po instalaci program i pod OS Win7 mi pracuje zcela bez problémů. Stačí k PC nebo notebooku připojit jen převodník RS-485 na USB v případě využívání typu sběrnice MODBUS RTU a zapnout program. Já osobně používám k napojení Modbus RTU sériové linky RS-485 na počítač převodník Papouch SB485 s nastavenými ukončovacími odpory k napojení  a pracuje to bez problémů.

Konfigurace a používání Modbus Poll

V programu Modbus Poll se mi hned po startu v základním okně programu otevřelo i další tzv. komunikační okno, s defaultně nastavenými parametry. V něm v jeho druhém řádku svítí červeně „No Connection“, což je logické, když se ještě nenastavily komunikační parametry. To se provede v menu „Connection“ položkou „Connect...“ po které se zobrazí jedno okno kompletního nastavení parametrů „Connection Setup“. Předtím je však nutné v neregistrované (neplacené) verzi odkliknout tlačítkem „Remind me later“ upozorňující okno s požadavkem registrace. Nadefinovat lze parametry jak pro Modbus RTU /ASCII (RS-485), tak i Modbus TCP a Modbus UDP (Ethernet) či dokonce nezvykle i Modbus RTU Over TCP/IP pro tunelování RS-485 verze přes ethernet. V jednom okně jsou přítomna nastavovací políčka pro všechny uvedené varianty, pouze se uvolní pro zadávání jen ty, které dané volbě přísluší. V mém případě Modbus RTU se nastavují klasické hodnoty sériové komunikace, plus navíc pod tlačítkem „Advance“ je možné nastavit možnosti handshaku.

Pokud se po nastavení klikne na tlačítko OK, okamžitě se zahájí pokus o navázání komunikace aktuálně otevřeného komunikačního okna. Protože při prvním spuštění je otevřeno „defaultní nastavení“, obvykle se i po úspěšném navázání připojení na sériovou linku zobrazí nějaké chybové hlášení typu „Illegal function“. To proto, že nejsou nastaveny ještě samotné parametry Modbus protokolu (ID slave zařízení, vysílaná funkce, adresy apod.).

To se provádí v menu „Setup“ v první položce „Read/Write Definition“, která otevře stejně pojmenované okno. V něm je možné nastavit ID slave jednotky, se kterou chceme komunikovat, zvolit příslušnou funkci, která se má jednotce vyslat, definovat počáteční adresu registru ve slave jednotce a pak počet následujících registrů, na které má být zvolená funkce (příkaz) aplikována. Políčko „Scan Rate“ definuje čas periody opakování vysílání do slave jednotky. Program Modbus Poll totiž standardně neustále periodicky vysílá zvolenou funkci se zde zadaným časem, pokud zde v okně nastavení vše potvrdíte tlačítkem OK (čímž se okno zavře) nebo „Apply“ (okno se nezavře a nastavení se hned aplikuje). Pokud nechcete hned vysílat, musí se zaškrtnout políčko „Read/Write Disabled“ nebo použít tlačítko „Read/Write One“ pouze teď pro jedno vyslání a čekání na odpověď. Položky v oblasti „View“ určují samotné zobrazení přijatých dat ze slave jednotek , tedy jak budou v okně zobrazeny registry a v jakém zobrazení budou jejich data prezentována (dekadické znaménkové či neznaménkové, hexadecimální, binární, long/double formát).

Příklady nastavení režimu periodického vysílání funkce zadané slave jednotce a následného příjmu a zobrazení hodnot registrů přehledně v tabulce. Sloupec "Alias" může sloužit k vlastním popiskám jednotlivých registrů, nebo jej lze vypnout a zobrazit přímo celé adresy registrů (např. 40018 apod.)

Po odsouhlasení nastavení se pak v okně průběžně zobrazují data vybraných registrů v řádcích a sloupcích příslušné Modbus slave jednotky (definované jejím ID). Pokud byla zvolena funkce zápisu, například funkce č. 16 Write Multiple Registers, zadávají se data, která se mají do slave jednotky odeslat, přímo do položek registrů v okně, kde se při funkcích čtení dat hodnoty zobrazují.

Je zde však ještě jedna rychlejší a jednodušší možnost jak jednorázově poslat funkci čtení, zápisu či zjištění stavu jednotky prostřednictvím přímého výběru funkce v menu „Functions“. Poté se otevře nové volicí okno příslušné funkce nezávisle na aktuálním nastavení v běžícím okně periodického vysílání a příjmu. Zde je možné libovolné slave jednotce jednorázově zaslat vybraný příkaz s nadefinovanými parametry.

Osobně se mi jeví jako ideální následující koncepce použití: Na opakované zasílání funkce hromadného čtení většího počtu registrů dané slave jednotce, např. funkci č. 3 Read Holding Registers, použít nastavení do základního komunikačního okna a v případě potřeby zápisu hodnoty využít a vyslat jednorázově funkci pomocí výše uvedeného menu "Functions" (např. funkci č. 16 hromadného vícenásobného zápisu dat).

Pomocí zvolení rychlé jednorázově vykonané funkce z nabídky "Functions" lze snadno provést zápis / změnu hodnot v zapisovatelných registrech slave jednotky a přitom mít trvale zapnuto periodické vysílání / příjmu funkce čtení např. naměřených hodnot ze slave jednotky (např. snímače či převodníku).

Mezi zajímavé přidané funkce pak patří možnost pravidelného ukládání hodnot registrů dané slave jednotky aktuálně zobrazované v komunikačním okně do textového souboru či Excel souboru XLS. Do souboru XLS však pouze v případě, že máte v PC nainstalovaný originální software Microsoft EXCEL. Jinak program nahlásí chybu. V obou případech pak lze definovat čas zápisu hodnot do souboru, i definovat po jakém počtu záznamů se má tato funkce ukončit. V případě záznamu do TXT souboru lze také definovat, jak mají být jednotlivé záznamy odděleny (mezerou, čárkou nebo tabulátorem). Dále ještě nechybí možnost zobrazení "surové" komunikace výpisem celých přenášených paketů z PC do slave jednotek i zpět do PC či výpis a počítání chybových přenosových hlášení.

Možnost současného vysílání funkcí a následné zobrazení hodnot pro dvě a více Modbus slave jednotek, kde každá má vlastní okno hodnot (viz obrázek vlevo) a příklad výpisu celé komunikace mezi PC a slave jednotkami na Modbus sběrnici (viz obrázek vpravo).

Okna nastavení pravidelného ukládání údajů registrů periodicky získávaných od slave jednotek buď do textového souboru TXT (viz obrázek vlevo) nebo přímo do EXCEL souboru (viz obrázek vpravo).

Podporované komunikace v Modbus Poll:

  • Modbus RTU
  • Modbus ASCII
  • Modbus TCP/IP
  • Modbus RTU Over TCP/IP
  • Modbus ASCII Over TCP/IP
  • Modbus UDP/IP
  • Modbus RTU Over UDP/IP
  • Modbus ASCII Over UDP/IP

Podporované Modbus funkce v Modbus Poll:

  • 01: Read coil status
  • 02: Read input status
  • 03: Read holding register
  • 04: Read input registers
  • 05: Force single coil
  • 06: Preset single register
  • 15: Force multiple coils
  • 16: Preset multiple registers
  • 17: Report slave ID
  • 22: Mask write register
  • 23: Read/Write registers

Závěr

Software Modbus Poll společnosti Witte Software, konkrétně v mém případě ve verzi 5.6.1, představuje dobrý počítačový master modbus terminál pro OS Windows. Má největší výhodu v možnosti současného periodického načítání a zobrazování hodnot registrů současně pro více slave jednotek na společné Modbus sběrnici, kde každá má svoje zobrazovací komunikační okno. Jinak prezentace hodnot v podobě tabulky / seznamu registrů a jejich příslušných hodnot v řádcích a sloupcích je dobře přehledná. Navíc umožňuje každé adrese přiřadit vlastní „Alias“ jméno/popis pro lepší identifikaci. Nastavení lze uložit do souboru, který lze při dalším zapnutí programu lehce otevřít/načíst a tím hned bez dalšího nastavování „pokračovat“ tam, kde jste předtím skončili.

Odkazy:

Hodnocení článku: