ConOpSys V2970  P004.07
ANVILEX control operating system
Function_Block_ABB_SACE_Model.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file Function_Block_ABB_SACE_Model.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 18.05.2016
6 //! @brief ABB SACE circuit braker model class header file.
7 //! @attention
8 //!
9 //! COPYRIGHT(C) 2016 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 
71 {
72 
73  //----------------------------------------------------------------------------
74 
75  public:
76 
77  //!-------------------------------------------------------------------------
78  //! @brief Class constructor method.
79  //! @note None
80  //! \par Override
81  //! Not allowed
82  //! @attention Don't call this method directly.
83  //--------------------------------------------------------------------------
84 
86 
87  //!-------------------------------------------------------------------------
88  //! @brief Class destructor method.
89  //! @note None
90  //! \par Override
91  //! Not allowed
92  //! @attention Don't call this method directly.
93  //--------------------------------------------------------------------------
94 
96 
97  //!-------------------------------------------------------------------------
98  //! @brief Function block initialisation method.
99  //! @note None
100  //! \par Override
101  //! Not allowed
102  //! @attention Don't call this method directly.
103  //--------------------------------------------------------------------------
104 
105  virtual VOID Init();
106 
107  //!-------------------------------------------------------------------------
108  //! @brief Function block execution method.
109  //! @note None
110  //! \par Override
111  //! Not allowed
112  //! @attention None
113  //--------------------------------------------------------------------------
114 
115  virtual VOID Execute();
116 
117  //!-------------------------------------------------------------------------
118  //! @brief Send information about Function block over communication link protocol
119  //! @note This method sends information about Function block over specified communication link protocol.
120  //! @param [in] TProtocol_Base *object_Protocol - Pointer to the communication link protocol
121  //! @return None
122  //! \par Override
123  //! Not allowed
124  //! @attention None
125  //--------------------------------------------------------------------------
126 
127  virtual VOID Send_Information( TProtocol_Base *object_Protocol );
128 
129  //--------------------------------------------------------------------------
130  // Function block parameter connectors
131  //--------------------------------------------------------------------------
132 
134 
135  //--------------------------------------------------------------------------
136  // Function block input connectors
137  //--------------------------------------------------------------------------
138 
143 
144  //--------------------------------------------------------------------------
145  // Function block output connectors
146  //--------------------------------------------------------------------------
147 
152 
153  //----------------------------------------------------------------------------
154 
155  protected:
156 
157  //----------------------------------------------------------------------------
158 
159  private:
160 
161  // Internal variables
166 
171 
172 };
173 
174 //------------------------------------------------------------------------------
175 // End Of File
176 //------------------------------------------------------------------------------
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
unsigned long U32
Binary 32-Bit unsigned integer datatype defenition.
Definition: Defines.h:203
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
Class declaration description.
Definition: Function_Block_ABB_SACE_Model.h:71
BOOL bool_Closed
Definition: Function_Block_ABB_SACE_Model.h:164
TBlock_Input_Connector object_bool_Reset
Definition: Function_Block_ABB_SACE_Model.h:142
TBlock_Input_Connector object_bool_Release
Definition: Function_Block_ABB_SACE_Model.h:141
U32 u32_Close_Time
Definition: Function_Block_ABB_SACE_Model.h:169
virtual ~TFunction_Block_ABB_SACE_Model()
Class destructor method.
Definition: Function_Block_ABB_SACE_Model.cpp:133
virtual VOID Init()
Function block initialisation method.
Definition: Function_Block_ABB_SACE_Model.cpp:143
BOOL bool_Tripped
Definition: Function_Block_ABB_SACE_Model.h:165
TBlock_Output_Connector object_bool_Overcurrent_Trip
Definition: Function_Block_ABB_SACE_Model.h:151
TBlock_Input_Connector object_bool_Spring_Charge
Definition: Function_Block_ABB_SACE_Model.h:139
BOOL bool_Ready
Definition: Function_Block_ABB_SACE_Model.h:162
TBlock_Input_Connector object_f32_Sample_Time
Sample time.
Definition: Function_Block_ABB_SACE_Model.h:133
TBlock_Output_Connector object_bool_Ready_To_Close
Definition: Function_Block_ABB_SACE_Model.h:149
U32 u32_Release_Time
Definition: Function_Block_ABB_SACE_Model.h:170
TBlock_Output_Connector object_bool_Aux_Contact
Definition: Function_Block_ABB_SACE_Model.h:150
BOOL bool_Spring_Charged
Definition: Function_Block_ABB_SACE_Model.h:163
TFunction_Block_ABB_SACE_Model()
Class constructor method.
Definition: Function_Block_ABB_SACE_Model.cpp:68
virtual VOID Send_Information(TProtocol_Base *object_Protocol)
Send information about Function block over communication link protocol.
Definition: Function_Block_ABB_SACE_Model.cpp:267
U32 u32_Spring_Charge_Timeout
Definition: Function_Block_ABB_SACE_Model.h:168
TBlock_Input_Connector object_bool_Close
Definition: Function_Block_ABB_SACE_Model.h:140
U32 u32_Spring_Charge_Time
Definition: Function_Block_ABB_SACE_Model.h:167
TBlock_Output_Connector object_bool_Spring_Charged
Definition: Function_Block_ABB_SACE_Model.h:148
virtual VOID Execute()
Function block execution method.
Definition: Function_Block_ABB_SACE_Model.cpp:161
Function block base class for device.
Definition: Function_Block_Base.h:96
Definition: Protocol_Base.h:57