przewodnik inst1, Programowanie, Step7, STEP 7 MicroWin


ZESPÓŁ SZKÓŁ ELEKTRONICZNYCH -TECHNIKUM ELEKTRONICZNE

w Zielonej Górze

Veo - Pracownia układów mikroprocesorowych i mikrokomputerów.

Vsk - Pracownia systemów mikroprocesorowych.

Przewodnik do ćwiczeń

Nr ćwiczenia - S7_1

Temat ćwiczenia:

STEP 7/MicroWin

(Język programowania sterowników programowalnych S7-200)

Realizacja funkcji binarnych.

1.Podstawowe dane techniczne sterownika programowalnego Simatic S7-212

Pamięć RAM 1 kB

Pamięć EEPROM 1 kB

Podtrzymywanie danych 128 bajtów przechowywane w EEPROM

wszystkie dane (RAM) podtrzymywane przez wolno rozładowujący się kondensator

Czas podtrzymania danych 50 godzin

Wejścia / wyjścia cyfrowe wbudowane 8 / 6

rodzaje wyjść DC (prąd wy 0,5A , tranzystor)

wyjścia przekaźnikowe (prąd wy 2A, przekaźnik)

AC (prąd wy 1A, triak)

Znaczniki 128

Liczniki 64 (zakres liczenia do 32767)

Człony czasowe 64

Zakres czasu 2 człony czasowe od 1ms do 30s

8 członów czasowych od 10ms do 5min.

54 człony czasowe od 100ms do 54min.

Szybkie liczniki 1 do 2kHz (liczenie w górę lub w dół)

Komunikacja wbudowany interfejs RS485 do podłączenia programatora, komputera PC lub innego urządzenia z portem szeregowym

2.Programowanie

Do programowania sterowników Simatic S7-200 wykorzystuje się język STEP-7MicroWin. Umożliwia on pisanie programów w postaci:

Za pomocą schematu drabinkowego nie można zapisać wszystkich programów. Pełne możliwości daje lista instrukcji.

Podstawowym elementem programu napisanego w postaci STL jest instrukcja. Pojedyncza instrukcja realizuje pewne elementarne operacje na wskazanych argumentach. Ciąg instrukcji realizujących bardziej złożone operacje tworzy segment (network). Zestaw segmentów realizujących złożone funkcje tworzy blok. Do zarządzania programem użytkownika służy tzw. blok organizacyjny OB1.

Program powinien mieć budowę strukturalną, tzn. powinien dzielić się na fragmenty (podprocedury) , które stanowią zamkniętą całość i są związane z określoną funkcją. Poszczególne fragmenty mogą być wykonywane kolejno lub mogą być wywoływane w dowolnych miejscach programu głównego.

Program główny, programy obsługi przerwań i wyróżnione podprocedury umieszczany jest w bloku OB1. Dane zapisywane są w blokach danych DB.

Realizacja programu przebiega następująco:

Format instrukcji

W instrukcjach języka STEP 7MicroWin używa się następujące typy danych:

bit, bajt, słowo, podwójne słowo.

Bit

Zmienna mogąca przyjmować wartość logiczną 0 i 1

Bajt

B

Zmienna zawierająca 8 kolejnych bitów. Zakres wartości od 0 do FF H.

Słowo

W

Dwa kolejne bajty (16 bitów). Zakres wartości od -32768 do +32767.

Podwójne słowo

D

Cztery kolejne bajty (32 bity).

Każda instrukcja składa się z operatora i argumentu.

Instrukcja

Operator

Argument

Symbol

Parametr

Operator jest skrótową nazwą operacji, która ma zostać wykonana (np. iloczyn logiczny, suma logiczna i t.d).

Argument zawiera dane potrzebne do wykonania operacji i określa stałe lub zmienne poddane operacji. Składa się z symbolu i parametru. Symbol określa typ zmiennej (np. wejście). Parametr podaje adres zmiennej.

Adres może dotyczyć bitu, bajtu, słowa lub podwójnego słowa (w zależności od typu danej).

Uwaga: Słowo składa się z dwóch kolejnych bajtów, np. słowo o adresie 10 (W 10) zawiera bajt 10 i 11.

Uwaga: Podwójne słowo składa się z czterech kolejnych bajtów. Np. podwójne słowo o adresie 10 (D 10) zawiera bajty 10, 11, 12, 13.

MSB

LSB

31

24

23

16

15

8

7

0

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

bajt 10

bajt 11

bajt 12

bajt 13

0x08 graphic
0x08 graphic
0x08 graphic

0x08 graphic
0x08 graphic

0x08 graphic
0x08 graphic

0x08 graphic
0x08 graphic

0x08 graphic

0x08 graphic

0x08 graphic

0x08 graphic

W języku STEP 7MicroWin argumentami mogą być następujące typy zmiennych:

Wejście dwustanowe

(Input)

I

Na początku każdego cyklu pracy system operacyjny odczytuje stan wszystkich wejść dwustanowych i zapisuje ich wartości w specjalnym obszarze pamięci (tzw. obrazie wejść). Zmienna ta reprezentuje fizyczne wejście dwustanowe.

Zmienne tego typu można adresować jako:

bit wejściowy I (np. I0.2)

Bajt wejściowy IB (np. IB0)

Słowo wejściowe IW (np. IW0)

Podwójne słowo wejściowe ID (np. ID0)

Wyjście dwustanowe

(Output)

Q

W czasie wykonywania programu wyznaczane są wartości wielkości wyjściowych i zapisywane w specjalnym obszarze pamięci (tzw. obrazie wyjść). Pod koniec każdego cyklu pracy wartości z obrazy wyjść są przekazywane na wyjścia.

Zmienne tego typu można adresować jako:

bit wyjściowy Q (np. Q0.2)

Bajt wyjściowy QB (np. QB0)

Słowo wyjściowe QW (np. QW0)

Podwójne słowo wyjściowe QD (np. QD0)

Znaczniki - wewnętrzna zmienna dwustanowa (w pamięci danych)

(Memory)

M

Zmienna wewnętrzna wykorzystywana do przechowywania binarnych wyników pośrednich

Zmienne tego typu można adresować jako:

bit znaczników M. (np. M0.2)

Bajt znaczników MB (np. MB0)

Słowo znaczników MW (np. MW0)

Podwójne słowo znaczników MD (np. MD0)

Dana

(Variable memory)

V

Reprezentuje wewnętrzną pamięć danych. Jest wykorzystywana do pamiętania cyfrowych wyników pośrednich

Zmienne tego typu można adresować jako:

bit danych V (np. V20.0)

Bajt danych VB (np. VB20)

Słowo danych VW(np. VW20)

Podwójne słowo danych VD (np. VD20)

Zmienna dotycząca czasomierza

(Timer)

T

Do realizacji funkcji czasowych

Zmienną adresuje się jako

słowo (np. T33)

bit (np. T33)

Zmienna dotycząca

licznika

(Counter)

C

Do realizacji funkcji liczenia

Zmienną adresuje się jako

słowo (np. C5)

bit (np. C5)

Zmienna dotycząca akumulatora

(Accumulator)

AC

Do przechowywania wyników pośrednich

Zmienna adresuje się jako:

bajt (np. AC2)

słowo (np. AC2)

podwójne słowo (np. AC2)

Znaczniki specjalne

(Special Memory)

SM

Do realizacji m.in. funkcji kontrolnych

Zmienna adresuje się jako:

bit (np. SM0.0)

bajt (np. SMB20)

słowo (np. SMW34)

podwójne słowo (np. SMD36)

Stała

(Constant)

K

Do wprowadzania wartości stałych

Adresuje się jako:

bajt

słowo

podwójne słowo

Wejścia analogowe

(Analog Input)

AI

Dostępne przy wykorzystaniu modułu rozszerzającego

Zmienną adresuje się jako

słowo (np. AIW0)

Wyjścia analogowe

(Analog Output)

AQ

Dostępne przy wykorzystaniu modułu rozszerzającego

Zmienną adresuje się jako

słowo (np. AQW0)

Szybki licznik

(High_Speed Counter)

HC

Do zliczania impulsów wejściowych o częstotliwości do 2kHz

Zmienna adresuje się jako podwójne słowo ( HC0)

Zakresy dopuszczalnych adresów dla poszczególnych zmiennych:

Wbudowane wejścia dwustanowe I0.0 - I0.7

Wbudowane wyjścia dwustanowe Q0.0 - Q0.5

Znaczniki M0.0 - M15.7 (16 bajtów: MB0 - MB15))

Pamięć danych VB0 - VB1023 (1 kB)

Człony czasowe T0 - T63

Liczniki C0 - C63

Stałe liczba max. 32 bitowa

Akumulatory AC0 - AC3

Licznik specjalny HC0

3.Lista instrukcji

Lista instrukcji sterownika S7-200 obejmuje instrukcje: binarne, arytmetyczne, przesyłania, sterujące, instrukcje szybkie i specjalne.

Podstawowe instrukcje binarne:

Operator

Argument

Opis

Przykład

LD

bit n

Ładuj na stos stan bitu n

LD I0.0

LDN

bit n

Ładuj na stos negację stanu bitu n

LDN I0.1

A

bit n

Iloczyn logiczny stanu bitu n ze stanem bitu na szczycie stosu. Wynik iloczynu umieszczony na szczycie stosu.

A I0.2

AN

bit n

Iloczyn logiczny negacji bitu n ze stanem bitu na szczycie stosu. Wynik iloczynu umieszczony na szczycie stosu.

AN M0.1

O

bit n

Suma logiczna stanu bitu n ze stanem bitu na szczycie stosu. Wynik sumy umieszczony na szczycie stosu.

O I0.5

ON

bit n

Suma logiczna negacji bitu n ze stanem bitu na szczycie stosu. Wynik sumy umieszczony na szczycie stosu.

ON M2.1

NOT

bez argumentu

Negacja bitu szczytowego stosu

=

bit n

Przesłanie wyniku poprzedniej operacji (ze szczytu stosu) na bit n.

= Q0.2

0x08 graphic
4. Przykłady wykorzystania instrukcji języka STEP 7MicroWin w prostych układach kombinacyjnych

  1. Realizacja 3 wejściowej bramki logicznej iloczynu

Funkcja logiczna opisująca ten układ:

Q0.0 = I0.0xI0.2xM1.0.

Program realizujący tę funkcję w zapisie STL :

LD I0.0

Ładuj na szczyt stos stan bitu I0.0

A I0.2

Wykonaj iloczyn logiczny(AND) stanu bitu I0.2 z bitem na szczycie stosu (I0.0) , wynik zapisz na szczycie stosu (I0.0*I0.2)

A M1.0

Wykonaj iloczyn logiczny stanu bitu M1.0 z bitem szczytowym stosu , wynik zapisz na szczycie stosu (I0.0*I0.2*M1.0)

=Q0.0

Prześlij wynik ze szczytu stosu do bitu Q0.0

b) Realizacja funkcji

0x08 graphic

0x08 graphic

LD I0.1

Ładuj na stos stan bitu I0.1

O I0.2

Wykonaj sumę logiczną (OR) stanu bitu I0.2 z bitem na szczycie stosu (I0.1). Wynik zapisz na szczycie stosu (I0.1 + I0.2).

O I0.5

Wykonaj sumę logiczną stanu bitu I0.3 z bitem szczytowym stosu, wynik zapisz na szczycie stosu (I0.5 + I0.1 + I0.2).

NOT

Wykonaj negację bitu na szczycie stosu

= Q0.3

Prześlij wynik ze szczytu stosu do bitu Q0.3

6

W 10

W 12

W 11

D 10

I0.0 (We1)

I0.2 (We2)

M1.0 (We3)

Q0.0 (Wy)

I0.1 (We1)

I0.2 (We2)

I0.5 (We3)

Q0.3 (Wy)

Q0.3 = I0.1 + I0.2 + I0.5



Wyszukiwarka

Podobne podstrony:
przewodnik inst2, Programowanie, Step7, STEP 7 MicroWin
przewodnik inst4, Programowanie, Step7, STEP 7 MicroWin
przewodnik inst3, Programowanie, Step7, STEP 7 MicroWin
przewodnik inst5, Programowanie, Step7, STEP 7 MicroWin
przewodnik inst6a, Programowanie, Step7, STEP 7 MicroWin
przewodnik inst7a, Programowanie, Step7, STEP 7 MicroWin
13 14 Przewodnik po programie podstaw dydaktykiid 14580
przewodnik po programie 2012 polski 01 10 12
13 14 Przewodnik po programie podstaw dydaktykiid 14580
JavaScript i jQuery Kompletny przewodnik dla programistow interaktywnych aplikacji internetowych w V
ASP NET Web Forms Kompletny przewodnik dla programistow interaktywnych aplikacji internetowych w Vis
Edycja zdjęć w praktyce, cz III krótki przewodnik po programach
Raspberry Pi Przewodnik dla programistow Pythona
ASP NET Web Forms Kompletny przewodnik dla programistow interaktywnych aplikacji internetowych w Vis
JavaScript i jQuery Kompletny przewodnik dla programistow interaktywnych aplikacji internetowych w V
ASP NET Web Forms Kompletny przewodnik dla programistow interaktywnych aplikacji internetowych w Vis
Raspberry Pi Przewodnik dla programistow Pythona rasppy
Raspberry Pi Przewodnik dla programistow Pythona 2
JavaScript i jQuery Kompletny przewodnik dla programistow interaktywnych aplikacji internetowych w V

więcej podobnych podstron