Modbus TCP to AccuEnergy Energy Meters

Hi All,

I have got a couple of AccuEnergy energy meters that I need to read values from. I have been able to read values using Modbus Poll. But no such luck with Ignition.

I have added one of the meters to device connections with Modbus TCP as the protocol. The IP Address is correct and zero-based addressing is checked.

Here's a screenshot from the literature:

I want to read the Frequency. So, I have a tag called 'Frequency' with value setup as:

with 'HRF0', I was expecting the two registers at 4000H and 4001H to be read and converted to a Float. However, the value is being displayed as 'Uncertain_InitialValue'.

What am I doing wrong? Has anyone worked with AccuEnergy meters? Any guidance would be awesome.

Thank you all!

Have you scanned the point with a modbus tool like CAS?

Have you tried with a device id? i.e. [EnergyMeter1]1.HRF0

Use HRF16384 or 1.HRF16384. You may also need to configure the Ignition device's advanced settings to use Zero-Based Addressing, and possibly also Swap Words.

2 Likes

On MODBUS devices, I usually start with just trying to read the individual registers as a INTs. It serves as a sanity check that data is actually reading before jumping to the more complex forms.

1 Like

This check is dramatically easier, via Ignition's Quick Client, when the driver supports browsing of all of the variations.

(* Cough *)

2 Likes

As @pturmel pointed out, you need to use the decimal addresses, but I just wanted to note that I think on the hex version, you are confusing the leading 4 as a 4xxxx style holding register, but when you convert to decimal you get the 16384 for 4000h meaning in any other software that you use the 4xxxxx style to read holding registers you'd need to prefix that value with a 4 (416384). Ignition doesn't use this format, so use the addressing like previously shown.

2 Likes

Yup. I am using Modbus Poll and reading is good.

Thanks pturmel.

I had to use 1.HRF16384. I had already turned on the Zero Based Addressing. And didn't need to swap words.

You solved it, as always!

1 Like

Agreed. I tried to do so but couldn't.

I tried with both Hex and Decimal address. But I missed the preceding node address.