Skip to main content
Version: 8.1

system.dnp3.directOperateBinary

note

The following function uses system.dnp3 and the Legacy DNP3 driver. See system.dnp for DNP3 functions using the DNP3 driver.

This function is used in Python Scripting.

Description​

Issues a Direct-Operate command for digital control operations at binary output points (CROB).

Client Permission Restrictions​

Permission Type: DNP3 Management

Client access to this scripting function is blocked to users that do not meet the role/zone requirements for the above permission type. This function is unaffected when run in the Gateway scope.

Syntax​

system.dnp3.directOperateBinary(deviceName, indexes, opType, tcCode, count, onTime, offTime)

Parameters​

TypeParameterDescription
StringdeviceNameThe name of the DNP3 device driver.
ListindexesA list of indexes of the objects to be modified in the outstation.
IntegeropTypeThe type of the operation. 0=NUL, 1=PULSE_ON, 2=PULSE_OFF, 3=LATCH_ON, 4=LATCH_OFF
IntegertcCodeThe Trip-Close code, used in conjunction with the opType. 0=NUL, 1=CLOSE, 2=TRIP
IntegercountThe number of times the outstation shall execute the operation.
LongonTimeThe duration that the output drive remains active, in millis. [optional]
LongoffTimeThe duration that the output drive remains non-active, in millis. [optional]

Returns​

The DNP3 status code of the response, as an integer.

Scope​

Gateway, Vision Client, Perspective Session

Code Examples​

Example #1
# This example shows latching off 3 binary output points with the Direct-Operate command. 

off = system.dnp3.LATCH_OFF
system.dnp3.directOperateBinary("Dnp3", [0, 1, 2], off)
Example #2
# This example shows setting a binary output point at index 3 to pulse at 5 second intervals
# with the Direct-Operate command.

pulse = system.dnp3.PULSE_OFF
trip = system.dnp3.TRIP
system.dnp3.directOperateBinary("Dnp3", [3], pulse, trip, onTime=5000, offTime=5000)