Ovládání pohonu ILx přes RS485 s ASCII.
Jak… … ovládat kompaktní pohon ILx pomocí M221 přes RS-485 s ASCII. 1.3.2016
Klíčová slova:
Somachine Basic, M221, ILx, RS-485, kompaktní pohon, ASCII
Cíl: Pomocí M221 přes RS-485 spustit kompaktní pohon ILx.
OEM solution
1
Ovládání pohonu ILx přes RS485 s ASCII.
NEŽ ZAČNETE Tento manuál předpokládá, že máte základní znalosti práce s vývojovým prostředím SoMachine Basic. Je nutná znát, jak se připojit k PLC a jak provést stažení aplikace. Pokud těmito znalostmi nedisponujete, doporučujeme nastudovat dokumentaci k Somachine Basic. V tomto dokumentu bude popsáno, jak vytvořit jednoduchý program ovládající kompaktní pohon ILx s RS485 pomocí zpráv v ASCII kódování.
POUŽITÝ HARDWARE PLC z řady M221 Modbus kabel Kompaktní pohon ILx s RS-485
OEM solution
2
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 1 – KOMUNIKACE Nejprve je potřeba zajistit samotnou RS-485 komunikaci. Takže nastavíme parametry sériové linky (rychlost, parita…), aby odpovídali kompaktnímu pohonu ILx. V nastavení protokolu vybereme ASCII.
Dále je potřeba nastavit komunikační funkční blok. Nejprve je potřeba poslat příkaz pro výběr kompaktního pohonu obsahující jeho adresu (3 byty odeslat, 2 byty přijmout). Dále je do kompaktního pohonu potřeba přenášet příkazovou zprávu a pohon odpovídá stavovou zprávou (17 bytů odeslat a 16 bytů přijmout). Nastavíme si tedy komunikační bloky %Send_recv_msg podle následujícího obrázku:
Když jsou komunikační bloky nastaveny, můžeme začít vytvářet program.
OEM solution
3
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 2 – GRAFCET Ovládání pohonu můžeme snadno řešit pomocí GRAFCETu. Nejjednodušší případ může vypadat například takto:
POZNÁMKA 1 – ASCII, DECIMÁLNÍ A HEXADECIMÁLNÍ ZÁPIS Standardně používáme zápis čísel v desítkové soustavě, ale pro počítače využívající binární kód je výhodné používat zápis hexadecimální (jeden byte, je zapsán jen 2 znaky). Jedná se tedy o rozdílnou reprezentaci uspořádané skupiny bitů. Příklad:
Decimální
hexadecimální
binární
ASCII
Aby bylo možné snáze interpretovat obsah zprávy, komunikuje pohon v ASCII podobě a platí následující převodní tabulka: 0 = 30h 1 = 31h 2 = 32h 3 = 33h
OEM solution
8 = 38h 9 = 39h A = 41h B = 42h
4
Ovládání pohonu ILx přes RS485 s ASCII. 4 = 34h 5 = 35h 6 = 36h 7 = 37h
C = 43h D = 44h E = 45h F = 46h
KROK 3 – VÝBĚR OVLÁDANÉHO POHONU Nejprve musíme poslat pohonu zprávu, že s ním chceme komunikovat. Tato zpráva je ve tvaru #n
(n je adresa pohonu). Když máme nastavenou adresu motoru 1, je nutné poslat zprávu #1. To odpovídá 23h 31h 0Dh, jak je uvedeno na obrázku níže. Tato zpráva obsažená v %MW30 a %MW31 se bude opakovaně posílat každých 200 ms (pro jistotu je kontrolována, zda blok nepracuje, když je posílán příkaz k aktivaci).
POZNÁMKA 2 – TVAR ZPRÁVY Posílaná zpráva se skládá z 16 ASCII znaků, což odpovídá 16 bytům. 0
1
2
Flag+ typ příkazu
OEM solution
3
4
5
subindex
6
7
8
index
5
9
10
11
data
12
13
14
15
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 4 – PŘEHAZOVÁNÍ „FLAG“ BITU Řídicí systém pohonu identifikuje novou zprávu podle změny začátku zprávy. Je tedy potřeba vytvořit podprogram, který bude začátek zprávy měnit například takto:
První byte se mění z 8 (38h) na 0 (30h). Neostrá nerovnost v prvním porovnávání je kvůli nulové hodnotě po startu programu.
KROK 5A – PŘECHOD NA RESET POHONU Když dojde k aktivaci vstup %I0.0 nebo paměťového bitu %M10 (pro účely testování), přejde Grafcet do kroku aktivace pohonu
OEM solution
6
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 5B – RESET POHONU Pohon resetujeme tak, že zapíšeme 08 (3038h) do paměti s indexem 1C (3143h) a subindexem 01 (3031h). Viz následující obrázek:
KROK 5C – PŘECHOD NA AKTIVACI POHONU Když je odeslán příkaz pro rest, můžeme přejít k aktivaci pohonu podle následujícího obrázku:
OEM solution
7
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 5D – AKTIVACE POHONU Pohon aktivujeme tak, že zapíšeme 02 (3032h) do paměti s indexem 1C (3143h) a subindexem 01 (3031h). Viz následující obrázek:
Zpráva obsažená v %MW10 až %MW18 se bude opakovaně posílat každých 200 ms (pro jistotu je kontrolována, zda blok nepracuje, když je posílán příkaz k aktivaci).
KROK 6A – PŘECHOD NA ŘÍZENÍ OTÁČEK POHONU K přechodu na další krok dojde, pokud není aktivní komunikace a motor je zapnutý (je aktivní bit %MW23:X1).
OEM solution
8
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 6B – OVLÁDÁNÍ OTÁČEK Otáčky pohonu lze ovládat zápisem požadované hodnoty do indexu 24 (3234h) se subindexem 1 (3031h)
Vstupem %I0.0 budeme volit, zda se bude pohon otáčet v kladném nebo záporném směru. Podle toho zapíšeme do %MW16 a %MW17 07DO (3037 h 4430h) nebo F830 (4638h 3330h). Pro záporná čísla se používá dvojkový doplněk. Zpráva obsažená v %MW10 až %MW18 se bude opakovaně posílat každých 200 ms (pro jistotu je kontrolována, zda blok nepracuje, když je posílán příkaz k aktivaci).
KROK 7A – PŘECHOD VYPNUTÍ POHONU Pokud není aktivní vstup %I0.0 ani paměťový bit %M10 dojde k přechodu na krok vypínající motor.
OEM solution
9
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 7B – VYPNUTÍ POHONU Pohon aktivujeme tak, že zapíšeme 01 (3031h) do paměti s indexem 1C (3143h) a subindexem 01 (3031h). Viz následující obrázek:
Zpráva obsažená v %MW10 až %MW18 se bude opakovaně posílat každých 200 ms (pro jistotu je kontrolována, zda blok nepracuje, když je posílán příkaz k aktivaci).
OEM solution
10
Ovládání pohonu ILx přes RS485 s ASCII.
KROK 8 – PŘECHOD DO POČÁTEČNÍHO STAVU Pokud je pohon vypnutý dojde k přechodu do počátečního stavu. Tato podmínka je vyjádřena neaktivním bitem %MW23:X1.
OEM solution
11
Ovládání pohonu ILx přes RS485 s ASCII.
Schneider Electric CZ, s. r. o.
Schneider Electric Slovakia, s. r. o.
U Trezorky 921/2 – 158 00 Praha 5 Zákaznické centrum Tel.: 382 766 333 E-mail: [email protected]
Karadžičova 16 – 821 08 Bratislava Zákaznícke centrum Tel.: 02 4552 4010 E-mail: [email protected]
www.schneider-electric.cz
www.schneider-electric.sk
OEM solution
02 – 2016. S1545CZ_03
©2016 Schneider Electric. Všechna práva vyhrazena. Všechny ochranné známky jsou ve vlastnictví 12 společnosti Schneider Electric Industries SAS nebo jejích přidružených společností.