Promotic
WikipediaLinkedInYoutubeTwitterFacebook

PmModem - Podrobný popis objektu

Viz: Objekt PmModem
 
Přenos dat je uskutečněn v úzké spolupráci s objektem PmComm a proto pro pochopení objektu PmModem je nutná znalost objektu PmComm. V objektu PmComm musí být konfigurátor Sériový port nastaven na "Modem".
 
Základní vlastnosti objektu PmModem:
- Objekt umožňuje telefonický přenos dat mezi dvěmi PC (např. pomocí protokolu PmNET0) nebo mezi PC a PLC automatem konkrétním protokolem (viz Seznam komunikačních ovladačů).
- Po navázání spojení lze přes modem přenášet data pomocí objektu PmComm, tzn. lze komunikovat komunikačními protokoly implementovanými v systému PROMOTIC. U některých protokolů však mohou vzniknout problémy například v důsledku nutnosti ovládání speciálních signálů (RTS, DTR) nebo strukturou datového rámce (např. paritní bit nemá význam paritní kontroly bitů). U těchto protokolů kontaktujte firmu MICROSYS, spol. s r.o..
- Modem lze ovládat pomocí vlastností a metod objektu PmModem.
- Lze mít více modemů připojených k jednomu PC, ty jsou pak odlišeny svou adresou definovanou konfigurátorem Adresa modemu v záložce Modem.
- Lze dynamicky měnit komunikační protokol. Například je vytočeno číslo a komunikace probíhá s PLC1. Poté je vytočeno jiné číslo a komunikace probíhá s PLC2, přičemž PLC1 a PLC2 pochází od různých výrobců (mají jiný protokol).
- Stav, průběh a chyby modemu lze sledovat v INFO systému.
 
Stavy modemu:
- IDLE (0): Modem neprovádí žádnou činnost. V tomto stavu lze používat telefon (pokud je k modemu připojen) nebo volat metody Call nebo WaitForCall.
- CALLING (1): Modem právě vytáčí číslo. Do tohoto stavu se modem dostane voláním metody Call. Stav je změněn po dosáhnutí spojení (změna na stav CONNECTED) nebo po volání metody HangUp nebo po vypršení timeoutu (změna na stav IDLE).
- CONNECTED (2): Modem je spojen s protější stranou. V tomto stavu lze přenášet data pomocí objektu PmComm. Tento stav se změní po volání metody HangUp nebo po zavěšení protější stranou (změna na stav IDLE).
- WAITING FOR CALL (3): Modem čeká na zavolání protější stranou. Tento stav se změní po dosažení spojení (změna na stav CONNECTED) nebo po volání metody HangUp (změna na stav IDLE).
- jiné hodnoty: Jiné hodnoty (větší než 20) představují přechodné stavy, které mohou nastat například při přechodu ze stavu CONNECTED do stavu IDLE, atd.
 
Přenos dat přes modem je umožněn následujícími postupy:
1. MASTER komunikace (tzn. případ, kdy musí být vytočeno telefonní číslo)
a) objekt PmModem vytočí číslo (metodou Call)
b) po navázání spojení se objekt spojí s objektem PmComm a začne přenášet přes tento objekt datové zprávy definované objektem PmCommMsg. Spojení s objektem PmComm provede modem sám, pokud je v objektu PmModem definovaná cesta k objektu PmComm. Algoritmem tohoto objektu lze realizovat začátek přenosu zpráv voláním metody PmCommMsg.Run.
c) po přenesení požadovaných zpráv objekt PmModem položí sluchátko (metodou HangUp).
2. SLAVE komunikace (tzn. případ, kdy modem naslouchá až někdo zavolá)
a) objekt PmModem čeká na zavolání (metodou WaitForCall)
b) po navázání spojení se objekt spojí s objektem PmComm a začne přes tento objekt přenášet zprávy definované objektem PmCommMsg (zpráva by měla být typu Slave - metoda PmCommMsg.Run není volána)
c) po přenesení požadovaných zpráv položí Master strana sluchátko, což také způsobí položení sluchátka objektem PmModem.
 
Nejběžněji používaným řešením komunikace pomocí modemu je případ MASTER komunikace umožňující komunikaci přes modem například s PLC automaty (ty jsou běžně ve stavu SLAVE).

Příklad aplikace na použítí modemu viz Příklad na komunikaci přes telefonní modem (objekt PmModem).

© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice