Podstawy programowania plc.doc

(363 KB) Pobierz
Komparatory ( Comparators ) - Funkcje porównujące między sobą wartości liczbowe

Komparatory ( Comparators ) - Funkcje porównujące między sobą wartości liczbowe . Programując sterownik PLC , a właściwie realizując na nim określony algorytm pracy, funkcja porównania jest jedną z podstawowych . W artykule tym przybliżymy działanie funkcji :

·         LT - Less Then - Mniejsze Niż

·         LE - Less or Equel - Mniejsze lub Równe

·         GT - Great Then - Większe Niż

·         GE - Great or Equel - Większe lub Równe

·         EQ - Equel - Równe

 

LT - Less Then - Mniejsze Niż
Dla wartości IN1 mniejszej od wartości IN2 wyjście Q funkcji zostanie ustawione na "1"

 

LE - Less or Equel - Mniejsze lub Równe
Dla wartości IN1 mniejszej lub równej wartości IN2 wyjście Q funkcji zostanie ustawione na "1"

 

GT - Great Then - Większe Niż
Dla wartości IN1 większej od wartości IN2 wyjście Q funkcji zostanie ustawione na "1"

GE - Great or Equel - Większe lub Równe
Dla wartości IN1 większej lub równej wartości IN2 wyjście Q funkcji zostanie ustawione na "1"

 

EQ - Equel - Równe
Dla wartości IN1 równej wartości IN2 wyjście Q funkcji zostanie ustawione na "1"

 

UWAGA : Przy używaniu funkcji EQ ( Równe ) należy pamiętać o cyklicznym odczytywaniu wartości z wejść przez sterownik . Może się zdarzyć , że wartość mierzona "przeskoczy" wartość zadaną w ciągu jednego cyklu programu  tzn. po pierwszym odczycie wartość mierzona będzie równa np. 120 a po drugim 125 i wtedy sterownik przy wartości zadanej równej 123 jej nie "zobaczy" , spowoduje to nie przewidywalne działanie programu, a ściśle pominięcie warunku w programie  .

Przykład 1:Sterowanie napełnianiem zbiornika z analogowym (ciągłym) pomiarem poziomu .

 


Pomiar poziomu w zbiorniku realizowany jest poprzez wejście analogowe IA0 , poziom załączenia ustawiony na 50 a poziom wyłączenia na 100.

Działanie programu wygląda następująco :

Przy poziomie poniżej 50 zadziała komparator CP1 ustawiając swoje wyjście na "1" co spowoduje ustawienie wyjścia sterownika Q0.1 na "1" na sztywno (S) . Wyjście Q0.1 pozostanie załączone do momentu kiedy nie zadziała komparator CP2. Po przekroczeniu nastawionego poziomu 100 komparator CP2 ustawi swoje wyjście na "1" co spowoduje RESET ( wyłączenie ) wyjścia Q0.1 

Analizując powyższy program warto zwrócić uwagę na to , że wiodącym (priorytetowym) jest WYŁĄCZENIE ( Reset) wyjścia Q0.1 , czyli zawsze po przekroczeniu wartości zadanej w CP2 (CP2.Q=1) zostanie wyłączone wyjście sterownika Q0.1 .

Uwaga praktyczna 1 : Należy pamiętać w tak prostym programie o odpowiednim ustawieniu wartości zadanych ( CP1.IN2 i CP2.IN2) czyli wartość zadanej dla CP1 - załączenie musi być mniejsza niż wartość zadana CP2 - wyłączenie , w innym przypadku wyjście sterownika Q0.1 zostanie załączone dla spełnionego warunku CP1.Q=1 i takim pozostanie , czyli po załączeniu nigdy nie wyłączy się wyjście sterownika.

Uwaga praktyczna 2 : Z kolei przy poprawnie ustawionych wartościach zadanych CP1.IN2 > CP2.IN2 ale zbyt małej różnicy ( histerezie ) pomiędzy nimi w stosunku do możliwych nie wymuszonych zmian wartości mierzonej np. falowanie cieczy w zbiorniku spowodujemy zbyt częste ząłączanie/wyłączanie wyjścia Q0.1. W praktyce "migotanie " stycznika

Wartością mierzoną w przykładzie 1 jest poziom cieczy w zbiorniku , jednak zmiana z układu napełniania zbiornika z cieczą na układ utrzymania ciśnienia itp. nie powoduje zmian w programie a tylko w podłączonych urządzeniach .

Typy danych w sterownikach PLC

W tym rozdziale opiszemy typy i zakresy danych występujących w programach . Z rozdziałem tym warto dokładnie się zapoznać , gdyż informacje tu zawarte są niezbędne przy pisaniu programów na sterowniki PLC na każdym etapie zaawansowania. 

 

Typy danych

W naszym przypadku danymi są wszystkie informacje przychodzące do sterownika „I” ( wejścia cyfrowe, analogowe itd. ), wychodzące ze sterownika „Q” (wyjścia cyfrowe .... itd. ) oraz wewnętrzne sterownika „M” ( zmienne czyli markery ) .

Podstawową jednostką „miary” jest bit może on przyjmować tylko dwie wartości – 0 lub 1 kolejne jednostki składają się z odpowiedniej ilości bitów. jak w tabeli poniżej

 

oznaczenie

typ danej

ilość bitów

zakres wartości

opis

BOOL

Boolean

1

0-1

Zmienne tego typu mogą przyjmować tylko dwie wartości czyli "0" lub "1" .

BYTE

ciąg 8 bitów

8

nie posiada wartości numerycznej

 

WORD

ciąg 16 bitów

16

nie posiada wartości numerycznej

 

DWORD

ciąg 32 bitów

32

nie posiada wartości numerycznej

 

LWORD

ciąg 64 bitów

64

nie posiada wartości numerycznej

 

Typy zmiennych o wartości wyrażonej w systemie dziesiętnym , są to liczby całkowite ( integer ), których wartość wyliczana jest ze stanu odpowiednich bitów (konwersja z zapisu dwójkowego na zapis dziesiętny)

SINT

short integer

8

-128 : 127

"Krótka" liczba całkowita .

INT

integer

16

-32 768 : 32 767

Liczba całkowita .

DINT

double integer

32

-231 : (231-1)

"Podwójna" liczba całkowita .

LINT

long integer

64

-263 : (263-1)

"Długa" liczba całkowita .

USINT

unsigned Short integer

8

0 : 255

"Krótka" liczba całkowita nieznakowana ( przyjmuje tylko wartości dodatnie).

UINT

unsigned integer

16

0 : 65535

Liczba całkowita nieznakowana ( przyjmuje tylko wartości dodatnie).

UDINT

unsigned double integer

32

0 : (232-1)

" Podwójna "liczba całkowita nieznakowana ( przyjmuje tylko wartości dodatnie).

ULINT

unsigned long integer

64

0 : (264-1)

" długa "liczba całkowita nieznakowana ( przyjmuje tylko wartości dodatnie).

 

STRING

 

-

-

Dowolne znaki czyli litery i cyfry , jednak cyfry będą traktowane jako znak a nie określona wartość .

TIME

czas

-

 

typ danej występujący w timerach format zapisu T#XdXhXmXsXms gdzie X to określona wartość i kolejno d- dni, h-godziny,m-minuty, s-sekundy, ms- milisekundy

Pamięć sterownika

Pamięć w sterowniku PLC podzielona jest na dwa główne obszary :

– Obszar pamięci programu , tutaj przechowywany jest kod wprowadzonego programu

– Obszar pamięci danych w której , przechowywane są wszystkie dane wykorzystywane przez sterownik , a dokładniej przez wprowadzony program

Sposób oznaczania i adresowania komórek pamięci przedstawia diagram poniżej :

 

 

Poniżej tabela przedstawiająca strukturę pamięci w której przechowywane są dane.

 

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

M0.0

M0.1

M0.2

M0.3

M0.4

...

Zgłoś jeśli naruszono regulamin