ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_PT1_F32_3C_T3.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_PT1_3C_T3.h
3 //! @brief PT1 class header file.
4 //! @copyright ANVILEX GmbH
5 //! @attention No special attention requered.
6 //! $HeadURL: https://192.168.3.4:8443/svn/P004_07/ConOpSys/Blocks/Function_Block_PT1.h $
7 //! $Revision: 2912 $
8 //! $Date: 2021-12-17 10:36:24 +0500 (Пт, 17 дек 2021) $
9 //! $Author: minch $
10 //!
11 //! COPYRIGHT(C) 2015-2022 ANVILEX GmbH
12 //!
13 //! Redistribution and use in source and binary forms, with or without
14 //! modification, are permitted provided that the following conditions are met:
15 //!
16 //! 1. Redistributions of source code must retain the above copyright notice,
17 //! this list of conditions and the following disclaimer.
18 //!
19 //! 2. Redistributions in binary form must reproduce the above copyright notice,
20 //! this list of conditions and the following disclaimer in the documentation
21 //! and/or other materials provided with the distribution.
22 //!
23 //! 3. Neither the name of ANVILEX nor the names of its contributors may be
24 //! used to endorse or promote products derived from this software without
25 //! specific prior written permission.
26 //!
27 //! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28 //! AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29 //! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30 //! ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
31 //! LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32 //! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33 //! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34 //! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35 //! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36 //! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37 //! POSSIBILITY OF SUCH DAMAGE.
38 //------------------------------------------------------------------------------
39 
40 //------------------------------------------------------------------------------
41 // Protecting header files from mutual, recursive inclusion.
42 //------------------------------------------------------------------------------
43 
44 #pragma once
45 
46 //------------------------------------------------------------------------------
47 // Include standard libraries header files
48 //------------------------------------------------------------------------------
49 
50 //------------------------------------------------------------------------------
51 // Include thrid party header files
52 //------------------------------------------------------------------------------
53 
54 //------------------------------------------------------------------------------
55 // Include ConOpSys header files
56 //------------------------------------------------------------------------------
57 
58 #include "Function_Block_Base.h"
59 
60 //------------------------------------------------------------------------------
61 // Include ConOpSys application header files
62 //------------------------------------------------------------------------------
63 
64 //------------------------------------------------------------------------------
65 // Macros
66 //------------------------------------------------------------------------------
67 
68 //------------------------------------------------------------------------------
69 
70 //! @brief Three channel PT1 type 8 (GER) filter function block
71 //! @note TFunction_Block_PT1_3C_GER
73 {
74 
75  //----------------------------------------------------------------------------
76  // Public defines, methods and variables
77  //----------------------------------------------------------------------------
78 
79  public:
80 
81  //--------------------------------------------------------------------------
82  // Public methods
83  //--------------------------------------------------------------------------
84 
85  //!-------------------------------------------------------------------------
86  //! @brief Class constructor method.
87  //! @note None
88  //! \par Override
89  //! Not allowed
90  //! @attention Don't call this method directly.
91  //--------------------------------------------------------------------------
92 
94 
95  //!-------------------------------------------------------------------------
96  //! @brief Class constructor method.
97  //! @note None
98  //! \par Override
99  //! Not allowed
100  //! @attention Don't call this method directly.
101  //--------------------------------------------------------------------------
102 
103  virtual ~TFunction_Block_PT1_3C_T3();
104 
105  //!-------------------------------------------------------------------------
106  //! @brief Function block initialisation method.
107  //! @note None
108  //! \par Override
109  //! Not allowed
110  //! @attention Don't call this method directly.
111  //--------------------------------------------------------------------------
112 
113  virtual VOID Init();
114 
115  //!-------------------------------------------------------------------------
116  //! @brief Function block cyclic execution method.
117  //! @note None
118  //! \par Override
119  //! Not allowed
120  //! @attention Don't call this method directly.
121  //--------------------------------------------------------------------------
122 
123  virtual VOID Execute();
124 
125  //--------------------------------------------------------------------------
126  // Public variables
127  //--------------------------------------------------------------------------
128 
129  //--------------------------------------------------------------------------
130  // Function block parameter connectors
131  //--------------------------------------------------------------------------
132 
133  //! @brief Propotrional gain parameter
135 
136  //! @brief Time constant parameter
138 
139  //! @brief Sample time parameter
141 
142  //--------------------------------------------------------------------------
143  // Function block input connectors
144  //--------------------------------------------------------------------------
145 
146  //! @brief Input signal 1
148 
149  //! @brief Input signal 2
151 
152  //! @brief Input signal 3
154 
155  //! @brief Enable signal
157 
158  //! @brief Reset signal
160 
161  //--------------------------------------------------------------------------
162  // Function block output connectors
163  //--------------------------------------------------------------------------
164 
165  //! @brief PT1 block output 1
167 
168  //! @brief PT1 block output 2
170 
171  //! @brief PT1 block output 3
173 
174  //----------------------------------------------------------------------------
175  // Protected methods and variables
176  //----------------------------------------------------------------------------
177 
178  protected:
179 
180  //----------------------------------------------------------------------------
181  // Private methods and variables
182  //----------------------------------------------------------------------------
183 
184  private:
185 
186  //--------------------------------------------------------------------------
187  // Private variables
188  //--------------------------------------------------------------------------
189 
190  //! @brief Internal integral gain factor variable
191  F32 f32_Ki = (F32)1.0f;
192 
193 };
194 
195 //------------------------------------------------------------------------------
196 // End of file
197 //------------------------------------------------------------------------------
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
float F32
IEEE-754 32-Bit single presession floating point numbers datatype defenition.
Definition: Defines.h:324
Function block base class header file.
Function block input connector class.
Definition: Block_Input_Connector.h:83
Function block output connector class.
Definition: Block_Output_Connector.h:59
Function block base class for device.
Definition: Function_Block_Base.h:96
Three channel PT1 type 8 (GER) filter function block.
Definition: Function_Block_PT1_F32_3C_T3.h:73
F32 f32_Ki
Internal integral gain factor variable.
Definition: Function_Block_PT1_F32_3C_T3.h:191
TBlock_Output_Connector object_f32_Output_1
PT1 block output 1.
Definition: Function_Block_PT1_F32_3C_T3.h:166
virtual VOID Execute()
Function block cyclic execution method.
Definition: Function_Block_PT1_F32_3C_T3.cpp:143
TBlock_Input_Connector object_f32_Input_3
Input signal 3.
Definition: Function_Block_PT1_F32_3C_T3.h:153
TBlock_Input_Connector object_f32_Input_2
Input signal 2.
Definition: Function_Block_PT1_F32_3C_T3.h:150
TBlock_Input_Connector object_f32_Input_1
Input signal 1.
Definition: Function_Block_PT1_F32_3C_T3.h:147
TBlock_Input_Connector object_f32_Sample_Time
Sample time parameter.
Definition: Function_Block_PT1_F32_3C_T3.h:140
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_PT1_F32_3C_T3.cpp:109
TFunction_Block_PT1_3C_T3()
Class constructor method.
Definition: Function_Block_PT1_F32_3C_T3.cpp:66
TBlock_Output_Connector object_f32_Output_3
PT1 block output 3.
Definition: Function_Block_PT1_F32_3C_T3.h:172
TBlock_Output_Connector object_f32_Output_2
PT1 block output 2.
Definition: Function_Block_PT1_F32_3C_T3.h:169
TBlock_Input_Connector object_bool_Enable
Enable signal.
Definition: Function_Block_PT1_F32_3C_T3.h:156
TBlock_Input_Connector object_bool_Reset
Reset signal.
Definition: Function_Block_PT1_F32_3C_T3.h:159
TBlock_Input_Connector object_f32_Kp
Propotrional gain parameter.
Definition: Function_Block_PT1_F32_3C_T3.h:134
TBlock_Input_Connector object_f32_Ti
Time constant parameter.
Definition: Function_Block_PT1_F32_3C_T3.h:137
virtual ~TFunction_Block_PT1_3C_T3()
Class constructor method.
Definition: Function_Block_PT1_F32_3C_T3.cpp:101