The definition of OPC does not include the concept of Override and Release for controlling points. So, we defined a work-around that is transparent to OPC and easy to implement for the BAS graphics designer.
In order to implement this with minimal confusion we defined the following default actions:
1) When the S4 Open appliance sees a write request for a physical I/O point on a N2 device we will execute a N2 Override command.
2) When the S4 Open appliance sees a write request for an internal I/O point on a N2 device we will execute a N2 Write command
Each physical I/O will have two OPC points defined in our device type templates. If you look at the source string for the points on their property pages they will be identical except for the addition of a “.release” attribute on the release point, and the inclusion of the word "Release" in the point name.
Hypothetically, let’s call a point FANControl and its partner point will be FANControlRelease. Assume that it is a Digital Output point. When we see an OPC write request for FANControl we know that it is a physical I/O so we send a N2 Override commend to the device instead of a N2 write command. Subsequent OPC writes to that point will send out additional N2 Override commands. You’ll see the value change on the next refresh cycle.
With N2 there is no concept of a Priority Array like there is in BACnet so each override request takes effect immediately. FANControl will have either a “Normal”, or "Overridden", state associated with it.
Writing ANY value to FANControlRelease will send a N2 Release command to the point. The state of FANControl is changed to “Normal” and the value returned by the point is its actual value.
As an example, if the value of FANControl is set to “Off” by the logic in the N2 device and you do a read on the point it will return “Off”. Let’s assume that the point was not previously overridden so this it its “Normal” value. If you now write “ON” to FANControl we send an override command to the device. You’ll see the value change. You can write “On” or “Off” values all day and the point will be sent an a N2 Override command for each one. You will see the value change accordingly. Any time that you want to release the point to its “Normal” value write any value to the FANControlRelease point. If the FANControl point had been overridden to “On” you’ll see it return “Off” on the next refresh cycle.
So, we taught OPC a new trick. With the assistance of the OPC-N2 Router full Override and Release support is available for legacy N2 BAS integrations.