Anonymní profil -lk- – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil -lk- – Programujte.comAnonymní profil -lk- – Programujte.com

 

Příspěvky odeslané z IP adresy 193.179.65.–

-lk-
Číslicová technika › Tecomat - Mosaic
17. 10. 2017   #218138

Tak odpovídám si sám - k mému velkému údivu si Mosaic správně nenačetl model PLC, takže ačkoliv jsem žádné dodatečné moduly nenastavoval, už ten základní měl problém. Poté, co jsem nastavil správnou verzi PLC, mi již vše šlape. Dokonce jsem si nastavil i ty další moduly a celé je to báječné.

Měl bych dva dotazy - zkoušel jsem trochu pátrat, ale moc se mi to nepovedlo.

První se týká časovačů - na řadu automatizovaných činností budu potřebovat časovače. A to dvojího typu - spuštění v konkrétní čas (např. "v 8:15") a potom spuštění za nějaký interval ("za 10 minut"). Teď to mám naimplementováno velice tupě tak, že přečtu aktuální čas a zkoumám, zda je menší než ten naplánovaný a pokud ano, spustím.

Druhý dotaz se týká proměnných. Mám několik stejných ovladačů na žaluzie. U každého mě zajímá stav tlačítka nahoru a stav tlačítka dolů a stejně tak u každého ovládám motor nahoru a motor dolů. Snažím se tam mít nějakou chytrou logiku ve smyslu krátký stisk - automatický výjezd nahoru/dolů, dlouhý stisk - motor jede jen po dobu držení, dvojstisk - automatické spuštění do polovny atp. Čili každý ovladač má dva boolovské vstupy a dva boolovské výstupy.

Rád bych měl ve strukture tOvladac proměnnou hardware, do které by se přiřadil odpovídající "ovládací modul". Ovladače žaluzií jsou všechny stejné, tzn. u každého je .DI1 tlačítko nahoru a .DI2 tlačítko dolů apod., takže pak by stačilo inicializovat pole struktur tOvladac tak, že by se nastavil ovladac[1].hardware = RoletovyOvladacObyvak, ovladac[2].hardware = RoletovyOvladacLoznice apod. Bohužel jsem nepřišel na to, jak přesně toto udělat. 

Číslicová technika › Tecomat - Mosaic
16. 10. 2017   #218129

Díky za odpověď. Já jsem tam k tomu našel, že je to nějakej inicializační problém (V konfiguraci hw je nastavena obsluha jiného modulu, než který je v reálné sestavě na této pozici osazen. Uveďte konfiguraci do souladu se skutečností buď ručně nebo načtením údajů z PLC.).

Bral bych to v tom prvním případě, kdy jsem se snažil už rovnou spínat nějaké výstupy, ale v tom druhém, kdy jsem vzal jen prázdný projekt a ten přeložil, mě to docela zarazilo, protože jsem se žádný jiný HW než PLC ovládat nepokoušel. A typ PLC jsem nastavoval, ostatně mám pocit, že se načetl sám v tom manažeru vstupůa výstupů.

Já jsem právě - asi naivně - čekal nějaký nejprimitivnější Hello, world, který půjde bez úprav spustit a do kterého si budu přidávat úpravy dle toho, jak se s tím budu seznamovat.

Číslicová technika › Tecomat - Mosaic
16. 10. 2017   #218126

Zdravím vespolek,

pořídíl jsem si domů PLC od Tecomatu a říkal si, že jako zkušený vývojář si s tím budu hrát a naprogramuju si nějaké automatizace. To, že nemám žádné zkušenosti s PLC, jsem si říkal, že se poddá  naučím se to aspoň na té úrovni, co budu potřebovat.

Včera jsem se k tomu dostal, ale přiznám se, že jsem vykysnul hned v úvodu. Dokumentaci Mosaic_ProgStart jsem si četl. Založil jsem si nový projekt, našlo mi to dokonce moje PLC i komponenty k němu připojené přes CIB, takže jsem pěkně přes jejich adresy natištěné na nich identifikoval, který je který (šlo o spínače zásuvek).

No a teď jsem doufal, že můj první program udělá to, že některé tyto zásuvky sepne a hotovo.

Automatický doplňovač kódu mi nabídl ty pojmenované zásuvky, které jsem si připravil v "Nastavení vstupů a výstupů", což mě navnadilo, že postupuju správně. Program spočívající v ponechání předvygenerované kostry  a přidání řádku typu:

ZASUVKA1.ACTIVE := 1;

či jak přesně to bylo se povedlo přeložit poměrně bez problémů, odeslat do PLC taky, leč po restartu PLC hlásí kód 4302 či jaký to byl a šlus. Zkusil jsem jít osvědčenou metodou - nový prázdný projekt, minimum změn oproti kostře, pouze navolení vlastního PLC (komponentny na CIBu jsem nedával), žádné další úpravy v kódu, přeložit, šup do PLC - a to samé.

Evidentně mi něco uteklo - může mi někdo zběhlejší trošku nakopnout správným směrem? Pro začátek mi bude stačit, když budu umět načíst stav sepnutí u řekněme VYPINAC1 a dle toho zapnout či vypnout ZASUVKA1.

Doufal jsem, že někde bude nějaký jednoduchý příklad typu Hello, World!, ale bohužel nic.

Díky moc všem za rady totálnímu začátečníkovi s PLC.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý