ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_PT1_F32_1C_T2.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_PT1_F32_1C_T2.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 //! @brief Single channel PT1 type 2 filter function block
70 {
71 
72  //----------------------------------------------------------------------------
73  // Public defines, methods and variables
74  //----------------------------------------------------------------------------
75 
76  public:
77 
78  //--------------------------------------------------------------------------
79  // Public methods
80  //--------------------------------------------------------------------------
81 
82  //!-------------------------------------------------------------------------
83  //! @brief Class constructor method.
84  //! @note None
85  //! \par Override
86  //! Not allowed
87  //! @attention Don't call this method directly.
88  //--------------------------------------------------------------------------
89 
91 
92  //!-------------------------------------------------------------------------
93  //! @brief Class constructor method.
94  //! @note None
95  //! \par Override
96  //! Not allowed
97  //! @attention Don't call this method directly.
98  //--------------------------------------------------------------------------
99 
101 
102  //!-------------------------------------------------------------------------
103  //! @brief Function block initialisation method.
104  //! @note None
105  //! \par Override
106  //! Not allowed
107  //! @attention Don't call this method directly.
108  //--------------------------------------------------------------------------
109 
110  virtual VOID Init();
111 
112  //!-------------------------------------------------------------------------
113  //! @brief Function block cyclic execution method.
114  //! @note None
115  //! \par Override
116  //! Not allowed
117  //! @attention Don't call this method directly.
118  //--------------------------------------------------------------------------
119 
120  virtual VOID Execute();
121 
122  //--------------------------------------------------------------------------
123  // Public variables
124  //--------------------------------------------------------------------------
125 
126  //--------------------------------------------------------------------------
127  // Function block parameter connectors
128  //--------------------------------------------------------------------------
129 
130  //! @brief Function block sample time parameter. Value must be given in seconds.
132 
133  //! @brief Function time constant parameter. Value must be given in seconds.
135 
136  //--------------------------------------------------------------------------
137  // Function block input connectors
138  //--------------------------------------------------------------------------
139 
140  //! @brief Function block input signal.
142 
143  //! @brief Function block reset signal
145 
146  //--------------------------------------------------------------------------
147  // Function block output connectors
148  //--------------------------------------------------------------------------
149 
150  //! @brief Function block output signal.
152 
153  //----------------------------------------------------------------------------
154  // Protected methods and variables
155  //----------------------------------------------------------------------------
156 
157  protected:
158 
159  //----------------------------------------------------------------------------
160  // Private methods and variables
161  //----------------------------------------------------------------------------
162 
163  private:
164 
165  //--------------------------------------------------------------------------
166  // Private variables
167  //--------------------------------------------------------------------------
168 
169  //! @brief Internal integral gain factor variable
170  F32 f32_Ki = (F32)1.0f;
171 
172  //! @brief Integrator value store variable
174 
175 };
176 
177 //------------------------------------------------------------------------------
178 // End of file
179 //------------------------------------------------------------------------------
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
Single channel PT1 type 2 filter function block.
Definition: Function_Block_PT1_F32_1C_T2.h:70
TBlock_Input_Connector object_f32_Sample_Time
Function block sample time parameter. Value must be given in seconds.
Definition: Function_Block_PT1_F32_1C_T2.h:131
F32 f32_Integrator
Integrator value store variable.
Definition: Function_Block_PT1_F32_1C_T2.h:173
TBlock_Output_Connector object_f32_Output
Function block output signal.
Definition: Function_Block_PT1_F32_1C_T2.h:151
virtual ~TFunction_Block_PT1_F32_1C_T2()
Class constructor method.
Definition: Function_Block_PT1_F32_1C_T2.cpp:95
TFunction_Block_PT1_F32_1C_T2()
Class constructor method.
Definition: Function_Block_PT1_F32_1C_T2.cpp:66
virtual VOID Execute()
Function block cyclic execution method.
Definition: Function_Block_PT1_F32_1C_T2.cpp:133
TBlock_Input_Connector object_f32_Input
Function block input signal.
Definition: Function_Block_PT1_F32_1C_T2.h:141
TBlock_Input_Connector object_f32_Ti
Function time constant parameter. Value must be given in seconds.
Definition: Function_Block_PT1_F32_1C_T2.h:134
F32 f32_Ki
Internal integral gain factor variable.
Definition: Function_Block_PT1_F32_1C_T2.h:170
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_PT1_F32_1C_T2.cpp:103
TBlock_Input_Connector object_bool_Reset
Function block reset signal.
Definition: Function_Block_PT1_F32_1C_T2.h:144