Andrew Tridgell
20dea6df45
Copter: moved OSD to top level params
...
this gives us plenty of param depth for a complex param tree
2018-06-27 14:55:00 +10:00
Alexander Malishev
f63b3c044a
Copter: added OSD support
2018-06-27 14:55:00 +10:00
Peter Barker
7883582c65
Copter: move takeoff state into Mode class
2018-06-26 09:11:21 +09:00
Peter Barker
cff1969a29
Copter: make do_user_takeoff a member of Mode
2018-06-26 09:11:21 +09:00
Peter Barker
cb26ff64b3
Copter: current_mode_has_user_takeoff -> Mode::has_user_takeoff
2018-06-26 09:11:21 +09:00
Peter Barker
70d159cb38
Copter: raise EKF failure even if USB is connected
...
This will let EKF go bad if your PixHawk is connected to your laptop.
This doesn't seem to be a problem for the other vehicles.
This also allows the EKF to go bad in-flight if you happen to have
connected (against AP's recommendations) your companion computer to your
flight controller via USB. Since people do this, it is better to have
the checks than not.
2018-06-26 10:07:55 +10:00
Peter Barker
fd9ce90b8e
Copter: option to force arm, bypassing checks
2018-06-20 11:43:38 +10:00
murata
a970eacf49
Copter: Do not use the Delay method wrapper.
2018-06-16 09:40:47 +09:00
Peter Barker
078d90132c
Copter: use AP_RTC
...
Co-authored-by: patrickelectric@gmail.com
Copter: AP_GPS now sets the system time directly
Copter: use AP_RTC for mission delays
Copter: Remove ap_t bits counter (Patrick José Pereira)
Change bits in ap_t to bool and add a static assert
2018-06-15 08:01:22 +10:00
Peter Barker
ab68e4fe8b
Copter: log quiet-nan for rangefinder-desired-alt when not using it
2018-06-06 08:33:56 +09:00
Peter Barker
e3ddf7dadd
Copter: rename SPRAYER-enabled-define to SPRAYER_ENABLED
2018-06-01 15:13:05 +09:00
Peter Barker
5f2221fe74
Copter: move handling of VFR_HUD into GCS_MAVLink_Copter
2018-05-29 13:00:40 +10:00
Andrew Tridgell
2425c65e74
Copter: implement 'air-mode' for copter
...
this implements what betaflight calls 'air-mode'. This gives attitude
control when throttle is at zero, allowing for zero-throttle maneuvers,
plus keeping the copter level on the ground.
This was already implemented if an interlock switch was setup, but it
should also work with an arming switch. If using an arming switch then
throttle should not be considered zero as long as the arming switch
hasn't gone low.
2018-05-29 10:27:14 +09:00
Andrew Tridgell
0d56526400
Copter: added de-bouncing of aux switches
...
this prevents a crash with a switch such as arm/disarm getting a
single frame RC glitch
2018-05-29 08:26:46 +09:00
Peter Barker
81e9edd80a
Copter: move sending of sim state up
2018-05-23 18:36:50 +10:00
Peter Barker
33582107b6
Copter: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK
2018-05-17 15:48:06 +01:00
Peter Barker
da1b2579c4
Copter: move send_attitude up to GCS_MAVLINK
2018-05-17 18:28:43 +10:00
Peter Barker
9dce133938
Copter: handle setting of ekf origin in GCS_MAVLink
2018-05-17 10:13:42 +10:00
Peter Barker
0dc0e54767
Copter: move Log_Write_Home_And_Origin into AP_AHRS
2018-05-17 10:13:42 +10:00
Leonard Hall
656892cd88
Copter: ekf failsafe disabled for acro and stabilize
...
Also restructure to combine ekf_over_threshold and ekf_check_position_problem
2018-05-10 08:59:37 +09:00
Peter Barker
dee40f3fe5
Copter: make scheduler track whether it has called the delay callback
2018-05-09 16:15:38 +10:00
Peter Barker
6dd9f50f7c
Copter: move try_send_message handling of RC_CHANNELS up
2018-05-08 12:33:32 +01:00
night-ghost
51a189e906
ArduCopter: devo telemetry support (RX705/707)
2018-04-24 10:44:28 +10:00
Peter Barker
ba8b3e2415
Copter: create an AutoYaw helper object to hold auto-yaw state
2018-04-18 13:27:43 +09:00
Pierre Kancir
70805d61f2
ArduCopter: remove inertial_nav from precland constructor
2018-04-17 17:21:35 +09:00
Peter Barker
80549a479e
Copter: move throw logging into ModeThrow
2018-04-17 17:16:52 +09:00
Peter Barker
c95ff96263
Copter: Baro does its own dataflash logging
2018-04-12 19:12:12 +01:00
Peter Barker
d9ab8d6569
Copter: sprayer now uses ahrs singleton; stop passing reference
2018-04-12 14:23:33 +09:00
Pierre Kancir
9e298b3b2f
Copter: sprayer uses ahrs in constructor
2018-04-11 09:41:33 +09:00
Randy Mackay
59e4749fd0
Copter: integrate AC_Loiter
...
includes param conversion
2018-04-04 10:45:10 +09:00
Peter Barker
0c8110ecb2
Copter: factor vehicle's mavlink send_heartbeat
2018-04-03 13:05:19 +01:00
Peter Barker
d58e2214d2
Copter: tidy handling of barometer calibrations
2018-04-02 23:25:05 +01:00
Peter Barker
cca4d5136e
Copter: move common calibration functions up
2018-04-02 23:25:05 +01:00
Dr.-Ing. Amilcar do Carmo Lucas
d633ba8c46
Copter: Add option to disable RPM module
2018-03-30 09:36:48 +09:00
Ebin
1ff4019ddf
ArduCopter: moved landing control fns from Copter to Mode
...
land_run_horizontal_control(),land_run_vertical_control(),get_alt_above_ground() moved to Mode
2018-03-29 16:50:00 +01:00
Michael du Breuil
291531e056
Copter: Support new battery failsafes
2018-03-27 22:12:21 +01:00
priseborough
4b00f399b4
Copter: Clarify definition for gps_glitching flag
2018-03-27 20:28:55 +09:00
Peter Barker
45f2312bfe
Copter: move home state into AP_AHRS
2018-03-19 10:32:37 +09:00
Peter Barker
2749ee9060
Copter: use ins singleton
2018-03-16 00:37:35 -07:00
Randy Mackay
4a74b1b5e5
Copter: replace NTUN with PSC logging
2018-03-16 13:50:57 +09:00
Leonard Hall
9544b1763b
Copter: replace smoothing gain with AC_AttitudeControl::set_input_tc
2018-03-16 13:50:57 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
ed36ec3c29
Copter: add option to disable THROW mode
2018-03-15 07:38:14 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
b27c00dc5f
Copter: add option to disable ACRO mode
2018-03-15 07:38:14 +09:00
Randy Mackay
af207caa1f
Copter: move get_pilot_desired_lean_angles higher in cpp
...
this makes the definition in the .h and implementation in .cpp files appear in the same order
2018-03-14 09:33:39 +09:00
Ebin
20995b909f
Copter: Moved get_pilot_desired_lean_angles to mode.cpp
2018-03-14 09:33:39 +09:00
Peter Barker
d88bd52a53
Copter: use baro singleton
2018-03-08 21:20:05 -08:00
Peter Barker
bc4f021516
Copter: use AP::ahrs() for ADSB
2018-03-07 12:34:39 +00:00
Peter Barker
af56826107
Copter: follow mode fixups
...
add follow to FLTMODEx param descriptions
remove follow's set_velocity method
10hz logging of desired velocity in follow mode
follow mode uses pos error P gain
add send-debug-via-mavlink option
don't enter follow if follow lib is disabled
follow debug slowed to 1hz
disable follow on min-features builds
2018-03-05 15:08:08 +09:00
Randy Mackay
6ee101ca98
Copter: rename chase to follow
2018-03-05 15:08:08 +09:00
Randy Mackay
053983eb70
Copter: integrate AP_Follow into chase mode
2018-03-05 15:08:08 +09:00
Peter Barker
199455dc56
Copter: add chase mode
2018-03-05 15:08:08 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
bc86ca0e3c
Copter: simplify Log_Write_Proximity
2018-03-03 17:13:34 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
bbd1aa1cab
Copter: Improve interoperation of AC_AVOID_ENABLED and BEACON_ENABLED
2018-03-03 17:10:26 +00:00
Peter Barker
b8e1f03599
Copter: add define for disabling beacon
2018-02-27 07:43:13 +09:00
Peter Barker
5b355214fd
Copter: add option to disable CIRCLE flight mode
...
Saves about 2.4kB of flash
2018-02-27 07:43:13 +09:00
Peter Barker
e4898e1d60
Copter: add option to disable GUIDED_NOGPS flight mode
...
Saves about 6.3kB of flash
2018-02-27 07:43:13 +09:00
Peter Barker
86b162e32f
Copter: add option to disable BRAKE flight mode
2018-02-27 07:43:13 +09:00
Peter Barker
a7fe242e31
Copter: add option to disable RTL flight mode
2018-02-27 07:43:13 +09:00
Peter Barker
b8c432b1a1
Copter: add option to disable GUIDED flight mode
...
Saves about 6kB of flash
2018-02-27 07:43:13 +09:00
Peter Barker
0ddeb56a05
Copter: add option to disable DRIFT flight mode
...
Saves about 1kB of space
2018-02-27 07:43:13 +09:00
Peter Barker
e5056f8d40
Copter: add option to disable SPORT flight mode
...
Saves about 1,500 bytes
2018-02-27 07:43:13 +09:00
Peter Barker
7154f4dea4
Copter: add option to disable LOITER mode
2018-02-27 07:43:13 +09:00
Peter Barker
9b440d6b25
Copter: add option to disable SmartRTL mode
...
Saves 5.5k of Flash
2018-02-27 07:43:13 +09:00
Peter Barker
3a61b86e65
Copter: add option to disable POSHOLD mode
...
Saves about 4k of Flash
2018-02-27 07:43:13 +09:00
Peter Barker
b9ad2bc8db
Copter: add option to disable AUTO mode
...
Saves ~12k of flash
2018-02-27 07:43:13 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
b24e5c3991
Copter: Obey MOUNT == DISABLED
2018-02-22 20:58:51 +10:00
Peter Barker
846506230d
Copter: remove pointless initialisations
...
Also reduce storage size of gps primary
2018-02-22 17:51:35 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
def098bd8a
Copter: obey ADSB_ENABLED == DISABLED
2018-02-21 22:11:34 +09:00
Randy Mackay
f0534a35d1
Copter: format change for includes
...
non-functional change
2018-02-21 21:56:01 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
137de0fea5
Copter: conditionaly include more header files
...
this should help catch missing macros
2018-02-21 21:55:59 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
002494c048
Copter: Obey CAMERA == DISABLED
2018-02-21 17:03:28 +10:00
Peter Barker
730adc3f7c
Copter: eliminate perf_update scheduler table shim
2018-02-13 17:15:05 +11:00
Peter Barker
bfc373aeff
Copter: move logging of PM messages to AP_Scheduler
2018-02-13 17:15:05 +11:00
Peter Barker
80a3d63264
Copter: use AP_Scheduler's loop() function
2018-02-13 17:15:05 +11:00
Peter Barker
7f69c5d26d
Copter: use scheduler ticks in place of mainloop_count
2018-02-13 17:15:05 +11:00
Andrew Tridgell
7938bd08bb
Copter: make flowhold mode conditional
...
reduces build size on px4-v2 by 4k
2018-02-12 13:34:47 +09:00
murata
c31c2a4cf1
Copter: optionalize the winch
2018-02-12 12:16:57 +09:00
Peter Barker
40d74584ac
Copter: remove shims used in scheduler
2018-02-12 11:19:34 +09:00
Andrew Tridgell
0ed75052f8
Copter: enable parameters inside mode objects
...
this adds FHLD_* parameters for FlowHold mode. It is a large patch as
it needs to disentagle the mode class to enable it to be used in
Parameters.h
2018-02-08 17:36:33 +11:00
Andrew Tridgell
af4f0c29ba
Copter: enable TMODE (ToyMode) support
...
this is for the skyviper button based transmitter control
2018-02-08 17:36:33 +11:00
Andrew Tridgell
f442b91ea5
Copter: added FLOWHOLD flight mode
...
This flight mode allows for position hold with optical flow without
needing a rangefinder for height. It can estimate its height from the
flow data and IMU
2018-02-08 17:36:33 +11:00
Andrew Tridgell
15166eff2e
Copter: enable temperature calibration library
2018-02-08 17:36:33 +11:00
Michael du Breuil
69da4041ac
Copter: Move logging battery logging code to AP_BattMonitor
2018-02-06 00:11:32 +00:00
Pierre Kancir
10e6fe43dd
Copter: Add a switch option to enable/disable RC_Override
2018-01-24 21:37:41 +09:00
Randy Mackay
6546ccbb3f
Copter: velocity pi moved to position control library
2018-01-23 12:00:43 +09:00
Dylan Herman
20fe5bb98f
Copter: add SmartRTL failsafe action
...
Adds SmartRTL or RTL and SmartRTL or Land failsafe options for batt, throttle, and GCS failsafes
2018-01-22 10:54:28 +09:00
Peter Barker
dda38d65eb
Copter: AP_AHRS no longer requires GPS in constructor
2017-12-27 00:58:02 +00:00
Randy Mackay
2c0df87585
Copter: Copter.h method reordering
2017-12-15 08:26:45 +09:00
Peter Barker
6c82f7671d
Copter: move all commands logic into AUTO flightmode
2017-12-14 14:08:01 +09:00
Andrew Tridgell
8ab0ac8a16
Copter: removed create() method for objects
...
See discussion here:
https://github.com/ArduPilot/ardupilot/issues/7331
we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach
Thanks to assistance from Lucas, Peter and Francisco
2017-12-14 08:12:28 +11:00
Peter Barker
377466ddda
Copter: fence no longer requires AP_InertialNav
2017-12-13 10:04:50 +09:00
Randy Mackay
2d23e1f7c7
Copter: rename flightmode_ objects to mode_
2017-12-12 10:39:26 +09:00
Randy Mackay
c3fbf2671c
Copter: rename control_xx.cpp files to mode_xx.cpp
2017-12-12 10:39:26 +09:00
Randy Mackay
06fbe8f3a7
Copter: rename FlightMode class to Mode
...
also remove unused print_FlightMode method
2017-12-12 10:39:26 +09:00
Randy Mackay
0ac708b5a0
Copter: remove ability to disable PosHold flight mode
...
This flight mode is stable and regularly used so it is unlikely that we ever want to disable it
2017-12-12 10:39:26 +09:00
Randy Mackay
8870897847
Copter: FlightMode objects use lower case
2017-12-12 10:39:26 +09:00
Peter Barker
5d33cf08e1
Copter: eliminate calc_home_distance_and_bearing
...
Calling update_simple_mode_bearing calls get-heading
rather than the other way around
This will have the advantage of not calculating home bearing
when we stop calling update_simple_mode_bearing unnecesarily
2017-12-09 16:26:09 +09:00
khancyr
b44ba29a05
AC_Avoidance: replace AP_InertialNav by AHRS
2017-12-08 11:27:37 +09:00
Peter Barker
103e2cc711
Copter: calculate wp bearing and distance on demand
...
Move responsibility for calculating wp bearing/distance
into the FlightMode object doing the navigation
Calculating these variables was being done at 50Hz where they
were used at 10Hz max.
2017-12-07 07:43:08 +09:00
Peter Barker
4ae2be55aa
Copter: fix up autotune namespacing
...
This moves static variables into the autotune flightmode object.
It also adjusts namespacing on everything to take advantage of
having everything encapsulated in the AutoTune object
2017-12-07 07:35:37 +09:00
Peter Barker
7b637334f4
Copter: eliminate mode_has_manual_throttle
2017-12-06 10:09:58 +09:00
Peter Barker
4fd61ed6dc
Copter: make exit_mode take FlightMode objects as arguments
2017-12-06 10:09:58 +09:00
Peter Barker
477ae8f7be
Copter: pass heli_flags into flightmode constructor
2017-12-06 08:24:24 +09:00
Peter Barker
83d0a71e10
Copter: FlightMode - simplify flight mode initialization
2017-12-06 08:24:24 +09:00
Peter Barker
ef1489e87a
Copter: eliminate mode_requires_gps
2017-12-06 08:24:24 +09:00
Peter Barker
a4859e13c1
Copter: eliminate mode_allows_arming
2017-12-06 08:24:24 +09:00
Peter Barker
9c60c1de58
Copter: FlightMode - convert SMARTRTL flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
b0e34bd307
Copter: FlightMode - convert GUIDED_NOGPS flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
cf423ce681
Copter: FlightMode - convert THROW flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
37c706c24e
Copter: FlightMode - convert AVOID_ADSB flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
51cd143012
Copter: FlightMode - convert BRAKE flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
cafce01357
Copter: FlightMode - convert POSHOLD flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
67063d6b1e
Copter: FlightMode - convert AUTOTUNE flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
018c70d224
Copter: FlightMode - convert FLIP flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
5e3e831152
Copter: FlightMode - convert SPORT flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
6a38664ff4
Copter: FlightMode - convert DRIFT flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
682f3c0e7e
Copter: FlightMode - convert RTL flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
3b1ca99b95
Copter: FlightMode - convert LAND flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
2db09ba0f7
Copter: FlightMode - convert GUIDED flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
f2495b2d08
Copter: FlightMode - convert LOITER flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
871ba5630f
Copter: FlightMode - convert CIRCLE flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
e2b70c3a0a
Copter: FlightMode - convert AUTO flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
a95a35c134
Copter: FlightMode - convert STABILIZE flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
79c06974b7
Copter: FlightMode - convert ALT_HOLD flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
d74f0c72da
Copter: FlightMode - convert ACRO flight mode
2017-12-06 08:24:24 +09:00
Peter Barker
527a536b78
Copter: FlightMode - remove function parameters
...
Use current control_mode in place of parameters
Once conversion is complete these functions will disappear
2017-12-06 08:24:24 +09:00
Peter Barker
99a22a263d
Copter: a FlightMode base class
2017-12-06 08:24:24 +09:00
Peter Barker
e0233f1dc4
Copter: create a takeoff_state_t type
2017-12-06 08:24:24 +09:00
Peter Barker
b828fa4ffc
Copter: Create an ap_t type
2017-12-06 08:24:24 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
c7a2fcdc37
Copter: Also use fence in Guided_PosVel mode
2017-12-05 08:57:55 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
bd027e4fcb
Copter: Move some common functions to AP_Math (NFC)
2017-12-05 08:54:49 +09:00
Peter Barker
398d07a68a
Copter: tighten return types of mavlink functions and variables
2017-12-01 17:01:10 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
9773365237
Copter: NFC spell in comments
2017-11-27 23:13:34 +09:00
Andrew Tridgell
a644cff921
Copter: support testing multiple motors with motortest
...
this matches the quadplane behaviour, allowing a sequence of motors to
be tested
2017-11-27 10:15:31 +09:00
Randy Mackay
9a03ba1bfb
Copter: move barometer_accumulate to sensors.cpp
...
non-functional change
2017-11-22 17:13:14 +09:00
Peter Barker
04c9e966e0
Copter: use AP::PerfInfo library
2017-11-16 15:31:53 +00:00
Peter Barker
d959e4b42b
Copter: AP_Camera uses GPS singleton
2017-11-16 15:28:37 +00:00
ChrisBird
caaeae3d0a
Copter: Separate max ascent and descent speeds
...
Added equivalent parameters to WPNAV_SPEED_UP and WPNAV_SPEED_DN
New parameters named:
PILOT_SPEED_UP (technically renamed PILOT_VELZ_MAX)
PILOT_SPEED_DN
Removed parameter PILOT_VELZ_MAX (technically renamed to PILOT_SPEED_UP).
Flight Modes impacted:
ALTHOLD
AUTOTUNE
CIRCLE
LOITER
POSHOLD
SPORT
TAKEOFF
Update a section in GUIDED mode but I don't think it is ever used but update just in case.
It will use the PILOT_SPEED_UP for ascending max velocity. For down it will check if
it is 0, if so then it will PILOT_SPEED_UP instead, if non zero it will use PILOT_SPEED_DN.
This retains current behavior and gives the flexibility to change it if desired.
2017-11-09 09:03:54 +09:00
Peter Barker
5b793252ed
Copter: stop disarming as part of running rtl as mission item
...
Fixed #6324
Note that the land-as-mission-item code is duplicated from the
rtl-as-mode code but omits the disarm part, so doesn't suffer from the
same bug.
2017-11-06 19:07:28 +00:00
Peter Barker
c7216a2740
Copter: call ins periodic function
2017-10-27 16:33:45 +11:00
Randy Mackay
787954fa37
Copter: integrate winch library
...
fixes after peer review:
rename winch-disable to winch-relaxed
add DO_WINCH to do-verify
winch release-length accepts rate
2017-10-27 09:20:38 +09:00
Andrew Tridgell
951ed95eb9
Copter: support inverted flight CH7 option
2017-10-03 10:16:41 +11:00
Lucas De Marchi
beabae6a98
global: use static method to construct AP_AHRS_NavEKF
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c9fbf7b722
global: use static method to construct AP_NavEKF3
2017-09-26 03:01:21 +01:00
Lucas De Marchi
e2fe36357a
global: use static method to construct AP_NavEKF2
2017-09-26 03:01:21 +01:00
Lucas De Marchi
6781a44046
global: use static method to construct AP_Avoidance_*
2017-09-26 03:01:21 +01:00
Lucas De Marchi
6d009cdf6e
global: use static method to construct AP_ADSB
2017-09-26 03:01:21 +01:00
Lucas De Marchi
1263e20a0d
ArduCopter: use static method to construct AC_InputManager
2017-09-26 03:01:21 +01:00
Lucas De Marchi
e21e02cfdb
ArduCopter: use static method to construct AC_PrecLand
2017-09-26 03:01:21 +01:00
Lucas De Marchi
cf6ea9642e
global: use static method to construct AP_Terrain
2017-09-26 03:01:21 +01:00
Lucas De Marchi
70d8a08626
ArduCopter: use static method to construct AP_LandingGear
2017-09-26 03:01:21 +01:00
Lucas De Marchi
31db77e47b
global: use static method to construct AP_Parachute
2017-09-26 03:01:21 +01:00
Lucas De Marchi
57bbb2e1d9
ArduCopter: use static method to construct AC_Sprayer
2017-09-26 03:01:21 +01:00
Lucas De Marchi
eadd650d78
global: use static method to construct AP_RSSI
2017-09-26 03:01:21 +01:00
Lucas De Marchi
4f42facefc
global: use static method to construct AC_Avoid
2017-09-26 03:01:21 +01:00
Lucas De Marchi
b05610870c
global: use static method to construct AP_Rally
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c6eb48009b
global: use static method to construct AC_Fence
2017-09-26 03:01:21 +01:00
Lucas De Marchi
18aa88b329
global: use static method to construct AP_Mount
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c3647f0185
global: use static method to construct AP_Camera
2017-09-26 03:01:21 +01:00
Lucas De Marchi
cc53e7bc4b
global: use static method to construct AP_ServoRelayEvents
2017-09-26 03:01:21 +01:00
Lucas De Marchi
13d7f58036
global: use static method to construct AP_Relay
2017-09-26 03:01:21 +01:00
Lucas De Marchi
9ce6019138
global: use static method to construct AP_Frsky_Telem
2017-09-26 03:01:21 +01:00
Lucas De Marchi
b022c02029
global: use static method to construct AP_BattMonitor
2017-09-26 03:01:21 +01:00
Lucas De Marchi
69b6d95cb2
global: use static method to construct AP_Board_Config{,_CAN}
2017-09-26 03:01:21 +01:00
Lucas De Marchi
a74e700006
global: use static method to construct RCMapper
2017-09-26 03:01:21 +01:00
Lucas De Marchi
72fd2d6f05
global: use static method to construct AP_SerialManager
2017-09-26 03:01:21 +01:00
Lucas De Marchi
fbe0d9761c
global: use static method to construct AP_OpticalFlow
2017-09-26 03:01:21 +01:00
Lucas De Marchi
10529feae6
ArduCopter: use static method to construct AP_Arming_Copter
2017-09-26 03:01:21 +01:00
Lucas De Marchi
b36a5919f5
global: use static method to construct AP_Mission
...
This also move the initialization to be in the header for those that
weren't already to maintain consistency.
2017-09-26 03:01:21 +01:00
Lucas De Marchi
de5e044b02
global: use static method to construct AP_RPM
2017-09-26 03:01:21 +01:00
Lucas De Marchi
40fd1b346c
global: remove rangefinder from AP_AHRS_NavEKF
...
AP_AHRS_NavEKF doesn't use the rangefinder, it just delegates the
calls to the right estimator.
For libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp the initialization
order has also been modified to match the order on vehicles. It's more
correct since it passes a reference when EKF2/EKF3 are already
constructed, while thos constructors use a pointer. Ideally these
should be moved to an init() method though, or use a get_instance().
2017-09-26 03:01:21 +01:00
Lucas De Marchi
9027a55696
global: use static method to construct RangeFinder
2017-09-26 03:01:21 +01:00
Lucas De Marchi
62ac0ab8aa
global: use static method to construct AP_Notify
2017-09-26 03:01:21 +01:00
Lucas De Marchi
de680dac5b
global: use static method to construct AP_Scheduler
2017-09-26 03:01:21 +01:00
Lucas De Marchi
8094482f21
global: use static method to construct AP_GPS
2017-09-26 03:01:21 +01:00
Lucas De Marchi
87b30b4552
global: use static method to construct AP_InertialSensor
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c1a957fbf3
global: use static method to construct Compass
2017-09-26 03:01:21 +01:00
Lucas De Marchi
91feec0e14
global: use static method to construct AP_Baro
2017-09-26 03:01:21 +01:00
Lucas De Marchi
cd5b018d82
ArduCopter: move version to a static member
...
We should never include version.h or ap_version.h headers directly
on a header since this will trigger a complete rebuild of the
codebase when we commit to the repository. The ap_version.h header
is auto-generated containing information from the current commit.
If we include it in a header, every other file that ends up including
that header (directly or indirectly) will need to be rebuilt. No
ccache's cache beats having to do nothing when the header is just
not included.
version.h contains information that is kept on a struct inside
each vehicle. Rather than using the macros from each vehicle,
the getter should be preferred, which returns an AP_FWVersion
referente.
2017-09-23 21:37:45 -07:00
Peter Barker
ff82f23cf6
Copter: factor out a ekf_check_position_problem method
2017-09-19 12:44:43 +01:00
Randy Mackay
1b3cc9289b
Copter: support SET_GPS_GLOBAL_ORIGIN
...
also remove setting of origin from DO_SET_HOME command
initialise ekf_origin location when consuming SET_GPS_GLOBAL_ORIGIN
set_ekf_origin performs sanity check on location
2017-09-19 10:30:15 +09:00
Randy Mackay
44a436642b
Copter: complete rename to SmartRTL
...
Also fix parameter description for CH7_OPT
2017-09-15 08:58:14 +09:00
Peter Barker
6b5fd5fbdd
Copter: move gcs_out_of_time into GCS object
2017-09-12 18:28:07 +01:00
squilter
4b57a4a231
Copter: rename SafeRTL to SmartRTL
2017-09-09 14:05:41 +09:00
squilter
ba0e08552f
Copter: add SafeRTL flight mode
2017-09-09 14:05:41 +09:00
Peter Barker
470e790117
Copter: add constant structure holding firmware version
2017-08-30 15:54:46 +01:00
Peter Barker
30fac9160e
Copter: mavlink PERF messages also spit out average and standard deviation
2017-08-29 21:31:46 +01:00
Peter Barker
aa06fc499c
Copter: use GCS_MAVLINK subclasses to handle set_mode
2017-08-16 11:58:10 +10:00
Peter Barker
c6b9c84d1f
Copter: remove CLI
2017-08-14 10:23:50 +09:00
Jani Hirvinen
bdbe26eb28
Copter: minor comment fix
...
small edit on comments to kickoff autobuild
2017-08-09 20:14:22 +09:00
Peter Barker
431e3443bd
Copter: move try_send_message send_hwstatus up
2017-08-03 14:33:37 +01:00
Peter Barker
3e5665735f
Copter: move try_send_message mission handling up
2017-08-03 14:24:47 +01:00
Peter Barker
cdf9ebcb39
Copter: camera is responsible for taking distance-based-images and logging
2017-07-28 14:27:53 +01:00
Randy Mackay
f97e43919b
Copter: add gps glitch notification and pre-arm check
2017-07-27 14:16:23 +09:00
khancyr
49755063ab
Copter: move send_proximity to GCS common code (NFC)
2017-07-24 13:44:43 +01:00
Peter Barker
e45efeb829
Copter: move starting of new logs into DataFlash
2017-07-19 16:37:28 +01:00
Randy Mackay
2b98fd765d
Copter: guided_set_destination accepts relative yaw
2017-07-12 13:27:45 +09:00
Randy Mackay
4c9e118ceb
Copter: set_auto_yaw_look_at_heading takes bool for relative angle arg
...
No functional change
2017-07-12 13:27:45 +09:00
Randy Mackay
9b05f1d9c7
Copter: add auto-yaw-rate and replace guided_angle_state.use_yaw_rate
...
We use the auto_yaw_mode in auto and guided modes to allow various yaw behaviours
This commit adds a new AUTO_YAW_RATE control to the mode and uses it within guided mode.
This new RATE control is not currently used within auto mode because there is no way (yet) for a mission command to specify a desired rate.
2017-07-12 13:27:45 +09:00
kouseii
4dd7d9eaff
Copter: guided mode supports heading and yaw-rate target
2017-07-12 13:27:45 +09:00
Peter Barker
358555446b
Copter: eliminate gcs_send_mission_item_reached wrapper
2017-07-11 23:45:16 +01:00
Peter Barker
0ac045febe
Copter: eliminate gcs_send_message wrapper
2017-07-11 23:45:16 +01:00
Peter Barker
f60389d4aa
Copter: use send_text method on the GCS singleton
2017-07-09 17:17:29 -04:00
Peter Barker
d9b45cc202
Copter: create GCS subclass, use inheritted methods
2017-07-07 16:18:37 +01:00
Eugene Shamaev
24c390ade0
ArduCopter: move of CAN parameters into separate group
2017-07-03 11:44:32 +01:00
Peter Barker
8b57405143
Copter: handle knowledge of in_log_download in DataFlash
2017-06-27 03:10:43 +01:00
Leonard Hall
7eab1239c7
Copter: attitude logging at 400hz
2017-06-22 15:18:04 +09:00
Pierre Kancir
261eb387eb
ArduCopter: change rangefinder msg for common one
2017-06-08 01:31:43 +01:00
Randy Mackay
cb76bd8f3d
Copter: compass set-initial-location uses ahrs location
...
Previously it could attempt to use a gps location even if gps was not being used
Also compass-accumulate moved to sensors.cpp
2017-06-07 13:01:38 +09:00
Randy Mackay
814cadac68
Copter: consolidate set_home functions
...
added lock argument instead of having twice as many functions
no functional change
2017-06-07 13:01:38 +09:00
Peter Barker
0bc17645fb
Copter: AutoTune: add gcs messages detailing wait-for-level state
2017-05-18 09:36:00 +09:00
Peter Barker
586a5df814
Copter: add GCS messaging during autotune
2017-05-18 09:36:00 +09:00
Randy Mackay
91d4b4777b
Copter: respond to param list request after motor init
2017-05-15 14:13:43 +09:00
Randy Mackay
a3450a955d
Copter: fix LED notify during auto esc calibration
2017-05-11 11:30:05 +09:00
Randy Mackay
713c08672f
Copter: integrate AP_VisualOdom
2017-04-19 11:04:40 +09:00
Jonathan Challinger
054aab738b
Copter: remove const qualifier from do_precision_loiter
2017-03-29 14:06:12 +09:00
Andrew Tridgell
6bb5c16fb8
Copter: allow for HELI_DUAL configurations
2017-03-25 16:22:10 +11:00
Randy Mackay
8140353c64
Copter: log event when primary GPS changes
2017-03-13 11:31:51 +11:00
Peter Barker
1d70a337dd
Copter: remove unused desired_climb_rate variable
2017-03-09 19:52:58 +11:00
Andrew Tridgell
0d1bcd3b94
Copter: added automatic yaw to autotune position control
2017-02-27 19:34:44 +09:00
Andrew Tridgell
37fca03db3
Copter: implement simple position hold during autotune
...
this holds position during tuning with low gain
2017-02-27 19:34:36 +09:00
Randy Mackay
51c00f8144
Copter: use only downward facing rangefinder
2017-02-27 15:18:16 +09:00
Peter Barker
029aeeb4fd
Copter: support for a GCS singleton
2017-02-13 09:32:01 +11:00
Peter Barker
f49f153da0
Copter: rename gcs[] to gcs_chan[]
...
Wish to use gcs() to return the gcs singleton
2017-02-13 09:32:01 +11:00
Randy Mackay
cb1f7ba4bb
Copter: remove setting position control's altitude max
...
AC_Avoid now takes responsibility for enforcing the alt limit and accesses inertial nav's limit directly
2017-01-18 09:35:47 +09:00
Randy Mackay
b15d341850
Copter: add avoidance adjusted climb rate
2017-01-18 09:35:47 +09:00
Randy Mackay
cc217550c0
Copter: rename arming_checks to AP_Arming
2017-01-17 11:45:08 +09:00
Peter Barker
bd6ffc025e
Copter: start conversion to AP_Arming_Copter
2017-01-17 11:45:08 +09:00
Andrew Tridgell
1297a7dedb
Copter: convert the rest of motors class for tricopter
2017-01-12 17:39:37 +11:00
Andrew Tridgell
0f6d0c5ba9
Copter: combined tri, single, coax and multicopter into a single build
...
this allows copter to be just 2 builds, one for heli, and one for
everything else
2017-01-12 17:39:37 +11:00
Andrew Tridgell
5a87ae3f01
Copter: use new SRV_Channels API
2017-01-12 17:39:37 +11:00
Francisco Ferreira
11b635df12
Copter: correct limit status to fence status
2017-01-12 02:00:51 +00:00
Peter Barker
a233024e05
Copter: fix compilation when fence andd proximity are disabled
...
This adds AC_AVOID_ENABLED; avoidance must be disabled if either
of fence or proximity are disabled.
Parameter definitions have been reordered to avoid compiler warnings;
this make sthe numbering non-linear
2017-01-03 10:44:03 +09:00
Randy Mackay
01bcf5e528
Copter: add arming checks for motor setup
2016-12-31 10:55:23 +09:00
Randy Mackay
217757fdc8
Copter: default FRAME_CLASS
2016-12-31 10:55:23 +09:00
Randy Mackay
0ac00dbfd6
Copter: add FRAME_CLASS parameter
2016-12-31 10:55:23 +09:00
Andrew Tridgell
c3b9dbf5c8
ArduCopter: Add EKF3 and remove EKF1
2016-12-19 08:07:09 +11:00
Pierre Kancir
3fc17a5ed5
Copter: avoid must be initialized after fence as it use it
2016-12-05 10:59:45 -08:00
Peter Barker
556eb88fe5
Copter: fix compile when precland is not selected
...
Fixes #5327
2016-12-05 20:03:00 +09:00
Peter Barker
289aba4350
Copter: support for NAV_CMD_PLACE
2016-12-02 12:52:53 +11:00
Randy Mackay
74c9c4aa9d
Copter: add beacon data flash logging
...
Added to Copter vehicle because currently only used by Copter
2016-11-30 17:56:59 +09:00
Randy Mackay
21c7ea1df7
Copter: integrate AP_Beacon
2016-11-30 17:56:55 +09:00
Andrew Tridgell
bcea3ac8d4
Copter: handle rangefinder glitches in alt tracking
...
this handles glitches from the rangefinder when tracking the
ground. It requires 3 readings in a row to settle on a new target
altitude
thanks to discussions with Leonard and Randy
2016-11-28 17:36:01 +11:00
Randy Mackay
7485de3498
Copter: add send_proximity to send distances to GCS
2016-11-27 15:05:46 +09:00
Randy Mackay
218c8b2d16
Copter: proximity pre-arm check displays closet object
2016-11-27 15:05:44 +09:00
Peter Barker
e72f5a6240
ArduCopter: enable/disable precision loiter on a switch
...
A switch MUST be assigned for precision loiter to be enabled
2016-11-18 09:41:56 +09:00
Peter Barker
9e4628af58
Copter: precision loiter
2016-11-18 09:41:56 +09:00
Peter Barker
236b8ab6b7
Copter: make EPM a subclass of AP_Gripper_Backend
2016-11-05 10:20:39 +09:00
Peter Barker
920868145c
Copter: support for AP_Gripper
2016-11-05 10:20:33 +09:00
Peter Barker
1bb6350a67
Copter: periodically call stats update
2016-10-29 14:53:25 +09:00
Peter Barker
df07cb525a
Copter: use AP_Stats to store statistics about vehicle
2016-10-29 14:53:25 +09:00
floaledm
34718b130a
Copter: update sensor status error flags independently of sending a sys_status message
...
Without this, there is no update to the sensor status flags in the Frsky
lib unless there's an active Mavlink connection configured to send
extended_status1
2016-10-28 10:03:38 +11:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Leonard Hall
fec24437f2
Copter: load accel throttle I term from attitude controller input
...
Previously we loaded up the I term from the pilot's input but a more reliable method is to get what was passed into the attitude controller. In particular the addition of the acro-thr-mid parameter means the pilot's input must be interpreted differently for different flight modes.
2016-10-15 11:27:53 +09:00
Randy Mackay
a124001b8b
Copter: get_pilot_desired_throttle gets thr_mid argument default
2016-10-15 11:27:53 +09:00
Leonard Hall
5c47f3f9e5
Copter: add acro throttle and yaw expo and smoother manual pilot throttle
2016-10-15 11:27:53 +09:00
Randy Mackay
0aab175051
Copter: move proximity to g2
2016-10-14 14:02:29 +09:00
Jonathan Challinger
f2ef8eec8c
Copter: use velocity output from AC_PrecLand
2016-10-14 10:46:08 +09:00
Randy Mackay
a07ecfe2b3
Copter: log proximity sensor at 10hz
...
This is current in the Copter vehicle code but we can move to the dataflash library when other vehicles start using this type of sensor. Until then adding it to common will just increase the dependencies unnecessarily for other vehicles.
2016-10-13 20:21:07 +09:00
Randy Mackay
fcc2a1b378
Copter: integrate AP_Proximity into main vehicle
2016-10-13 20:21:07 +09:00
Randy Mackay
26c3295042
Copter: ignore first ekf core switch
...
The ekf core is initialised to -1 but after initialisation changes to zero. Ignore this first change.
2016-10-13 15:20:16 +09:00
Randy Mackay
d74ae535d1
Copter: log EKF lane switch
2016-10-10 16:40:08 +09:00
Randy Mackay
35864c6226
Copter: move check_ekf_reset to ekf_check.cpp
...
No functional change
2016-10-10 16:40:08 +09:00
murata
7148cc6239
Copter: Return value is changed to Enum Value.
2016-10-05 08:25:15 -03:00
Andrew Tridgell
f18e0dadc9
Copter: added optional AdvancedFailsafe for copter and heli
2016-08-25 14:14:18 +10:00
floaledm
893614897e
Copter: moved MAV_TYPE to Copter.h
2016-08-25 10:16:20 +10:00
Andrew Tridgell
a14ff8ac77
Copter: fixes for Frsky_Telem API changes
2016-08-25 10:16:20 +10:00
floaledm
157db51b9d
Copter: make control_sensor vars available outside of send_extended_status1
2016-08-25 10:16:18 +10:00
floaledm
f73fa1fc80
Copter: removed frsky_telemetry_send scheduled task
2016-08-25 10:16:17 +10:00
Peter Barker
f67d247a46
Copter: factor pre-arm checks, continue testing after a failure
...
The functional change here is that we continue to run later checks
when a check fails.
The user-visible effect of that is that your GCS will tell you about
all pre-arm failures, not just the first.
This makes things work a little more like Plane, in preparation for
using AP_Arming.
2016-08-16 11:37:18 -03:00
Andrew Tridgell
3041a75798
Copter: limit attitude on landing using WP_NAVALT_MIN
2016-08-16 11:26:56 +10:00
Randy Mackay
0ed5665193
Copter: change parameter order of guided_set_angle
...
I thought it might be slightly better to put the optional parameters at the end
No functional change
2016-08-10 10:03:54 +09:00
Allan Matthew
6dd4e1a2aa
Copter: accept yaw rate commands in Guided atttude controller
2016-08-10 10:03:37 +09:00
Randy Mackay
9842840346
Copter: GND_EFFECT_COMP parameter to enable ground effect compensation
2016-08-09 13:31:36 +09:00
Randy Mackay
728e8f8f56
Copter: land_state uses enum
...
This resolves a Covarity warning related to initialisation (that was not really a problem) but it is better form anyway
2016-08-08 13:31:29 +09:00
Francisco Ferreira
43ad1f372d
Copter: change function from computing return altitude to computing return target
...
Also fix altitude for rally points
2016-08-06 13:50:53 +09:00
Francisco Ferreira
e732cda577
Copter: when calculating RTL return alt use rtl_path directly
...
At the same time, fix bug: check return point for terrain and not origin twice
2016-08-06 13:50:50 +09:00
Randy Mackay
c3d71f733c
Copter: remove get_takeoff_trigger_throttle
...
get_pilot_desired_climbrate can be used instead.
2016-08-05 12:40:37 +09:00
Randy Mackay
d1e257d5b6
Copter: remove unused get_throttle_pre_takeoff
2016-08-05 12:40:37 +09:00
Jonathan Challinger
80f3541933
Copter: add configurable arming delay
2016-08-04 15:19:22 +09:00
Jonathan Challinger
4a6cc75ebb
Copter: whitespace change
2016-08-04 15:17:38 +09:00
Randy Mackay
595aea236a
Copter: consolidate throw mode state into structure
2016-08-02 20:25:52 +09:00
Randy Mackay
807e930251
Copter: throw uses motor spooling instead of interlock
2016-08-02 20:25:52 +09:00
Randy Mackay
f4f13bbe6b
Copter: add throw mode logging
2016-08-02 20:25:52 +09:00
Randy Mackay
f0f87a2f0c
Copter: add throw_nextmode
...
vehicle switches to mode specified in THROW_NEXTMODE parameter after the
throw is completed.
2016-08-02 20:25:52 +09:00
Randy Mackay
64ac18da6c
Copter: move throw state into structure
...
This makes it easier to add more state which is required for the follow throw_nextmode change
2016-08-02 20:25:52 +09:00
Randy Mackay
1161417d7f
Copter: add GUIDED_NOGPS flight mode
...
This mode is a cut down version of Guided mode that only accepts attitude commands.
This mode does not require a GPS lock
2016-08-02 18:25:59 +09:00
Randy Mackay
49674abb21
Copter: guided mode's velocity controller stops before fence
2016-07-25 20:24:37 +09:00
Randy Mackay
dc52f3b2df
Copter: guided mode applies acceleration limits to velocity controller
2016-07-25 20:24:37 +09:00
Randy Mackay
6118bf1b14
Copter: remove adsb sensor library based avoidance
...
adsb based avoidance has been moved to AP_Avoidance library
2016-07-25 20:24:37 +09:00
Randy Mackay
d50987f976
Copter: avoidance_adsb implements copter avoidance using ADSB
2016-07-25 20:24:37 +09:00
Randy Mackay
68899ed921
Copter: add adsb to failsafe structure and report in heartbeat to GCS
2016-07-25 20:24:37 +09:00
Andrew Tridgell
387da40fc5
ArduCopter: adjust for 16 channels in SERVO_OUTPUT_RAW
2016-07-25 10:06:02 +10:00
Andrew Tridgell
cb5ca713a9
Copter: added AP_Button support
2016-07-22 15:01:20 +10:00
Francisco Ferreira
90a4b36263
Copter: remove pre-arm check for rally points
2016-07-22 09:00:23 +09:00
Francisco Ferreira
25fefe77b7
Copter: add AP_Rally_Copter
...
override default is_valid method so we can check if rally point is inside the fence, if it isn't we ignore it
2016-07-22 09:00:18 +09:00
Jonathan Challinger
e22220ab62
Copter: refactor landing to reduce duplication, use vertical vel ff
2016-07-12 18:40:25 +09:00
Andrew Tridgell
3a8ed06267
Copter: added TKOFF_NAV_ALT parameter
...
this adds TKOFF_NAV_ALT which controls the altitude above takeoff that
navigation can begin. It is meant for unstable vehicles such as helis
to prevent blade strike during initial takeoff.
This also adds a new parameter class ParametersG2 which can hold 64
parameters. This is to avoid running out of parameters in the first
256 block
2016-07-07 14:21:47 +09:00
Randy Mackay
877a144dea
Copter: pre-arm check that rally points are within fence
2016-07-04 18:25:03 +09:00
Jonathan Challinger
91a5b26725
Copter: use simplified precland interface
2016-07-04 16:57:06 +09:00