CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w...

14
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

Transcript of CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w...

Page 1: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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

Page 2: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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.

Page 3: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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:

Page 4: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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.

Page 5: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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

Page 6: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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

Page 7: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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

Page 8: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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).

Page 9: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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.

Page 10: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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.

Page 11: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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.

Page 12: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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.

Page 13: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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

Page 14: CoDeSys 3 programowanie w języku FBD...programowanie w języku FBD 3. Puszczamy przycisk myszy w momencie kiedy element Assignment będzie nad połączenia, tj. punkt połączenia

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: