Connecting Balluff BNI004A to Ignition

I’m trying to connect a Balluff BNI004A to Ignition without a PLC. Is there any way do get data from the connected ports through scripting/non OPC-UA methods? I have a air humidity sensor connected to the I/O block, and I would like a way to get the raw data from the I/O block and either write it to a tag, or bring it in through a script.

@pturmel has an EIP comms module for such things.

https://inductiveautomation.com/moduleshowcase/module/automation-professionals-llc-ethernetip-class-1-communications

1 Like

See these posts:

1 Like

Is there any other options than this? Even if it is more involved, I would like to find a way to do this without @pturmel 's module.

Balluff has multiple models. IIRC, some are Modbus TCP, which Ignition can natively poll. There are other brands of IOLink masters with full OPC/UA servers.

If it has to be the BNI004A, I’m pretty sure only my module will talk to it. Short of scraping its configuration web page. Not sure if live data is displayed there to be scraped, though.

1 Like

The BNI004A module constantly publishes json formatted data on the connected sensors/device. This can by accessed via the master IP address with '/dprop.jsn' at the end. -> xxx.xxx.xxx.xxx/dprop.jsn.

Below is a small code example:

jsonString = system.net.httpGet("http://192.168.50.70/dprop.jsn")
# Decode the JSON string and store the results into a variable.
obj = system.util.jsonDecode(jsonString)
  
# Do something with the results. The code below prints the data type of the results to the console.
print type(obj)

# Print List
print obj

1 Like