2000-11-03 23:02:47 +00:00
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
Header: FGGFCS.h
|
|
|
|
Author: Jon S. Berndt
|
|
|
|
Date started: 12/12/98
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
------------- Copyright (C) 1999 Jon S. Berndt (jsb@hal-pc.org) -------------
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
This program is free software; you can redistribute it and/or modify it under
|
|
|
|
the terms of the GNU General Public License as published by the Free Software
|
|
|
|
Foundation; either version 2 of the License, or (at your option) any later
|
|
|
|
version.
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
This program is distributed in the hope that it will be useful, but WITHOUT
|
|
|
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
|
|
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
|
|
details.
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
You should have received a copy of the GNU General Public License along with
|
|
|
|
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
|
|
|
Place - Suite 330, Boston, MA 02111-1307, USA.
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
Further information about the GNU General Public License can also be found on
|
|
|
|
the world wide web at http://www.gnu.org.
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
HISTORY
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
12/12/98 JSB Created
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
1999-02-05 21:26:01 +00:00
|
|
|
SENTRY
|
2000-11-03 23:02:47 +00:00
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
1999-02-05 21:26:01 +00:00
|
|
|
|
|
|
|
#ifndef FGFCS_H
|
|
|
|
#define FGFCS_H
|
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
1999-02-05 21:26:01 +00:00
|
|
|
INCLUDES
|
2000-11-03 23:02:47 +00:00
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
1999-02-05 21:26:01 +00:00
|
|
|
|
2000-04-24 23:49:06 +00:00
|
|
|
#ifdef FGFS
|
|
|
|
# include <simgear/compiler.h>
|
2001-06-05 20:58:48 +00:00
|
|
|
# ifdef SG_HAVE_STD_INCLUDES
|
2000-04-24 23:49:06 +00:00
|
|
|
# include <vector>
|
|
|
|
# else
|
|
|
|
# include <vector.h>
|
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
# include <vector>
|
|
|
|
#endif
|
|
|
|
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
#include <string>
|
2000-04-24 23:49:06 +00:00
|
|
|
#include "filtersjb/FGFCSComponent.h"
|
1999-02-05 21:26:01 +00:00
|
|
|
#include "FGModel.h"
|
2000-11-03 23:02:47 +00:00
|
|
|
#include "FGLGear.h"
|
2000-04-24 23:49:06 +00:00
|
|
|
#include "FGConfigFile.h"
|
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
DEFINITIONS
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
|
|
|
|
2001-03-30 01:04:50 +00:00
|
|
|
#define ID_FCS "$Id$"
|
2000-10-14 02:10:10 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
FORWARD DECLARATIONS
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
|
|
|
|
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
COMMENTS, REFERENCES, and NOTES [use "class documentation" below for API docs]
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
|
|
|
|
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
CLASS DOCUMENTATION
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
|
|
|
|
|
|
|
/** Encapsulates the Flight Control System (FCS) functionality.
|
|
|
|
<ul><li>\URL[Source Code]{FGFCS.cpp.html}</li>
|
|
|
|
<li>\URL[Header File]{FGFCS.h.html}</li></ul>
|
|
|
|
This class owns and contains the list of \URL[components]{FGFCSComponent.html}
|
|
|
|
that define the control system for this aircraft. The config file for the
|
|
|
|
aircraft contains a description of the control path that starts at an input
|
|
|
|
or command and ends at an effector, e.g. an aerosurface. The FCS components
|
|
|
|
which comprise the control laws for an axis are defined sequentially in
|
|
|
|
the configuration file. For instance, for the X-15:
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
< FLIGHT_CONTROL NAME="X-15 SAS">
|
|
|
|
|
|
|
|
< COMPONENT NAME="Pitch Trim Sum" TYPE="SUMMER">
|
|
|
|
ID 0
|
|
|
|
INPUT FG_ELEVATOR_CMD
|
2001-03-30 01:04:50 +00:00
|
|
|
INPUT FG_PITCH_TRIM_CMD
|
2000-11-03 23:02:47 +00:00
|
|
|
CLIPTO -1 1
|
|
|
|
</COMPONENT>
|
|
|
|
|
|
|
|
< COMPONENT NAME="Pitch Command Scale" TYPE="AEROSURFACE_SCALE">
|
|
|
|
ID 1
|
|
|
|
INPUT 0
|
|
|
|
MIN -50
|
|
|
|
MAX 50
|
|
|
|
</COMPONENT>
|
|
|
|
|
|
|
|
< COMPONENT NAME="Pitch Gain 1" TYPE="PURE_GAIN">
|
|
|
|
ID 2
|
|
|
|
INPUT 1
|
|
|
|
GAIN -0.36
|
|
|
|
</COMPONENT>
|
|
|
|
|
|
|
|
< COMPONENT NAME="Pitch Scheduled Gain 1" TYPE="SCHEDULED_GAIN">
|
|
|
|
ID 3
|
|
|
|
INPUT 2
|
|
|
|
GAIN 0.017
|
|
|
|
SCHEDULED_BY FG_ELEVATOR_POS
|
|
|
|
-0.35 -6.0
|
|
|
|
-0.17 -3.0
|
|
|
|
0.00 -2.0
|
|
|
|
0.09 -3.0
|
|
|
|
0.17 -5.0
|
|
|
|
0.60 -12.0
|
|
|
|
</COMPONENT>
|
|
|
|
|
|
|
|
... etc.
|
|
|
|
</pre>
|
|
|
|
|
|
|
|
In the above case we can see the first few components of the pitch channel
|
|
|
|
defined. The input to the first component, as can be seen in the "Pitch trim
|
|
|
|
sum" component, is really the sum of two parameters: elevator command (from
|
|
|
|
the stick - a pilot input), and pitch trim. The type of this component is
|
|
|
|
"Summer". Its ID is 0 - the ID is used by other components to reference it.
|
|
|
|
The next component created is an aerosurface scale component - a type of
|
|
|
|
gain (see the LoadFCS() method for insight on how the various types of
|
|
|
|
components map into the actual component classes). You can see the input of
|
|
|
|
the "Pitch Command Scale" component takes "0" as input. When a number is
|
|
|
|
specified as an input, it refers to the ID of another FCS component. In this
|
|
|
|
case, ID 0 refers to the previously defined and discussed "Pitch Trim Sum"
|
|
|
|
component. This continues until the final component for an axis when the
|
|
|
|
OUTPUT keyword specifies where the output is supposed to go. See the
|
|
|
|
individual components for more information on how they are mechanized.
|
|
|
|
|
|
|
|
@author Jon S. Berndt
|
|
|
|
@version $Id$
|
|
|
|
@see FGFCSComponent
|
|
|
|
@see FGConfigFile
|
|
|
|
@see FGGain
|
|
|
|
@see FGSummer
|
|
|
|
@see FGSwitch
|
|
|
|
@see FGGradient
|
|
|
|
@see FGFilter
|
|
|
|
@see FGFlaps
|
|
|
|
@see FGDeadBand
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
1999-02-05 21:26:01 +00:00
|
|
|
CLASS DECLARATION
|
2000-11-03 23:02:47 +00:00
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
|
1999-02-05 21:26:01 +00:00
|
|
|
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
class FGFCS : public FGModel {
|
2000-04-24 23:49:06 +00:00
|
|
|
|
1999-02-05 21:26:01 +00:00
|
|
|
public:
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Constructor
|
|
|
|
@param Executive a pointer to the parent executive object */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
FGFCS(FGFDMExec*);
|
2000-11-03 23:02:47 +00:00
|
|
|
/// Destructor
|
2001-03-30 01:04:50 +00:00
|
|
|
~FGFCS();
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Runs the Flight Controls model; called by the Executive
|
|
|
|
@return false if no error */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
bool Run(void);
|
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/// @name Pilot input command retrieval
|
|
|
|
//@{
|
|
|
|
/** Gets the aileron command.
|
|
|
|
@return aileron command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDaCmd(void) { return DaCmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the elevator command.
|
|
|
|
@return elevator command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDeCmd(void) { return DeCmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the rudder command.
|
|
|
|
@return rudder command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDrCmd(void) { return DrCmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the flaps command.
|
|
|
|
@return flaps command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDfCmd(void) { return DfCmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the speedbrake command.
|
|
|
|
@return speedbrake command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDsbCmd(void) { return DsbCmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the spoiler command.
|
|
|
|
@return spoiler command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDspCmd(void) { return DspCmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the throttle command.
|
|
|
|
@param engine engine ID number
|
|
|
|
@return throttle command in percent ( 0 - 100) for the given engine */
|
2001-11-12 16:06:29 +00:00
|
|
|
float GetThrottleCmd(int engine);
|
|
|
|
|
|
|
|
/** Gets the mixture command.
|
|
|
|
@param engine engine ID number
|
|
|
|
@return mixture command in percent ( 0 - 100) for the given engine */
|
|
|
|
inline float GetMixtureCmd(int engine) { return MixtureCmd[engine]; }
|
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the pitch trim command.
|
|
|
|
@return pitch trim command in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetPitchTrimCmd(void) { return PTrimCmd; }
|
2000-11-03 23:02:47 +00:00
|
|
|
//@}
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/// @name Aerosurface position retrieval
|
|
|
|
//@{
|
|
|
|
/** Gets the aileron position.
|
|
|
|
@return aileron position in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDaPos(void) { return DaPos; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the elevator position.
|
|
|
|
@return elevator position in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDePos(void) { return DePos; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the rudder position.
|
|
|
|
@return rudder position in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDrPos(void) { return DrPos; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the flaps position.
|
|
|
|
@return flaps position in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDfPos(void) { return DfPos; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the speedbrake position.
|
|
|
|
@return speedbrake position in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDsbPos(void) { return DsbPos; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the spoiler position.
|
|
|
|
@return spoiler position in radians */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline float GetDspPos(void) { return DspPos; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the throttle position.
|
|
|
|
@param engine engine ID number
|
|
|
|
@return throttle position for the given engine in percent ( 0 - 100)*/
|
2001-11-12 16:06:29 +00:00
|
|
|
float GetThrottlePos(int engine);
|
|
|
|
|
|
|
|
/** Gets the mixture position.
|
|
|
|
@param engine engine ID number
|
|
|
|
@return mixture position for the given engine in percent ( 0 - 100)*/
|
|
|
|
inline float GetMixturePos(int engine) { return MixturePos[engine]; }
|
2000-11-03 23:02:47 +00:00
|
|
|
//@}
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Retrieves the State object pointer.
|
|
|
|
This is used by the FGFCS-owned components.
|
|
|
|
@return pointer to the State object */
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
inline FGState* GetState(void) { return State; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Retrieves a components output value
|
|
|
|
@param idx the index of the component (the component ID)
|
|
|
|
@return output value from the component */
|
2000-10-02 23:07:30 +00:00
|
|
|
float GetComponentOutput(eParam idx);
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Retrieves the component name
|
|
|
|
@param idx the index of the component (the component ID)
|
|
|
|
@return name of the component */
|
2000-04-24 23:49:06 +00:00
|
|
|
string GetComponentName(int idx);
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-14 20:31:58 +00:00
|
|
|
/** Retrieves all component names for inclusion in output stream */
|
|
|
|
string GetComponentStrings(void);
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-14 20:31:58 +00:00
|
|
|
/** Retrieves all component outputs for inclusion in output stream */
|
|
|
|
string GetComponentValues(void);
|
2000-04-24 23:49:06 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/// @name Pilot input command setting
|
|
|
|
//@{
|
|
|
|
/** Sets the aileron command
|
|
|
|
@param cmd aileron command in radians*/
|
|
|
|
inline void SetDaCmd(float cmd) { DaCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the elevator command
|
|
|
|
@param cmd elevator command in radians*/
|
|
|
|
inline void SetDeCmd(float cmd) { DeCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the rudder command
|
|
|
|
@param cmd rudder command in radians*/
|
|
|
|
inline void SetDrCmd(float cmd) { DrCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the flaps command
|
|
|
|
@param cmd flaps command in radians*/
|
|
|
|
inline void SetDfCmd(float cmd) { DfCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the speedbrake command
|
|
|
|
@param cmd speedbrake command in radians*/
|
|
|
|
inline void SetDsbCmd(float cmd) { DsbCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the spoilers command
|
|
|
|
@param cmd spoilers command in radians*/
|
|
|
|
inline void SetDspCmd(float cmd) { DspCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the pitch trim command
|
|
|
|
@param cmd pitch trim command in radians*/
|
|
|
|
inline void SetPitchTrimCmd(float cmd) { PTrimCmd = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the throttle command for the specified engine
|
2001-04-05 21:14:37 +00:00
|
|
|
@param engine engine ID number
|
2000-11-03 23:02:47 +00:00
|
|
|
@param cmd throttle command in percent (0 - 100)*/
|
2001-04-17 21:19:54 +00:00
|
|
|
void SetThrottleCmd(int engine, float cmd);
|
2001-11-12 16:06:29 +00:00
|
|
|
|
|
|
|
/** Sets the mixture command for the specified engine
|
|
|
|
@param engine engine ID number
|
|
|
|
@param cmd mixture command in percent (0 - 100)*/
|
|
|
|
void SetMixtureCmd(int engine, float cmd);
|
2000-11-03 23:02:47 +00:00
|
|
|
//@}
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/// @name Aerosurface position setting
|
|
|
|
//@{
|
|
|
|
/** Sets the aileron position
|
|
|
|
@param cmd aileron position in radians*/
|
|
|
|
inline void SetDaPos(float cmd) { DaPos = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the elevator position
|
|
|
|
@param cmd elevator position in radians*/
|
|
|
|
inline void SetDePos(float cmd) { DePos = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the rudder position
|
|
|
|
@param cmd rudder position in radians*/
|
|
|
|
inline void SetDrPos(float cmd) { DrPos = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the flaps position
|
|
|
|
@param cmd flaps position in radians*/
|
|
|
|
inline void SetDfPos(float cmd) { DfPos = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the speedbrake position
|
|
|
|
@param cmd speedbrake position in radians*/
|
|
|
|
inline void SetDsbPos(float cmd) { DsbPos = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the spoiler position
|
|
|
|
@param cmd spoiler position in radians*/
|
|
|
|
inline void SetDspPos(float cmd) { DspPos = cmd; }
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the actual throttle setting for the specified engine
|
2001-04-05 21:14:37 +00:00
|
|
|
@param engine engine ID number
|
2000-11-03 23:02:47 +00:00
|
|
|
@param cmd throttle setting in percent (0 - 100)*/
|
2001-04-17 21:19:54 +00:00
|
|
|
void SetThrottlePos(int engine, float cmd);
|
2001-11-12 16:06:29 +00:00
|
|
|
|
|
|
|
/** Sets the actual mixture setting for the specified engine
|
|
|
|
@param engine engine ID number
|
|
|
|
@param cmd mixture setting in percent (0 - 100)*/
|
|
|
|
void SetMixturePos(int engine, float cmd);
|
2000-11-03 23:02:47 +00:00
|
|
|
//@}
|
Updates from the Jon and Tony show.
Tony submitted:
JSBsim:
Added trimming routine, it is longitudinal & in-air only at this point
Added support for taking wind & weather data from external source
Added support for flaps.
Added independently settable pitch trim
Added alphamin and max to config file, stall modeling and warning to
follow
c172.cfg:
Flaps!
Adjusted Cmo, model should be speed stable now
FG:
Hooked up Christian's weather code, should be using it soon.
Hooked up the trimming routine. Note that the X-15 will not trim.
This is not a model or trimming routine deficiency, just the
nature of the X-15
The trimming routine sets the pitch trim and and throttle at startup.
The throttle is set using Norman's code for the autothrottle so the
autothrottle is on by default. --notrim will turn it off.
Added --vc, --mach, and --notrim switches
(vc is airspeed in knots)
uBody, vBody, and wBody are still supported, last one entered
on the command line counts, i.e. you can set vc or mach or u,v,
and w but any combination will be ignored.
2000-05-16 21:35:11 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/// @name Landing Gear brakes
|
|
|
|
//@{
|
|
|
|
/** Sets the left brake group
|
|
|
|
@param cmd brake setting in percent (0.0 - 1.0) */
|
|
|
|
void SetLBrake(float cmd) {LeftBrake = cmd;}
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the right brake group
|
|
|
|
@param cmd brake setting in percent (0.0 - 1.0) */
|
|
|
|
void SetRBrake(float cmd) {RightBrake = cmd;}
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Sets the center brake group
|
|
|
|
@param cmd brake setting in percent (0.0 - 1.0) */
|
|
|
|
void SetCBrake(float cmd) {CenterBrake = cmd;}
|
2001-04-05 21:14:37 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Gets the brake for a specified group.
|
|
|
|
@param bg which brakegroup to retrieve the command for
|
|
|
|
@return the brake setting for the supplied brake group argument */
|
2001-03-30 01:04:50 +00:00
|
|
|
float GetBrake(FGLGear::BrakeGroup bg);
|
2000-11-03 23:02:47 +00:00
|
|
|
//@}
|
2000-04-24 23:49:06 +00:00
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
/** Loads the Flight Control System.
|
|
|
|
The FGAircraft instance is actually responsible for reading the config file
|
|
|
|
and calling the various Loadxx() methods of the other systems, passing in
|
|
|
|
the config file instance pointer. LoadFCS() is called from FGAircraft.
|
|
|
|
@param AC_cfg pointer to the config file instance
|
|
|
|
@return true if succesful */
|
2001-07-10 15:56:38 +00:00
|
|
|
bool Load(FGConfigFile* AC_cfg);
|
2001-03-30 01:04:50 +00:00
|
|
|
|
|
|
|
void AddThrottle(void);
|
|
|
|
|
2000-11-03 23:02:47 +00:00
|
|
|
private:
|
|
|
|
float DaCmd, DeCmd, DrCmd, DfCmd, DsbCmd, DspCmd;
|
|
|
|
float DaPos, DePos, DrPos, DfPos, DsbPos, DspPos;
|
|
|
|
float PTrimCmd;
|
2001-03-30 01:04:50 +00:00
|
|
|
vector <float> ThrottleCmd;
|
|
|
|
vector <float> ThrottlePos;
|
2001-11-12 16:06:29 +00:00
|
|
|
vector <float> MixtureCmd;
|
|
|
|
vector <float> MixturePos;
|
2000-11-03 23:02:47 +00:00
|
|
|
float LeftBrake, RightBrake, CenterBrake; // Brake settings
|
|
|
|
|
|
|
|
vector <FGFCSComponent*> Components;
|
2001-03-30 01:04:50 +00:00
|
|
|
void Debug(void);
|
1999-02-05 21:26:01 +00:00
|
|
|
};
|
|
|
|
|
2000-04-24 23:49:06 +00:00
|
|
|
#include "FGState.h"
|
|
|
|
|
2000-01-10 21:07:00 +00:00
|
|
|
#endif
|
2001-03-30 01:04:50 +00:00
|
|
|
|