Commit Graph

190 Commits

Author SHA1 Message Date
rmackay9
303ca11c4c HIL: changes to fix HIL for ArduCopter after recent timing changes.
Changes include using AP_PeriodicProcess and calling imu.init even in HIL mode
2012-09-15 18:42:56 +09:00
rmackay9
b6d2d4723f ArduCopter: print firmware version of code instead of zero. 2012-09-13 21:49:11 +09:00
rmackay9
2e9e3ce5a6 ArduCopter: increase SPI bus speed to 2Mhz after IMU initialisation has completed (MPU6000 accepts maximum of 1Mhz for some registers but up to 20Mhz for main sensor and interrupt registers) 2012-08-28 17:29:48 +09:00
uncrustify
969166c4e3 uncrustify ArduCopter/system.pde 2012-08-21 19:19:50 -07:00
Andrew Tridgell
1b0f5ac84f ACM: use ahrs.set_fast_gains() on arm/disarm 2012-08-21 15:38:31 +10:00
Jason Short
1e0ab8768e ACM: Toy mode updates 2012-08-11 22:37:26 -07:00
Jason Short
f641c5d077 ACM system.pde - toy mode update, cleanup of throttle cruise code 2012-08-09 16:59:44 -07:00
rmackay9
94cb325184 ArduCopter: added ahrs.ini() to system.pde to allow offsets to be pushed into MPU6000's DMP 2012-07-28 14:21:45 +09:00
Jason Short
a7b1252b51 arducopter
alt hold state reset
2012-07-18 22:57:11 -07:00
Jason Short
bb99bd4626 Arducopter: INS
removed zero accells call
2012-07-18 22:57:10 -07:00
Andreas M. Antonopoulos
c73f7ef3ab AP_Limits library, provides modular "limits" such as altitude and geo-fencing. 2012-07-14 19:26:17 -07:00
Jason Short
1dbde3f803 Arducopter: Added note 2012-07-10 21:53:37 -07:00
Amilcar Lucas
dfe0983e1e Merge the changes from APM_Camera branch into ArduCopter
Conflicts:

	ArduCopter/Camera.pde
	ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Jason Short
9a30270879 System.pde - RTL
removed Approach mode, fixed RTL to loiter until desired altitude is reached
2012-07-01 13:40:12 -07:00
Andrew Tridgell
82ede937e7 AnalogSource: convert analogRead() calls to the new API
this should give us much better analog values, plus save a bunch of
CPU time
2012-07-01 15:01:05 +10:00
Jason Short
031830b5fe System.pde: Toy mode details for set_mode() 2012-06-29 21:20:28 -07:00
Jason Short
cd93c40f09 Added Toy Mode control 2012-06-25 23:08:25 -07:00
Jason Short
8b212d8baa Adjustments to the Inertial_nav
lowered Rate_I and Rate_P to be less jumpy. raised throttle_p
added a clear to rate when entering loiter
moved the raw reporting
2012-06-20 08:47:47 -07:00
Andrew Tridgell
940d994efb GPS: Use appropiate GPS_ENGINE settings in APM, ACM and rover 2012-06-10 16:36:18 +10:00
Andrew Tridgell
a684bddbda GPS: open the GPS serial port with a 256 byte buffer
the UBLOX needs more than 128 bytes for reliable parsing
2012-06-08 16:42:03 +10:00
Jason Short
71f80f3a77 Bug fix: When adjusting altitude, RTL then land will fail unless this var is reset to false. 2012-06-03 22:25:27 -07:00
Jason Short
0ce883b96a Removed unused variable 2012-05-29 12:43:23 -07:00
Jason Short
5754f97433 reversed circle_WP calculation so the next_WP refers to the destination around the circle and circle_WP refers to the center. The intent is to make it easier to see via ground station. 2012-05-27 09:21:20 -07:00
Robert Lefebvre
c8fb9a6635 More CopterLEDS changes.
Merged CopterLEDS and Piezo functions to eliminate pin conflict on APM2.  Created new Parameter bit to turn piezo function on and off from MP. Moved GPS and Aux pin assignments to allow commonality between APM1 and 2.  Set LED_Mode parameter default to 9 in order to make CopterLEDS completely backwards compatible with old Motor LEDS and Piezo code.  Legacy users should see no difference.
2012-05-15 12:00:21 -04:00
Adam M Rivera
0c3d6614cd system.pde: Updated param name to loiter_timer. 2012-04-16 10:12:30 -05:00
Adam M Rivera
a2b338c052 System: Added handler for the new APPROACH flight mode which will initiate an approach to a target alt as defined by the user. 2012-04-15 16:55:34 -05:00
rmackay9
c337df11c8 ArduCopter - LEDS - set new output pins to OUTPUT to support COPTER_LEDS.
Code by Robert Lefebvre
2012-04-12 22:55:40 +09:00
rmackay9
1d086c83f0 ArduCopter - system.pde - changed references to "motor_armed" to "motors.armed()" as part of the move to use AP_Motors library. 2012-04-04 23:03:21 +09:00
Andrew Tridgell
b4107d35e8 MAVLink: raise the serial transmit buffer size to 256 bytes
the 128 byte serial transmit buffer was causing significant problems
with queueing of mavlink messages. With 256 bytes we can fit a lot
more messages out in each pass of the code, which makes telemetry more
efficient

As we discussed on the dev call, we now have enough free ram for this
to be worthwhile
2012-03-30 17:46:20 +11:00
Andrew Tridgell
547b4ed55b AHRS: adapt ArduCopter for new AHRS framework 2012-03-19 17:29:02 +11:00
Jason Short
fe7ca98701 ACM: system.pde - removed reset_nav_I() to consolidate the wind control reset. 2012-03-18 22:31:21 -07:00
Jason Short
f9d0dc9daa ACM: disabled auto_calibration until more testing can be done 2012-03-10 12:44:49 -08:00
Jason Short
5ad7320505 ACM: changed alt hold initialization of altitude to be immediate 2012-03-10 12:44:18 -08:00
Andrew Tridgell
828ad7625b ACM: removed the ADC filtering code 2012-03-10 10:34:32 +11:00
Andrew Tridgell
8393c0299b ACM: removed the DCM tuning overrides
not needed now that DCM scales with deltat
2012-03-10 10:34:31 +11:00
Andrew Tridgell
7e4c8592ff ACM: make it possible to build ArduCopter with quaternions 2012-03-10 10:34:29 +11:00
Andrew Tridgell
367947fd33 HWSTATUS: if we don't know the voltage, report it as zero
this will tell us if board_voltage() is really working
2012-03-10 10:34:28 +11:00
Andrew Tridgell
64cc04ae09 ACM: adjust yaw drift correction constants
this should give the compass a bit more authority
2012-03-10 10:34:28 +11:00
Jason Short
730476fdfd ACM -
Implemented automatic ranging of Alt Hold gains. Works well in simulator and testing.
- alt hold estimation moved to 50 hz
- simple fixed observer calc for smooth and accurate climb rates useful for derivative calcs
- auto-reset of the I term by moving I value into throttle value. This recalcs the gain every 20seconds for battery drainage compensation in long flights.
- remove filtering for Nav_throttle
- added a way to lower the gain on nav_throttle for descents by / climb_rate error by 2 - seems to work OK and keeps copter from dropping like a rock when the Baro drifts quickly lower.
- removed old throttle hold set point code
- made throttle override for alt hold +- 200 vs 250
2012-03-06 22:22:14 -08:00
Andrew Tridgell
cb874d6097 ACM: added board_voltage() 2012-03-02 15:48:28 +11:00
Jason Short
eac77504a3 Added more Logging for PIDs. 2012-02-26 11:33:36 -08:00
Jason Short
f27e9f9ca1 added a simple rest of nav_throttle just in case 2012-02-25 13:31:21 -08:00
Jason Short
42b5d47f7b commented out control mode debug print 2012-02-21 21:48:07 -08:00
Jason Short
336441b109 reset slow_WP option at mode switch 2012-02-19 13:13:42 -08:00
Jason Short
17c6c7b294 added extra gain logging 2012-02-16 22:09:22 -08:00
Andrew Tridgell
3b4cae3cc3 adapted main ACM code for AP_Param 2012-02-13 16:22:52 +11:00
Jason Short
8ae53bffd2 Made Yaw Hold universal for Acro 2012-02-10 22:32:55 -08:00
Andrew Tridgell
1a861b3de5 allow for lower serial baud rates
not many people will use less than 9600 baud, except for those wanting
to test extreme range radios, which is what I'm trying to do :-)
2012-02-04 19:07:18 +11:00
Michael Oborne
151479f769 fix issue 502
to identify quad over mavlink
2012-02-03 06:53:08 +08:00
Jason Short
7833cea9d4 2.2B6 - Please verify Heli still functions properly.
Added AC_PID lib
Updated landing code
bug fixes
2012-01-28 22:00:05 -08:00
Randy Mackay
122623f64b OpticalFlow - added OF_LOITER flightmode 2012-01-28 09:27:16 +09:00
Jason Short
6784989e83 relocated reset_I term functions to central location 2012-01-20 22:52:30 -08:00
Jason Short
3ebed0b278 This allows users to test the Auto_throttle hold or cruise value 2012-01-14 11:43:52 -08:00
Jason Short
7877a872d3 added update throttle cruise function 2012-01-13 16:48:05 -08:00
Jason Short
a59c9ae22c added notes 2012-01-12 22:28:58 -08:00
Jason Short
4b54887c6c Switched to set_next_WP for mode switches 2012-01-10 23:43:44 -08:00
Jason Short
cf92631d33 added #if to wind compensation code 2012-01-10 23:42:26 -08:00
Randy Mackay
f68d23d91e ArduCopter - added ROLL_PITCH_STABLE_OF (i.e. Stabilised Roll/Pitch + adjustments based on optical flow)
Removed optical flow from regular loiter for now until it's tested.
2012-01-09 13:53:54 +09:00
Jason Short
9c8122e061 converted auto land to use the mission planner version
Removed gate that looked for already set control_mode. Wasn't compatible with failsafe
2012-01-07 22:27:26 -08:00
Jason Short
98f9a5f237 Forced Faildafe throttle mode to throttle Auto 2012-01-06 10:21:50 -08:00
Jason Short
40ad164c8d Clears Auto_land timer 2012-01-05 21:15:12 -08:00
Andrew Tridgell
df81a9459a ACM: reset all I terms on gyro calibration 2012-01-05 10:15:14 +11:00
Jason Short
2e83e42764 Added precalc for wind compensation when entering Stabilze mode 2012-01-04 09:28:37 -08:00
Jason Short
ecb3241489 calc_wind_compensation called when exiting AP modes
Rate I terms reset in Acro Mode switch
Limit of 1 m set to alt hold
Reset circle angle to 0 by default
Land got land_complete var set to false by default
2012-01-04 09:28:37 -08:00
Andrew Tridgell
cdd5589498 I2c: default to 5ms timeout, and faster bus speed
we will slow down the speed when we get a failure
2012-01-04 16:36:47 +11:00
Randy Mackay
bbe6dea980 OptFlow - initial support for APM2 (there are still problems) including adding ability to set Chip Select pin.
Other unrelated changes are:
a) fixed typo in 'esitmate_velocity' to 'estimate_velocity'.
b) moved init_compass from system.pde to sensors.pde which seemed consistent with other sensors.
2011-12-30 12:06:31 +09:00
Andrew Tridgell
03a16c6e45 ACM: use new I2C library 2011-12-28 20:41:53 +11:00
Andrew Tridgell
73e6d5ee11 ACM: update for DataFlash changes 2011-12-28 16:00:49 +11:00
Andrew Tridgell
0dadbf932a removed "Please run setup" loop from ArduCopter
Chris asked for this to be removed as it was really mucking up the
initial experience setting up ArduCopter via the planner
2011-12-24 18:12:51 +11:00
Jason Short
e5a3899b7f added ability to enter Loiter with only optflow available 2011-12-23 14:46:32 -08:00
Andrew Tridgell
ad9c0533d8 ACM: run mavlink loop while erasing logs 2011-12-18 10:19:41 +11:00
Jason Short
1251e8105d Added failsafe check 2011-12-14 22:08:41 -08:00
Andrew Tridgell
483bef35e5 IMU: update ACM and APM for flash_leds change in IMU init 2011-12-13 18:19:41 +11:00
Andrew Tridgell
07dba4eff7 desktop: fixed Wire.begin() build problem 2011-12-12 15:14:55 +11:00
Pat Hickey
a48c65b5b5 ArduCopter: update AP_Baro constructors & initializers 2011-12-11 15:21:10 -08:00
Pat Hickey
f3ad7f3af8 Wire and SPI Init: move to sketch system.pde from libraries
* Wire.begin removed from AP_Baro_BMP085::init()
* SPI.begin  removed from AP_Baro_MS5611::init()
* SPI.begin  removed from AP_InertialSensor_MPU6000::hardware_init()

* Both Wire.begin and SPI.begin added very early in init_ardupilot in
  ArduCopter/system.pde and ArduPlane/system.pde
2011-12-11 15:21:10 -08:00
Pat Hickey
39fe9075d9 ArduCopter Init: different call to barometer.init based on CONFIG_BARO
* BMP085 has two arguments, second varying on apm1/apm2
* ms5611 has no arguments
2011-12-11 15:21:10 -08:00
Pat Hickey
2e200834e1 ArduCopter: Revert "Switched to Gyro only startup"
This reverts commit f932f0a9f6a29e9c3193622109298c657ed5a908.

I fixed this bug in 734185599cd9d6a487c675460c09895172e012b0.

It is no longer valid to call IMU::init_gyro() before IMU::init().
2011-12-11 14:50:02 -08:00
Randy Mackay
fe336fb749 ArduCopter - small fixes to fix HIL compile errors 2011-12-11 23:25:03 +09:00
Randy Mackay
67855b207d Arducopter, RangeFinder - added SONAR_TYPE parameter and properly support the XL (default), LV and long distance XL (aka XLL) sonar types 2011-12-11 16:40:59 +09:00
Jason Short
648ab5f4ae Switched to Gyro only startup 2011-12-10 15:13:20 -08:00
Jason Short
49806d93d9 Added Land FLight mode definition 2011-12-10 10:19:20 -08:00
Jason Short
0d8071a401 Added new gain and clamp value for DCM 2011-12-03 17:55:11 -08:00
Andrew Tridgell
aaac6212ab MAVLink: use the configured system ID for ArduCopter 2011-12-03 07:54:36 +11:00
Jason Short
b92b4e9092 cleanup 2011-11-28 21:40:22 -08:00
Doug Weibel
b03de3095e Add DataFlash.Init before doing a forced log erase on eeprom reset.
Add progress indication during log erase
2011-11-28 19:42:27 -07:00
Jason Short
df57380adc Erasing Logs causing major havoc. Users getting infinite loop. 2011-11-28 10:33:05 -08:00
Jason Short
fb5302c50b No longer resetting ch7 wp index with mode change, requires reboot 2011-11-27 22:23:02 -08:00
Jason Short
19c3c27ed0 Erasing Logs at new FW version detection 2011-11-26 16:39:28 -08:00
Andrew Tridgell
38c85c44ae ArduCopter: rename purple to APM2 2011-11-25 20:00:19 -08:00
Andrew Tridgell
3a542b3ef3 USB-MUX: enable USB MUX switching for ArduCopter 2011-11-25 20:00:19 -08:00
Andrew Tridgell
338445e60c ArduCopter-HIL: fixed HIL build
Logging isn't always enabled
2011-11-25 20:00:18 -08:00
Pat Hickey
1d50bb80fd hil-sensors ArduCopter: fixes to make hil-sensors build work properly
* requires new stub libraries for InertialSensor and PeriodicProcess.
2011-11-25 20:00:18 -08:00
Andrew Tridgell
1e41b4b2b0 timer_scheduler doesn't exist in HIL_MODE_ATTITUDE 2011-11-25 20:00:18 -08:00
Andrew Tridgell
3072fdda85 adc.Init() needs timer_scheduler 2011-11-25 20:00:17 -08:00
Pat Hickey
3131ab16ef remove BROKEN_SLIDER code
use the new CLI_SLIDER_ENABLED option and the "hit ENTER 3 times"
method
2011-11-25 20:00:17 -08:00
Pat Hickey
f1bad83d21 purple: fixed system init for purple sensor objects 2011-11-25 20:00:16 -08:00
Pat Hickey
4869ac3385 purple: use the new LED_ON/LED_OFF macros for LED level
this gets this right on both APM1 and purple for ArduCopter
2011-11-25 20:00:16 -08:00
Andrew Tridgell
89d2f0f849 mod barometer.Init() based on hardware 2011-11-25 20:00:15 -08:00
Jason Short
89e014c06a Added alternate alt hold,
New ESC Calibration Routine
2011-11-21 22:12:19 -08:00