Randy Mackay
c4b5d47e1f
Copter: white space fixes
2020-04-23 13:17:11 +09:00
Randy Mackay
05a37db07c
Copter: remove call to visual_odom.update
2020-04-09 19:41:08 +09:00
Randy Mackay
e2469d29bc
Copter: implement start_takeoff and set_target_velocity_NED for use in scripting
2020-03-19 15:17:11 -07:00
Randy Mackay
a9630d67d1
Copter: implement set_target_location method
2020-03-03 10:06:38 -07:00
Randy Mackay
9a32b3bdd9
Copter: rename update_throttle_mix
...
was called update_throttle_thr_mix
also minor formatting fixes
2020-02-25 16:52:40 +09:00
Andy Piper
4c1816a983
Copter: port betaflight in-flight fft analysis to arducopter and expose as a log message
...
add harmonic notch tracking mode
call AP_GyroFFT::update_freq_hover() from update_throttle_hover()
move gyrofft configuration and control to AP_Vehicle
move fft logging to fft library
2020-02-22 11:15:37 +11:00
Peter Barker
18670d681e
Copter: let AP_Vehicle handle loop()
2020-02-06 14:41:06 +11:00
Peter Barker
debedd9d34
Copter: move setup method up to AP_Vehicle base class
2020-01-28 11:34:51 +11:00
Peter Barker
45b2f24867
Copter: StorageManager layout is now done with a pragma
2020-01-28 11:34:51 +11:00
Andy Piper
93abfdb905
Copter: create generic vehicle management and move runcam to it
2019-12-30 13:02:04 +11:00
Peter Barker
544eb5f179
Copter: correct duplicate button instance
2019-12-10 09:29:52 +09:00
Peter Barker
a567e8bc94
Copter: use https:// scheme for ardupilot URLs
2019-12-10 07:53:46 +11:00
Gone4Dirt
180d4e713c
Copter: Added autorotation flight mode and support
2019-11-29 08:06:10 +08:00
Randy Mackay
496989820e
Copter: update proximity sensor at 200hz
2019-11-15 12:25:53 +08:00
Peter Barker
e6c6189fe5
Copter: cope with change in namespace of LogEvent enum
...
Also move Acro Trainer types into an enum class as the global defines
interfere with the Event names.
Also eliminate the Log_Write_Event wrappers.
2019-11-05 08:19:26 +08:00
Randy Mackay
7b0da89708
Copter: add vibration check
2019-10-18 11:15:25 +09:00
Leonard Hall
50a098c359
Copter: Standby functions
2019-10-17 14:57:18 +09:00
Randy Mackay
2cb3e446ab
Copter: systemid mode formatting and name changes
2019-10-16 08:17:09 +09:00
Leonard Hall
91be844b66
Copter: Let modes stop Attitude Logging
2019-10-16 08:17:09 +09:00
Andy Piper
7fd22f63a9
ArduCopter: allow logging of both IMU and IMU_RAW
...
allow logging of both IMU and IMU_RAW at the same time so that filtering and errors can be seen
2019-10-15 10:10:32 +11:00
Andy Piper
8ce7f02167
ArduCopter: add functions to update dynamic notch frequency. Periodically log the frequency.
...
tradheli- make RPM sensor input to harmonic notch in hertz
2019-10-10 20:26:02 +09:00
murata
abb91fc33a
Copter: Change external button specification to option
...
Copter: Change the definition name from BUTTON to BUTTON_ENABLED.
2019-10-08 08:09:19 +09:00
Randy Mackay
9d5cbbe58f
Copter: restore range finder updates to 20hz
2019-09-28 11:13:14 +09:00
Randy Mackay
b54cf410ef
Copter: increase read_rangefinder to 50hz
2019-09-28 11:13:14 +09:00
Peter Barker
4d6dc9b0a7
Copter: call periodic fence update function
2019-09-28 07:58:48 +09:00
Peter Barker
b4537bebd8
Copter: move control_mode_t into being Mode::Number enum class
...
Fixes this compiler error:
In file included from ../../ArduCopter/sensors.cpp:1:
In file included from ../../ArduCopter/Copter.h:195:
../../ArduCopter/mode.h:1291:9: fatal error: declaration shadows a variable in the global namespace [-Wshadow]
AUTO, // after A and B defined, pilot toggle the switch from one side to the other, vehicle flies autonomously
^
../../ArduCopter/defines.h:38:5: note: previous declaration is here
AUTO = 3, // fully automatic waypoint control using mission commands
^
1 error generated.
2019-09-13 13:12:08 +09:00
Peter Barker
b9a387ed9e
Copter: stop updating sensor status flags
...
These are updated as required in the gcs library itself.
2019-08-17 17:45:03 +10:00
Peter Barker
4fa83ed40d
Copter: move automatic declination setting into AP_Compass itself
2019-08-13 10:02:13 +10:00
Peter Barker
676d75c391
Copter: correct namespacing of Copter modes
...
This makes us look like Rover and Plane in terms of namespacing for the
Mode classes, and removes a wart where we #include mode.h in the middle
of the Mode class.
This was done mechanically for the most part.
I've had to remove the convenience reference for ap as part of this.
2019-06-11 09:18:22 +09:00
Peter Barker
33daef2f33
Copter: merge ArduCopter.cpp and Copter.cpp
2019-06-04 10:41:26 +09:00
Peter Barker
31f796f0c5
Copter: remove unused scaleLongDown member
2019-02-15 11:45:13 +09:00
Peter Barker
b47733142f
GLOBAL: rename DataFlash_Class to AP_Logger
2019-01-18 18:08:20 +11:00
Peter Barker
485cafb343
Copter: use AP_FWVersion singleton
2018-06-18 19:10:37 +01:00
Peter Barker
ba8b3e2415
Copter: create an AutoYaw helper object to hold auto-yaw state
2018-04-18 13:27:43 +09:00
Peter Barker
846506230d
Copter: remove pointless initialisations
...
Also reduce storage size of gps primary
2018-02-22 17:51:35 +10: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
Peter Barker
996115c0d3
Copter: eliminate MAIN_LOOP_SECONDS macro
2018-01-20 15:35:58 +11: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
Randy Mackay
2d23e1f7c7
Copter: rename flightmode_ objects to mode_
2017-12-12 10:39:26 +09:00
Randy Mackay
ac8c2b3f03
Copter: resolve compiler warning from flight-mode declaration
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
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
9c60c1de58
Copter: FlightMode - convert SMARTRTL 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
2db09ba0f7
Copter: FlightMode - convert GUIDED 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
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
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
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
9ce6019138
global: use static method to construct AP_Frsky_Telem
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
53c82b4aaf
global: use static method to construct DataFlash_Class
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
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
89e6e70235
Copter: remove MAIN_LOOP_RATE in favour of parameter value
2017-08-29 08:41:07 +09:00
Peter Barker
cdf9ebcb39
Copter: camera is responsible for taking distance-based-images and logging
2017-07-28 14:27:53 +01:00
Peter Barker
cfbde937c6
Copter: move should_log check of log bitmask into DataFlash
2017-06-29 15:26:27 +01:00
Shingo Matsuura
0800c6be52
Copter: add beacon object to avoidance object
2017-06-14 16:07:32 +09:00
Peter Barker
1d70a337dd
Copter: remove unused desired_climb_rate variable
2017-03-09 19:52:58 +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
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
Pierre Kancir
3fc17a5ed5
Copter: avoid must be initialized after fence as it use it
2016-12-05 10:59:45 -08: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
Randy Mackay
0aab175051
Copter: move proximity to g2
2016-10-14 14:02:29 +09:00
Randy Mackay
bba7369e9a
Copter: pass AP_Proximity to AC_Avoid
2016-10-13 20:21:07 +09:00
Andrew Tridgell
0bcc9c4cb0
Copter: fix for AP_FrSky_Telem API change
2016-08-25 10:16:19 +10:00
floaledm
c0bd21d9f2
Copter: compatibility with revised AP_Frsky_Telem class
2016-08-25 10:16:18 +10:00
Randy Mackay
2647bed484
Copter: guided mode uses modified check_destination_within_fence
2016-07-04 18:25:03 +09:00
Daniel Ricketts
87be8daf0e
Copter: integrate AC_Avoidance library
2016-06-22 11:38:15 +09:00
Leonard Hall
e9d8a28ec0
Copter: AP_Motor's throttle_hover replaces throttle_average
2016-06-18 11:55:49 +09:00
Randy Mackay
5ac13c0355
Copter: move rangefinder variables into structure
...
moved in rangefinder_alt, rangefinder_alt_health and rangefinder_enabled
2016-05-21 10:36:53 +09:00
Randy Mackay
7689315ba2
Copter: rename sonar to rangefinder
2016-05-21 10:36:53 +09:00
Lucas De Marchi
352e103f1a
ArduCopter: use separate header for version macro
...
Having the version macro in the config.h and consequently in the main
vehicle header means that whenever the version changes we need to
compiler the whole vehicle again. This would not be so bad if we weren't
also appending the git hash in the version. In this case, whenever we
commit to the repository we would need to recompile everything.
Move to a separate header that is include only by its users. Then
instead of compiling everything we will compile just a few files.
2016-05-06 13:11:28 -03:00
Allan Matthew
d6012c535e
Copter: remove unused dt passed to precland
2016-05-06 11:04:45 +09:00
Randy Mackay
5090e6f4fb
Copter: init G_Dt with MAIN_LOOP_SECONDS definition
2016-04-01 11:59:30 +09:00
Randy Mackay
bde498375c
Copter: remove attitude PIDs
...
These are now part of AC_AttitudeControl
2016-04-01 11:59:30 +09:00
Randy Mackay
1f37f5a0e7
Copter: remove tradheli swash, yaw and rsc servos
...
These are all created within the AP_MotorsSingle class now except for servo_rsc which was unused
2016-04-01 11:59:30 +09:00
Leonard Hall
6c40d6f774
Copter: remove single frame's servo objects
2016-04-01 11:59:30 +09:00
Leonard Hall
8d0a6765f1
Copter: removed unnecessary #define for motor declaration
2016-04-01 11:59:30 +09:00
Leonard Hall
44180e44df
Copter: remove coax servo objects
...
servos moved to AP_MotorsCoax class
2016-04-01 11:59:30 +09:00
Leonard Hall
a00a9601a4
Copter: AP_MotorsCoax now uses 4 servos
2016-04-01 11:59:30 +09:00
Jonathan Challinger
8965185587
Copter: add "high throttle cancels landing" option
2016-01-14 15:21:54 +09:00
Jonathan Challinger
dcd16696a2
Copter: refactor RTL to compute full path on initialization
2016-01-07 17:22:31 +09:00
Randy Mackay
1155b1f557
Copter: remove precision landing PI controller
...
This controller has been moved into the precision landing class
2015-12-31 15:30:36 +09:00
Andrew Tridgell
4dd8714880
Copter: changed to Hz based task table
2015-12-27 14:57:21 +09:00
Robert Lefebvre
f55effa562
Copter: remove unnecessary frame ifdef
2015-12-04 14:18:00 +09:00
Randy Mackay
06880e8b04
Copter: fix input_manager init order to resolve compiler warning
2015-11-27 15:18:17 +09:00
Randy Mackay
731c44d053
Copter: allow terrain to be excluded from build
2015-11-14 12:38:47 +09:00
Robert Lefebvre
34fb600c4f
Copter: Utilize Input Manager Class
2015-11-12 19:37:22 +09:00
Caio Marcelo de Oliveira Filho
2e464a53c2
AP_HAL: make code not depend on concrete HAL implementations
...
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.
A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.
The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.
Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.
The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Randy Mackay
cdd4570f02
Copter: fix init order of ekfYawReset_ms
2015-09-24 16:57:50 +09:00
Jonathan Challinger
e47175862a
Copter: use modified getLastYawResetAngle function
2015-09-24 16:57:44 +09:00
Randy Mackay
26ded641db
Copter: integrate Precision Landing lib
2015-08-31 18:00:28 +09:00
Robert Lefebvre
990761a13b
Copter: Create new heli RSC RC Channel object.
2015-08-31 11:27:50 +09:00
Stewart Loving-Gibbard
7cb494d8e2
Copter: Moving to RSSI library for reading various kinds of RSSI, with the possibility of adding more.
...
* Retains ability to read from Analog Pin
* Adds ability to read RSSI from PWM channel value as is done in OpenLRSng, EazyUHF, and various other LRS.
* Handles any type of RSSI that provides RSSI values inverted - i.e. when the low value is the best signal and the high value is the worst signal.
* Has different key names from all existing RSSI parameters to provide for a clean break and easier distinguishing.
* Existing parameters are marked as obsolete
2015-08-29 08:05:59 +10:00
Jonathan Challinger
a18f71b29e
Copter: bug fix to RTL_ALT_MIN feature
...
commited by Randy
2015-08-08 15:38:47 +09:00
Tom Pittenger
0ecebbd55f
Copter: Refactor verify_command
...
- abstracted verify_command so that command-wide actions can happen more cleanly, namely mission_item_reached
- This also brings the structure in line with plane and rover
2015-07-21 14:48:37 +09:00
Randy Mackay
764fa36716
Copter: log ERR when compass, baro unhealthy
2015-07-12 22:11:35 +09:00
Peter Barker
788faf1f7d
Copter: DataFlash frontend/backend split
2015-06-26 16:02:50 +10:00
Randy Mackay
6e23d05140
Copter: add member init
...
Resolves Covarity warnings
2015-06-08 14:46:27 +09:00
Andrew Tridgell
bfb105fa5a
Copter: changes for new AHRS API
2015-06-01 16:16:59 +10:00
Andrew Tridgell
278883c521
Copter: finished conversion to .cpp files
...
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2015-05-30 15:21:19 +09:00