24
24
Przy pomocy niniejszego artykułu
przedstawimy użytkownikom możliwość
wymiany danych pomiędzy komputerem
PC (z systemem operacyjnym Windows)
i przekształtnikami częstotliwości
z rodzin MICROMASTER 4 i SINAMICS
G110. Transfer danych nie odbywa
się tu za pomocą ogólnie dostępnych
programów narzędziowych „STARTER”
lub „DriveMonitor”, ponieważ
programy te nie posiadają interfejsu
do innych programów takich, jak
np. LabView. Artykuł ten prezentuje
sposób bezpośredniej wymiany danych
pomiędzy programem Windows
i przekształtnikiem częstotliwości przy
pomocy skryptów Microsoft Visual
Basic.
T
ypową aplikacją jest np. zautoma-
tyzowane stanowisko testowe, przy
którym komputer przemysłowy jest uży-
wany do sterowania, regulacji i graficz-
nej prezentacji wyników testów. W tym
przypadku program, np. LabView, powi-
nien sterować przekształtnikiem, wymie-
niać z nim dane i odpowiednio do wy-
magań przetwarzać i prezentować wyni-
ki (patrz: rys. 1).
Dla tego i podobnych zastosowań ro-
dzi się pytanie o możliwości komunika-
cyjne pomiędzy komputerem PC i prze-
kształtnikiem częstotliwości.
Standardowo większość komputerów
dysponuje portem szeregowym RS232.
Przekształtniki MICROMASTER 4
(MM420, MM430, MM440) posiada-
ją dwa niezależne porty komunikacyj-
ne (złącze BOP – pod panelem obsłu-
gi BOP i złącze COM – na listwie za-
ciskowej), natomiast przekształtniki
SINAMICS G110 mają do dyspozy-
cji tylko jeden port komunikacyjny. Do
wyżej wymienionych przekształtników
jako opcje dostępne są zestawy do po-
łączenia z komputerem PC. Zestaw ta-
ki jest nakładany w miejsce panelu ob-
sługi BOP (złącze BOP) i może słu-
żyć jako standardowy port szerego-
wy RS232. W zestawie znajduje się
również kabel połączeniowy pomię-
dzy PC i MM4 (Null-Modem RS232
9-SUB).
Do komunikacji MM4 przez złącze
BOP lub COM wykorzystywany jest te-
legram USS, który jest zaimplementowa-
ny również w innych rodzinach napędów
firmy SIEMENS.
Dla nawiązania tą drogą komunika-
cji pomiędzy przekształtnikiem i innymi
programami Windows należy uwzględ-
nić następujące dwa punkty:
1. Zależnie od używanego języka pro-
gramowania trzeba posiadać odpowied-
ni sterownik (np. element sterujący Ac-
tivX), który może wysyłać i odbierać da-
ne przez port szeregowy komputera PC.
Program Windows (np. LabView) prze-
kazuje sterownikowi dane do wysyłki
lub sterownik udostępnia odebrane dane
dla programu. Zadaniem tego sterowni-
ka jest tylko przejęcie wymiany danych
przez port szeregowy, przy czym przeno-
szone dane nie są sprawdzane przez ste-
rownik!
2. Program Windows/użytkownika jest
odpowiedzialny za zawartość danych
przekazywanych do sterownika i prze-
twarzanie odebranych danych. W odnie-
sieniu do przekształtnika oznacza to, że
wewnątrz programu musi zostać wyge-
nerowany ważny telegram USS lub pro-
gram musi odpowiednio przetworzyć
dane użytkowe z odebranego telegramu
USS. Tak więc program jest odpowie-
dzialny za np. stworzenie ważnego sło-
wa sterowania, normalizację wartości za-
danej lub przekazywanie wartości para-
metrów.
Bardzo łatwą metodą realizacji dostę-
pu do przekształtnika MM4 przez port
szeregowy komputera jest użycie ele-
mentu sterującego ActivX i programo-
wanie skryptów VB. Możliwość ta jest
wykorzystywana w przykładowej apli-
kacji stanowiska testowego wewnątrz
platformy LabView komputera.
W niżej przedstawionych przykłado-
wych skryptach VB w ten sam sposób
realizowane jest:
załączanie/wyłączanie przekształtnika
MM4;
transfer częstotliwości zadanej;
odczyt wartości dowolnych parame-
trów.
Przedstawione tu skrypty VB ograni-
czają się do ważniejszych funkcji i komu-
nikatów, jednak w razie potrzeby użyt-
kownik może w zależności od wymagań
własnej aplikacji wprowadzić odpowied-
nie zmiany lub rozszerzenia skryptów.
Ustawienia parametrów
przekształtnika MM4
Wymaganiem wstępnym dla prawi-
dłowej komunikacji pomiędzy PC i MI-
CROMASTER 4/SINAMICS G110 jest
ustawienie jednakowych parametrów
dla pracy portu szeregowego komputera
i przekształtnika.
Porady praktyczne – cz. I
Wymiana danych między
przekształtnikami AC
i komputerem PC przy użyciu
skryptów Microsoft Visual Basic
K
AMIL
Z
IÓŁKOWSKI
Rys. 1. Budowa
przykładowego
stanowiska
testowego
25
25
Konfiguracja portu szeregowego PC
(np. COM1, COM2) następuje w przy-
kładowych skryptach poprzez wywo-
łanie procedury „Init”. Wewnątrz tej
procedury najpierw użytkownik jest py-
tany o numer i szybkość transmisji uży-
wanego portu COM. Wszystkie pozo-
stałe parametry portu są ustawione na
stałe.
Konfiguracja portu szeregowego prze-
kształtnika MM4 (złącze BOP) odbywa
się przez odpowiednie ustawienie para-
metrów przez użytkownika – patrz: tabe-
la 1.
Wskazówka:
Zaleca się najpierw przywrócić
ustawienia fabryczne przekształtnika,
a następnie przeprowadzić szybkie
uruchamianie i dopiero potem
odpowiednio ustawić dalsze
parametry aplikacyjne.
Dalsze objaśnienia
Skrypt Visual Basic
Język skryptowy VB-Script jest ła-
twym i ogólnie dostępnym językiem pro-
gramowania, który zawiera pewną część
funkcji języka Visual Basic. Jednak przy
pomocy VB-Script można tworzyć rów-
nież złożone programy.
Skrypty VB mogą być uruchamiane
pod systemem Windows jako normalne
pliki wykonywalne lub mogą być wy-
korzystywane wewnątrz innych progra-
mów. Wymaganiem dla wykonywania
skryptów VB jest instalacja Windows
Scripting Host (WSH v.5.6 lub wyżej).
Host WSH należy obecnie do standar-
dowej instalacji systemów operacyjnych
Windows 2000 i XP. Po pomyślnej in-
stalacji w katalogu Windows można zna-
leźć plik „cscript.exe”. Proszę pamiętać,
że częściowo dla ochrony przed wiru-
sami wykonywanie skryptów VB może
być zablokowane.
W systemie Windows skrypty mogą
być tworzone lub przerabiane przy po-
mocy prostego edytora (np. Notatnik).
Dalsze informacje odnośnie rozkazów
i składni skryptów VB można znaleźć
w pliku pomocy Script56.CHM zawar-
tym w archiwum ZIP z przykładowymi
skryptami.
Element sterujący ActivX
Wewnątrz skryptów VB dostęp do
portu szeregowego realizowany jest przy
pomocy elementu sterującego ActivX.
Jako element sterujący ActivX wyko-
rzystywana jest 30-dniowa wersja testo-
wa dostępna na stronie:
http://www.ac-
tivexperts.com/activcomport/.
Po dopasowaniu skryptów VB można
wykorzystać również inne elementy ste-
rujące, np. Microsoft Object MSComm
z pakietu Visual Basic Professional lub
wersji Enterprise.
Protokół USS
Protokół USS (Universelles Serielles
Schnittstellen Protokoll) służy do wy-
miany danych w układzie Master-Slave.
Pełną specyfikację protokołu USS moż-
na znaleźć w archiwum ZIP zawierają-
cym przykładowe skrypty.
Rysunek 2 przedstawia zasadniczą
strukturę telegramu USS.
Obszar PKW
Obszar PKW służy do obsługi warto-
ści parametrów. W obszarze tym przy
Wartość
parametru
Znaczenie
Wskazówki
P0700.0 = 4
P0700: Wybór źródła sterowania
4: Złącze BOP
Sygnały sterujące, np.
ZAŁ/WYŁ1, będą podawane
przez złącze BOP. Wymagane
dla skryptu „MM4_sterowanie_
napędem”
P1000.0 = 4
P1000: Wybór źródła zadawania
częstotliwości
4: Złącze BOP
Częstotliwość zadana będzie
podawana przez złącze BOP.
Wymagane dla skryptu
„MM4_sterowanie_napędem”
P2000.0 = 50
P2000: Częstotliwość
odniesienia
50 Hz = 100% = 4000 Hex
W przykładowych skryptach
wartość zadana częstotliwości
jest normalizowana na
50 Hz = 4000 Hex
P2010.1 = 6
P2010.1: Szybkość
transmisji złącza BOP,
np. 6 = 9600 bps
Ustala szybkość
transmisji dla złącza BOP
przekształtnika MM4
P2011.1 = 0
P2011.1: Adres sieciowy USS
złącza BOP
0
Ustala adres sieciowy
USS dla złącza BOP
przekształtnika MM4
P2012.1 = 2
P2012.1: Ilość słów PZD
złącza BOP
2: wysyłanie/odbiór 2 słów PZD
Ustala ilość słów PZD
w telegramie USS dla złącza
BOP przekształtnika MM4
P2013.1 = 4
P2013.1: Ilość słów PKW
złącza BOP
4: wysyłanie/odbiór 4 słów PKW
Dla przykładowych skryptów
ilość słów PKW telegramu
USS należy ustawić na 4
P2014.1 = 0
P2014.1: Czas kontrolny tel. USS
zł. BOP
0: brak monitoringu
Ustawienie na 0 wyłącza
monitoring (ponieważ nie
występuje tu cykliczna
wymiana danych)
Tabela 1
Rys. 2. Struktura telegramu USS:
STX – 1 Bajt, stały znak startowy ASCII: 02 Hex;
LGE – 1 Bajt, zawiera długość telegramu jako liczbę binarną, do długości telegramu
liczą się tylko dane użytkowe (PKW, PZD), bajt adresu (ADR) i znak kontrolny (BCC);
ADR – 1 Bajt, adres urządzenia Slave i typ telegramu;
dane użytkowe – maks. 252 bajty danych użytkowych, blok danych użytkowych dzieli
się na dwa obszary: obszar wartości parametrów (PKW) i obszar danych procesowych
(PZD), ilość słów w obszarach PKW i PZD musi być zgodna z ustawieniami
w przekształtniku MM4;
BCC – 1 Bajt, znak kontrolny telegramu, wynik operacji EXOR bajtów telegramu
26
26
pomocy tzw. „zapytań” i „odpowiedzi”
obsługiwany jest dostęp przez port ko-
munikacyjny USS do parametrów znaj-
dujących się w urządzeniu, np. odczyt
i zapis parametrów.
Obszar PKW dzieli się dalej na nastę-
pujące elementy:
PKE:
– 1 słowo, służy do identyfikacji zapy-
tań mastera lub odpowiedzi slave’a, za-
wiera również numer parametru prze-
kształtnika;
– Bit 0..10: Numer parametru (PNU);
– Bit 11: Raport o stanie zmiany parame-
tru;
– Bit 12-15: Identyfikator typu zapytania
lub odpowiedzi;
IND (Indeks):
– 1 słowo;
– Bit 0..7: Indeks parametru;
– Bit 8..9: Rozszerzenie dla tekstów;
– Bit 10..11: Nieużywane;
– Bit 12..15: Rozszerzenie PNU dla para-
metrów > 2000;
PWE: 3/4 słowa lub zmienna ilość,
w obszarze tym przenoszone są informa-
cje należące do zapytań lub odpowiedzi,
jak np. wartości parametrów, teksty lub
opisy parametrów.
Obszar PZD
Obszar PZD zawiera sygnały potrzeb-
ne dla automatyzacji sterowania pracą
napędu:
– słowo(a) sterowania i wartości zadane
od mastera do slave’a;
– słowo(a) stanu i wartości aktualne od
slave’a do mastera.
W obszarze tym wymieniane są dane
procesowe pomiędzy masterem i urzą-
dzeniami slave.
Ilość słów obszaru PZD jest określa-
na przez liczbę elementów PZD. W prze-
ciwieństwie do obszaru PKW, który mo-
że mieć zmienną długość, obszar PZD
musi mieć zawsze stałą długość po-
między partnerami komunikacyjnymi!
Maksymalna ilość słów PZD na tele-
gram jest ograniczona do 16 słów. Je-
śli w obszarze danych użytkowych ma-
ją być przenoszone tylko dane PKW,
wtedy można ustawić ilość słów PZD
na 0!
Zależnie od kierunku przesyłu w PZD1
przekazywane jest słowo sterowania
lub słowo stanu. W PZD2 odpowied-
nio do kierunku przesyłu przekazywa-
na jest główna wartość zadana lub głów-
na wartość aktualna. W kolejnych da-
nych procesowych PZD3...PZDn mogą
być przekazywane dalsze wartości zada-
ne (aktualne) lub słowa sterowania (sta-
nu). Struktura słów sterowania i stanu
jest zdefiniowana na stałe (analogicznie
jak w przypadku komunikacji przez sieć
PROFIBUS).
Przykładowe skrypty VB
Odpowiednio do konfiguracji z przy-
kładowej aplikacji stanowiska testowe-
go dostępne są trzy przykłady skryptów.
Wszystkie te skrypty zostały pomyśl-
nie przetestowane z przekształtnikiem
MM4. Skrypty te mogą być dalej zmody-
fikowane odpowiednio do potrzeb apli-
kacji lub mogą być włączone do innych
projektów.
Wskazówka:
W prezentowanych tu przykładach
nie występuje cykliczna wymiana
telegramów pomiędzy komputerem
PC (master USS) i przekształtnikiem
MM4 (slave USS)!
W celu użycia przykładowych skryp-
tów należy wykonać poniższe kroki:
1. Rozpakować archiwum ZIP „0015_
MicrosoftVBScript”. Archiwum zawie-
ra przykładowe skrypty, dokumentację
i specyfikację protokołu USS.
2. Zainstalować element sterujący Ac-
tivX firmy ActiveExpert. W tym celu
uruchomić Setup.exe w katalogu „Ac-
tivX”.
3. Uruchomić poszczególne skrypty VB
przez dwukrotne kliknięcie na odpowied-
nim pliku.
Przykład 1.
MM4_sterowanie_napędem.vbs
Jest to przykładowy skrypt do sterowa-
nia przekształtnika MM4 przez port sze-
regowy PC przy użyciu telegramu USS.
Przy pomocy tego skryptu można załą-
czać/wyłączać przekształtnik i podawać
dla niego wartość zadaną częstotliwości
(patrz: rys. 3).
Przykład 2.
MM4_odczyt_parametrów.vbs
Skrypt ten służy do odczytu i wyświet-
lania aktualnych wartości parametrów
przekształtnika.
Wskazówka:
Wartości parametrów w formacie U32
(BICO) są przez przykładowy skrypt
prawidłowo odczytywane, jednak nie są
właściwie wyświetlane. Powodem tego
jest brak różniących się identyfikatorów
odpowiedzi dla wartości zmiennoprze-
cinkowych Float i U32 (BICO). Jednak
możliwa jest odpowiednia modyfikacja
skryptu tak, aby użytkownik podawał nu-
mer parametru, a potem jego typ. Wtedy
program mógłby odpowiednio przedsta-
wić otrzymaną odpowiedź. Ten przykła-
dowy skrypt nie oferuje jednak tej funk-
cjonalności.
Przykład 3. MM4_archiwizacja_pa-
rametrów.vbs
Przykład ten można wykorzystać do
odczytu i archiwizacji wartości parame-
trów. Wystarczy podać żądane nume-
ry parametrów, których wartości mają
być archiwizowane, a następnie wpro-
wadzić czas rozpoczęcia i zakończenia
archiwizacji. Wtedy skrypt samodziel-
nie rozpocznie odczyt parametrów w po-
danych odstępach czasowych. Odczyta-
ne wartości parametrów są zapisywane
w pliku tekstowym z podanym czasem
odczytu.
Prezentowane tu przykładowe skrypty
wraz z dokumentacją są dostępne w po-
staci archiwum ZIP na stronie
www.sie-
mens.pl/napedy w sekcji „Katalogi, do-
kumentacje”.
Inne przydatne narzędzia:
– edytor tekstowy z wyróżnianiem skład-
ni Edit+: –
www.editplus.com;
– monitor portu szeregowego ASPMon:
www.aggsoft.com.
Siemens Sp. z o.o.
Automation & Drives
tel. 022-870 91 12
lub 032-208 41 73
fax 022-870 91 49
lub 032-208 41 79
www.siemens.pl/napedy
Rys. 3. Widok okna
po uruchomieniu skryptu
27
27
Siemens Sp. z o.o.
Automation and Drives
tel. (022) 870 98 11
fax (022) 870 91 49
www.siemens.pl/napedy
Wiele celów, jedno rozwiązanie: tylko z nowym przekształtnikiem AC SINAMICS® G110.
Trzy dowolnie programowalne wejścia cyfrowe, kompaktowa budowa, łatwy montaż,
podłączanie i uruchamianie czynią go prawdziwie uniwersalnym dla wielu aplikacji
napędowych w zakresie mocy od 0,12 do 3 kW.
Impol-1 F.Szafrański Sp.j.
ul. Krakowiaków 103
02-255 Warszawa
tel. (022) 886 56 02
fax (022) 886 56 04
T-System Projekt Sp. z o.o.
ul. Narutowicza 120/1
90-924 Łódź
tel. (042) 678 02 66
fax (042) 678 51 11
Mawos Sp. z o.o.
ul. Rokicińska 299/301
92-614 Łódź
tel. (042) 689 24 20
fax (042) 689 24 01
Sternet Sp. z o.o.
ul. Niepołomska 29A
32-020 Wielczka
tel. (012) 288 06 59
fax (012) 288 06 49
Adresy dystrybutorów: