Systém PROMOTIC přistupuje k ovladači
AtouchX objektem
PmaActiveX. Tento objekt zpřístupňuje volání metod
AtouchX a zachytává jeho události.
AtouchX je k dispozici na
https://amitomation.cz, odkud lze provést download
zdarma.
Následující text popisuje nastavení a základní kroky úspěšné komunikace pomocí objektu
AtouchX v systému PROMOTIC. (Česko,
https://amitomation.cz).
Instalace a nastavení objektu AtouchX
Kompletní informace k ovladači
AtouchX poskytne firma
AMiT. Ovladač je pouze ve 32 bitové verzi ale od verze
293 se nevyžaduje v metodě
"NetPutData" konkrétní datový typ v zasílaných hodnotách. Tím je snadněji použitelný při komunikaci v
JavaScript jazyce.
Ke komunikaci je nutno mít v počítači nainstalován samotný
AtouchX. Ten je volně ke stažení u výrobce na Webu a postupuje se podle pokynů instalačního programu.
Pro ty PLC automaty, se kterými bude aplikace PROMOTIC komunikovat musí programátor AMiT vyhotovit konfigurační soubory. Obvykle se nazývají
sDBfile.ini,
sHWfile.inia pro archívy
sArchFile.ini. Ty obsahují:
sDBfile.ini: seznam stanic a jejich parametry pro připojení
sHWfile.ini: seznam proměnných, jejich číslo (WID), typ, číslo příslušné stanice a popis proměnné
sArchFile.ini: parametry pro čtení dat z archívů (pouze pokud je čtení z archívu vyžadováno).
Konfigurace komunikace v systému PROMOTIC
Konfigurační soubory pro
AtouchX je nutno mít ve složce
Cfg aplikace PROMOTIC
Ve stromu objektů aplikace PROMOTIC se založí:
Předkonfigurace obsahuje pouze několik běžně používaných metod
AtouchX pro čtení i zápis do proměnných v PLC automatu a dvě metody zjišťující informace o nastavení nebo konfiguraci. Komunikační rozhraní tvoří metody projektanta objektu
PmaFolder. Jsou tam metody inicializační a komunikační. Jejich názvy a parametry jsou shodné s názvy metod a parametrů v
AtouchX.
V kartě "
ActiveX události" objektu
PmaActiveX jsou události (v páru s názvy volaných metod), ve kterých je možno data přišlá z komunikace zpracovat.
Příklady volání metod a jejich zpracování
Příklad NetDetData, NetDetDataMtx:
Volání metody "NetDetData" pro čtení hodnoty jedné proměnné nebo metody "NetDetDataMtx" pro čtení matice hodnot
JavaScriptVBScriptVyber a zkopíruj do schránky
var nErr = pMe.Pm("/AmitAtouchX").NetGetData(2314, 100);
// WID, params
// nebo
var nErr = pMe.Pm("/AmitAtouchX").NetGetDataMtx(1810, 2, 3, 6, 12, 100);
// WID, Row, Col, Rows, Cols, params
Dim nErr
nErr = pMe.Pm("/AmitAtouchX").NetGetData(2314, 100)
' WID, params
' nebo
Dim nErr
nErr = pMe.Pm("/AmitAtouchX").NetGetDataMtx(1810, 2, 3, 6, 12, 100)
' WID, Row, Col, Rows, Cols, params
Příklad zpracování dat v události
EndNetDetDataMtx objektu
PmaActiveX
JavaScriptVBScriptVyber a zkopíruj do schránky
var val0, val1;
if (Result >= 1024)
{
switch (WID)
{
case 2314:
pMe.Pm("/Data/#vars/d2314") = DATA;
break;
case 1810:
val0 = DATA.GetItem(0, 0);
val1 = DATA.GetItem(0, 1);
break;
}
}
Dim val0, val1
If Result >= 1024 Then
Select Case WID
Case 2314
pMe.Pm("/Data/#vars/d2314") = DATA
Case 1810
val0 = DATA(0, 0)
val1 = DATA(0, 1)
End Select
End If
Příklad DBGetInfo:
Volání metody "DBGetInfo" pro čtení informací o proměnné
JavaScriptVBScriptVyber a zkopíruj do schránky
var nErr = pMe.Pm("/AmitAtouchX").DBGetInfo(2314);
// WID
Dim nErr
nErr = pMe.Pm("/AmitAtouchX").DBGetInfo(2314)
' WID
Příklad volání metody
"DBGetInfo" a zpracování vstupně/výstupní hodnoty typu
Array objektu
PmaActiveX
JavaScriptVBScriptVyber a zkopíruj do schránky
var oApp = pMe.Pm("../AtouchApp").Acx;
var mInfo = Pm.CreatePmMap();
mInfo.ParValue = Pm.CreatePmArray(1, 5);
var nState = Pm.CallAxMethod("", oApp, "DBGetInfo", nWID, mInfo);
Pm.Debug("return INFO: " + mInfo.ParValue);
Dim oApp
oApp = pMe.Pm("../AtouchApp").Acx
Dim INFO
INFO = Array(5)
Dim nState
nState = oApp.DBGetInfo(nWID, INFO)
Obchodní podmínky:
Použití objektu
PmaActiveX vyžaduje zakoupení
licence "PmDllActiveX". Při vývoji aplikace ve freeware módu
PmFree nebo s
vývojovou licencí a při jejím testování v runtime je tato komponenta vždy funkční.