Kurs Zaawansowany S7 – zaj cia dodatkowe, wtorek, zadanie A
Proponowane rozwi zanie:
1.
Nale y stworzy now funkcj , to jest
FC41
.
2.
Program mo na podzieli na fragmenty, z których ka dy odpowiedzialny jest za
sterowanie jednym z wyj . Mo na sobie zada pytanie – kiedy ma by wysterowane wyj cie
„
segment1
”?
Wtedy, gdy „poziom” (wyra ony w woltach) jest wi kszy od 1.0.
Mo na to zapisa w STL w nast puj cy sposób:
L #poziom
L 1.000000e+000
>R
= #segment1
„Segment2” powinien by wysterowany, gdy „poziom” >= 2.5V, czyli:
L #poziom
L 2.500000e+000
>=R
= #segment2
Analogicznie „segment3”, gdy poziom >= 5.0V oraz „segment4”, gdy poziom >= 7.5V.
W ten sposób został stworzony wska nik słupkowy (bargraf), czyli linijka wietlna składaj ca
si z 4 wyj , która wydłu a si , ro nie wraz ze wzrostem napi cia.
3.
Program powinien realizowa jeszcze jedno zadanie, mianowicie wyj cie „segment1”
powinno
pulsowa
, gdy napi cie wej ciowe jest <= 1.0 V.
Tak logik mogliby my przedstawi w schemacie drabinkowym w nast puj cy sposób:
wersja: 080210
INTEX Centrum Szkoleniowe Systemów Automatyki
strona 3/6
Kurs Zaawansowany S7 – zaj cia dodatkowe, wtorek, zadanie A
Jest to suma dwóch zdarze . Albo poziom jest wi kszy od 1.0, wtedy na „segment1”
przekazywany jest stan wysoki. W przeciwnym wypadku na wyj cie przekazywany jest
generator o podstawie 5Hz.
Taki program jest absolutnie poprawny, mo na go jednak nieco upro ci rezygnuj c
z drugiego komparatora:
dzi ki czemu na wyj ciu pulsowanie jest zapewnione, natomiast ci gły stan wysoki zostanie
wystawiony, gdy b dzie spełniony warunek porównania („poziom” > 1.0).
wersja: 080210
INTEX Centrum Szkoleniowe Systemów Automatyki
strona 4/6
Kurs Zaawansowany S7 – zaj cia dodatkowe, wtorek, zadanie A
W celu wygenerowania sygnału o cz stotliwo ci 5Hz mo na skorzysta z wbudowanego
w CPU generatora. Korzystaj c z zakładki „Cycle/Clock Memory” w parametrach CPU
mo na zdefiniowa numer bajtu w którym generowane b d wzorce cz stotliwo ci. Dla
przykładu przedstawionego poni ej w bicie
M120.1
dost pny jest
wzorzec o cz stotliwo ci
5Hz
.
Wobec czego fragment odnosz cy si do „segmentu1” b dzie miał nast puj c posta
w STL:
L #poziom
L 1.000000e+000
>R
O M 120.1 // Wykorzystanie generatora 5Hz
= #segment1
4.
Oto ostateczna posta całej funkcji FC41:
FC41
// Poziom > 1.0 lub rezerwa (miganie)
L #poziom
L 1.000000e+000
>R
wersja: 080210
INTEX Centrum Szkoleniowe Systemów Automatyki
strona 5/6
Kurs Zaawansowany S7 – zaj cia dodatkowe, wtorek, zadanie A
O M 120.1 // Wykorzystanie generatora 5Hz
= #segment1
// Poziom >= 2.5
L #poziom
L 2.500000e+000
>=R
= #segment2
// Poziom >= 5.0
L #poziom
L 5.000000e+000
>=R
= #segment3
// Poziom >= 7.5
L #poziom
L 7.500000e+000
>=R
= #segment4
5.
Tak przygotowan funkcj powinno si zapisa na dysku i załadowa do sterownika,
a nast pnie wywoła w
OB1
i ten blok równie zapisac na dysku i załadowa do sterownika.
Wcze niej w OB1 nale y jeszcze zapisa wywołanie funkcji „Woltomierza”, czyli funkcji FC9
przygotowanej w trakcie zaj , słu cej do przeskalowania sygnału z karty wej ciowej
analogowej do zakresu napi ciowego 0-10.0 [V].
W OB1 powinny si wi c znale nast puj ce odwołania:
OB1
// Woltomierz
CALL FC 9
adres_AI := PIW290
zakres := 1.000000e+001
wart_analog := MD40 // MD40 - zmienna słu
ca do
// przekazania warto ci z FC9
// do FC41
// Warto
poziomu w zbiorniku paliwa
CALL FC 41
poziom := MD40
segment1 := Q4.3
segment2 := Q4.2
segment3 := Q4.1
segment4 := Q4.0
wersja: 080210
INTEX Centrum Szkoleniowe Systemów Automatyki
strona 6/6