Každé zařízení používá stejný Modbus protokol ale jinou "cestu". Je to vidět na první pohled, Modbus TCP má RJ45 Ethernetový konektor, zatímco teploměr jen dvě svorky pro sériovou linku RS485. Otázka zní, jak přečíst data z teploměru v modulu LOGO!. Pokud to vůbec půjde.
Bude to chtít nějaký převodník Modbus TCP na Modbus RTU, přímo to samozřejmě nepůjde. Těchto a podobných převodníků je na trhu celá řada, ovšem mnohdy cena atakuje cenu samotného LOGO!, což pak ztrácí trochu smysl.
Ale tento náš DR302 byl "za hubičku", koupili jsme jej někdy vloni v "alíkovém" obchodu tady za pár stovek.
Jedná se o univerzálnější převodník, proto je bude potřeba nastavit. Máme dvě možnosti, stáhnout k manuálu i nějaký software z čínského webu výrobce tady, nebo vše udělat přes vestavěný webový server v samotném převodníku. Druhá varianta se ukázala jako jednodušší a rychlejší.
Pokud se vše podaří, tak nakonec na LOGO! uvidíme obě hodnoty z teploměru, tedy teplotu a vlhkost.
Kromě manuálu k převodníku stáhneme i Quick Start, abychom věděli základní IP adresu a přihlašovací údaje. Jak je vidět se jménem a heslem si čínský výrobce hlavu nedělá, takže pro praktické použití změnit!
Klikněte na obrázek pro zvětšení
Nejprve je samozřejmě nutné nastavit parametry sítě, tady IP adresu a věci s tím související.
Menu webového serveru převodníku je jednoduché, není nutno nad ničím přemýšlet.
Klikněte na obrázek pro zvětšení
Pokud si je nepřepneme do čínštiny, což jsme zde dali jen pro vaše pobavení. Ale vypadá to dobře, takový rozsypaný čaj.
Nastavení parametrů sériového portu, převodník funguje jako TCP server.
Klikněte na obrázek pro zvětšení
A uvolnění Modbus TCP protokolu.
Klikněte na obrázek pro zvětšení
Za chvilku by nám měl převodník DR302 na straně RS485 komunikovat s teploměrem, což signalizují standardní vysílací a přijímací LED.
Budeme potřebovat něco, čím zjistíme, jestli a kde v kterých registrech máme informace k dispozici. Adresy registrů a tovární nastavení komunikace najdeme v manuálu teploměru, což jsme si již ukazovali několikrát. Klíčová je adresa, rychlost a skladba protokolu.
Pro čtení zatím nepoužijeme LOGO!, neboť pokud nám nebude fungovat RS485 strana, tak bychom to těžce zjišťovali kde je problém, zda v nastavení LOGO!, nebo v převodníku, nebo ve drátech. Proto postupujeme krok za krokem. Použijeme náš oblíbený Ananas, kterým se připojíme na Modbus TCP server (náš převodník) a zkusíme něco přečíst. Jak je vidět na patřičných adresách máme údaj teploty a vlhkosti. Ovšem takto napoprvé nám to zdaleka nefungovalo, museli jsme použít i "biograf".
Klikněte na obrázek pro zvětšení
Protože není diagnostika správného připojení A/B vodičů na Modbus RS485 lince, můžete se snažit jak chcete, ale pokud jsou dráty přehozeny, tak nevíte kde je chyba, nastavení převodníku je od defaultního také dost odlišné. Proto pověsíme na RS485 linku biograf (tímto výrazem zdravím bývalého kolegu z mladých let SJ z Valašské Polanky - OK2BUX, který osciloskopu jinak neřekl) a ihned vidíme, jestli chodí z převodníku na teploměr požadavek a odpověď. Komunikaci máme nastavenu na 1 sekundu a je to hezky vidět, že převodník po 100ms odpovídá, takže vodiče máme v pořádku. Pokud nevidíte dvě sady impulsů, přehodit RS485 vodiče mezi sebou. Jak jednoduché Dr Watsone.
Nakonec ještě zkusíme přečíst Holding registr, kde jsou uloženy informace o komunikačních parametrech, vidíme adresu a rychlost. Pozor v manuálu jsou adresy v hexa, ale Ananas je bere v dekadickém formátu, 257 je 101 hexa.
Koukněte na videoukázku, jak to má vypadat. Two minutes video.
https://www.youtube.com/watch?v=iA7qPSNovu4&feature=youtube
Závěr:
Co dál? V další části si ukážeme připojení do LOGO a hlavně nastavení parametrů komunikace v LOGO, což také nemusí být pro každého, hlavně začínající uživatele, úplně jednoduché.
Jaroslav Blažek
Doplňující odkazy k článku:
Siemens LOGO! vše zde: www.siemens.cz/micro
Download LOGO!Soft Comfort link tady.