ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_Simple_Grid_Model_Test.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_Simple_Grid_Model_Test.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 24.05.2021
6 //! @brief Three phase electric grid with active load model.
7 //! @attention
8 //!
9 //! COPYRIGHT(C) 2021 ANVILEX GmbH
10 //!
11 //! Redistribution and use in source and binary forms, with or without
12 //! modification, are permitted provided that the following conditions are met:
13 //!
14 //! 1. Redistributions of source code must retain the above copyright notice,
15 //! this list of conditions and the following disclaimer.
16 //!
17 //! 2. Redistributions in binary form must reproduce the above copyright notice,
18 //! this list of conditions and the following disclaimer in the documentation
19 //! and/or other materials provided with the distribution.
20 //!
21 //! 3. Neither the name of ANVILEX nor the names of its contributors may be
22 //! used to endorse or promote products derived from this software without
23 //! specific prior written permission.
24 //!
25 //! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 //! AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 //! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 //! ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
29 //! LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 //! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 //! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 //! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 //! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 //! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 //! POSSIBILITY OF SUCH DAMAGE.
36 //------------------------------------------------------------------------------
37 
38 //------------------------------------------------------------------------------
39 // Protecting header files from mutual, recursive inclusion.
40 //------------------------------------------------------------------------------
41 
42 #pragma once
43 
44 //------------------------------------------------------------------------------
45 // Include standard libraries header files
46 //------------------------------------------------------------------------------
47 
48 //------------------------------------------------------------------------------
49 // Include thrid party header files
50 //------------------------------------------------------------------------------
51 
52 #include "Grid_To_Code.h"
53 
54 #include "rtwtypes.h"
55 
56 //------------------------------------------------------------------------------
57 // Include ConOpSys header files
58 //------------------------------------------------------------------------------
59 
60 #include "Function_Block_Base.h"
61 
62 //------------------------------------------------------------------------------
63 // Include ConOpSys application header files
64 //------------------------------------------------------------------------------
65 
66 //------------------------------------------------------------------------------
67 // Macros
68 //------------------------------------------------------------------------------
69 
70 //------------------------------------------------------------------------------
71 //! @brief Function block class declaration
72 //------------------------------------------------------------------------------
73 
75 {
76 
77  //----------------------------------------------------------------------------
78  // Public variables and methods
79  //----------------------------------------------------------------------------
80 
81  public:
82 
83  //--------------------------------------------------------------------------
84  // Constructor and destructor methods
85  //--------------------------------------------------------------------------
86 
87  //!-------------------------------------------------------------------------
88  //! @brief Function block class constructor method.
89  //! @note None
90  //! \par Override
91  //! Not allowed
92  //! @attention Don't call this method directly.
93  //--------------------------------------------------------------------------
94 
96 
97  //!-------------------------------------------------------------------------
98  //! @brief Function block class desstructor method.
99  //! @note None
100  //! \par Override
101  //! Not allowed
102  //! @attention Don't call this method directly.
103  //--------------------------------------------------------------------------
104 
106 
107  //--------------------------------------------------------------------------
108  // Function block data processing methods
109  //--------------------------------------------------------------------------
110 
111  //!-------------------------------------------------------------------------
112  //! @brief Function block initialisation method.
113  //! @note None
114  //! \par Override
115  //! Not allowed
116  //! @attention None
117  //--------------------------------------------------------------------------
118 
119  virtual VOID Init();
120 
121  //!-------------------------------------------------------------------------
122  //! @brief Function block execution method.
123  //! @note None
124  //! \par Override
125  //! Not allowed
126  //! @attention None
127  //--------------------------------------------------------------------------
128 
129  virtual VOID Execute();
130 
131  //--------------------------------------------------------------------------
132  // Function block parameters
133  //--------------------------------------------------------------------------
134 
135  //--------------------------------------------------------------------------
136  // Function block inputs
137  //--------------------------------------------------------------------------
138 
139  //--------------------------------------------------------------------------
140  // Function block outputs
141  //--------------------------------------------------------------------------
142 
143  //! @brief First load resistor voltage value
145 
146  //! @brief First load resistor voltage value
148 
149  //! @brief First load resistor voltage value
151 
152  //----------------------------------------------------------------------------
153  // Protected variables and methods
154  //----------------------------------------------------------------------------
155 
156  protected:
157 
158  //----------------------------------------------------------------------------
159  // Private variables and methods
160  //----------------------------------------------------------------------------
161 
162  private:
163 
164  //!---------------------------------------------------------------------------
165  //! @brief Switches the state of the fan in the first cabinet depending on the control signal.
166  //! @note None
167  //! @param [in] Fan_Control_Status - The state of the fan control signal
168  //! [in] u32_Timestamp_On - Turn-on delay timer
169  //! [in] u32_Timestamp_Off - Turn-off delay timer
170  //! @return None
171  //! \par Override
172  //! Not allowed
173  //! @attention None
174  //----------------------------------------------------------------------------
175 
176  void rt_OneStep(void);
177 
178  //! @brief GRID_MODEL_TESTModelClass class object
180 };
181 
182 //------------------------------------------------------------------------------
183 // End of file
184 //------------------------------------------------------------------------------
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
Function block base class header file.
Definition: Grid_To_Code.h:203
Function block output connector class.
Definition: Block_Output_Connector.h:59
Function block base class for device.
Definition: Function_Block_Base.h:96
Function block class declaration.
Definition: Function_Block_Simple_Grid_Model_Test.h:75
TBlock_Output_Connector object_f32_R1_Voltage
First load resistor voltage value.
Definition: Function_Block_Simple_Grid_Model_Test.h:144
virtual VOID Execute()
Function block execution method.
Definition: Function_Block_Simple_Grid_Model_Test.cpp:125
GRID_MODEL_TESTModelClass rtObj
GRID_MODEL_TESTModelClass class object.
Definition: Function_Block_Simple_Grid_Model_Test.h:179
TBlock_Output_Connector object_f32_R3_Voltage
First load resistor voltage value.
Definition: Function_Block_Simple_Grid_Model_Test.h:150
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_Simple_Grid_Model_Test.cpp:110
TFunction_Block_Simple_Grid_Model_Test()
Function block class constructor method.
Definition: Function_Block_Simple_Grid_Model_Test.cpp:66
void rt_OneStep(void)
Switches the state of the fan in the first cabinet depending on the control signal.
Definition: Function_Block_Simple_Grid_Model_Test.cpp:147
~TFunction_Block_Simple_Grid_Model_Test()
Function block class desstructor method.
Definition: Function_Block_Simple_Grid_Model_Test.cpp:102
TBlock_Output_Connector object_f32_R2_Voltage
First load resistor voltage value.
Definition: Function_Block_Simple_Grid_Model_Test.h:147