menu
dopisz swój adres do listy:
kontakt CoDeSys.pl:
e-mail: news@codesys.pl
Telefon: 048 331 20 57
Fax: 048 331 25 36

www.codesys.pl
wyszukaj w codesys.pl
biblioteki standardowe - util.lib (manipulatory funkcji)


CHARCURVE

Blok tej funkcji służy do ilustrowania wartości w częściach funkcji linearnej:

IN typu INT jest zasilane wartością do obliczania. BYTE N określa liczbę punktów ustalonych przez funkcję odwzorowania. Ta charakterystyka jest definiowana w ARRAY P[0..10] z P typu POINT, strukturze składającej się z dwóch wartości INT (X i Y). 
Informacja wyjściowa składa się z OUT typu INT, obliczanej wartości oraz BYTE ERR, które wskazuje ewentualne błędy.
Punkty P[0]..P[N-1] w ARRAY muszą być posortowane na podstawie swoich wartości X, w przeciwnym razie ERR uzyskuje wartość 1. Jeśli wpis IN nie znajduje się między P[0].X i P[N-1].X, ERR=2 i OUT otrzymuje odpowiednią wartość graniczną P[0].Y lub P[N-1].Y.
Jeśli N znajduje się poza wartościami dopuszczalnymi 2 i 11, ERR=4.


Przykład w ST:

Następnie należy w nagłówku zdefiniować ARRAY P:

VAR ...
 KENNLINIE:CHARCURVE; (charakterystyka)
 KL:ARRAY[0..10] OF POINT:=(X:=0,Y:=0),(X:=250,Y:=50),(X:=500,Y:=150),(X:=750,Y:=400),7((X:=1000,Y:=1000));
 ZAEHLER:INT;
(licznik)
 ... 
END_VAR

Następnie zadajemy CHARCURVE np. wartość rosnącą:

ZAEHLER:=ZAEHLER+10; (licznik)
KENNLINIE(IN:=ZAEHLER,N:=5,P:=KL); (charakterystyka, licznik)


CHARCURVE


codesys.pl