6 #ifndef __PDUMODEL_PDU_IDL__
7 #define __PDUMODEL_PDU_IDL__
9 #include <Nameplate.idl>
11 #include <PeripheralDeviceManager.idl>
13 #include <OverCurrentProtector.idl>
15 #include <TransferSwitch.idl>
16 #include <StateSensor.idl>
17 #include <SensorLogger.idl>
18 #include <Controller.idl>
19 #include <InternalBeeper.idl>
20 #include <AlertedSensorManager.idl>
30 constant
int ERR_INVALID_PARAM = 1;
115 valueobject SettingsChangedEvent extends
event.UserEvent {
121 valueobject LoadSheddingModeChangedEvent extends
event.UserEvent {
126 valueobject OutletSequenceStateChangedEvent extends
idl.Event {
333 in
boolean respectSequence);
352 in
boolean respectSequence);
Internal beeper interface.
Definition: InternalBeeper.idl:15
Outlet interface
Definition: Outlet.idl:30
PowerState
Outlet power state.
Definition: Outlet.idl:52
Main PDU interface.
Definition: Pdu.idl:28
Sensors getSensors()
Retrieve the PDU sensors.
int cycleMultipleOutletPowerStates(in vector< int > outletNumbers, in boolean respectSequence)
Power-cycle multiple outlets.
hmi::InternalBeeper getBeeper()
Get the built-in beeper, if there is any.
int leaveRS485ConfigMode()
Leave RS485 config mode.
sensors::Logger getSensorLogger()
Get the sensor logger.
vector< Inlet > getInlets()
Get the list of inlets.
vector< OverCurrentProtector > getOverCurrentProtectors()
Get the list of overcurrent protectors.
vector< Controller > getControllers()
Get the list of sub controllers.
vector< portsmodel::Port > getSensorPorts()
Get all sensor ports of this device.
boolean isLoadSheddingActive()
Retrieve the current load shedding state.
int setAllOutletPowerStates(in Outlet::PowerState pstate)
Switch all outlets.
Settings newSettings
Settings after change.
Definition: Pdu.idl:117
Settings getSettings()
Retrieve the PDU settings.
vector< Outlet > getOutlets()
Get the list of outlets.
PduOrientation
PDU orientations.
Definition: Pdu.idl:33
@ PO_BOTTOMFEED
Bottom feed PDU orientation (reversible ETO, normal order)
Definition: Pdu.idl:35
@ PO_NONE
No PDU orientation (non-reversible ETO, default)
Definition: Pdu.idl:34
vector< portsmodel::Port > getFeaturePorts()
Get all feature ports of this device.
int enterRS485ConfigModeAndAssignSCBoardAddress(in int deviceId, in int addr)
Enter RS485 config mode and assign an address to a sub controller device with a given device ID.
void cancelOutletSequence()
Stop a currently running outlet sequence.
int setMultipleOutletPowerStates(in vector< int > outletNumbers, in Outlet::PowerState state, in boolean respectSequence)
Switch multiple outlets.
StartupState
Outlet power state on device startup
Definition: Pdu.idl:74
@ SS_ON
Outlet will be switched on
Definition: Pdu.idl:75
@ SS_OFF
Outlet will be switched off
Definition: Pdu.idl:76
int setSettings(in Settings settings)
Change the PDU settings.
peripheral::DeviceManager getPeripheralDeviceManager()
Get the peripheral device manager.
Nameplate getNameplate()
Retrieve the PDU nameplate information.
OutletSequenceState getOutletSequenceState()
Retrieve the current outlet sequencing status.
sensors::AlertedSensorManager getAlertedSensorManager()
Get the alerted sensor manager.
vector< TransferSwitch > getTransferSwitches()
Returns list of Transfer Switches.
int enterRS485ConfigModeAndAssignCtrlBoardAddress(in int addr)
Enter RS485 config mode and assign an address to a relay board.
void setLoadSheddingActive(in boolean active)
Enable or disable load shedding.
int cycleAllOutletPowerStates()
Power-cycle all outlets.
Statistic getStatistic()
Retrieve PDU statistics.
MetaData getMetaData()
Retrieve the PDU metadata.
vector< portsmodel::Port > getRemoteHubPorts()
Get all remote hub ports of this device.
Peripheral Device Manager.
Definition: PeripheralDeviceManager.idl:21
Port interface.
Definition: Port.idl:18
A global instance keeping track of sensors in alerted state.
Definition: AlertedSensorManager.idl:15
Sensor logger interface.
Definition: SensorLogger.idl:31
A sensor with numeric readings.
Definition: NumericSensor.idl:17
Sensor with discrete readings.
Definition: StateSensor.idl:43
Human Machine Interface.
Definition: ExternalBeeper.idl:14
Basic IDL definitions.
Definition: Event.idl:10
PDU Model.
Definition: Ade.idl:12
Peripheral Devices.
Definition: PeripheralDeviceManager.idl:18
Ports.
Definition: Port.idl:15
Sensors Model.
Definition: AccumulatingNumericSensor.idl:13
Component nameplate information.
Definition: Nameplate.idl:23
Outlet sequencing status
Definition: Pdu.idl:105
int cancelableOutletsRemaining
Number of outlets remaining whose switch operation can be canceled (non-cancelable operations won't b...
Definition: Pdu.idl:110
int timeUntilNextSwitch
Time in milliseconds before the next outlet is switched.
Definition: Pdu.idl:108
int outletsRemaining
Number of outlets remaining in the sequence.
Definition: Pdu.idl:109
boolean sequenceRunning
true if an outlet sequence is currently running
Definition: Pdu.idl:106
int nextOutletToSwitch
Number (0-based) of the next outlet in the sequence.
Definition: Pdu.idl:107
PDU sensors.
Definition: Pdu.idl:57
sensors::NumericSensor apparentEnergy
Active energy sensor.
Definition: Pdu.idl:62
vector< sensors::StateSensor > powerSupplyStatus
Power supply fault status.
Definition: Pdu.idl:58
sensors::NumericSensor apparentPower
Active power sensor.
Definition: Pdu.idl:60
sensors::NumericSensor activeEnergy
Active energy sensor.
Definition: Pdu.idl:61
sensors::NumericSensor activePower
Active power sensor.
Definition: Pdu.idl:59
PDU settings.
Definition: Pdu.idl:82
string name
User-defined name.
Definition: Pdu.idl:83
vector< int > outletPowerStateSequence
The order in which multiple outlets should be switched.
Definition: Pdu.idl:87
int cycleDelay
Default power-cycle interval in seconds; can be overriden per outlet.
Definition: Pdu.idl:85
int inRushGuardDelay
Minimum delay in milliseconds between switching two outlets on.
Definition: Pdu.idl:86
int powerOnDelay
Delay in seconds before restoring outlet states after power is applied to outlets.
Definition: Pdu.idl:94
boolean suspendTripCauseOutlets
If true, outlets suspected to have caused an OCP to trip are automatically suspended (turned off)
Definition: Pdu.idl:100
int energyPulsesPerKWh
Ratio between LED pulses and energy consumption.
Definition: Pdu.idl:97
boolean energyPulseEnabled
Enables energy consumption counting using the PDU's LED(s)
Definition: Pdu.idl:96
boolean latchingRelays
If true, relays keep their state during power-cycling.
Definition: Pdu.idl:95
StartupState startupState
Default outlet state after applying power to outlets; can be overriden per outlet.
Definition: Pdu.idl:84
int demandUpdateInterval
BCM2 only: Update interval in seconds for demand sensors.
Definition: Pdu.idl:98
int demandAveragingIntervals
BCM2 only: Average demand sensors over this many update intervals.
Definition: Pdu.idl:99
PDU statistics.
Definition: Pdu.idl:66
vector< CircuitBreakerStatistic > cbStats
Circuit breaker statistics.
Definition: Pdu.idl:67
vector< CtrlStatistic > ctrlStats
Sub controller statistics.
Definition: Pdu.idl:68
peripheral::DeviceManager Statistics peripheralStats
Peripheral device statistics.
Definition: Pdu.idl:70
vector< OutletStatistic > outletStats
Outlet statistics
Definition: Pdu.idl:69
Peripheral device statistics.
Definition: PeripheralDeviceManager.idl:124