Tenho uma aplicação que já tem 5 dispositivos modbus configurados (possuo licença para 28 dispositivos). Adicionei o 6 dispositivo, o driver comunica normalmente, porém quando executo a aplicação, as tags referentes a este novo dispositivo ficam sem valores (campos vermelhos com interrogações amarelas). Qual a causa?
Driver Modbus não funciona na aplicação
Alexandre, esse comportamento pode ter diversas causas. Sugiro você verificar se, por acaso, não está comunicando com o mesmo equipamento (se for comunicação serial) e, verifique também a quantidade de drivers da aplicação e o número de licenças existentes. Isto você pode visualizar através do E3 Admin, no menu ‘Licenças’.
Uma informação mais precisa poderá estar no log deste driver. Cole aqui o pedaço do log com o erro.
Bom dia Enrico! O número de licenças está OK, possuo 37 e só estou usando 6. Também não estou comunicando com o mesmo equipamento. Habilitei o log, fiz uma comunicação direto pelo driver no studio (que funciona), e outra com a aplicação rodando, segue o resultado:
01/12/2017 06:23:30.694 (47F8) DRIVER Driver name: Driver Modicon Modbus v3.1.36 (IOKitLib v2.0.77)
01/12/2017 06:23:30.694 (47F8) DRIVER IOKitLib version 2.0.77 of Mar 17 2017 09:53:47
01/12/2017 06:23:30.694 (47F8) DEBUG CModbusHost CREATED
01/12/2017 06:23:30.694 (47F8) DRIVER Selected RTU mode!
01/12/2017 06:23:30.694 (47F8) DRIVER Warning: Ethernet layer being used without ModbusTCP protocol!
01/12/2017 06:23:30.695 (47F8) DRIVER User Types file compiled successfully!
01/12/2017 06:23:30.695 (47F8) DRIVER drvStartComm(0,0,0,0)
01/12/2017 06:23:30.695 (47F8) DRIVER Current configuration (71 parameters):
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.BackupIP = ‘’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.BackupIP2 = ‘’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.BackupIP3 = ‘’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.ListenIP = ‘’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.MainIP = ‘10.7.41.175’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.MainPort = 6002
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.PingTimeoutMs = 4000
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.PingTries = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Ethernet.Transport = ‘TCP’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.GiveUpTries = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Log.Enable = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Log.Filename = ‘C:\eeLogs\Modbus_%DATE%.log’
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.RecoverEnable = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.RecoverPeriodSec = 20
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Serial.Baudrate = 9600
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Serial.DataBits = 8
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Serial.Port = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.TimeoutMs = 15000
01/12/2017 06:23:30.695 (47F8) DRIVER - IO.Type = ‘Ethernet’
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.ConfigFile = '[Functions]
Function: 1
Read: 3
Write: 16
Type: word
Size: 2
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 2
Read: 3
Write: 16
Type: dword
Size: 4
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 3
Read: 3
Write: 16
Type: int16
Size: 2
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 4
Read: 3
Write: 16
Type: int32
Size: 4
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 5
Read: 3
Write: 16
Type: float
Size: 4
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 6
Read: 1
Write: 15
Type: bit
Size: 0
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 7
Read: 2
Write: 0
Type: bit
Size: 0
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
[End]
’
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.DefaultSlaveAddress = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.EnableGenSOERegGrouping = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.EnableReconnectAfterTimeout = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.MaxPDUSize = 253
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.Olderaddr = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.UserTypesConfigFile = '// USER DEFINED TYPES SAMPLE CONFIG FILE
// The samples below illustrate how to create user defined structs, using the driver built-in types (note the built-in
// types must be entered with the same keywords used in the Data combobox of the operations).
// The new user types can afterwards be used in the same way as the other built-in types in the Data combobox.
/* Sample types entirely commented by default
struct TYPE1 // TYPE 1 - declares struct with elements with no name, and no timestamp
{
int16;
word;
dword;
int32;
}
// TYPE2 declares named elements, and includes a timestamp of GenTime type. The named elements can then be
// loaded to the user application using E3 Tag Browser.
// NOTE: the timestamp value will not be returned on a block element, but rather returned on the timestamp property
// of the block type tag. The order in which the timestamp appears within the structure is related to the order
// in which this field appears within the data area of the received protocol frame (usually the first field).
struct TYPE2
{
timestamp = GenTime; // this time field will be returned in the block’s timestamp field
GenTime timeField; // this time field will be returned in the block’s first element
dword dwordField;
}
struct TYPE3 // this type has a timestamp of type UTC32 and some named elements
{
DefaultAddress = 0x101;
timestamp = UTC32;
float Va;
float Vb;
float Vc;
float Ia;
float Ib;
float Ic;
}
*/’
01/12/2017 06:23:30.695 (47F8) DRIVER - ModiconModbus.WaitSilenceOnError = 1
01/12/2017 06:23:30.695 (47F8) DRIVER - 44 parameters with value = 0 were omitted
01/12/2017 06:23:30.695 (4C10) IOKIT INITIALIZING…
01/12/2017 06:23:30.695 (4C10) SOCKET Winsock initialized: version=2.2, highVersion=2.2
01/12/2017 06:23:30.695 (4C10) IOKIT INITIALIZED!
01/12/2017 06:23:30.695 (4C10) IOKIT Request handler enabled
01/12/2017 06:23:30.695 (4C10) IOKIT CONNECTING…
01/12/2017 06:23:30.695 (4C10) SOCKET connecting socket to ‘10.7.41.175’ on port 6002…
01/12/2017 06:23:30.696 (4E7C) TAG Tag(10.6.0.7500[8]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:23:30.696 (4E7C) SUPERBLOCK Tag(10.6.0.7500[8]).Normalize = Linear(1:7500)
01/12/2017 06:23:30.696 (4E7C) TAG Tag(10.3.0.10330[6]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:23:30.696 (4E7C) SUPERBLOCK Tag(10.3.0.10330[6]).Normalize = Linear(2:10330) (x1,00000003)
01/12/2017 06:23:30.696 (4E7C) TAG Tag(10.3.0.10340[3]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:23:30.696 (4E7C) SUPERBLOCK Tag(10.3.0.10340[3]).Normalize = Linear(2:10340) (x1,00000003)
01/12/2017 06:23:30.696 (4E7C) TAG Tag(10.3.0.10300[24]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:23:30.696 (4E7C) SUPERBLOCK Tag(10.3.0.10300[24]).Normalize = Linear(2:10300) (x1,00000003)
01/12/2017 06:23:30.696 (4E7C) TAG Tag(10.6.0.10586).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:23:30.696 (4E7C) SUPERBLOCK Tag(10.6.0.10586).Normalize = Linear(1:10586)
01/12/2017 06:23:30.696 (47F8) SUPERBLOCK Linear(1:7500).Unnormalize = Tag(10.0.1.7500.Blob:00606E70)
01/12/2017 06:23:30.702 (4C10) SOCKET socket connected to ‘10.7.41.175’ on port 6002 (local port 58231)!
01/12/2017 06:23:30.702 (4C10) IOKIT CONNECTED!
01/12/2017 06:23:30.706 (4C10) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:23:32.937 (4C10) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:23:32.937 (47F8) TAG <== (2.242) Tag(10.0.1.7500.Blob:00606E70[8]).ReadBlock = (06:23:30.696) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:23:32.937 (47F8) SUPERBLOCK Linear(2:10300).Unnormalize = Tag(10.0.3.10300.Blob:00606ED8)
01/12/2017 06:23:32.938 (4C10) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:23:33.656 (4C10) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 17 00 22 A8 6A
01/12/2017 06:23:33.656 (47F8) TAG <== (0.718) Tag(10.0.3.10300.Blob:00606ED8[43]).ReadBlock = (06:23:32.937) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,23,34}
01/12/2017 06:23:33.656 (47F8) SUPERBLOCK Linear(1:10586).Unnormalize = Tag(10.0.1.10586.Blob:00606FA8)
01/12/2017 06:23:33.656 (4C10) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:23:34.171 (4C10) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:23:34.171 (47F8) TAG <== (0.515) Tag(10.0.1.10586.Blob:00606FA8[1]).ReadBlock = (06:23:33.656) 1
01/12/2017 06:23:40.773 (4C10) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:23:42.594 (4C10) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:23:42.594 (47F8) TAG <== (1.822) Tag(10.0.1.7500.Blob:00606E70[8]).ReadBlock = (06:23:40.773) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:23:42.594 (4C10) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:23:43.376 (4C10) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 17 00 2C 29 AE
01/12/2017 06:23:43.376 (47F8) TAG <== (0.782) Tag(10.0.3.10300.Blob:00606ED8[43]).ReadBlock = (06:23:42.594) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,23,44}
01/12/2017 06:23:43.376 (4C10) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:23:43.969 (4C10) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:23:43.969 (47F8) TAG <== (0.593) Tag(10.0.1.10586.Blob:00606FA8[1]).ReadBlock = (06:23:43.376) 1
01/12/2017 06:23:50.770 (4C10) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:23:52.142 (4C10) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:23:52.142 (47F8) TAG <== (1.373) Tag(10.0.1.7500.Blob:00606E70[8]).ReadBlock = (06:23:50.770) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:23:52.142 (4C10) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:23:53.001 (4C10) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 17 00 35 E8 64
01/12/2017 06:23:53.001 (47F8) TAG <== (0.859) Tag(10.0.3.10300.Blob:00606ED8[43]).ReadBlock = (06:23:52.142) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,23,53}
01/12/2017 06:23:53.002 (4C10) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:23:53.516 (4C10) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:23:53.517 (47F8) TAG <== (0.515) Tag(10.0.1.10586.Blob:00606FA8[1]).ReadBlock = (06:23:53.002) 1
01/12/2017 06:24:00.721 (4C10) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:24:02.409 (4C10) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:24:02.409 (47F8) TAG <== (1.688) Tag(10.0.1.7500.Blob:00606E70[8]).ReadBlock = (06:24:00.721) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:24:02.409 (4C10) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:24:03.174 (4C10) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 18 00 03 58 71
01/12/2017 06:24:03.174 (47F8) TAG <== (0.765) Tag(10.0.3.10300.Blob:00606ED8[43]).ReadBlock = (06:24:02.409) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,24,3}
01/12/2017 06:24:03.174 (4C10) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:24:03.752 (4C10) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:24:03.752 (47F8) TAG <== (0.578) Tag(10.0.1.10586.Blob:00606FA8[1]).ReadBlock = (06:24:03.174) 1
01/12/2017 06:24:10.753 (4C10) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:24:12.862 (4C10) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:24:12.862 (47F8) TAG <== (2.110) Tag(10.0.1.7500.Blob:00606E70[8]).ReadBlock = (06:24:10.753) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:24:12.863 (4C10) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:24:13.581 (4C10) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 18 00 0E 99 B4
01/12/2017 06:24:13.581 (47F8) TAG <== (0.719) Tag(10.0.3.10300.Blob:00606ED8[43]).ReadBlock = (06:24:12.862) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,24,14}
01/12/2017 06:24:13.581 (4C10) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:24:14.206 (4C10) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:24:14.206 (47F8) TAG <== (0.625) Tag(10.0.1.10586.Blob:00606FA8[1]).ReadBlock = (06:24:13.581) 1
01/12/2017 06:24:20.707 (4C10) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:24:22.191 (4C10) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:24:22.191 (47F8) TAG <== (1.485) Tag(10.0.1.7500.Blob:00606E70[8]).ReadBlock = (06:24:20.707) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:24:22.191 (4C10) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:24:23.019 (4C10) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 18 00 17 58 7E
01/12/2017 06:24:23.019 (47F8) TAG <== (0.828) Tag(10.0.3.10300.Blob:00606ED8[43]).ReadBlock = (06:24:22.191) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,24,23}
01/12/2017 06:24:23.020 (4C10) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:24:23.566 (4C10) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:24:23.566 (47F8) TAG <== (0.547) Tag(10.0.1.10586.Blob:00606FA8[1]).ReadBlock = (06:24:23.020) 1
01/12/2017 06:24:24.513 (47F8) DRIVER drvStopComm(0,0,0,0)
01/12/2017 06:24:24.513 (47F8) IOKIT Stopping physical layer thread…
01/12/2017 06:24:24.513 (47F8) IOKIT Waiting for termination of physical layer thread…
01/12/2017 06:24:24.513 (4C10) SOCKET socket closed
01/12/2017 06:24:24.513 (4C10) IOKIT TERMINATING…
01/12/2017 06:24:24.514 (4C10) IOKIT TERMINATED! (0 bytes sent, 0 bytes received)
01/12/2017 06:24:24.514 (4C10) IOKIT Request handler disabled
01/12/2017 06:24:24.514 (47F8) IOKIT Physical layer thread stopped!
01/12/2017 06:24:24.514 (47F8) DEBUG CModbusHost DELETED
01/12/2017 06:25:35.681 (5140) DRIVER Driver name: Driver Modicon Modbus v3.1.36 (IOKitLib v2.0.77)
01/12/2017 06:25:35.681 (5140) DRIVER IOKitLib version 2.0.77 of Mar 17 2017 09:53:47
01/12/2017 06:25:35.681 (5140) DEBUG CModbusHost CREATED
01/12/2017 06:25:35.681 (5140) DRIVER Selected RTU mode!
01/12/2017 06:25:35.681 (5140) DRIVER Warning: Ethernet layer being used without ModbusTCP protocol!
01/12/2017 06:25:35.681 (5140) DRIVER User Types file compiled successfully!
01/12/2017 06:25:35.681 (5140) DRIVER drvStartComm(0,0,0,0)
01/12/2017 06:25:35.681 (5140) DRIVER Current configuration (71 parameters):
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.BackupIP = ‘’
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.BackupIP2 = ‘’
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.BackupIP3 = ‘’
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.ListenIP = ‘’
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.MainIP = ‘10.7.41.175’
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.MainPort = 6002
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.PingTimeoutMs = 4000
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.PingTries = 1
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Ethernet.Transport = ‘TCP’
01/12/2017 06:25:35.681 (5140) DRIVER - IO.GiveUpTries = 1
01/12/2017 06:25:35.681 (5140) DRIVER - IO.Log.Enable = 1
01/12/2017 06:25:35.682 (5140) DRIVER - IO.Log.Filename = ‘C:\eeLogs\Modbus_%DATE%.log’
01/12/2017 06:25:35.682 (5140) DRIVER - IO.RecoverEnable = 1
01/12/2017 06:25:35.682 (5140) DRIVER - IO.RecoverPeriodSec = 20
01/12/2017 06:25:35.682 (5140) DRIVER - IO.Serial.Baudrate = 9600
01/12/2017 06:25:35.682 (5140) DRIVER - IO.Serial.DataBits = 8
01/12/2017 06:25:35.682 (5140) DRIVER - IO.Serial.Port = 1
01/12/2017 06:25:35.682 (5140) DRIVER - IO.TimeoutMs = 15000
01/12/2017 06:25:35.682 (5140) DRIVER - IO.Type = ‘Ethernet’
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.ConfigFile = '[Functions]
Function: 1
Read: 3
Write: 16
Type: word
Size: 2
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 2
Read: 3
Write: 16
Type: dword
Size: 4
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 3
Read: 3
Write: 16
Type: int16
Size: 2
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 4
Read: 3
Write: 16
Type: int32
Size: 4
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 5
Read: 3
Write: 16
Type: float
Size: 4
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 6
Read: 1
Write: 15
Type: bit
Size: 0
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
Function: 7
Read: 2
Write: 0
Type: bit
Size: 0
FrameOrder: 0
ByteOrder: 0
WordOrder: 0
DWordOrder: 0
[End]
’
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.DefaultSlaveAddress = 1
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.EnableGenSOERegGrouping = 1
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.EnableReconnectAfterTimeout = 1
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.MaxPDUSize = 253
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.Olderaddr = 1
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.UserTypesConfigFile = '// USER DEFINED TYPES SAMPLE CONFIG FILE
// The samples below illustrate how to create user defined structs, using the driver built-in types (note the built-in
// types must be entered with the same keywords used in the Data combobox of the operations).
// The new user types can afterwards be used in the same way as the other built-in types in the Data combobox.
/* Sample types entirely commented by default
struct TYPE1 // TYPE 1 - declares struct with elements with no name, and no timestamp
{
int16;
word;
dword;
int32;
}
// TYPE2 declares named elements, and includes a timestamp of GenTime type. The named elements can then be
// loaded to the user application using E3 Tag Browser.
// NOTE: the timestamp value will not be returned on a block element, but rather returned on the timestamp property
// of the block type tag. The order in which the timestamp appears within the structure is related to the order
// in which this field appears within the data area of the received protocol frame (usually the first field).
struct TYPE2
{
timestamp = GenTime; // this time field will be returned in the block’s timestamp field
GenTime timeField; // this time field will be returned in the block’s first element
dword dwordField;
}
struct TYPE3 // this type has a timestamp of type UTC32 and some named elements
{
DefaultAddress = 0x101;
timestamp = UTC32;
float Va;
float Vb;
float Vc;
float Ia;
float Ib;
float Ic;
}
*/’
01/12/2017 06:25:35.682 (5140) DRIVER - ModiconModbus.WaitSilenceOnError = 1
01/12/2017 06:25:35.682 (5140) DRIVER - 44 parameters with value = 0 were omitted
01/12/2017 06:25:35.682 (5170) IOKIT INITIALIZING…
01/12/2017 06:25:35.682 (5170) SOCKET Winsock initialized: version=2.2, highVersion=2.2
01/12/2017 06:25:35.682 (5170) IOKIT INITIALIZED!
01/12/2017 06:25:35.682 (5170) IOKIT Request handler enabled
01/12/2017 06:25:35.682 (5170) IOKIT CONNECTING…
01/12/2017 06:25:35.682 (5170) SOCKET connecting socket to ‘10.7.41.175’ on port 6002…
01/12/2017 06:25:35.682 (5140) TAG Tag(10.6.0.7500[8]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:25:35.682 (5140) SUPERBLOCK Tag(10.6.0.7500[8]).Normalize = Linear(1:7500)
01/12/2017 06:25:35.682 (5140) TAG Tag(10.3.0.10330[6]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:25:35.682 (5140) SUPERBLOCK Tag(10.3.0.10330[6]).Normalize = Linear(2:10330) (x1,00000003)
01/12/2017 06:25:35.682 (5140) TAG Tag(10.3.0.10340[3]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:25:35.682 (5140) SUPERBLOCK Tag(10.3.0.10340[3]).Normalize = Linear(2:10340) (x1,00000003)
01/12/2017 06:25:35.682 (5140) TAG Tag(10.3.0.10300[24]).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:25:35.682 (5140) SUPERBLOCK Tag(10.3.0.10300[24]).Normalize = Linear(2:10300) (x1,00000003)
01/12/2017 06:25:35.683 (5140) SUPERBLOCK Linear(1:7500).Unnormalize = Tag(10.0.1.7500.Blob:00529F58)
01/12/2017 06:25:35.688 (5170) SOCKET socket connected to ‘10.7.41.175’ on port 6002 (local port 58250)!
01/12/2017 06:25:35.689 (5170) IOKIT CONNECTED!
01/12/2017 06:25:35.693 (5170) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:25:37.745 (5170) IO RX: 0A 01 01 0B 12 6B
01/12/2017 06:25:37.746 (5140) TAG <== (2.062) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = (06:25:35.683) array(8;HVAL) {1,1,0,1,0,0,0,0}
01/12/2017 06:25:37.746 (5140) SUPERBLOCK Linear(2:10300).Unnormalize = Tag(10.0.3.10300.Blob:00529FC0)
01/12/2017 06:25:37.746 (5170) IO TX: 0A 03 28 3B 00 2B 7C C3
01/12/2017 06:25:38.386 (5170) IO RX: 0A 03 56 00 0A 00 0A 00 0A 00 0A 00 20 00 23 00 28 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 2D 00 27 00 27 00 23 00 23 00 19 00 19 18 10 11 49 00 80 00 8A 50 01 48 21 00 B0 00 B0 00 28 03 20 00 58 00 00 7C 00 24 C4 00 12 00 00 00 06 00 19 00 27 09 AA
01/12/2017 06:25:38.386 (5140) TAG <== (0.640) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = (06:25:37.746) array(43;HVAL) {10,10,10,10,32,35,40,45,45,45,45,45,45,45,45,45,45,45,39,39,35,35,25,25,6160,4425,128,138,20481,18465,176,176,40,800,88,0,31744,9412,18,0,6,25,39}
01/12/2017 06:25:39.146 (5140) TAG Tag(10.6.0.10586).Validate = SUCCESS (type=10;flags=9)
01/12/2017 06:25:39.146 (5140) SUPERBLOCK Tag(10.6.0.10586).Normalize = Linear(1:10586)
01/12/2017 06:25:39.146 (5140) SUPERBLOCK Linear(1:10586).Unnormalize = Tag(10.0.1.10586.Blob:0052A028)
01/12/2017 06:25:39.146 (5170) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:25:39.682 (5170) IO RX: 0A 01 01 FF 13 EC
01/12/2017 06:25:39.683 (5140) TAG <== (0.537) Tag(10.0.1.10586.Blob:0052A028[1]).ReadBlock = (06:25:39.146) 1
01/12/2017 06:25:45.784 (5170) IO TX: 0A 01 1D 4B 00 08 4A CD
01/12/2017 06:25:45.784 (5170) SOCKET socket gracefully closed by the remote partner
01/12/2017 06:25:45.784 (5170) SOCKET socket closed
01/12/2017 06:25:45.834 (5170) IO RX: TIMEOUT
01/12/2017 06:25:45.834 (5170) IOKIT CONNECTION LOST!
01/12/2017 06:25:45.834 (5170) IOKIT RECONNECT POSTPONED!
01/12/2017 06:25:45.834 (5140) TAG <== (0.050) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = ERROR (hr=8004E000)
01/12/2017 06:25:45.834 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:25:45.834 (5140) TAG <== (0.000) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:25:49.234 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:25:49.234 (5140) TAG <== (0.000) Tag(10.0.1.10586.Blob:0052A028[1]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:25:55.734 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:25:55.734 (5140) TAG <== (0.000) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:25:55.734 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:25:55.734 (5140) TAG <== (0.000) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:25:55.835 (5170) IOKIT RECONNECTING…
01/12/2017 06:25:55.835 (5170) SOCKET connecting socket to ‘10.7.41.175’ on port 6002…
01/12/2017 06:25:55.839 (5170) SOCKET socket connected to ‘10.7.41.175’ on port 6002 (local port 58254)!
01/12/2017 06:25:55.839 (5170) IOKIT RECONNECTED!
01/12/2017 06:25:59.235 (5170) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:25:59.235 (5170) SOCKET socket gracefully closed by the remote partner
01/12/2017 06:25:59.235 (5170) SOCKET socket closed
01/12/2017 06:25:59.285 (5170) IO RX: TIMEOUT
01/12/2017 06:25:59.285 (5170) IOKIT CONNECTION LOST!
01/12/2017 06:25:59.285 (5170) IOKIT RECONNECT POSTPONED!
01/12/2017 06:25:59.285 (5140) TAG <== (0.050) Tag(10.0.1.10586.Blob:0052A028[1]).ReadBlock = ERROR (hr=8004E000)
01/12/2017 06:26:05.685 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:05.685 (5140) TAG <== (0.000) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:05.685 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:05.685 (5140) TAG <== (0.000) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:09.186 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:09.186 (5140) TAG <== (0.000) Tag(10.0.1.10586.Blob:0052A028[1]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:15.686 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:15.686 (5140) TAG <== (0.000) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:15.686 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:15.686 (5140) TAG <== (0.000) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:16.287 (5170) IOKIT RECONNECTING…
01/12/2017 06:26:16.287 (5170) SOCKET connecting socket to ‘10.7.41.175’ on port 6002…
01/12/2017 06:26:16.291 (5170) SOCKET socket connected to ‘10.7.41.175’ on port 6002 (local port 58256)!
01/12/2017 06:26:16.291 (5170) IOKIT RECONNECTED!
01/12/2017 06:26:19.187 (5170) IO TX: 0A 01 29 59 00 01 24 FE
01/12/2017 06:26:19.187 (5170) SOCKET socket gracefully closed by the remote partner
01/12/2017 06:26:19.187 (5170) SOCKET socket closed
01/12/2017 06:26:19.237 (5170) IO RX: TIMEOUT
01/12/2017 06:26:19.237 (5170) IOKIT CONNECTION LOST!
01/12/2017 06:26:19.237 (5140) TAG <== (0.050) Tag(10.0.1.10586.Blob:0052A028[1]).ReadBlock = ERROR (hr=8004E000)
01/12/2017 06:26:19.237 (5170) IOKIT RECONNECT POSTPONED!
01/12/2017 06:26:25.737 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:25.737 (5140) TAG <== (0.000) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:25.737 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:25.737 (5140) TAG <== (0.000) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:29.238 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:29.238 (5140) TAG <== (0.000) Tag(10.0.1.10586.Blob:0052A028[1]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:35.730 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:35.730 (5140) TAG <== (0.000) Tag(10.0.1.7500.Blob:00529F58[8]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:35.730 (5140) DRIVER -> Failed, physical layer not connected!
01/12/2017 06:26:35.730 (5140) TAG <== (0.000) Tag(10.0.3.10300.Blob:00529FC0[43]).ReadBlock = ERROR (hr=80004005)
01/12/2017 06:26:37.239 (5170) IOKIT RECONNECTING…
01/12/2017 06:26:37.239 (5170) SOCKET connecting socket to ‘10.7.41.175’ on port 6002…
01/12/2017 06:26:37.243 (5170) SOCKET socket connected to ‘10.7.41.175’ on port 6002 (local port 58261)!
01/12/2017 06:26:37.243 (5170) IOKIT RECONNECTED!
Alexandre, eu percebi que você está configurando a comunicação (Modbus Mode) para RTU Mode. Isso normalmente é usado quando a comunicação é serial ou quando está usando um conversor serial/ethernet.
Se você está usando a comunicação direta via ethernet, mude o Modbus Mode para Modbus TCP. Mas se você está usando um conversor, verifique as restrições de acesso a ele.
Então Enrico, eu sei que esta não é a situação ideal, mas a aplicação foi concebida assim. Trata-se de um modem 3G, a comunicação com o gerenciador de comunicação só existe em modbus RTU. Eu criei uma aplicação nova para testar o equipamento, e funciona normalmente. Mas quando implemento na minha aplicação junto com os outros drivers acontece este problema.
Alexandre, use esta aplicação de testes para colocar 6 drivers com apenas uma variável em cada, para verificar se existe algum limite de conexões neste modem.