CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w...
Transcript of CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w...
Spis treści
1. Wstęp ...................................................................................................................... 2 1.1. Wymagania programowe ....................................................................................... 2 2. Tworzenie projektu i dodawanie programu w języku FBD ................................... 3 3. Organizacja okien dla języka FBD ........................................................................... 5 4. Składnia języka FBD – Toolbox ............................................................................... 6 5. Łączenie elementów programu. ............................................................................. 8 6. Dodawanie odgałęzienia linii................................................................................... 9 7. Przykład.................................................................................................................. 12
Notatka Aplikacyjna NA03005PL Maj 2016
CoDeSys 3 – programowanie w języku FBD
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 2
CoDeSys 3 – programowanie w
języku FBD
1. Wstęp
Aplikacja CoDeSys 3 jest nowoczesnym środowiskiem służącym do
programowania sterowników firmy Eaton Electric.
Notatka ta ma na celu przedstawienie programowania w języku CFC jednym z 7
języków zgodnych z normą IEC-61131-3. Podstawy programowania przedstawiono w
notatkach NA03001PL oraz NA03002PL.
1.1. Wymagania programowe
Przedstawiana notatka opiera się na oprogramowaniu narzędz iowym
XSoft-CoDeSys-3 V3.5.7 (Build 3152).
Oprogramowanie przetestowane jest dla systemu Windows XP/7/8 (32,64bit),
pracuje również poprawnie w Windows 10, ale nie było to szczegółowo testowane i
użytkownik robi to na własną odpowiedzialność.
Aktualne wersje demonstracyjne oprogramowania Eaton można pobrać z
Download Centre pod adresem:
http://applications.eaton.eu/sdlc
Uwaga. Z poziomu CoDeSys 3 nie ma możliwości zaprogramowania sterowników
EC4P, XC-CPU101, XC-CPU201, XN-PLC, XC-CPU121. Jednostki te można
programować jedynie z poziomu CoDeSys 2.
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 3
CoDeSys 3 – programowanie w
języku FBD
2. Tworzenie projektu i dodawanie programu w języku
FBD
Uruchamiamy CoDeSys 3 i w oknie Start Page wybieramy opcję New Project:
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 4
CoDeSys 3 – programowanie w
języku FBD W okienku New Project wybieramy Standard project – wtedy
W kolejnym oknie Standard Project wybieramy typ sterownika oraz język
programowania programu głównego. Mamy do dyspozycji 7 języków programowania
zgodnych z IEC. W obrębie projektu programy mogą być napisane w różnych
językach. Na potrzeby tej notatki wybieramy XV300 oraz język graficzny FBD.
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 5
CoDeSys 3 – programowanie w
języku FBD
3. Organizacja okien dla języka FBD
Po kliknięciu na program FBD np. PLC_PRG ekran wyświetla się jak poniżej. Jest
podzielony na pięć części:
1 – Struktura projektu;
2 – Okno zmiennych lokalnych;
3 - Okno w którym piszemy program;
4 – Okno przebiegu kompilacji projektu;
5 – Toolbox - elementy programowania dla FBD.
2
1 3
4
5
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 6
CoDeSys 3 – programowanie w
języku FBD
4. Składnia języka FBD – Toolbox
Gdy wybrany jest język FBD w narzędziu toolbox znajdują się następujące
elementy tego języka:
- nowa linia programu
- nowy blok funkcyjny, funkcja lub program
- nowy blok funkcyjny, funkcja lub program z dodatkowym wejściem
aktywującym blok
- przypisanie wartości do zmiennej
- miejsce do którego ma być wykonany skok od przypisanego elementu Jump
- jeżeli na wejściu tego elementu jest stan wysoki to na nim kończy się
wykonywanie danego programu
- nowe wejście do bloku funkcyjnego
- odgałęzienie linii programu
- umożliwia wykonanie kodu ST, który pisze się wewnątrz tego elementu
Operatory logiczne
- iloczyn logiczny AND z dwoma wejściami
- iloczyn logiczny AND z trzema wejściami
- suma logiczna OR z dwoma wejściami
- suma logiczna OR z trzema wejściami
- alternatywa wykluczająca XOR z dwoma wejściami
Operatory matematyczne
- dodawanie dwóch zmiennych
- dodawanie trzech zmiennych
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 7
CoDeSys 3 – programowanie w
języku FBD
- odejmowanie dwóch zmiennych
- mnożenie dwóch zmiennych
- dzielenie dwóch zmiennych – uwaga w przypadku dzielenia przez zero
może nastąpić zatrzymanie sterownika PLC
- sprawdzenie czy zmienne wejściowe są sobie równe wtedy na wyjściu stan
wysoki
- jeśli na wejściu zmienne różne to na wyjściu stan wysoki
- jeśli zmienna na wejściu 1 mniejsza od zmiennej na wejściu 2 wtedy stan
wysoki na wyjściu
- jeśli zmienna na wejściu 1 mniejsza lub równa zmiennej na wejściu 2 wtedy
stan wysoki na wyjściu
- zmienna na wejściu 1 większa od zmiennej na wejściu 2 wtedy stan wysoki
na wyjściu
- jeśli zmienna na wejściu 1 większa lub równa zmiennej na wejściu 2 wtedy
stan wysoki na wyjściu
Pozostałe operatory
- selektor – przepisuje jedną z wartości (IN0 albo IN1) na wyjście w
zależności od stanu wejścia G
- multiplexer – przepisanie K-tego wyrazu ze zbioru IN0, …, INh na wyjście,
gdzie h oznacza indeks ostatniego elementu
- limit – ograniczenie wartości wejściowej do przedziału od MN do MX i
wystawienie jej na wyjście; jeżeli wartość wejściowa jest mniejsza od MN to na
wyjście przekazywana jest wartość MN, natomiast jeżeli wartość wejściowa
jest większa od MX to na wyjście przekazywana jest wartość MX
- move - przyporządkowanie zmiennej do innej zmiennej odpowiedniego typu
- conversion – konwertuje typ zmiennej, np. zmienia typ zmiennej z REAL na
INT
Bloki funkcyjne
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 8
CoDeSys 3 – programowanie w
języku FBD
- R_TRIG – wykrycie zbocza narastającego na wyjściu aktywuje wyjście
- F_TRIG – wykrycie zbocza opadającego na wyjściu aktywuje wyjście
- RS – blok ustaw/kasuj z dominującym wejściem RESET
- SR – blok ustaw/kasuj z dominującym wejściem SET
- TON – timer z opóźnionym załączeniem
- TOF – timer z opóźnionym wyłączeniem
- CTU – licznik zliczający w górę
- CTD – licznik zliczający w dół
5. Łączenie elementów programu.
1. Przeciągamy element Box do okna edytora.
2. Chwytamy drugi element Box, przenosimy go nad obszar roboczy edytora i
podłączamy do dowolnego miejsca, w którym pojawił się szary romb (na rysunku
oznaczono te miejsca elipsami).
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 9
CoDeSys 3 – programowanie w
języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad
połączenia, tj. punkt połączenia zaświeci się na zielono. Elementy zostają
połączone.
6. Dodawanie odgałęzienia linii
Kod programu w języku FBD rozbudowujemy poprzez dodawanie kolejnych linii
programu. Programista ma możliwość rozbudowania pojedynczej linii stosując
rozgałęzienia (branch).
Przedstawimy w tym miejscu jak dodawać rozgałęzienia.
W tym celu do okna programowania przeciągamy jeden element Box.
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 10
CoDeSys 3 – programowanie w
języku FBD
Klikamy prawym przyciskiem myszki na wyjście elementu Box. Wyjście podświetli się
na czerwono. Klikamy prawym przyciskiem myszy na podświetlone wyjście i z menu
wybieramy opcję Insert Branch. Możemy tego również dokonać poprzez
przeciągnięcie elementu branch z Toolbox’a i upuszczeniu go na wyjściu elementu
Box.
W wyniku tej operacji otrzymujemy rozgałęzienie wyjścia z pierwszego elementu
Box.
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 11
CoDeSys 3 – programowanie w
języku FBD
Do wyjść rozgałęzienia możemy podłączyć dowolne elementy dostępne w oknie
Toolbox w tym również kolejne rozgałęzienia w celu utworzenia bardziej
rozbudowanej linii programu.
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 12
CoDeSys 3 – programowanie w
języku FBD
7. Przykład
Przedstawimy tutaj bardzo prosty przykład opóźnionego załączania wyjścia.
W tym celu do okna programowania przeciągamy jeden element Box. Do jego
wyjścia podłączamy jeden element Assignment.
Zmieniamy Box na interesujący nas Timer z opóźnieniem załączenia. W tym celu wpisujemy w miejsce „???” nazwy bloku, tj. TON.
Otrzymujemy Timer, który musimy teraz zadeklarować. W miejsce TON_0
wpisujemy swoją nazwę, np. fbCzasowka, co spowoduje otwarcie okna
automatycznej deklaracji.
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 13
CoDeSys 3 – programowanie w
języku FBD
W tym miejscu możemy ustawić np.: typ, nazwę, adres lub nadać komentarz
zmiennej.
Pozostałe zmienne można deklarować w podobny sposób lub dodać je w
oknie zmiennych lokalnych. W naszym przykładzie zastosowano następujące
zmienne:
IN - xStart typu BOOL, którą zaadresowano jako wejście o adresie 0.0;
PT – tCzasZadany typu TIME, której przypisano stałą wartość równą
5sekund;
Q – xWyjscie typu BOOL, którą zaadresowano jako wyjście o adresie
0.0;
ET – tCzasAktualny typu TIME, która wskazuje aktualną wartość
Timer’a.
Timer fbCzasowka zaczyna odliczać zadany czas PT po podaniu stanu
wysokiego na wejście IN. Jeżeli wejście IN utrzyma stan wysoki przez czas PT, to na
Notatka aplikacyjna NA03005PL Maj 2016
EATON www.eaton.pl 14
CoDeSys 3 – programowanie w
języku FBD
wyjściu Q pojawi się stan wysoki i będzie utrzymywany aż do momentu kiedy wejście
IN będzie utrzymywało stan wysoki.
Po poprawnej kompilacji (przycisk ), program możemy wgrać do sterownika.
Raport z kompilacji możemy odczytać w oknie przebiegu kompilacji: