kombinační algoritmus

tutoriál

Tutoriál porogramování PLC systémů

Jednoduchý kombinační algoritmus

Úkol této kapitoly:

  • navázat komunikaci s PLC
  • přeložit program, provést download do PLC  a spustit režim RUN
  • nastavit potřebné aliasy
  • vytvořit program v jazyku LD, FBD a CFC
  • programy odladit
Zadání úlohy
Naprogramujte funkci Majorita ze tří (většinová funkce). Jako vstupní proměnné použijte vypínače vstupního modulu EDUtec, jako výstupní proměnnou LED výstupního modulu EDUtec.
Pomocí pravdivostní tabulky a minimalizace snadno určíme logický výraz: 
LED1=(A and B) or  (A and C) or (B and C), který využijeme k sestavení programu. Zatím zapomeňme, že s využitím funkce XOR by náš program byl jednodušší 

Navázání komunikace a vytvoření Aliasů

Spustíme vývojové prostředí Mosaic a využijeme projekt vytvořený v minulé lekci. Je uložený v záložce Předchozí projekty

Navážeme komunikaci s PLC pomocí Manažeru projektu – viz obrázek

Na obrázku vidíme možnosti připojení. Preferuji připojení pomocí Ethernetu do počítačové sítě, IP adresu vašeho PLC můžete zobrazit na displeji. Doporučuji konzultaci se správcem vaší školní sítě aby nedošlo ke kolizím. 

Po navázání komunikace přeložíme prázdný program (např. F9, nebo příkazem Přeložit z menu) a stiskem zelené ikony RUN na nástrojové liště program nahrajeme do PLC a spustíme. 

Teprve teď si můžeme vytvořit Aliasy (pojmenujeme vstupy a výstupy) 

V I/O konfigurátoru v dolním oknu vidíme data vstupně/výstupní periférie.

Sepneme spínač A, a vstup, na kterém se objevila 1, pojmenujeme. Stejně postupujeme u dalších spínačů.

Při mapování výstupů postupujeme opačně. Z počítače zapíšeme do zvoleného výstupu a pokud se odpovídající LED rozsvítí, výstup pojmenujeme. 

Program v Ladder Diagramu (LD)

Program vytváříme kreslením reléového schématu. Je to jednoduchý, názorný a často používaný jazyk.

Základní logika spočívá v řazení kontaktů. Sériovému řazení odpovídá logický součin AND, paralelnímu logický součet OR.

Nejprve musíme přejít do režimu EDIT. Klikneme na ikonu debug (zelený brouček se změní na symbol tužky)

 

V nástrojové liště zvolíme spínací kontakt. Ve schématu se objeví označení míst, kam ho můžeme umístit (červený obdélník – do série, modrý paralelně). Klikneme na zvolené místo a do kolonky jméno zapíšeme proměnnou – v našem případě A.

Stejným způsobem vložíme kontakt B. V následujícím kroku potřebujeme přidat paralelní větev. Tažením myši označíme sériovou kombinaci kontaktů A,B. Teprve pak zvolíme spínací kontakt z nástrojové lišty a umístíme ho na modrý obdélník ve schématu. Stejným postupem vytvoříme třetí větev

Na závěr přidáme příkaz pro zápis do výstupu (cívka) a schéma je kompletní.

Teď už zbývá jen překlad a spuštění programu – viz začátek této kapitoly. 

Mosaic se automaticky přepne do režimu debug, ve schématu vidíme přisvětlení vodivých stop.

Pokud pracujete v simulaci, můžete stav kontaktů měnit kliknutím myši

Program v jazyce blokových schémat (FBD)

Nový program založíme pomocí lokálního menu vyvolaného pravým tlačítkem myši.

Zvolíme programovací jazyk FBD a jméno programu (např. prgHlavniFBD. Standardním způsobem definujeme instanci (např. HlavniFBD). Dejte si pozor na kolizi názvů programů, instancí, proměnných, projektů a projektových skupin.

Programování v jazyce FBD je podobné jako v LD, jen základní logické funkce se netvoří řazením kontaktů ale bloky. Všechny příkazy nalezneme opět na nástrojové liště pod zelenou ikonou vložit box.

Příkaz opět vložíme jednoduše kliknutím myši. V editoru boxu můžeme měnit počet vstupů hradla, případně ho povolit/zakázat zaškrtnutím políčka Vstup EN. Na vstupech hradla zadáme proměnné A, B a k jeho výstupu připojíme součtové hradlo se 3 vstupy. Na každý z nich připojíme jedno součinové hradlo.

Na závěr dvojklikem myši za hradlem OR připojíme výstup SVETLO a schéma je kompletní.

Úprava instancí programu

Než do PLC nahrajeme náš program, musíme si uvědomit, podle jakých pravidel jsou programy v rámci úlohy (v našem případě základní cyklická úloha freewheeling) jsou vykonávány.

Cyklická úloha Freewheeling načítá vstupy, vykonává postupně programy s definovanými instancemi, obsluhuje výstupy a provádí další úkoly v rámci tzv. režie.

V našem případě se nejprve provede program prgMain a potom program prgHlavniFBD. Vzhledem k tomu, že oba programy obsluhují stejný výstup SVETLO, „vyhraje“ zápis druhého programu.

Náš program v LD mazat nemusíme, stačí mu v záložce Konfigurace odstranit instanci.

Program v jazyce CFC

Jazyk CFC je firemní jazyk společnosti Teco – není jazykem normy IEC61131, je podobný FBD a poskytuje zajímavé benefity.

Program založíme, zvolíme jazyk CFC, pojmenujeme ho a deklarujeme instanci. Výsledek vidíme na obrázku vpravo.

Program sestavíme intuitivně propojováním potřebných bloků.

Připravíme si:

  • 3 vstupy A, B, C
  • 1 výstup SVETLO
  • 3 součinová hradla
  • 1 součtové hradlo 

Zadáme proměnné A, B, C, SVETLO a bloky propojíme myší. Schéma můžeme doplnit komentářem.

Upravíme instance, přeložíme, kód vyšleme do PLC, spustíme a odladíme.

Archivace projektové skupiny

Na úplný závěr si vytvoříme archívní soubor celé projektové skupiny, který můžeme kdykoli, kdekoli obnovit – viz obrázek

Pokračování
V příští kapitole tutoriálu  vytvoříme jednoduchý program pro řízení modelu hydraulické posuvové jednotky systému EDU-mod

Dotazy k této kapitole pište do formuláře v úvodu tutoriálu.