Coraz szersze stosowanie sterowników programowalnych (PLC) doprowadziło do konieczności opracowania standardowych metod ich programowania. Powstało wiele programów, które w sposób mniej lub bardziej skomplikowany pozwalają tworzyć aplikacje. Program ISaGRAF zgodny jest w swej strukturze i semantyce z wytycznymi normy IEC-61131-3.
Oprogramowanie sterowników PLC przy uwzględnieniu coraz to większych i bardziej skomplikowanych algorytmów sterowania stwarza zapotrzebowanie na coraz to lepsze i wygodniejsze narzędzia. Wychodząc na przeciw tym potrzebom firma ICPDAS we współpracy z CJ International przedstawia oprogramowanie, które dzięki swoim możliwościom zaliczane jest do najlepszych w swojej klasie. Pakiet oprogramowania narzędziowego pracujący pod systemem operacyjnym Windows 95, 98, NT, 2000, XP, umożliwia napisanie aplikacji, przetestowanie (symulację, debugowanie na sterowniku docelowym), tworzenie dokumentacji w sposób automatyczny, tworzenie i dołączenie własnych bloków funkcyjnych napisanych w "C". Ostatnia wersja ISaGRAF dzięki wprowadzeniu generatora zbioru GSD umożliwia łatwą integrację z systemami sieciowymi oraz dzięki dostępnemu oprogramowaniu OPC Server z popularnymi programami wizualizacyjnymi. W chwili obecnej dostępne są także implementacje karty Ethernet i protokołów UDP oraz TCP.
ISaGRAF jest oprogramowaniem typu PLC i zawiera w swej strukturze sześć języków programowania. Istnieje możliwość dołączenia aplikacji napisanych w "C". Aplikacja docelowa może być uruchomiona na dowolnym sterowniku PLC obsługującym jądro ISaGRAF. Poniżej przedstawiono skrótowo dostępne języki pakietu ISaGRAF który zawiera:
Graficzne edytory języków
Funkctional Blok Diagram (FBD)
Sequential Function Chart (SFC),
Ladder Diagram (LD),
Flow chart (FC)
edytory tekstowe
Instruction List (IL),
Stuctured text (ST),
Język „C”,
dodatkowe edytory zmiennych stałych edytory I/O przyporządkowania wejść Help do kart obiektowych, Help programu ISaGRAF menadżer projektu i dokumentacji generator zbioru GSD dla Profibusa DP konfigurator Profibusa DP Symulator, debuger
W ISaGRAF odwoływanie się do zmiennych jest realizowane po nazwie, a nie po adresie.
Języki dostępne w ISaGRAF Język Sequential Function Chart Język SFC (Sekwencyjny Schemat Funkcyjny) jest podstawowym językiem zawartym w IEC 61131-3. Język ten opisuje operacje w procesie sekwencyjnym. Wykorzystuje się w nim prostą reprezentację graficzną dla poszczególnych kroków procesu i warunki tzw. tranzycje, które zmieniają aktywne kroki.
Rys. 1 Przykład programu w SFC kowergencją równoległą.
SFC dzieli proces cykliczny na dobrze zdefiniowane następujące po sobie kroki oddzielone między sobą warunkami logicznymi. W języku tym pisze się zwykle strukturę programu. Ciało programu czyli akcje i warunki logiczne pisze się z reguły w innych językach. Język ten umożliwia równoległe przejście pomiędzy dwoma krokami lub tranzycjami, czyli równoległe przetwarzanie fragmentów programu. Możliwość jednoczesnego wykorzystania edytora graficznego SFC i edytorów tekstowych języków tekstowych umożliwia stworzenie struktury programu oraz odpowiadających im akcji i warunków logicznych. Podstawowe graficzne elementy języka SFC to:
inicjalizacja,
krok,
warunek logiczny (transition),
skok do kroku,
macro krok,
macro krok początkowy,
macro krok końcowy.
Występują także elementy graficzne umożliwiające tworzenie równoległych struktur przetwarzania przy wykorzystaniu warunków rozejścia OR lub AND. Wszystkie elementy graficzne tego języka łączone są za pomocą linii od góry do dołu. Tworzenie programu polega w tym przypadku na zestawieniu elementów graficznych wybranych z linijki aktywnej edytora. Są one w automatyczny sposób łączone i nazywane. Ciało programu, warunki logiczne oraz komentarze wpisuje się wybierając odpowiedni poziom szczegółowości.
Rys.2 Przykład programu napisanego w FC.
Język Flow Chart Język FC strukturą jest zbliżony do SFC. Występują w nim dwa podstawowe bloki: blok akcji (action) i blok testu (decyzyjny). Język ten można interpretować jako algorytm blokowy działania układu, który może być użyty do opisywania operacji sekwencyjnych z dodatkowymi możliwościami, których nie posiada SFC. Struktura programu składa się z bloków akcji i testów połączonych zorientowanymi liniami (strzałkami) które przedstawiają przebieg kierunek realizacji programu. Ciało programu można pisać w IL, ST, LD.
Podstawowe graficzne elementy języka FC to:
Begining of FC – początek FC
Ending of FC - koniec FC
Flow links FC – kierunek przejścia FC
FC Action - akcja FC
FC test - warunek decyzyjny FC
FC sub-program – wywołanie podprogramu FC
FC I/O specyfic action – akcja dodatkowa FC
FC connectors – połączenie FC
FC comments – komentarz
Rys.2. Implementacja regulatora PID w języku FBD.
Język Function Block Diagram FBD (Schemat Bloków Funkcyjnych) jest językiem graficznym, który pozwala budować rozbudowane aplikacje wykorzystując gotowe bloki funkcyjne lub procedury znajdujące się w bibliotece ISaGRAF’a. Pisanie aplikacji w tym języku polega na wyborze odpowiedniego bloku funkcyjnego i umieszczeniu na ekranie edytora graficznego. Funkcje te w programie są widziane jako prostokąty realizujące zależności pomiędzy zmiennymi wejściowymi, a zmiennymi wyjściowymi. Wejścia i wyjścia funkcji łączone między sobą tworzą strukturę programu. Dostępnych jest około dziewiędziesięciu bloków funkcyjnych przy czym podzielone są one w następujące grupy:
bloki funkcyjne umożliwiające tworzenie struktury programu
funkcje Boolowskie
funkcje arytmetyczne
funkcje logiczne
funkcje porównania
funkcje manipulacji na bitach
funkcje zegara
funkcje licznika
funkcje przetwarzania sygnałów ciągłych
funkcje generowania sygnału
funkcje matematyczne
funkcje trygonometryczne
funkcje konwersji
funkcje operacji na stringach
funkcje operacji na tablicach
Język Ladder Diagram i Quick LD
Język LD (Drabinkowy Schemat Stykowy) jest graficzną reprezentacją wyrażeń boolowskich, złożonych z zestyków jako wielkości wejściowe i cewek jako wielkości wyjściowe. LD (QLD) pozwala budować zależności logiczne wykorzystując symbole graficzne. Symbole graficzne LD są takie same jak elementy elektrycznego układu przekaźnikowych więc wygląd projektu jest taki sam jak wygląd schematu elektrycznego. Aplikacje buduje się wykorzystując edytor graficzny w polu pomiędzy dwoma listwami zasilającymi. .
Rys.3.Przykład implementacji samo podtrzymania stycznika w LD ( języku drabinkowym).
Podstawowe elementy graficzne LD to:
zestyk zwierny
zestyk rozwierny
zestyk wykrywający zbocze opadające
zestyk wykrywający zbocze narastające
cewka
cewka zanegowana
ustaw działanie cewki
reset cewki
rozejście połączenia
elementy dodatkowe, Dostępny jest także język QuickLD. Jest on pewną modyfikacją LD. Jest on prostszy w semantyce, a kod wynikowy wykonuje się szybciej.
Język Structured Text ST (Tekst Strukturyzowany) jest językiem wysokiego poziomu przeznaczonym do opisywania procesów. Język ten jest przeznaczony do implementacji skomplikowanych zależności które są trudne lub niemożliwe do przedstawienia przy użyciu języków graficznych. ST jest podstawowym językiem do opisywania akcji w poszczególnych krokach i warunków logicznych w SFC lub FC
Rys.4. Przykład aplikacji napisanej w ST oraz podstawowe komendy języka.
Semantyka tego języka jest podobna do języków Basic czy Pascal. Występują tu elementy typu IF, THEN, REPEAT, UNTIL, CASE, itp. Dostępne też są wszystkie funkcje występujące w FB.
Język Instruction List IL (Lista Instrukcji) jest to język który jest odpowiednikiem języka niskiego poziomu o semantyce bardzo zbliżonej do assemblera.
Tabelka poniżej prezentuje parametry techniczne urządzenia. W przypadku, gdyby prezentowane w niej informacje były niekompletne lub budziły wątpliwości prosimy o kontakt mailem bądź telefonicznie z naszym działem technicznym. Dodatkowo służymy pomocą w doborze właściwego urządzenia tak, aby optymalnie spełniało wymagania Państwa projektu.