Andrew Tridgell
c35530c362
APM: fixed wheeled takeoff with Jons new controllers
2012-08-22 17:34:01 +10:00
Andrew Tridgell
d445482ace
APM: added optional use of new APM_Control library
...
thanks to Jon Challinger for the new controllers!
2012-08-22 12:45:14 +10:00
uncrustify
d5767ef817
uncrustify ArduPlane/Attitude.pde
2012-08-21 19:19:50 -07:00
Andrew Tridgell
c5b77f3909
APM: reset steering PID integrator in reset_I()
2012-08-21 15:01:01 +10:00
rmackay9
6d489947cf
ArduPlane: replaced many "int" with "int16_t", "long" with "int32_t"
2012-08-18 18:26:13 +09:00
Andrew Tridgell
6300fa7399
math: more abs() fixes
...
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Andrew Tridgell
1252ddfe0c
APM: rename RDRSTEER to WHEELSTEER
...
thanks to Jon for the suggestion
2012-08-15 16:28:59 +10:00
Andrew Tridgell
e26e8b3b67
APM: added RDRSTEER_ PID for steering on ground
...
this allows for rolling takeoff with steering, and use of rudder in
landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
e2c8ec2c9e
APM: removed THROTTLE_REVERSE option
...
Better to use RC3_REV
2012-08-09 10:04:44 +10:00
Andrew Tridgell
e133900c68
APM: Added STICK_MIXING option
...
this replaces the compile time option. Disabling during long distance
flights when the transmitter may be out of range is useful.
2012-08-09 08:53:29 +10:00
Andrew Tridgell
2114acddf1
APM: fixed default flap speed
...
the default of 255 translates to -1 as a AP_Int8, so use zero to mean
no flaps
2012-08-08 13:04:21 +10:00
Andrew Tridgell
5bfd1200d6
APM: change variables to use _cm, _cd and _ms suffix for units
...
this makes it less likely that we mix up units
2012-08-08 12:12:30 +10:00
Amilcar Lucas
9c1ac2d9e6
More work on ch9, 10 and 11
2012-08-04 19:44:41 +02:00
Andrew Tridgell
6bcfe913f7
APM: added a SCALING_SPEED parameter
...
this allows users to adjust the base speed used for scaling roll/pitch
PIDs. This can be used to make PIDs work for both airspeed and
non-airspeed control
2012-07-26 11:30:23 +10:00
Andrew Tridgell
7e697e4abd
APM: switch back to old nav_roll calculation
...
the old nav_roll will be used for the 2.50 release to prevent the need
for re-tuning. For the release after that we will use the new
calculation
2012-07-26 10:03:36 +10:00
Andrew Tridgell
d6e370886f
APM: rename airspeed_cruise to airspeed_cruise_cm to make the units clearer
...
it is in cm/s, not m/s
2012-07-19 11:50:41 +10:00
Andrew Tridgell
1cf5057c61
APM: Use g.airspeed_cruise for turn rate calculation if the airspeed sensor is disabled.
...
This gives our best approximation for auto flight
2012-07-19 11:50:41 +10:00
Jonathan Challinger
c7da63509b
APM: Removed unused YAW_DAMPENER code.
...
YAW_DAMPENER was defined as zero
2012-07-19 11:50:21 +10:00
Jonathan Challinger
d9d055ef78
APM: Removed incorrect nav_gain_scaler from nav_roll calculation.
...
nav_gain_scaler was originally added due to a perceived improvement in
loiter performance, but is incorrect for navigation. Turn rate is a
function of airspeed and bank angle, ground speed has no effect on
that.
2012-07-19 11:50:06 +10:00
Andrew Tridgell
de3c9ce56d
Airspeed: change APM to use new AP_Airspeed library
...
the next step is AHRS dead reckoning
2012-07-16 11:21:50 +10:00
Andrew Tridgell
f6d7d1bc59
APM: changed PID library to do automatic deltat calculation
...
this fixes a problem with the HDNG2RLL PID, which was using the wrong
time base and prevents similar bugs from happening in the future
2012-07-06 19:59:18 +10:00
Pat Hickey
1c00d1ffe3
ArduPlane: Fix effect of ELEVON_REVERSE
...
* Previously, the ELEVON_REVERSE parameter was equivelant in function to the
ELEVON_CH1_REVERSE parameter. These parameter values are found in
g.reverse_elevons and g.reverse_ch1_elevon, and used to map to the radio_out
channels in ArduPlane/Attitude.pde
* It seems the author's intent was for ELEVON_REVERSE to change the sign for
the combination of pitch & roll into ch1 & ch2, as there are already
parameters which change just the sign of ch1 and just the sign of ch2.
* Discovered this bug because I happened to build an elevon airframe which was
not possible to setup with the existing ELEVON_ and RCn_REV parameters.
* This will break existing elevon setups if the user used ELEVON_REVERSE
instead of ELEVON_CH1_REVERSE, since they were previously interchangable.
2012-05-27 22:15:08 -07:00
Andrew Tridgell
b3aa704c49
AirSpeed: added parameter ARSPD_USE
...
setting ARSPD_ENABLE to 1 and ARSPD_USE to 0 allows the airspeed
sensor to be initialised and logged without it being used for flight
control. This is very useful when initially testing an airspeed sensor
in a new plane. It also makes it possible to enable/disable the use of
the airspeed sensor during a flight at any time.
2012-05-22 20:02:23 +10:00
Andrew Tridgell
8afd196907
APM: adapt ArduPlane for AHRS framework
2012-03-19 17:29:02 +11:00
Phil
9242c157ee
APM: Fix rudder in elevon mode.
...
elevon planes can have rudders too
2012-02-16 14:43:24 +11:00
Doug Weibel
a5df59eba3
Remove old debug print
2011-12-24 14:26:35 -07:00
Doug Weibel
7879efb8ae
Fix scaling on "turn coordination" yaw PID so that P gain values fall in "usual" range 0.1 to 10.
2011-12-24 14:26:35 -07:00
Andrew Tridgell
3b148c87d5
geofence: main geo-fence code
...
this implements the primary logic of geo-fencing
2011-12-16 20:11:51 +11:00
Andrew Tridgell
2bd18e937c
throttle: only use throttle slew in auto throttle modes
...
we don't want STABILISE and FBWA to have throttle change limits
2011-12-12 15:14:55 +11:00
Doug Weibel
2ef4c79a7c
Minimum ground speed patch from Claudio Natoli. Thanks Claudio!
...
This patch will boost the target airspeed as necessary to keep the ground speed above a parameter value - param_min_groundspeed. Airspeed is still limited to FBW-max. Setting min_groundspeed to zero (default) disables the feature.
2011-12-09 16:43:25 -07:00
Amilcar Lucas
6484b83291
More optimizations
...
I forgot these ones.
2011-10-09 15:34:47 +02:00
Amilcar Lucas
865bb34657
Optimize the code a bit more, only perform calculations if they are necessary
2011-10-09 15:27:17 +02:00
Amilcar Lucas
c624582c91
Use a single if instead of four
2011-10-09 15:27:17 +02:00
Amilcar Lucas
e232a0936f
Use the shorter macro call instead
2011-10-09 13:57:35 +02:00
Andrew Tridgell
5d0d1b6a6d
fixed a crash in HIL
...
The g_rc_function[RC_Channel_aux::k_flap_auto] ptr came out as NULL
during one HIL run on a desktop CPU, which led to ArduPlane
crashing. I am not yet sure if this can happen in real flight, but I
think the NULL check is worthwhile to be sure.
2011-10-09 22:09:00 +11:00
Andrew Tridgell
6656847faa
fixed some ambiguous if/else combinations
...
gcc was complaining about the logic
2011-10-09 22:09:00 +11:00
Amilcar Lucas
f1d47982e2
Only use radio_in values if the channel is not used as flight_mode_channel
2011-10-08 22:15:54 +02:00
Doug Weibel
5073acce3e
Add auto flap functionality to FBW-B
2011-09-30 07:25:36 -06:00
Doug Weibel
9396e3ab58
Fix missing capitalization
2011-09-30 07:25:35 -06:00
Doug Weibel
adbe965f35
Rework prev commit a bit cleaner as suggested by Janne Mäntyharju
2011-09-30 07:25:35 -06:00
Doug Weibel
3fff788f95
Add code to disable throttle if we are on the ground and in FBW_B or higher
...
Add code to disable throttle if we are on the ground and in FBW_B or higher. We believe we are on the ground if speed < 5 and alt < 5. Also check that we are not trying to perform a takeoff.
2011-09-30 07:25:35 -06:00
Doug Weibel
932e0fe45c
Correct bug in auto flap handling
2011-09-22 20:50:15 -06:00
Andrew Tridgell
e61d742345
GCS: make the two GCS links gcs0 and gcs3
...
the artifical separation between 'gcs' and 'hil' just leads to
confusion. This also simplifies the code a bit more, and saves us a
bit more text
2011-09-19 11:04:02 +10:00
Amilcar Lucas
c7b3bfd295
Use the G_RC_AUX macro when possible. Added more comments. Remove unused code
2011-09-12 20:21:12 +02:00
Doug Weibel
251c5875fb
Disable stick mixing if in failsafe
...
If trim values differ from failsafe channel values then stick mixing will adversely affect performance while in failsafe
2011-09-11 21:50:32 -06:00
Amilcar Lucas
f4998c3673
Moved a function from radio.pde to the RC_Channel_aux library. Now its more readable and reusable
2011-09-10 13:26:29 +02:00
Amilcar Lucas
b7a0d8836a
This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port
2011-09-09 16:18:38 +02:00
Andrew Tridgell
609ae8359d
import APM_Camera branch from SVN
2011-09-09 11:45:13 +10:00
Andrew Tridgell
e0dc1271d6
imported ArduPlane from ArduPilotMega svn
2011-09-09 11:29:39 +10:00