Skip to main content

cimstructs/
WindQcontrolModeKind.rs

1/// General wind turbine Q control modes MqG.
2#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
3pub enum WindQcontrolModeKind {
4    /// Voltage control (MqG equals 0).
5    voltage,
6    /// Reactive power control (MqG equals 1).
7    reactivePower,
8    /// Open loop reactive power control (only used with closed loop at plant level) (MqG equals 2).
9    openLoopReactivePower,
10    /// Power factor control (MqG equals 3).
11    powerFactor,
12    /// Open loop power factor control (MqG equals 4).
13    openLooppowerFactor,
14}
15
16impl WindQcontrolModeKind {
17    pub fn uri(&self) -> &'static str {
18        match self {
19            WindQcontrolModeKind::voltage => "http://iec.ch/TC57/CIM100#WindQcontrolModeKind.voltage",
20            WindQcontrolModeKind::reactivePower => "http://iec.ch/TC57/CIM100#WindQcontrolModeKind.reactivePower",
21            WindQcontrolModeKind::openLoopReactivePower => "http://iec.ch/TC57/CIM100#WindQcontrolModeKind.openLoopReactivePower",
22            WindQcontrolModeKind::powerFactor => "http://iec.ch/TC57/CIM100#WindQcontrolModeKind.powerFactor",
23            WindQcontrolModeKind::openLooppowerFactor => "http://iec.ch/TC57/CIM100#WindQcontrolModeKind.openLooppowerFactor",
24        }
25    }
26}