190 likes | 379 Views
Stavba a programování mikropočítačů. Programovatelné automaty (EL 55) (algoritmizace). Ing. Josef Kovář. Elektrotechnika. Algoritmy.
E N D
Stavba a programování mikropočítačů Programovatelné automaty(EL 55) (algoritmizace) Ing. Josef Kovář Elektrotechnika
Algoritmy Algoritmus si můžeme představit jako posloupnost jednoduchých kroků, kdy v každém kroku víme, jaký bude krok následující (nebo že algoritmus již končí). Po konečném počtu kroků (a tím do určité doby) je získán výsledek.
Algoritmy • vývojové diagramy • strukturogramy • algebraické grafy
Vývojový diagram Diagram se skládá z jednotlivých geometrických obrazců, do kterých zapisujeme činnost, kterou bude program vykonávat Seřazení tří čísel dle velikosti
START Č1>Č2 ano ne Č1 zaměň s Č2 Č1>Č3 ano ne Č1 zaměň s Č3 Č2>Č3 ano ne Č2 zaměň s Č3 KONEC
Příklad V proměnné MEM1 je číslo. Pokud je větší než 8, přičti do proměnné MEM2 číslo 5, pokud je menší pak odečti od proměnné MEM2 číslo 2 a pokud se rovná, pak vlož do proměnné MEM2 nulu. Pro toto zadání navrhněte algoritmus pomocí vývojového diagramu.
Dělení snímačů Podle: • Fyzikálních principů • Podle vstupního signálu (mechanické, tepelné…) • Podle el. výstupního signálu (aktivní – samy generují výstupní signál (generátory) a pasívní např. odporové snímače) • Podle principu snímání na kapacitní, magnetické, odporové, optické, ultrazvukové • Interní a externí
Zdvihací zařízení Pohyb břemena zavěšeného na laně zajišťuje pohonný mechanizmus, sestávající z kladky a motoru. Protože břemeno je velké hmotnosti, je třeba před úplným zastavením zabránit rozkmitání celé soustavy pomalým dojezdem. Stykač KM 1, slouží pro sepnutí motoru pro směr nahoru, KM2 dolů. Stykačem KM3 se zapne pomalý dojezd v obou směrech. Pro hlídání koncových poloh slouží koncové snímače SQ1 pro polohu nahoře, SQ4 pro polohu dole, pro indikaci poloh pro zahájení pomalého dojezdu jsou instalovány snímače SQ2 pro směr nahoru, SQ3 pro směr dolů.
Zdvihací zařízení Celé zdvíhací zařízení se ovládá dvěma tlačítky, která jsou umístěna společně s dvěma kontrolkami na ovládací skříňce. Po stisknutí tlačítka SB1 se břemeno začne zdvíhat (pohybovat nahoru včetně pomalého dojezdu), po dobu zdvihání svítí kontrolka HL1. Po stisku tlačítka SB2 se břemeno začne spouštět (pohybovat směrem dolů včetně pomalého dojezdu), po dobu pohybu svítí kontrolka HL2. Při chybě nebo nebezpečí se celé zařízení uvede do klidu vypnutím napájecího napětí.
Automat Mooreova typu Optické senzory, které přesněji nazýváme fotoelektrické nebo optoelektronické, se stále více používají v průmyslu. Pracují tak, že přeměňují světlo (elektromagnetické vlnění) na elektrický proud. V dnešní době jsou nejvíce využívanými senzory v průmyslu.
Start=1 Start=0 vpravo=0 doprava = 1 doleva = 0 sání = 1 doprava = 0 doleva = 0 sání = 0 doprava = 0 doleva = 1 sání = 0 vpravo=1 vlevo=1 vlevo=0 Algoritmus pro manipulátor 0 1 2 Automat Mooreova typu
Automat Mooreova typu • Přechod ze stavu 0 do stavu 1 nastane při splnění podmínky Start = true. Při tomto přechodu dojde k nastavení tří výstupů. Doprava, doleva a sání podle obr. 2. • Do stavu 2 se přechází při splnění podmínky vpravo = true. Nastaví se výstupy doprava, doleva a sání podle obr. 2. • Do stavu 3 se přechází při splnění podmínky vlevo = true. Nastaví se výstupy doprava, doleva a sání podle obr. 2.
Automat Mooreova typu Základní vlastností stavových konečných automatů je existence zpětné vazby. V automatu Mooreova typu (používají se i jiné typy – např. Mealyho automat) jsou výstupy vyčíslovány jen z kombinace hodnot stavu. Má stacionární charakter – dokud nedojde k přechodu (změně stavu), jeho výstupy se nemění. To je velmi důležité, protože to odpovídá požadavkům na řízení běžných mechanizmů a technologických procesů.
Ukázka programu • CASE RAF OF • 0 : IF (Start and vlevo) THEN • sani := true; • mem := 10 + citac_s; //zachycení sekundového čítače • RAF := 1; • END_IF; • 1 : IF mem = citac_s THEN • doprava := true; • RAF := 2; • END_IF;
SB2=1 and KM1=0 and SQ4=0 and Fl_1=0 SQ4=1 or SB2=0 or KM1 =1 or Fl_1=1 SB1=1 and KM2=0 and SQ1=0 and Fl_1=0 SQ1=1 or SB1=0 or KM2 =1 or Fl_1=1 SQ3=0 SQ2=0 KM2:=1 HL2:=1 KM1:=1 HL1:=1 HL2:=0 KM3:=0 KM2:=0 pomSQ3:=0 KM3:=1 pomSQ3:=1 KM3:=1 HL1:=0 KM3:=0 KM1:=0 SQ3=1 SQ4=1 SQ2=1 SQ1=1 SQ4=0 SQ1=0 Jízda dolů Jízda nahoru JE RESTART ? (Fl_0=0) and (SB2=0) (Fl_0=1) and (SB2=1) ano SQ3 or pomSQ3=0 KM2:=1 HL2:=1 Fl_0:=0 Fl_0:=1 Fl_1:=1 pomSQ3:=1 ne 0 0 0 1 1 1 JE STOP ? ne HL2:=0 KM3:=0 KM2:=0 Fl1_:=0 KM3:=1 pomSQ3:=0 ano pomSQ3=1 SQ4=1 KM1,KM2,KM3:=0 RAF1,RAF2,RAF3:=0 Fl_0:=1, Fl_1:=1 2 2 2 SQ4=0 Počáteční sekvence Restart nebo Stop