]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/models/flight_control/FGActuator.h
Merge branch 'next' of gitorious.org:fg/flightgear into next
[flightgear.git] / src / FDM / JSBSim / models / flight_control / FGActuator.h
old mode 100755 (executable)
new mode 100644 (file)
index ecfb3bf..522fab8
@@ -44,7 +44,7 @@ INCLUDES
 DEFINITIONS
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
 
-#define ID_ACTUATOR "$Id$"
+#define ID_ACTUATOR "$Id: FGActuator.h,v 1.13 2012/04/08 15:04:41 jberndt Exp $"
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 FORWARD DECLARATIONS
@@ -81,7 +81,7 @@ Syntax:
 <actuator name="name">
   <input> {[-]property} </input>
   <lag> number </lag>
-  <rate_limit> number <rate_limit>
+  <rate_limit> number </rate_limit>
   <bias> number </bias>
   <deadband_width> number </deadband_width>
   <hysteresis_width> number </hysteresis_width>
@@ -96,14 +96,14 @@ Syntax:
 Example:
 
 @code
-<actuator name="fcs/gimbal_pitch_position">
+<actuator name="fcs/gimbal_pitch_position_radians">
   <input> fcs/gimbal_pitch_command </input>
   <lag> 60 </lag>
-  <rate_limit> 0.085 <rate_limit> <!-- 5 degrees/sec -->
+  <rate_limit> 0.085 </rate_limit> <!-- 0.085 radians/sec -->
   <bias> 0.002 </bias>
   <deadband_width> 0.002 </deadband_width>
   <hysteresis_width> 0.05 </hysteresis_width>
-  <clipto> <!-- +/- 10 degrees -->
+  <clipto> <!-- +/- 0.17 radians -->
     <min> -0.17 </min>
     <max>  0.17 </max>
    </clipto>
@@ -111,7 +111,7 @@ Example:
 @endcode
 
 @author Jon S. Berndt
-@version $Revision$
+@version $Revision: 1.13 $
 */
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -135,13 +135,14 @@ public:
   /** This function fails the actuator to zero. The motion to zero
       will flow through the lag, hysteresis, and rate limiting
       functions if those are activated. */
-  inline void SetFailZero(bool set) {fail_zero = set;}
-  inline void SetFailHardover(bool set) {fail_hardover = set;}
-  inline void SetFailStuck(bool set) {fail_stuck = set;}
-
-  inline bool GetFailZero(void) const {return fail_zero;}
-  inline bool GetFailHardover(void) const {return fail_hardover;}
-  inline bool GetFailStuck(void) const {return fail_stuck;}
+  void SetFailZero(bool set) {fail_zero = set;}
+  void SetFailHardover(bool set) {fail_hardover = set;}
+  void SetFailStuck(bool set) {fail_stuck = set;}
+
+  bool GetFailZero(void) const {return fail_zero;}
+  bool GetFailHardover(void) const {return fail_hardover;}
+  bool GetFailStuck(void) const {return fail_stuck;}
+  bool IsSaturated(void) const {return saturated;}
   
 private:
   double span;
@@ -160,6 +161,8 @@ private:
   bool fail_zero;
   bool fail_hardover;
   bool fail_stuck;
+  bool initialized;
+  bool saturated;
 
   void Hysteresis(void);
   void Lag(void);