Promotic
WikipediaLinkedInYoutubeTwitterFacebook

PmTeco - Ovladač pro komunikaci s PLC automaty od firmy TECO

Tento ovladač slouží pro komunikaci s PLC automaty od firmy TECO. Viz také Komunikace s PLC automaty od firmy TECO (Česko).
 
Před použitím tohoto ovladače v aplikaci PROMOTIC je vhodné přečíst kapitolu: Komunikace pomocí PROMOTIC ovladačů.
 
Základní vlastnosti ovladače:
- Ovladač komunikuje s automaty od firmy TECO řady TECOMAT (TC400, TC500, TC600, TC650, TC700, NS950, FOXTROT ...) a TECOREG (TR050, TR200, TR300 ...) protokolem EPSNET monomaster (protokol vychází z definice transportní vrstvy protokolu PROFIBUS). Komunikace v jiných režimech ("PLC", multimaster ..) zde není podporována.
- Použití tohoto ovladače vyžaduje zakoupení licence PmTeco. S freeeware verzí PmFree nebo při vývoji aplikace (s vývojovou licencí pro testovací účely) je tato komponenta funkční vždy.
- Komunikace je pro Ethernet (aplikace PROMOTIC je klient) nebo pro sériovou linku (COM1, COM2 ...).
- Aplikace PROMOTIC je z hlediska této komunikace vždy MASTER (tzn. že dává podnět k přenosu dat).
- Ovladač je začleněn do systému PROMOTIC pomocí objektu PmaComm.

Ovladač podporuje používání objektů PmaCommMsg a PmaCommGroup. Pro běžné případy přenosu dat je lepší použít objekt PmaCommGroup.

Pro snadné přidání tohoto ovladače do aplikace je vhodné použít: Předkonfigurace ve skupině "TECO - PLC automat"

 
Poznámka: Při komunikaci RS232 s TECOREG je nutno na konektoru zapojeném do servisního komunikačního portu propojit pin 5 s pinem 9 ! Jinak standardní křížové propojení (RX->TX, TX->RX, SG->SG).
 
Ovladač podporuje následující datové typy:
- BOOL: Bit daný adresou bajtu a číslem bitu. V aplikaci PROMOTIC je reprezentován datovým typem: Boolean.
- USINT: 1-bajt celé číslo (od 0 do 255). V aplikaci PROMOTIC je reprezentován datovým typem: Byte.
- INT: 2-bajt celé číslo (od -32 768 do +32 767). V aplikaci PROMOTIC je reprezentován datovým typem: Integer.
- UINT: 2-bajt celé číslo (od 0 do +65 535). V aplikaci PROMOTIC je reprezentován datovým typem: Long.
- DINT: 4-bajt celé číslo (od -2 147 483 648 do +2 147 483 647). V aplikaci PROMOTIC je reprezentován datovým typem: Long.
- REAL: 4-bajt reálné číslo. V aplikaci PROMOTIC je reprezentován datovým typem: Single.
- LREAL: 8-bajt reálné číslo. V aplikaci PROMOTIC je reprezentován datovým typem: Double.
- TIME / TIME_OF_DAY: V PLC automatu je tento typ ve skutečnosti stejný jako typ DINT (tzn. 4-bajt celé číslo) a představuje počet milisekund (pro TIME_OF_DAY je to počet milisekund od začátku dne). Pokud se však v systému PROMOTIC zadá místo DINT typ TIME (nebo TIME_OF_DAY), pak je v systému PROMOTIC hodnota reprezentována datovým typem Date a při přenosu se provádí odpovídající přepočet. Year/Month/Day/Hour/Minute/Second.
- DATE / DATE_AND_TIME: V PLC automatu je tento typ ve skutečnosti stejný jako typ LREAL (tzn. 8-bajt reálné číslo) a představuje počet sekund od 1.1.1970. Pokud se však v systému PROMOTIC zadá místo LREAL typ DATE (nebo DATE_AND_TIME), pak je v systému PROMOTIC hodnota reprezentována datovým typem Date a při přenosu se provádí odpovídající přepočet.
 
Poznámka: Pokud hodnota datumu a času je typu Date, pak hodnoty rok/měsíc/den/hodina/minuta/sekunda lze získat například pomocí VBScript metod Year/Month/Day/Hour/Minute/Second. Viz také VBScript funkce s datem a časem a Pm metody pro datum a čas.
 

Doporučené hodnoty parametrů:

Doporučené hodnoty pro Parametry sériové linky:
Rychlost19200 Bd (i vyšší)
Počet datových bitů8 (povinné)
ParitaEVEN (sudá), vyjímečně lze paritu vypnout pro případ přenosu dat pomocí modemů, které paritu nepodporují.
Počet stopbitů1 (povinné)
Řízení RTS signálu1
Řízení DTR signálu0
Prodleva mezi příjmem a vysíláním0. V některých případech převodník TECOREG u rozhraní RS485 neumí dostatečně rychle automaticky přepínat signál RTS. Tehdy se musí prodleva nastavit na 10 ms.
Doporučené hodnoty pro Parametry Ethernet-klient:
Číslo TCP/UDP portu61682 (pro typ dat "TECO Ethernet")
Typ Ethernet přenosuUDP (pro typ dat "TECO Ethernet")
Popis a doporučené hodnoty pro Parametry protokolu:
Typ dat protokoluJen pro Ethernet. Určuje tvar dat protokolu. Lze zvolit:
TECO Ethernet - Standardní Ethernet komunikace s TECO automaty. Proti datům určeným pro sériovou linku se liší speciální hlavičkou a přenáší se přes Ethernet UDP na portu 61682.
Stejná data jak pro sériovou linku - Tuto volbu lze zvolit například pokud má zařízení sériovou linku a převodníkem RS232/Ethernet je zapojeno do Ethernetu. Pokud převodník nemění přenášená data, pak lze takto jednoduše komunikovat přes Ethernet se zařízením, který nemá Ethernet výstup.
Timeout příjmu odpovědiJen pro sériovou linku. Vhodná volba je například 2000 ms. Čas (v milisekundách) po který bude ovladač čekat na odpověď při vyslání zprávy. Pokud do této doby nepřijde vyžádaná odpověď, pak se přenos zprávy ukončí (je vyvolána událost onEndOfTransfer s chybou 24 nebo 66).
TECO adresa této aplikaceAdresa aplikace PROMOTIC pro komunikaci s PLC. Adresování v protokolu TECOMAT umožňuje připojení více PLC k jedné aplikaci PROMOTIC přes jeden komunikační port. Zde je nutno zajistit, aby připojené PLC i aplikace PROMOTIC měly každý jinou adresu. Adresy nemusí tvořit spojitou řadu.

Popis komunikace pomocí objektu PmaCommGroup

Pro tento ovladač lze použít objekty PmaCommGroup. Pro běžné případy přenosů dat je to výhodnější než použít objekt PmaCommMsg.

Proměnné v objektu PmaCommGroup (nebo ještě lépe proměnné v objektu PmaData s datovým rozšířením ExtComm) mohou být v libovolném množství, libovolného typu v libovolném pořadí. Ovladač sám optimálním způsobem vnitřně vytvořenými komunikačními zprávami vyčítá data ze zařízení.

Proměnné se vyčítají všechny (pokud konfigurátor "Obnovování dat povoleno" je zatržen). Při zápisu do proměnné se posílá do zařízení jen tato jedna proměnná (pokud konfigurátor "Automaticky zasílat při zápisu do položky" je zatržen).

 
Popis konfigurátoru "ItemID":

ItemId je textový identifikátor položky, který slouží k adresaci položky v zařízení. Z konfigurátoru ItemID ovladač pozná, jak se má hodnota položky přijímat nebo vysílat.

Text lze buď napsat ručně, nebo sestavit pomocí okna, které se otevře tlačítkem vpravo od konfigurátoru.

Pro zadání lze použít Makro výraz (vyhodnocuje se po spuštění aplikace).

 
Identifikátor ItemId může mít podobu například "dev2.R33.W", kde:
- 1. část určuje adresu PLC (device) se kterým se má komunikovat (dev2 = adresa 2).
- 2. část určuje typ a adresu datové položky (R33 = registr "R" na adrese 33).
X register
Y register
S register
R register
- 3. část určuje datový typ.
b = BOOL = bit
B = USINT = Byte
I = INT = Integer signed
W = UINT = Integer unsigned
L = DINT = Long
R = REAL = Single
LR = LREAL = Double
TIME = TIME / TIME_OF_DAY
DT = DATE / DATE_AND_TIME
Popis konfigurátoru "PmaCommGroup > Parametry > Speciální parametry":
Tento konfigurátor se pro daný ovladač nevyužívá.

Popis komunikace pomocí objektu PmaCommMsg

Tabulka 1: Hodnoty oblasti zápisníku pro některé následující zprávy:

0 - registr X (vstupy)
1 - registr Y (výstupy)
2 - registr S (systémové proměnné)
3 - registr R (registry)
128(=80hexa) - DataBox, prvních 64 kB (adresy 00000-0FFFF hex)
129(=81hexa) - DataBox, druhých 64 kB (adresy 10000-1FFFF hex)
130.. - DataBox, atd.

Níže uvedený název služby s označením * (hvězdička) je dostupný v centrálních jednotkách následujících verzí: CPM-1E verze 3.4 a vyšší, CPM-1M verze 4.3 a vyšší, CPM-1S verze 4.1 a vyšší, CPM-2S všechny verze, CPM-1D všechny verze, CPM-1B všechny verze.

 
Seznam a popis komunikačních zpráv:
1) CONNECT: Zahájení komunikace spojené s inicializací komunikačních struktur.
2) IDENT: Zjistí informace o typu připojeného PLC.
3) SETTID: Zápis časového údaje do časového obvodu RTC. Od tohoto okamžiku PLC automat pracuje s novým časem.
4) SETCW: Zápis do řídícího slova PLC. Tato služba je přístupná jen po sériovém kanálu CH1 !
V kartě "Data-zaslání" jsou proměnné:
CLE - požadavek nulování chyby (aktivní v 1)
RES - požadavek na restart PLC (aktivní v 1)
TPR - typ restartu (0-teplý, 1-studený)
CLO - požadavek nulování výstupů (aktivní v 1)
BLO - požadavek blokování výstupů (aktivní v 1)
MOD - požadovaný režim PLC (0=HALT, 1=RUN)
5) GETSW: Čtení stavového slova PLC.
V kartě "Data-příjem" jsou proměnné:
ERH - indikace závažné chyby (aktivní v 1)
ERS - indikace ostatních chyb (aktivní v 1)
IMS - indikace externího blokování výstupů (aktivní v 1)
ISP - indikace externího povolení režimu RUN (aktivní v 1)
BLO - indikace blokování výstupů (aktivní v 1)
MOD - indikace režimu PLC (0=HALT, 1=RUN)
6) GETERR*: Čtení hlavního chybového zásobníku centrální jednotky. Chybový zásobník obsahuje celkem 8 chybových hlášení v pořadí od nejstaršího k nejnovějšímu, každé o délce 4 bajty. Celková délka je 32 bajtů.
7) MASKCW: Nastavení jednotlivých bitů řídícího slova PLC. Tato služba je přístupná jen po sériovém kanálu CH1 ! Služba je dostupná v centrálních jednotkách verzí 5.0 a vyšších.
V kartě "Data-zaslání" jsou proměnné:
CLE - požadavek nulování chyby (aktivní v 1)
RES - požadavek na restart PLC (aktivní v 1)
TPR - typ restartu (0-teplý, 1-studený)
CLO - požadavek nulování výstupů (aktivní v 1)
BLO - požadavek blokování výstupů (aktivní v 1)
MOD - požadovaný režim PLC (0=HALT, 1=RUN)
CLEP - platnost nastavení CLE
RESP - platnost nastavení RES
TPRP - platnost nastavení TPR
CLOP - platnost nastavení CLO
BLOP - platnost nastavení BLO
MODP - platnost nastavení MOD

Pro nastavení daného bitu je nutno nastavit na log.1 příslušnou platnost daného bitu.

8) READN*: Čtení obsahu registrů zápisníkové paměti PLC.
V kartě "Data-zaslání" jsou proměnné:
TR - oblast zápisníku, ze kterého se čte (viz tabulka 1).
IR - index prvního čteného registru (bajtové adresování).
V kartě "Data-příjem" jsou proměnné: Zadaný počet a typ čtených dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
9) WRITEN*: Zápis do registrů zápisníkové paměti PLC.
V kartě "Data-zaslání" jsou proměnné:
TW - oblast zápisníku, do kterého se zapisuje (viz tabulka 1).
IW - index prvního zapisovaného registru (bajtové adresování).
data - zadaný počet a typ zapisovaných dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
10) WANDRN: Zápis do registrů a čtení obsahu registrů zápisníkové paměti PLC.
V kartě "Data-zaslání" jsou proměnné:
TR - oblast zápisníku, ze které se čte (viz tabulka 1).
IR - index prvního čteného registru (bajtové adresování).
TW - oblast zápisníku, do kterého se zapisuje (viz tabulka 1).
IW - index prvního zapisovaného registru (bajtové adresování).
data - zadaný počet a typ zapisovaných dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
V kartě "Data-příjem" jsou proměnné: Zadaný počet a typ čtených dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
11) READB*: Čtení obsahu bitů ze zápisníkové paměti PLC.
V kartě "Data-zaslání" jsou proměnné:
TR - oblast zápisníku, ze které se čte (viz tabulka 1).
IR - index čteného registru (bajtové adresování).
BR - index čteného bitu (0-7).

V Data-příjem je požadovaný bit.

V kartě "Data-příjem" jsou proměnné: Požadovaný bit.
12) WRITEB*: Zápis do bitů v zápisníkové paměti PLC.
V kartě "Data-zaslání" jsou proměnné:
TW - oblast zápisníku, do kterého se zapisuje (viz tabulka 1).
IW - index zapisovaného registru (bajtové adresování).
BW - index zapisovaného bitu (0-7).
Bit - logická hodnota zapisovaného bitu.
13) READBD*: Přečtení obsahu bitů zápisníkové paměti PLC a jejich následné vynulování.
V kartě "Data-zaslání" jsou proměnné:
TR - oblast zápisníku, ze které se čte (viz tabulka 1).
IR - index čteného registru (bajtové adresování).
BR - index čteného bitu (0-7).

V Data-příjem je požadovaný bit.

V kartě "Data-příjem" jsou proměnné: Požadovaný bit.
14) READND*: Čtení obsahu registrů zápisníkové paměti PLC a jejich vynulování.
V kartě "Data-zaslání" jsou proměnné:
TR - oblast zápisníku, ze které se čte (viz tabulka 1).
IR - index prvního čteného registru (bajtové adresování).
V kartě "Data-příjem" jsou proměnné: Zadaný počet a typ čtených dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
15) WANDRND: Zápis do registrů a čtení obsahu registrů zápisníkové paměti PLC s jejich následným vynulováním.
V kartě "Data-zaslání" jsou proměnné:
TR - oblast zápisníku, ze které se čte (viz tabulka 1).
IR - index prvního čteného registru (bajtové adresování).
TW - oblast zápisníku, do kterého se zapisuje (viz tabulka 1).
IW - index prvního zapisovaného registru (bajtové adresování).
data - zadaný počet a typ zapisovaných dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
V kartě "Data-příjem" jsou proměnné: Zadaný počet a typ čtených dat (viz dále Rozšířené možnosti nastavení dat v objektu PmaCommMsg).
 
Omezení datových typů v objektu PmaCommMsg:
- BOOL: Služby READN, WRITEN, WANDRN, READND, WANDRND nepřenášejí bitové hodnoty. Lze však přenášet celé bajty a v systému PROMOTIC pak bity separovat, například pomocí metod PmVar.GetBit / PmVar.SetBit / Pm.GetBit / Pm.SetBit.
- USINT: Maximální počet hodnot tohoto typu v jedné zprávě: 246.
- INT / UINT: Maximální počet hodnot tohoto typu v jedné zprávě: 109.
- DINT / REAL: Maximální počet hodnot tohoto typu v jedné zprávě: 55.
- LREAL: Maximální počet hodnot tohoto typu v jedné zprávě: 27.
 
Rozšířené možnosti nastavení dat v objektu PmaCommMsg:

Ve zprávách typu READN, WRITEN, WANDRN, READND a WANDRND (které mohou přenášet data typu Byte, Integer sign/unsign, Long nebo Single) se při konfiguraci PmaCommMsg nastaví pro všechna data stejný datový typ. Někdy však je nutno přenášet smíšené datové typy. Lze toho docílit dodatečnou změnou těchto dat (v kartě "Data-příjem" nebo Data-zaslání). Lze ubírat nebo přidávat data a hlavně měnit datové typy těchto dat, pokud se dodrží následující podmínky:

- celková velikost dat (v bajtech) se nezmění.
- nelze použít datový typ Integer unsign a Single.

Příklad: Například lze změnit 2 položky typu Long (celkem 8 bajtů) na 6 položek typu: Byte, Byte, Integer, Integer, Byte, Byte.


Historie:
Pm8.03.09: Opravená chyba: Při přenášení 8-bajt hodnot (datový typ LREAL a DATE / DATE_AND_TIME) docházelo k chybám.
Pm8.01.00: Zobecnění o datové typy DINT, LREAL, TIME / TIME_OF_DAY a DATE / DATE_AND_TIME.
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice