ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_Oscillation_Damping.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_Oscillation_Damping.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 14.01.2018
6 //! @brief Oscillation damping class header file.
7 //! @attention
8 //!
9 //! COPYRIGHT(C) 2018 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 //------------------------------------------------------------------------------
53 // Include ConOpSys header files
54 //------------------------------------------------------------------------------
55 
56 #include "Function_Block_Base.h"
57 
58 //------------------------------------------------------------------------------
59 // Include ConOpSys application header files
60 //------------------------------------------------------------------------------
61 
62 //------------------------------------------------------------------------------
63 // Macros
64 //------------------------------------------------------------------------------
65 
66 //------------------------------------------------------------------------------
67 //! @brief Class declaration description
68 //------------------------------------------------------------------------------
69 /*
70 class TFunction_Block_Oscillation_Damping : public TFunction_Block_Base
71 {
72 
73  //----------------------------------------------------------------------------
74  // Public defines, methods and variables
75  //----------------------------------------------------------------------------
76 
77  public:
78 
79  //!-------------------------------------------------------------------------
80  //! @brief Class constructor method.
81  //! @note None
82  //! \par Override
83  //! Not allowed
84  //! @attention Don't call this method directly.
85  //--------------------------------------------------------------------------
86 
87  TFunction_Block_Oscillation_Damping();
88 
89  ~TFunction_Block_Oscillation_Damping(); //!< Destructor method
90 
91  //!-------------------------------------------------------------------------
92  //! @brief Function block initialisation method.
93  //! @note None
94  //! \par Override
95  //! Not allowed
96  //! @attention Don't call this method directly.
97  //--------------------------------------------------------------------------
98 
99  virtual VOID Init();
100 
101  //!-------------------------------------------------------------------------
102  //! @brief Function block execution method.
103  //! @note None
104  //! \par Override
105  //! Not allowed
106  //! @attention None
107  //--------------------------------------------------------------------------
108 
109  virtual VOID Execute();
110 
111  //--------------------------------------------------------------------------
112  // Function block parameter connectors
113  //--------------------------------------------------------------------------
114 
115 // TBlock_Input_Connector object_f32_Ti_1;
116 // TBlock_Input_Connector object_f32_Ti_2;
117 // TBlock_Input_Connector object_f32_Output_Gain;
118 // TBlock_Input_Connector object_f32_Output_Limit;
119  TBlock_Input_Connector object_f32_Sample_Time; //!< Sample time parameter
120  TBlock_Input_Connector object_f32_Ti; //!< Time constant parameter
121 
122  //--------------------------------------------------------------------------
123  // Function block input connectors
124  //--------------------------------------------------------------------------
125 
126  TBlock_Input_Connector object_bool_Enable;
127  TBlock_Input_Connector object_f32_Input_1;
128  TBlock_Input_Connector object_f32_Input_2;
129 
130  //--------------------------------------------------------------------------
131  // Function block output connectors
132  //--------------------------------------------------------------------------
133 
134  TBlock_Output_Connector object_f32_Output_1;
135  TBlock_Output_Connector object_f32_Output_2;
136 
137  //----------------------------------------------------------------------------
138  // Protected methods and variables
139  //----------------------------------------------------------------------------
140 
141  protected:
142 
143  //----------------------------------------------------------------------------
144  // private methods and variables
145  //----------------------------------------------------------------------------
146 
147  private:
148 
149  // Local variable
150  F32 f32_Ki;
151  F32 f32_Integrator_1;
152  F32 f32_Integrator_2;
153 
154 };
155 */
156 
157 //------------------------------------------------------------------------------
158 // End Of File
159 //------------------------------------------------------------------------------
Function block base class header file.