Tag Group Scan Rate

I need to monitor voltage and I would like to know if Ignition can reliably handle tag scan rates of 16.67 ms? Is there anything else that I should consider? Sorry, kinda new here.

Probably not, due to the nature of the protocols involved your fastest is probably going to be ~250ms. Pturmel's Ethernet IP Communication Suite driver is known to be faster (users routinely have 100ms poll rates) but I'm not sure that could reach this poll rate either.

If this is for logging to a database, collect the values at your faster rate and stuff them into a buffer array on the device, and read chunks of the array at a set slower rate.

IE, have 5 seconds worth of data storage space, filling into it at your 16.67ms rate. Read the latest 1s of data into ignition and write it to a DB table. Read the next 1s of data and repeat. And keep repeating that process.

This is the normal approach for recording high speed data on a slower polling protocol.

It sounds like you're using the wrong tool for the job. 16.67 ms is one mains cycle at 60 Hz. For power supply quality monitoring there are dedicated solutions to this that will record based on events such as voltage brownouts, transients, frequency deviations, etc., rather than continuously recording.

What is the real problem you are trying to solve?
What would supply the data and how? (OPC / TCP IP?)

1 Like

For sampling values at small fractions of a second, the most robust solutions use a ring buffer in the device, and transfer many samples together in batches.

Due to java's garbage collector pauses, expecting any single sample solution to run at 16ms is utterly unrealistic. (Unless you can tolerate missed values here and there, regularly.)

If this is for recording events, not continuously, I have a solution using Ignition that can produce 10mS data at configurable T-minus event and T+event intervals.

Used for system services for Transmission System Operators.

I am trying to monitor the feed, looking for dips in power that last 2 or more cycles. If that happens, I want to send an alert. I am using a Schneider PM8000 meter.

Thank you for replying to my email. I am using a Schneider pm8000 meter and hoping to detect when there is a power drop below a certain percentage for 2 or more consecutive cycles. If that happens, I want to send out an alert. I just don't want to get to a point where things are bogged down due to tag scans and network traffic. You mentioned that there are some robust solutions out there. Are you able to share which ones you were referring to?

The robust solution is a ring buffer in the device, which can only be done with a programmable device. A quick look at the user guide indicates that your device is capable of capturing dips using its native alarm/alert functionality, which you should be able to interrogate at a slower pace instead of trying to keep up with 16ms samples.

That user manual indicates that you have to download the Modbus Mappings from Schneider separately--I didn't try to do that.

That device also supports DNP3, which might be easier to deal with.

The meter will do this for you much more reliably than anything you and Ignition can do together.

PM8000 user manual.

Page 191 shows how to configure the meter for sag and swell logging.
Page 216 shows the logging data arrangement for sags and swells.

The PM8000 Modbus Map can be downloaded from the Schneider website. I think you're interested in the Detailed Modbus Map tab starting around Modbus Register 13598.

Create Ignition tags to monitor the meter's logging and then record those to your historical database. You will have very little traffic and very good data.

1 Like

Agreed.

You want the meter to tell you when an event has happened (you are monitoring an integer register).

When an event happens, extract that data from the meter, post-process it, and display it.

I have done this with another brand, not Schneider.

When an event happens, I have code that automatically FTP's the data file and processes it.

1 Like