Commit Graph

309 Commits

Author SHA1 Message Date
Peter Barker 42b196a9a6 Rover: let AP_Mission handle common camera commands 2018-10-30 15:37:18 +11:00
Randy Mackay 4a5b56c929 Rover: windvane update called from scheduler at 20hz 2018-09-28 10:40:12 +09:00
IamPete1 4366bae96d Rover: add sailboat support 2018-09-28 10:40:12 +09:00
Randy Mackay efdd3946fc Rover: simple mode fixes 2018-09-11 16:43:17 +09:00
Ammarf 6ba5942ece Rover: add simple mode 2018-09-11 16:43:17 +09:00
Randy Mackay f0ad8760e2 Rover: move rally to g2 2018-08-30 09:55:05 +09:00
Raouf 90fd64cf3a Rover: add support for rally points 2018-08-30 09:54:51 +09:00
Thorsten Panitz ee8d5d77d0 Rover: Activation of OSD
Rover: Activation of OSD
2018-08-30 08:19:02 +10:00
Randy Mackay 88a230e897 Rover: DPTH message only written if range finder last read time changed 2018-08-28 09:23:38 +09:00
Randy Mackay db611e074c Rover: include wheel-rate-control 2018-08-27 16:44:33 +09:00
Randy Mackay a5e28f0729 Rover: balancebot_pitch_control method removes unused armed arg
Also remove constraint on throttle output (this is handle in the AP_MotorsUGV library
Also move balance bot declarations to alphabetical order within Rover.h
2018-08-27 16:44:33 +09:00
Ammarf 430ed9bd3d Rover: add custom config support 2018-08-07 10:01:32 +09:00
Randy Mackay 936dca7531 Rover: remove compass accumulate 2018-08-06 11:05:34 +10:00
Peter Barker 5d923aed85 Rover: remove dead gcs failsafe code
Also use rc().has_valid_input() before using radio for trim
2018-08-02 15:21:03 +09:00
Peter Barker 1f0908bba2 Rover: move handling of RC Switches into RC_Channel
Rover: use base-class auxsw handling

Rover: factor out do_aux_function_change_mode

Rover: move mode number enumeration to be in Mode:: namespace

Rover: move mode switch handling to RC_Channel

Rover: rename control_modes.cpp to RC_Channel.cpp

Rover: move motor_active() to be a method on the motors class
2018-08-01 12:11:30 +09:00
Peter Barker 24ef1a61b3 Rover: remove old AP_Menu include 2018-07-23 14:20:22 +09:00
Ammarf c0082271e6 Rover: implement Follow mode 2018-07-18 15:11:09 +09:00
Michael du Breuil 84f891c5b1 Rover: Remove unused ADC include 2018-07-17 09:29:50 +10:00
jeff567 200a644cfe Rover: fixes bug in rovers with pivot turning 2018-07-11 11:35:43 +09:00
Peter Barker efdc13d143 Rover: remove pointless rangefinder_init shim function 2018-07-04 21:08:47 +01:00
Peter Barker ea12f6caec Rover: use singletons in AP_Arming 2018-07-03 13:44:11 +10:00
Ebin 2780d1715c Rover: balance bot pitch control added in all modes 2018-06-28 21:55:20 +09:00
Ebin 936ebbe1f3 Rover: Added BalanceBot as a rover frame 2018-06-28 21:55:20 +09:00
Raouf 9d51e87762 Rover: Save compass offsets when disarmed and learning is on 2018-06-26 08:51:16 +09:00
Peter Barker 87a3fcdd02 Rover: remove usb-mux checking
Nobody ever uses the result from this
2018-06-20 02:12:56 +01:00
Peter Barker ab6cf171da Rover: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker 9b269b1b56 Rover: use AP_RTC
Rover: AP_GPS now sets the system time directly
2018-06-15 08:01:22 +10:00
Michael du Breuil c85f8c7bf5 Rover: Simplify radio trimming, improve MAVLink report 2018-06-11 16:29:36 -07:00
Randy Mackay b69155793f Rover: add Log_Write_Depth 2018-06-12 08:29:08 +09:00
Randy Mackay d34c87a457 Rover: alphabetise Log_Write methods 2018-06-12 08:29:08 +09:00
Randy Mackay c51b38cd1c Rover: rename Log_Arm_Disarm to Log_Write_Arm_Disarm 2018-06-12 08:29:08 +09:00
Randy Mackay 10d89f1315 Rover: remove unimplemented Log_Write_Performance declaration 2018-06-12 08:29:08 +09:00
Peter Barker cf1f2f9aeb Rover: move motors_active to be motors.active
This will help when we come to subclass the Motors library.
2018-06-08 08:51:18 +09:00
Peter Barker 65b7ca3fbb Rover: factor out a do_aux_function_change_mode
Less code is good
2018-06-08 08:50:08 +09:00
Peter Barker 36705af8ff Rover: create an enumeration to hold vehicle mode constants
This gives us type-safety on the mode numbers.  This is advantageous as
some of these symbols exist with different values elsewhere in the code.
2018-06-08 08:41:16 +09:00
Ammarf 26c25daa36 Rover: add support for lateral control input 2018-05-31 13:48:17 +09:00
Randy Mackay 73bdc3be09 Rover: set ahrs flyforward if thr over 15% for 2 seconds
or if throttle is positive and desired speed over 0.5m/s
2018-05-29 16:37:31 +09:00
Peter Barker 9d83ee8cc7 Rover: move sending of vfr_hud up 2018-05-29 13:00:40 +10:00
Peter Barker 8101f2b573 Rover: move sending of simstate up 2018-05-23 18:36:50 +10:00
Randy Mackay 24dd9a1c2c Rover: update GPS at 50hz 2018-05-23 17:17:29 +09:00
Peter Barker 1ecd371cd0 Rover: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK 2018-05-17 15:48:06 +01:00
Peter Barker 3799a13bc3 Rover: move send_attitude up to GCS_MAVLINK 2018-05-17 18:28:43 +10:00
Peter Barker 0d3051e46a Rover: handle setting of ekf origin in GCS_MAVLink 2018-05-17 10:13:42 +10:00
Peter Barker a52f3d8f70 Rover: move Log_Write_Home_And_Origin into AP_AHRS 2018-05-17 10:13:42 +10:00
Peter Barker a78fe0896f Rover: make scheduler track whether it has called the delay callback 2018-05-09 16:15:38 +10:00
Peter Barker 9e1811027d APMrover2: move try_send_message handling of RC_CHANNELS_RAW up 2018-05-08 12:33:32 +01:00
Randy Mackay c6638f66de Rover: Loiter mode for boats 2018-05-06 16:58:00 +09:00
night-ghost 2aee8d1018 APMrover2: devo telemetry support (RX705/707) 2018-04-24 10:44:28 +10:00
Peter Barker 63e8fffbe4 Rover: Baro does its own dataflash logging now 2018-04-12 19:12:12 +01:00
Michael du Breuil 05173f24c6 Rover: Use RC_Channels instead of hal.rcin 2018-04-11 21:47:07 +01:00
Peter Barker e74d07ff15 Rover: remove wrapper for Log_Write_Beacon 2018-04-04 16:20:33 +09:00
Peter Barker a45e3cba15 Rover: factor vehicle's mavlink send_heartbeat 2018-04-03 13:05:19 +01:00
Peter Barker c10f404b12 Rover: tidy handling of barometer calibrations 2018-04-02 23:25:05 +01:00
Michael du Breuil b761a57da3 Rover: Support new battery interface 2018-03-27 22:12:21 +01:00
Peter Barker 9d0da4a71f Rover: move home state into AP_AHRS 2018-03-19 10:32:37 +09:00
Peter Barker ceb64fb7d9 Rover: use ins singleton 2018-03-16 00:37:35 -07:00
Peter Barker 81ba037582 Rover: use baro singleton 2018-03-08 21:20:05 -08:00
Peter Barker 90d26a5100 Rover: eliminate perf_update scheduler table shim 2018-02-13 17:15:05 +11:00
Peter Barker d9bb546048 Rover: use AP_Scheduler's loop() function 2018-02-13 17:15:05 +11:00
Peter Barker 211e7416a9 Rover: use scheduler ticks in place of mainloop_count 2018-02-13 17:15:05 +11:00
Peter Barker 9511e72113 Rover: use PerfInfo for performance monitoring 2018-02-13 17:15:05 +11:00
Peter Barker df304c5e6b Rover: remove shims used in scheduler table 2018-02-12 15:39:26 +09:00
Michael du Breuil 2e9e91b3a3 Rover: Move battery logging to AP_BattMonitor 2018-02-06 00:11:32 +00:00
Randy Mackay 489c42bdff Rover: add avoidance library 2018-01-22 17:18:41 +09:00
khancyr 5503a0069d Rover: add proximity library 2018-01-22 17:18:41 +09:00
khancyr c3fb985ec5 Rover: add fence support 2018-01-22 17:18:41 +09:00
Peter Barker 7cf2712bf1 Rover: AP_AHRS no longer requires GPS in constructor 2017-12-27 00:58:02 +00:00
Peter Barker bce9a40ab5 Rover: remove unimplemented methods 2017-12-15 13:27:14 +09:00
Andrew Tridgell 482ae876fb Rover: 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 f6f40afcda Rover: rename control_mode_from_num to mode_from_mode_num 2017-12-12 10:39:26 +09:00
Randy Mackay 9710b16cac Rover: THR dataflash logging replaces CTUN 2017-12-09 12:18:49 +09:00
Randy Mackay 8eb991b610 Rover: boats say active at destination in auto
previously the user would use the LOITER_UNLIMITED or LOITER_TIME mission commands to specify that the vehicle should remain active at the destination.  This was cumbersome and not the best way to specify this behaviour because these two commands are valid for regular rovers that should not try to remain active at the destination.
2017-12-08 08:48:05 +09:00
Randy Mackay aa38239629 Rover: add FRAME_CLASS to differentiate boats from rovers 2017-12-08 08:48:05 +09:00
Peter Barker 1d2ec9054b Rover: tighten return types of mavlink functions and variables 2017-12-01 17:01:10 +00:00
Peter Barker e38cefea8a Rover: add SmartRTL mode
called at 3hz from scheduler
2017-12-01 09:28:56 +09:00
Peter Barker 45d76bdf25 Rover: add name4() to Mode and use it for AP_Notify calls 2017-11-29 14:03:43 +09:00
Randy Mackay 04e9228fa0 Rover: add Acro mode
ACRO_TURN_RATE allows user control of maximum turn rate
2017-11-29 14:03:43 +09:00
Peter Barker c00a4f3bb2 Rover: AP_Camera uses GPS singleton 2017-11-16 15:28:37 +00:00
Peter Barker 2d0a23fcc8 Rover: call ins's periodic function 2017-10-27 16:33:45 +11:00
Lucas De Marchi e98ccb9ae6 ArduRover: use static method to construct controllers 2017-09-26 03:01:21 +01:00
Lucas De Marchi bfd13dfe87 global: use static method to construct AP_AHRS_DCM 2017-09-26 03:01:21 +01: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 eadd650d78 global: use static method to construct AP_RSSI 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 5ec1430726 APMrover2: use static method to construct AP_Arming_Rover 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 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