1 Seznámení s prostředím MOSAIC
1
Seznámení s prostředím MOSAIC
Zadání 1. Seznamte se s PLC Foxtrot CP-1015, příslušenstvím použitým v úloze a s programovacím prostředím MOSAIC tak, abyste byli schopni vytvořit vlastní projekt (domácí příprava). 2. Zapojte zapojení dle zadání a zapněte PLC. 3. Vytvořte nový projekt a vyberte programování v jazyce ST (Structured Text). 4. V manažeru projektu se připojte k úlohovému PLC. 5. Pomocí sledování změny tabulky vstupů ověřte funkčnost stisku tlačítka a pojmenujte nalezené vstupy a výstupy odpovídající LED výstupům. 6. Napište jednoduchý program rozsvěcující jednu barvu LED na pásku při stisku horního tlačítka. Při stisku dolního tlačítka se rozsvítí jiná barva. LED na pásku budou svítit jen po dobu stisku. 7. Program modifikujte, zapojení bude realizovat funkci klasického vypínače (při stisku horního tlačítka se rozsvítí LED na pásku a zároveň se rozsvítí zelená LED na tlačítku, při stisku druhé poloviny zhasne LED pásek i tlačítko). 8. Vytvořte nový projekt a realizujte úkoly 6, 7 pomocí jazyku LD (Ladder Diagram). 9. Napište program simulující funkci schodišťového vypínače. Využijte časovače - po stisku kteréhokoliv tlačítka sepne LED na danou dobu. 10. V případě časové rezervy se pokuste naprogramovat vypnutí LED při stisku dolní části tlačítka (přerušení cyklu časovače).
Úloha zahrnuje použití: • PLC Foxtrot CP-1015 • 2x jednotku WSB2-20 • LED pásek • oddělovací modul BPS2-01M
1 Seznámení s prostředím MOSAIC
Obr. 1.1: Schéma zapojení
Postup provádění úlohy: 1. Zapojte úlohu podle přiloženého schématu, obr. 1.1. 2. Na PC spusťte program MOSAIC. 3. Vyberte Nový, projekt pojmenujte. V následujícím okně zvolte programování pomocí modulární PLC Foxtrot.
Obr. 1.2: Vytvoření nového projektu
2
1 Seznámení s prostředím MOSAIC Dále pak vytvořte instanci hlavního programu a zvolte kódování v jazyce ST, tedy strukturovaný text. Viz obr.1.3.
Obr. 1.3: Výběr programovacího jazyka
4. Zapněte PLC pomocí tlačítka, označeného 24 V, v pravé části stolu. Druhé tlačítko, označené 12 V, slouží k napájení LED pásku (je tedy nutno jej také zapnout). Zapnutí je indikováno zeleně svítící LED uprostřed tlačítka. 5. Připojení k PLC se provádí pomocí Manažera projektu (z menu Projekt → Manažer projektu).
Obr. 1.4: Nastavení připojení Z nabídky vyberte položku Adresa PLC: 0. V části Výběr sítě zadejte IP adresu: 192.168.134.176 (adresa úlohového PLC). Tuto adresu lze nalézt i v
3
1 Seznámení s prostředím MOSAIC PLC - stisk tlačítka MODE (přepne z uživatelského do systémového režimu) a následně dvakrát stisk tlačítka ↓. Kliknutím na tlačítko Připojit se program spojí s PLC.
Obr. 1.5: Nastavení konfigurace PLC
Obr. 1.6: Okno detekce jednotek CIB Dále v Manažeru projektu rozklikněte položku HW → konfigurace HW. Po
4
1 Seznámení s prostředím MOSAIC kliknutí na žlutý obrázek složky na řádku CIB, obr.1.5, se dostanete do nastavení sběrnice CIB, viz obr. 1.6. Zvolte Načíst konfiguraci z CPU, načtou se automaticky detekované jednotky (v tomto případě dvě tlačítka WSB2-20). V případě nezobrazení jednotky zkontrolujte správnost zapojení. Po načtení jednotky sběrnici CIB povolte (zelená fajfka), obr. 1.5. Ve stejném okně také zvolte správný typ modulu CPU CP 1015. 6. Přeložte program (zatím prázdný) pomocí Program → Přeložit (také klávesa F9). 7. Funkčnost stisku tlačítka lze ověřit v tabulce vstupů/ výstupů
.
Obr. 1.7: Tabulka vstupů/ výstupů
Stisk tlačítka vyvolá změnu obsahu buňky ve sloupci Hodnota (změna tlačítka, proto je třeba být v záložce týkající se CIB - označena MI2-01M). Digitální výstupy s připojeným LED páskem jsou v záložce IR-1056. Ve sloupci Alias proměnnou pojmenujte (usnadňuje orientaci při programování). Pojmenování proměnných proveďte také u výstupů odpovídajících LED na pásku (určení lze provést pomocí přepsání obsahu buňky ve sloupci Hodnota při běhu programu - LED se rozsvítí při hodnotě 1).
5
1 Seznámení s prostředím MOSAIC 8. V textovém okně programu (většinou označeno PrgMain) napište program splňující zadání. Příklad deklarace proměnných a vytvořeného programu je uveden sekci Ukázka programu v jazyce ST, na konci dokumentu. 9. Vytvořený program přeložte jako v bodě 6 , opravte případné chyby a odešlete do PLC (Shift + F9). PLC uveďte do stavu Run (Ctrl + F9) a otestujte funkčnost programu. 10. Aby bylo možno programovat v jazyce LD, přidejte Programovou organizační jednotku dle obr. 1.8. Při výběru jazyka zvolte LD. Příklad programu na obr. 1.12. Při programování zvolte rozsvícení jiné LED než v předchozích případech (neboť do PLC jsou nahrány oba programy (jak ST, tak LD). Funkčnost otestujte.
Obr. 1.8: Přidání okna pro programování v LD
11. Přepněte se do okna jazyka ST a naprogramujte úkoly s časovačem. Lze použít např. blok TP. Pro získání detailnějších informací k bloku TP (časovač) použijte nápovědu (vyvolána zkratkou F1). Příklad programu s voláním funkčního bloku TP: PROGRAM Timer VAR start
: BOOL;
6
1 Seznámení s prostředím MOSAIC timerTP output END_VAR
: TP; : BOOL;
timerTP( IN := start, PT :=T#5s, Q => output ); END_PROGRAM
Tento program při přivedení log. 1 na start sepne výstup na 5 sekund. 12. Vytvořený program přeložte jako v bodě 6 , opravte případné chyby a odešlete do PLC (Shift + F9). PLC uveďte do stavu Run (Ctrl + F9) a otestujte funkčnost programu.
7
1 Seznámení s prostředím MOSAIC
Stručný popis zařízení Programovatelný automat CP-1015 Je základem celého systému. Dokáže komunikovat s jiným PLC či nadřízeným PC. Systémy FOXTROT podporují základní přenosy pomocí sítí Ethernet nebo průmyslové sítě EPSNET. Při použití dalších zařízení lze použít i jiné protokoly a sběrnice (MODBUS, PROFIBUS, CAN apod.) Modul Foxtrot se skládá z několika částí. První část tvoří centrální jednotka s hlavním procesorem systému, dvěma sériovými kanály, rozhraním Ethernet a systémovou sběrnicí TCL2 pro komunikaci s periferními moduly. Druhou část tvoří procesor (CIB master) zajišťující komunikaci na sběrnici CIB s moduly CFox nebo Inels (na sběrnici se hlásí pod jménem MI2-01M). Třetí část je periferní a tvoří ji deska IR-1056 (pod tímto názvem se hlásí na sběrnici). Čtvrtá část obsahuje procesor zajišťující komunikaci na sběrnici CIB. Napájení systému Foxtrot je zajištěno přivedením napětí 24 V, které se připojuje na svorky A3 a A4, označené 24 V DC. Pozor na připojení napětí na jiné svorky než napájecí. Mohlo by dojít ke zničení části systému. CP-1015 (obr. 1.9) obsahuje 6 volitelně binárních 24 V/analogových vstupů, 6 reléových výstupů 250 V a 2 analogové výstupy 0-10 V.
Obr. 1.9: Fotografie CP-1015
Sběrnice CIB Sběrnice CIB je dvouvodičová instalační sběrnice. Tímto vedením je sběrnice (moduly) napájena a taktéž přes ni probíhá komunikace. Sběrnice je vždy tvořena jedním řídícím masterem a až 32 podřízenými periferními moduly. Maximální vzdálenost mastera od CIB modulu je 500 m. Přenosová rychlost je 19,2 kb/s. CIB master realizuje komunikaci s CIB periferními jednotkami a získaná data předává po systémové sběrnici TCL2 do nadřízené centrální jednotky. CPU Tecomat Foxtrot umožňuje
8
1 Seznámení s prostředím MOSAIC
Obr. 1.10
Obr. 1.11: Příklad zapojení a náhled WSB2-20
obsloužit až 9 CIB linek. Jednu CIB linku pomocí interního mastera MI2-01M a až 8 externích CIB linek pomocí externích masterů. Oddělovač sběrnice BPS2-01M Jak bylo výše zmíněno, jednotlivé moduly jsou sběrnicí CIB také napájeny. Pro správný provoz je však nutné napájecí zdroj od CIB sběrnice impedančně oddělit. K tomu slouží modul BPS2-01M (obr. 1.10). Ten slouží pro oddělení pouze jedné linky. Pro oddělení více linek existuje modul BPS2-02M. Ovladač WSB2-20 Nástěnné ovladače (vypínače),obr. 1.11, jsou pravděpodobně nejčastěji používaným prvkem v domovní instalaci. Místo ovladače WSB2-20 lze použít typ WSB2-40. Oba typy se liší pouze počtem tlačítek. První typ má 2 tlačítka (nahoru, dolů), druhý typ 4 tlačítka. V modulu je umístěna také indikační LED červené a zelené barvy. Funkce tlačítka i rozsvěcení LED lze libovolně programovat. Jednotka též obsahuje integrovaný snímač teploty o rozsahu 0 ÷ +55 ◦ C.
9
1 Seznámení s prostředím MOSAIC
Základy jazyka strukturovaného textu (ST) Tento jazyk má kořeny v jazycích ADA, Pascal a C. Je objektově orientován a obsahuje všechny podstatné prvky moderního programovacího jazyka, včetně větvení (IF-THEN-ELSE a CASE OF) a iterační smyčky (FOR, WHILE a REPEAT). Jazyk podporuje celou řadu datových typů. Mezi ty nejčastěji používané patří: Klíčové slovo
Anglicky
Datový typ
Bitů
BOOL SINT INT
Boolean Short integer Integer
Boolovské číslo Krátké celé číslo Celé číslo
1 8 16
REAL
Real (single precision)
32
TIME DATE STRING BYTE
Duration Date (only) String Byte (bit string of 8 bits)
Číslo v pohyblivé řádové čárce Trvání času Datum Řetězec Sekvence 8 bitů
Rozsah hodnot 0,1 - 128 až 127 - 32 768 až + 32 767 ± 2.9E-39 až ± 3.4E+38
24d 20:31:23.647 Od 1.1.1970 00:00:00 Max. 255 znaků 8 Není deklarován rozsah
Tab. 1.1: Elementární datové typy
Příklad deklarace proměnné: VAR_GLOBAL stisk : BOOL := 1; END_VAR
(jméno proměnné : datový typ := inicializační proměnná)
10
1 Seznámení s prostředím MOSAIC
Operátor
Operace
() ** NOT * / MOD + <, >, <=, >= = <> &, AND XOR OR
Závorky Umocňování Znaménko Doplněk Násobení Dělení Modulo Sčítání Odčítání Porovnávání Rovnost Nerovnost Boolovské AND Boolovské exkluzivní OR Boolovské OR
Tab. 1.2: Operátory jazyka ST
11
1 Seznámení s prostředím MOSAIC
Příkaz
Popis
:=
Přiřazení
IF
Příkaz výběru
CASE
Příkaz výběru
FOR
Iterační příkaz smyčka FOR
WHILE
REPEAT
EXIT RETURN
Iterační příkaz smyčka WHILE Iterační příkaz smyčka REPEAT Ukončení smyčky Návrat
Příklad
Poznámka
A := 22;
Přiřazení hodnoty vypočtené na pravé straně do identifikátoru na levé straně
IF A > 0 THEN B := 100; ELSE B := 0; END IF; CASE kod OF 1: A := 11; 2 : A := 22; ELSE A := 99; END CASE;
Výběr alternativy podmíněný výrazem BOOL Výběr bloku příkazů podmíněný hodnotou výrazu ”kod”
FOR i := 0 TO 10 BY 2 DO j := j + i; END FOR;
Vícenásobná smyčka bloku příkazů s počáteční a koncovou podmínkou a hodnotou inkrementu
WHILE i > 0 DO n := n * 2; END WHILE;
Vícenásobná smyčka bloku příkazů s podmínkou ukončení smyčky na začátku
REPEAT k := k + i; UNTIL i < 20; END REPEAT;
Vícenásobná smyčka bloku příkazů s podmínkou ukončení smyčky na konci
EXIT; RETURN;
Předčasné ukončení iteračního příkazu Opuštění právě vykonávané POU a návrat do volající POU
Tab. 1.3: Seznam příkazů jazyka strukturovaného textu
12
1 Seznámení s prostředím MOSAIC
Příklady programů v jazycích ST a LD Jako příklad programu je uveden RS klopný obvod, využitelný v bodě 7 zadání. Ukázka programu v jazyce ST PROGRAM prgMain VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR // tlac_up : BOOL; // tlac_down : BOOL; // LED_zel : BOOL; END_VAR VAR_TEMP END_VAR LED_zel := tlac_up or LED_zel; LED_zel := not (tlac_down or not LED_zel); END_PROGRAM Pokud pracujeme s reálným hw, není deklarace proměnných přímo v kódu nutná. Proměnné byly deklarovány přímo v tabulce vstupů/výstupů. Deklarace proměnných (zakomentované řádky kódu) je nutná, pokud pracujeme v režimu tzv. Simulovaného PLC. Tentýž program s využitím příkazu IF: PROGRAM prgMain VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR END_VAR VAR_TEMP END_VAR if tlac_up or LED_zel then LED_zel := true; end_if; if tlac_down or not LED_zel then LED_zel := false;
13
1 Seznámení s prostředím MOSAIC end_if; END_PROGRAM Ukázka programu v jazyce LD
Obr. 1.12: Příklad programu v LD
Proměnné přiřazované k bloku lze nalézt v sekci Globální, viz obr. 1.13.
Obr. 1.13: Výběr proměnné v jazyce LD
14