Řízení modelu křižovatky

tutoriál

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

Základní algoritmus řízení modelu křižovatky

Úkol této kapitoly:

  • založit projekt s danou HW konfigurací
  • zjistit mapování vstupů/výstupů
  • nastavit potřebné aliasy
  • vytvořit program pro řízení křižovatky v ST 
  • program odladit
 

Zadání úlohy
Sestavte program pro řízení modelu křižovatku v  režimu dle obrázku:
Algoritmus rozsvěcení světel semaforu běží od spuštění programu ve smyčce. 

Křižovatka je tvořena hlavní a vedlejší silnicí, přechod pro chodce je jen přes hlavní silnici.

Křižovatka je řízena 8 výstupy PLC:

ZH … zelená hlavní

OH … oranžová hlavní 

CH … červená hlavní

ZV … zelená vedlejší

OV … oranžová vedlejší

CV … červená vedlejší

ZP … zelená přechod

CP…červená přechod

Založení nového projektu

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

Z menu Soubor vybereme Nový, projekt pojmenujeme a vytvoříme stejnou konfiguraci jako v minulé kapitole.

Založíme program, nazveme ho např. prgMain, zvolíme jazyk ST a deklarujeme instanci programu.

Projekt přeložíme a spustíme režim RUN. Dalším krokem je mapování vstupů/výstupů a vytvoření Alias.

Vytvoření Alias

Tentokrát budeme mapovat jen výstupy. Vybereme libovolný digitální výstup a ve sloupci DATA zapíšeme 1 a potvrdíme. Přitom sledujeme funkci přípravku. Jakmile se rozsvítí LED některého aktoru, zapíšeme Alias.

Výsledek může vypadat jako na obrázku (záleží na vaší konfiguraci a připojení modelu

Příprava časovače

Spínání světel podle časového diagramu potřebujeme vytvořit časovou osu. Můžeme ji realizovat více způsoby. Jako nejjednodušší možnost mi připadá vytvoření časovače, který cyklicky poběží od nuly do 45s. 

Připravíme si tedy časovač TON a deklarujeme mu instanci.

Instanci časovače deklarujeme jako lokální proměnnou – viz obrázky

Volání časovače

Do výkonné části programu napíšeme jméno instance, v závorce jsou pak vstupní, případně výstupní parametry. Zkušenější programátoři napíší přímo text příkazu, my využijeme vizard, který nám Mosaic poskytuje. 

Napíšeme část jména časovače (např. cas) a klávesovou zkratkou CTRL+mezerník vybereme kompletní volání.

Doplníme 2 vstupní parametry.

PT je předvolba, za kterou dosadíme 45s dle diagramu. Časový literál musí obsahovat datový typ TIME (stačí t) a znak #.

IN je parametr s jehož náběžnou hranou se časovač spustí, po přechodu do úrovně „0“ se nuluje. 

Pokud nastavíme IN := not cas.Q, tak časovač poběží až do předvolby, pak se nastaví do „1“ výstupní parametr cas.Q a jeho negace časovač vynuluje.  

 

 

Spínání výstupů

Algoritmus bude poměrně jednoduchý. Zajímá nás výstupní parametr časovače ET, který představuje jeho aktuální časový průběh. 

Příkazem IF budeme aktuální čas porovnávat s časovými okamžiky, kdy má dle zadání dojít k nějaké změně výstupu. Podle výsledků porovnání budeme spínat jednotlivé výstupy.

Hlavní podmínka

První ELSIF

Kompletní program

Pokračování
V příští kapitole tutoriálu zůstaneme u modelu křižovatky systému EDU-mod a do našeho programu přidáme možnost volby režimu funkce křižovatky

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