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