ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_PT1_F32_3C_T1.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_PT1_F32_3C_T1.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 Three channel PT1 type 1 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 Time constant parameter
132 
133  //! @brief Sample time parameter
135 
136  //--------------------------------------------------------------------------
137  // Function block input connectors
138  //--------------------------------------------------------------------------
139 
140  //! @brief Input signal 1
142 
143  //! @brief Input signal 2
145 
146  //! @brief Input signal 3
148 
149  //--------------------------------------------------------------------------
150  // Function block output connectors
151  //--------------------------------------------------------------------------
152 
153  //! @brief PT1 block output 1
155 
156  //! @brief PT1 block output 2
158 
159  //! @brief PT1 block output 3
161 
162  //----------------------------------------------------------------------------
163  // Protected methods and variables
164  //----------------------------------------------------------------------------
165 
166  protected:
167 
168  //----------------------------------------------------------------------------
169  // Private methods and variables
170  //----------------------------------------------------------------------------
171 
172  private:
173 
174  //--------------------------------------------------------------------------
175  // Private variables
176  //--------------------------------------------------------------------------
177 
178  //! @brief Internal integral gain factor variable
179  F32 f32_Ki = (F32)1.0f;
180 
181 };
182 
183 //------------------------------------------------------------------------------
184 // End of file
185 //------------------------------------------------------------------------------
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 1 filter function block.
Definition: Function_Block_PT1_F32_3C_T1.h:70
F32 f32_Ki
Internal integral gain factor variable.
Definition: Function_Block_PT1_F32_3C_T1.h:179
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_PT1_F32_3C_T1.cpp:106
TBlock_Output_Connector object_f32_Output_3
PT1 block output 3.
Definition: Function_Block_PT1_F32_3C_T1.h:160
TBlock_Output_Connector object_f32_Output_1
PT1 block output 1.
Definition: Function_Block_PT1_F32_3C_T1.h:154
TFunction_Block_PT1_F32_3C_T1()
Class constructor method.
Definition: Function_Block_PT1_F32_3C_T1.cpp:66
TBlock_Input_Connector object_f32_Input_1
Input signal 1.
Definition: Function_Block_PT1_F32_3C_T1.h:141
TBlock_Output_Connector object_f32_Output_2
PT1 block output 2.
Definition: Function_Block_PT1_F32_3C_T1.h:157
TBlock_Input_Connector object_f32_Sample_Time
Sample time parameter.
Definition: Function_Block_PT1_F32_3C_T1.h:134
virtual VOID Execute()
Function block cyclic execution method.
Definition: Function_Block_PT1_F32_3C_T1.cpp:137
virtual ~TFunction_Block_PT1_F32_3C_T1()
Class constructor method.
Definition: Function_Block_PT1_F32_3C_T1.cpp:98
TBlock_Input_Connector object_f32_Input_2
Input signal 2.
Definition: Function_Block_PT1_F32_3C_T1.h:144
TBlock_Input_Connector object_f32_Input_3
Input signal 3.
Definition: Function_Block_PT1_F32_3C_T1.h:147
TBlock_Input_Connector object_f32_Ti
Time constant parameter.
Definition: Function_Block_PT1_F32_3C_T1.h:131