Reid Cheng
Dear all,

I'm running a quick demo test by using scadaBR, openPLC, and python modbus module. I want to use dnp3 between scadaBR and openplc, modbus protocol between openplc and python modbus modules, so far, openplc is able to establish the modbus and dnp3 connection without any errors, but I can not retrieve the point value on scadabr.  Please guide through how to setup scadabr or any documents you recommend I can refer to. 

Here's my modbus slave config: 
Num_Devices = "6"
# Device 0
device0.name = "feed-1"
device0.protocol = "TCP"
device0.slave_id = "247"
device0.address = "192.168.95.10"
device0.IP_Port = "502"
device0.RTU_Baud_Rate = ""
device0.RTU_Parity = ""
device0.RTU_Data_Bits = ""
device0.RTU_Stop_Bits = ""
device0.Discrete_Inputs_Start = "0"
device0.Discrete_Inputs_Size = "0"
device0.Coils_Start = "0"
device0.Coils_Size = "0"
device0.Input_Registers_Start = "1"
device0.Input_Registers_Size = "2"
device0.Holding_Registers_Start = "1"
device0.Holding_Registers_Size = "1"

# Device 1
device1.name = "feed-2"
device1.protocol = "TCP"
device1.slave_id = "247"
device1.address = "192.168.95.11"
device1.IP_Port = "502"
device1.RTU_Baud_Rate = ""
device1.RTU_Parity = "" 0
device1.RTU_Data_Bits = ""
device1.RTU_Stop_Bits = ""
device1.Discrete_Inputs_Start = "0"
device1.Discrete_Inputs_Size = "0"
device1.Coils_Start = "0"
device1.Coils_Size = "0"
device1.Input_Registers_Start = "1"
device1.Input_Registers_Size = "2"
device1.Holding_Registers_Start = "1"
device1.Holding_Registers_Size = "1"

# Device 2
device2.name = "purge"
device2.protocol = "TCP"
device2.slave_id = "247"
device2.address = "192.168.95.12"
device2.IP_Port = "502"
device2.RTU_Baud_Rate = ""
device2.RTU_Parity = ""
device2.RTU_Data_Bits = ""
device2.RTU_Stop_Bits = ""
device2.Discrete_Inputs_Start = "0"
device2.Discrete_Inputs_Size = "0"
device2.Coils_Start = "0"
device2.Coils_Size = "0"
device2.Input_Registers_Start = "1"
device2.Input_Registers_Size = "2"
device2.Holding_Registers_Start = "1"
device2.Holding_Registers_Size = "1"

# Device 3
device3.name = "product"
device3.protocol = "TCP"
device3.slave_id = "247"
device3.address = "192.168.95.13"
device3.IP_Port = "502"
device3.RTU_Baud_Rate = ""
device3.RTU_Parity = ""
device3.RTU_Data_Bits = ""
device3.RTU_Stop_Bits = ""
device3.Discrete_Inputs_Start = "0"
device3.Discrete_Inputs_Size = "0"
device3.Coils_Start = "0"
device3.Coils_Size = "0"
device3.Input_Registers_Start = "1"
device3.Input_Registers_Size = "2"
device3.Holding_Registers_Start = "1"
device3.Holding_Registers_Size = "1"

# Device 4
device4.name = "tank"
device4.protocol = "TCP"
device4.slave_id = "247"
device4.address = "192.168.95.14"
device4.IP_Port = "502"
device4.RTU_Baud_Rate = ""
device4.RTU_Parity = ""
device4.RTU_Data_Bits = ""
device4.RTU_Stop_Bits = ""
device4.Discrete_Inputs_Start = "0"
device4.Discrete_Inputs_Size = "0"
device4.Coils_Start = "0"
device4.Coils_Size = "0"
device4.Input_Registers_Start = "1"
device4.Input_Registers_Size = "2"
device4.Holding_Registers_Start = "0"
device4.Holding_Registers_Size = "0"

# Device 5
device5.name = "analyzer"
device5.protocol = "TCP"
device5.slave_id = "247"
device5.address = "192.168.95.15"
device5.IP_Port = "502"
device5.RTU_Baud_Rate = ""
device5.RTU_Parity = ""
device5.RTU_Data_Bits = ""
device5.RTU_Stop_Bits = ""
device5.Discrete_Inputs_Start = "0"
device5.Discrete_Inputs_Size = "0"
device5.Coils_Start = "0"
device5.Coils_Size = "0"
device5.Input_Registers_Start = "1"
device5.Input_Registers_Size = "3"
device5.Holding_Registers_Start = "0"
device5.Holding_Registers_Size = "0"
Quote 0 0
thiagoralves
From your text-based config files I assume you're using OpenPLC v2. So, my first tip to you is upgrade to OpenPLC v3. The second thing is that, apparently, ScadaBR DNP3 driver is a big buggy. It might require some specific configuration on both ends to do the trick. Unless it is absolutely necessary for you to use DNP3, I recommend you to use Modbus with ScadaBR as well. It is a lot easier to configure and it works well.
Quote 0 0