testuji komunikaci s přepočítávačem midiELCOR v aplikaci PROMOTIC prostřednictvím ovladače "PmElgas2 (serial)". Jedná se o prázdnou aplikaci, která obsahuje pouze výchozí DEMO objekty vložené prostřednictvím příkazu "New object" > "Communication" > "PmElgas2 - Communication set with data and panel".
Komunikace se samotným přepočítávačem midiELCOR funguje zcela bez problémů. Problém nastává při použití komunikačního modulu DATCOM-K1. Na panelu "Info Device" lze sice číst čas zařízení (tlačítko "Read time from device"), seznam objektů (tlačítko "Read Object List") již přečíst nelze - Info system hlásí u příslušného objektu chybu "66 - bad data read". Stejný problém je i při čtení jakýchkoli veličin pomocí PmCommData.
Připojuji ASCII záznam komunikace při čtení seznamu objektů přes komunikační modul DATCOM-K1:
- Code: Select all
16 11:48:40 Promotic.exe IOCTL_SERIAL_PURGE 19H2KP0 SUCCESS Purge: TXABORT RXABORT RXCLEAR
17 11:48:40 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
18 11:48:40 Promotic.exe IOCTL_SERIAL_SET_TIMEOUTS 19H2KP0 SUCCESS RI:100 RM:0 RC:0 WM:2 WC:500
19 11:48:40 Promotic.exe IOCTL_SERIAL_SET_TIMEOUTS 19H2KP0 SUCCESS RI:100 RM:1 RC:1000 WM:2 WC:500
20 11:48:45 Promotic.exe IOCTL_SERIAL_PURGE 19H2KP0 SUCCESS Purge: RXCLEAR
21 11:48:45 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
22 11:48:45 Promotic.exe IOCTL_SERIAL_WAIT_ON_MASK 19H2KP0 SUCCESS
23 11:48:45 Promotic.exe IRP_MJ_WRITE 19H2KP0 SUCCESS Length 71: ............................................p..........................
24 11:48:45 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
25 11:48:45 Promotic.exe IRP_MJ_READ 19H2KP0 TIMEOUT Length 2017: ...p................p...e4.06...02477992.........(P....f..B..pA.v..=..A?...B...?...............................B..C?...>..M=..[=..5<.o.<..#<................E....1.%...`...ATD*99***1#...........................(..kPa..... .C.......m........MJ/m3............(..;....................K...........Tlak p.................kPa.......p=....../D..ZEZe.`..b.........K...........Teplota t...............C.........;..H.......pB..uY..b.........K...........Interni teplota A3......C.........>...... ....B......b.........K...........Napeti baterie A4......V.......h..;...........@......b.........K...........Kapacita baterie A5....%..........:...........B......b.........K...........Napeti bat. mod. A6....V.......@..<.......... A......b.........K...........Kap. bat. mod A7.......%..........:...........B......b.........K...........Sila GSM signalu A8....%..........:...........B......b.........@.=..".p...P..Chyba zar. B1.................OK...........Chyba..F.......q...Q..Externi napajeni B2.2.2..b....Napajeni OK.KChyba napaj..F....2.r...R..Kontakt.b....OK.K.K.K.K.K.Alarm.m.m.m.mK.0....s...S.QOkno volani B4.4.4.4.4..!..U.......neaktivni.i.iaktivni.i.i.iK.0....t...T.IServisni okno B5.5.5.5..b.....,....neaktivni.i.iaktivni.i.i.iF......u...U.ANapaj. modemu B6.6.6.6...b....Vypnuto.o.o.oZapnuto.o.o.oF....1.v...V.AExt.napajeni mod B7.7.7..b....Napajeni OK.KChyba napaj..@.>..3.w...W.ASuma alarmu B8.8.8.8.8.8.8.8..OK.K.K.K.K.K.Alarm.mF..../.x.....`Vystup Alarm B9.9.9.9.9..b....Alarm.m.m.m.mOK.K.K.K.K.K.U. .........Provozni objem Vm.m.m.mm3............$@$@$@..b.........83021328..........U. ..-..... Vystup Vb+Vbs V2.2.2.2.m3.............?.?.?..b...........................U. ........ Vystup Vm V3.3.3.3.3.3.m3.............?.?.?..b...........................;.-...."....Nahr.prov. objem Vs.s.sm3............$@........4.!....&."..Normovany objem Vb.b.b.m3...............3........*..Nahr.norm. objem Vbs.s.m3......."......6."....6.2..Prutok Q.Q.Q.Q.Q.Q.Q.Q.m3/h......b........2.#....:.6..Prutok normovany Qb.b.bm3/h...........F0..
26 11:48:45 Promotic.exe IOCTL_SERIAL_WAIT_ON_MASK 19H2KP0 CANCELLED
27 11:49:12 Promotic.exe IOCTL_SERIAL_PURGE 19H2KP0 SUCCESS Purge: TXABORT RXABORT
28 11:49:12 Promotic.exe IRP_MJ_CLEANUP 19H2KP0 SUCCESS
29 11:49:12 Promotic.exe IRP_MJ_CLOSE 19H2KP0 SUCCESS
A ještě ASCII záznam komunikace při čtení seznamu objektů přímo z přepočítávačem midiELCOR:
- Code: Select all
0 13:43:47 Promotic.exe IOCTL_SERIAL_PURGE 19H2KP0 SUCCESS Purge: TXABORT RXABORT RXCLEAR
1 13:43:47 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
2 13:43:47 Promotic.exe IOCTL_SERIAL_SET_TIMEOUTS 19H2KP0 SUCCESS RI:100 RM:0 RC:0 WM:2 WC:500
3 13:43:47 Promotic.exe IOCTL_SERIAL_SET_TIMEOUTS 19H2KP0 SUCCESS RI:100 RM:1 RC:1000 WM:2 WC:500
4 13:44:14 Promotic.exe IOCTL_SERIAL_PURGE 19H2KP0 SUCCESS Purge: RXCLEAR
5 13:44:14 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
6 13:44:14 Promotic.exe IOCTL_SERIAL_WAIT_ON_MASK 19H2KP0 SUCCESS
7 13:44:14 Promotic.exe IRP_MJ_WRITE 19H2KP0 SUCCESS Length 71: ............................................p..........................
8 13:44:14 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
9 13:44:14 Promotic.exe IRP_MJ_READ 19H2KP0 TIMEOUT Length 2037: ...p................p...e4.06...02477992.........(P....f..B..pA.v..=..A?...B...?...............................B..C?...>..M=..[=..5<.o.<..#<................E....1.%...`...ATD*99***1#...........................(..kPa..... .C.......m........MJ/m3............(..;....................K...........Tlak p.................kPa.......p=....../D..ZEZe.`..b.........K...........Teplota t..,..t.........C.........;..H.......pB..uY..b.........K...........Interni teplota A3.........C.........>...... ....B......b.........K...........Napeti baterie A4.A4./.V.......h..;...........@......b.........K...........Kapacita baterie A5.A5.%..........:...........B......b.........K...........Napeti bat. mod. A6.A6.V.......@..<.......... A......b.........K...........Kap. bat. mod A7.A7..?.%..........:...........B......b.........K...........Sila GSM signalu A8.A8.%..........:...........B......b.........@.=..".p...P..Chyba zar. B1.B1.......d{Vm}..OK.OK........Chyba.bF.......q...Q..Externi napajeni B2. B2..b....Napajeni OK. Chyba napaj..F....2.r...R..Kontakt naruseni B3. B3..b....OK..OK.K.K.K.Alarm.arm.m.mK.0....s...S.QOkno volani B4. B4.4.4..!..U.......neaktivni.vniaktivni.vni.iK.0....t...T.IServisni okno B5. B5.5..b.....,....neaktivni.vniaktivni.vni.iF......u...U.ANapaj. modemu B6. B6.6...b....Vypnuto.uto.oZapnuto.uto.oF....1.v...V.AExt.napajeni mod B7. B7..b....Napajeni OK. Chyba napaj..@.>..3.w...W.ASuma alarmu B8. B8.8.8.8.8.8..OK..OK.K.K.K.Alarm.aF..../.x.....`Vystup Alarm B9. B9.9.9..b....Alarm.arm.m.mOK.mOK.K.K.K.U. .........Provozni objem Vm. Vm.mm3............$@..$@..b.........83021328..........U. ..-..... Vystup Vb+Vbs V2. V2.2.m3.............?...?..b...........................U. ........ Vystup Vm V3. V3.3.3.3.m3.............?...?..b...........................;.-...."....Nahr.prov. objem Vs. Vsm3............$@........4.!....&."..Normovany objem Vb. Vb.m3...............3........*..Nahr.norm. objem Vbs.Vbm3......."......6."....6.2..Prutok Q.k Q.Q.Q.Q.Q.Q.m3/h......b........2.#....:.6..Prutok normovany Qb. Qbm3/h............I..
10 13:44:14 Promotic.exe IOCTL_SERIAL_WAIT_ON_MASK 19H2KP0 SUCCESS
11 13:44:17 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
12 13:44:17 Promotic.exe IRP_MJ_WRITE 19H2KP0 SUCCESS Length 71: ............................................p.......................1..
13 13:44:17 Promotic.exe IOCTL_SERIAL_WAIT_ON_MASK 19H2KP0 SUCCESS
14 13:44:17 Promotic.exe IOCTL_SERIAL_SET_WAIT_MASK 19H2KP0 SUCCESS Mask: ERR
15 13:44:17 Promotic.exe IRP_MJ_READ 19H2KP0 TIMEOUT Length 253: ...p.............F.F..4.y...X..Setpoint Qmax S1..(P....<.F"..neaktivni.?..aktivni......7.$....>.:..Prepocit. cislo C...>........E..pA...?*....)./....B.>..Stupen kompres. K.TD*99......B.;..'.F.B..Status St1....(..kPa....."....,.........................{.
16 13:44:17 Promotic.exe IOCTL_SERIAL_WAIT_ON_MASK 19H2KP0
Pro úplnost dodávám, že např. program TELVES, který dodává přímo společnost Elgas, nemá s komunikovací přes komunikační modul DATCOM-K1 žádný problém.
Lukáš Krejčí