CGMES_3_0_0
Loading...
Searching...
No Matches
AsynchronousMachine.hpp
1#ifndef AsynchronousMachine_H
2#define AsynchronousMachine_H
3/*
4Generated from the CGMES files via cimgen: https://github.com/sogno-platform/cimgen
5*/
6
7#include <list>
8#include <map>
9#include <string>
10#include <unordered_map>
11
12#include "RotatingMachine.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17#include "ActivePower.hpp"
18#include "AsynchronousMachineKind.hpp"
19#include "Boolean.hpp"
20#include "Float.hpp"
21#include "Frequency.hpp"
22#include "Integer.hpp"
23#include "PerCent.hpp"
24#include "RotationSpeed.hpp"
25
26namespace CIMPP
27{
29
31 class AsynchronousMachine : public RotatingMachine
32 {
33 public:
34 /* constructor initialising all attributes to null */
35 AsynchronousMachine();
36 ~AsynchronousMachine() override;
37
40
43
46
49
52
55
58
61
64
67
70
71 static const char debugName[];
72 const char* debugString() const override;
73
74 const std::list<std::string>& getAttributeNames() const override;
75
76 const std::string& getClassNamespaceUrl() const override;
77 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
78
79 const std::list<CGMESProfile>& getPossibleProfiles() const override;
80 const CGMESProfile& getRecommendedProfile() const override;
81 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
82 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
83
84 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
85 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
86 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
87 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
88 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
89 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
90
91 bool isAssignableFrom(BaseClass* otherObject) const override;
92 static const BaseClassDefiner declare();
93
94 protected:
95 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
96 };
97
98 BaseClass* AsynchronousMachine_factory();
99}
100#endif
Definition BaseClass.hpp:22
Product of RMS value of the voltage and the RMS value of the in-phase component of the current.
Definition ActivePower.hpp:14
Asynchronous machine whose behaviour is described by reference to a standard model expressed in eithe...
Definition AsynchronousMachineDynamics.hpp:27
Kind of Asynchronous Machine.
Definition AsynchronousMachineKind.hpp:14
CIMPP::Boolean reversible
Indicates for converter drive motors if the power can be reversible. Used for short circuit data exch...
Definition AsynchronousMachine.hpp:66
CIMPP::PerCent efficiency
Efficiency of the asynchronous machine at nominal operation as a percentage. Indicator for converter ...
Definition AsynchronousMachine.hpp:48
CIMPP::AsynchronousMachineKind asynchronousMachineType
Indicates the type of Asynchronous Machine (motor or generator). Default: 0.
Definition AsynchronousMachine.hpp:42
CIMPP::AsynchronousMachineDynamics * AsynchronousMachineDynamics
Asynchronous machine dynamics model used to describe dynamic behaviour of this asynchronous machine....
Definition AsynchronousMachine.hpp:39
CIMPP::Frequency nominalFrequency
Nameplate data indicates if the machine is 50 Hz or 60 Hz. Default: 0.0.
Definition AsynchronousMachine.hpp:54
CIMPP::Boolean converterFedDrive
Indicates whether the machine is a converter fed drive. Used for short circuit data exchange accordin...
Definition AsynchronousMachine.hpp:45
CIMPP::Float iaIrRatio
Ratio of locked-rotor current to the rated current of the motor (Ia/Ir). Used for short circuit data ...
Definition AsynchronousMachine.hpp:51
CIMPP::Integer polePairNumber
Number of pole pairs of stator. Used for short circuit data exchange according to IEC 60909....
Definition AsynchronousMachine.hpp:60
CIMPP::RotationSpeed nominalSpeed
Nameplate data. Depends on the slip and number of pole pairs. Default: 0.0.
Definition AsynchronousMachine.hpp:57
CIMPP::ActivePower ratedMechanicalPower
Rated mechanical power (Pr in IEC 60909-0). Used for short circuit data exchange according to IEC 609...
Definition AsynchronousMachine.hpp:63
CIMPP::Float rxLockedRotorRatio
Locked rotor ratio (R/X). Used for short circuit data exchange according to IEC 60909....
Definition AsynchronousMachine.hpp:69
Definition BaseClassDefiner.hpp:12
Definition Boolean.hpp:13
A floating point number. The range is unspecified and not limited.
Definition Float.hpp:14
Cycles per second.
Definition Frequency.hpp:14
Definition Integer.hpp:13
Percentage on a defined base. For example, specify as 100 to indicate at the defined base.
Definition PerCent.hpp:14
Number of revolutions per second.
Definition RotationSpeed.hpp:14