1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-11 19:24:10 +01:00
Commit Graph

372 Commits

Author SHA1 Message Date
edouard
d2c1014e29 Re-enabled yaw stabilization after SystemSettings changed. There might be a lingering issue when the
yaw angle crosses the zero-360 mark, beware.
You can disable yaw stabilization by setting all PID gains to zero for yaw.



git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1828 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 16:26:43 +00:00
peabody124
d54c6bf0f8 Flight/Actuator: Use dT in seconds. Forgot to change MaxAccel.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1825 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 14:37:03 +00:00
peabody124
0dfdad4fc4 Flight/Actuator: Reset critical alarm
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1824 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 14:09:14 +00:00
peabody124
c076a695ce UAVObjects/ActuatorSettings: Default values are all 1000 now so that an
unconfigured motor can't turn on.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1823 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 13:45:26 +00:00
peabody124
9f4e3906e3 Flight/Actuator: Made it use the detected dT for the feedforward computation
and removed the unused field from actuator settings (old setting time and all
the aircraft specific stuff).

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1820 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 12:33:33 +00:00
peabody124
2dc40d11a1 Flight/Stabilization: Use the system clock to determine time from previous
update since now drive by events.  This means StabilizationSettings object
changing so write down your settings.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1819 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 12:33:29 +00:00
peabody124
4461aba6d6 Flight/Stabilization: Move to object event system. Latency from ahrs_comm
update to actuator update now ~0.7 ms.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1818 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 12:33:26 +00:00
peabody124
b9943645e0 Flight/Actuator: Run actuator from queue again, latency well behaved.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1817 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-10-01 12:33:20 +00:00
sambas
ee4ca7b93a OP-177 Flight: All alarms fixed, AHRSComms stack size made critical stack alarm, event warning caused by queue that is not used at the moment.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1801 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-29 19:06:35 +00:00
peabody124
a4e0ee5fdf Flight/Actuator: Move Les' actuator to the active one
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1800 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-29 18:51:36 +00:00
peabody124
2f6f76d578 Flight/Actuator: Remove old mixer code
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1799 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-29 18:51:34 +00:00
fredericg
f090b4bcf8 OP-174 ET OSD: Fixed build errors due to UABObject changes
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1786 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-27 19:56:25 +00:00
peabody124
9b1d258a94 Flight/Les/Actuator: Space->Tab, somehow slipped passed previous patch
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1784 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-27 17:30:42 +00:00
peabody124
aa42256ad1 Flight/Stabilization: Convert all PID loops to units of seconds instead of ms.
THIS MEANS YOU MUST RETUNE YOUR PID LOOP IF YOU'RE FLYING WITH IT

Alternatively divide Kd by 1000 and multiply Ki by 1000

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1782 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-27 09:04:43 +00:00
peabody124
fef8cca5b6 Flight/Posix: Get compiling again (sorry Corvus, I think I messed up your
change earlier)

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1778 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-27 07:28:48 +00:00
peabody124
6d0df704a7 Flight/Modules: Corrected code to use tabs
find ./flight/OpenPilot/Modules/ \! \( -name '*~' -a -prune \) -type f    |
xargs -I{} bash -c 'echo {}; dos2unix {}; gnuindent -npro -kr -i8 -ts8 -sob -ss
-ncs -cp1 -il0 -hnl -l150 {};'

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1776 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-27 07:28:34 +00:00
peabody124
b85e322206 Flight/FlightSituation: Remove unused module
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1774 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-27 07:28:21 +00:00
peabody124
da583e0914 Flight/Guidance: Disable by default
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1768 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-26 03:07:40 +00:00
peabody124
8475a68958 Flight/Stabilization: Keep command and error in deg/s for rate stabilization
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1766 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-26 03:06:54 +00:00
peabody124
77b68e5169 Flight/Guidance: Initial template for guidance module
Flight: Create PositionDesired (the active waypoint) UAVObject and make the FlightSituationActual no update since it not used.
Flight: New velocity desired object that passes information between the look computing the desired velocity and the PID loop to get it (updated at different rates)
UAVObjects/PositionActual: Remove unused GPS fields
UAVObjects/PositionActual VelocityActual: Split the velocity into a separate object.  ALso make sure all the information telemetered around is in cm to avoid using floats.
UAVObject/GuidanceSettings: New guidance settings object for the guidance module
Flight/Posix: Add the new objects to the Posix sim
Flight/Guidance: Computes a desired velocity based on position error than runs a PID loop to control roll and pitch to achieve that velocity.  All distances are in cm, and updated the PositionActual fields to reflect this and use int32.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1760 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-26 03:06:27 +00:00
zedamota
9b05282be5 OP-21/Flight Bootloader - should make things cross platform.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1758 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-26 00:39:01 +00:00
peabody124
a01783b2a8 OP-140 AHRS: Explicilty deal with if it is initialized or not, use that to
determine retransmitting calibration, home location and such.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1755 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-25 21:05:38 +00:00
peabody124
9b28f2d72c OP-167 OP-157 AHRS/Calibration: Added mag scale and really cleaned up calibration.
Calibration should take less time now too (using second moments to estimate
variance in one pass).  Now need to change to multiple messages to get the
calibration in to keep the request message size minimal.  Also currently
running sensor calibrate doesn't store the gyro bias so if you want to use this
you'll have to tweak it manually.  I'll fix that step tomorrow.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1741 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-25 09:20:38 +00:00
edouard
eedf85a5ac OP-138 Start of the new Mixer configuration interface, for fixed wing only. This does not work yet, takes a long time to fully implement.
The system settings UAVObject is updated, you will have to recompile your firmware. If you want to take a look and let me know, please do!



git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1737 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-24 20:39:37 +00:00
corvus
1472b342c1 1.0 Featur Freeze -
Removing some Experimental and Incomplete Modules and their UAVObjects not suited for 1.0
- they will be moved into an experimental branch:

Navigation     : experimental code only
FlightSituation: experimental code only 
Guidance       : preliminary draft - possibly to be replaced by peabody124 position hold code if finished in time.



git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1729 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-23 22:05:03 +00:00
corvus
e44045f422 OP-165 : Guidance Module
Creating GuidanceModule together with PositionDesired UAVObject (as discussed),
so dschin and me can work on it :-)
Will compile and (on sim_posix) execute, but PID logic is yet untested and preliminary.



git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1722 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-22 22:16:48 +00:00
les
ef7ee86d45 Mixer: zero throttle shuts off motors and changed MixernMatrix to MixernVector
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1710 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-21 19:31:17 +00:00
chebuzz
862e35def1 OP/PiOS.posix - Somebody added UAVObjects but did not add them to the posix sim
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1702 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-21 14:16:14 +00:00
peabody124
f96654ace1 Adding mixerstatus/mixersetting uavobject files that were missed
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1701 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-21 07:08:51 +00:00
les
875437f483 Added matrix based actuator mixing. Note the makefile is set to use the original actuator code.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1698 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-20 19:27:08 +00:00
zedamota
3ba6372dc4 OP-21/Flight Bootloader - Clean up and linker files for the AHRS
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1691 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-19 18:27:53 +00:00
peabody124
11f2b1a8dc Flight/Stabilization: Dont cap error at maximum stabilization value - that is to scale control throws. Create another variable if we want this.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1676 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-17 18:15:02 +00:00
andrew
da1a762072 Added basic code for Yaw stabilisation in manual mode for Helis.
This is functionally the same as having a heading hold gyro in hardware.
Code is copied from the simple stabilisation routine and is a bit rough at the minute, but initial testing looks good.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1670 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-17 05:52:34 +00:00
peabody124
41b7a99883 Flight/Stabilization: Yaw rate stabilization error should be normalized by dt
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1669 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-17 02:00:55 +00:00
zedamota
e8d6e7c557 Flight - Centralized board specific files, BL and User FW uses the same board definitions, no need to have 2.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1663 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-16 19:19:38 +00:00
peabody124
3b015b41c5 Flight: Got a much nicer arming/disarming system going. Made it a separate flag in the end to allow testing the stabilization code with motors not running. Also changes maxRoll/maxPitch/maxYaw to uint8 to keep object size smaller - no reason for float precision for this.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1660 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-16 15:41:11 +00:00
peabody124
a6e71177e4 AHRS: Yaw stabilization now supports rate stabilization or heading hold. Also need to cleanly support rate stabilization on all the other axis. Les suggested this be in manual mode which will require changing the logic somewhat (essentially for vtol it will always be running through the Stabilization module) in an aircraft dependent manner. An alternative would be a stabilization flag indicating to do full attitude hold, attitude + yaw stabilization, or all axis gyro stabilization. This would be my preference.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1659 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-16 15:41:08 +00:00
peabody124
0b8756d55c OP-148 AHRS/Comms: For now don't retransmit calibration after comms glitch as this re-zeros gyro bias and makes attitude stutter. Need to explicitly communicate when comms glitches and query if AHRS actually rebooted.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1654 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-16 05:26:12 +00:00
peabody124
885c966e53 AHRS: Added a tracker for number of ADC updates the EKF misses. Also updated the Telemetry autogenerated files to accomodate the 11500 baud rate.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1652 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-16 02:59:00 +00:00
peabody124
19e80da928 AHRS: Update UAVObject with information about AHRS rate
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1650 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-16 01:54:21 +00:00
pip
73c8194acc Added PIOS_COM_TELEM_BAUDRATE, PIOS_COM_GPS_BAUDRATE, PIOS_COM_AUX_BAUDRATE & PIOS_COM_SPEKTRUM_BAUDRATE defines in pios_board.h with '#if defines' in pios_board.c for easier baudrate changing.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1644 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-15 17:18:38 +00:00
pip
22b9b2512e Added a 115200 baud telemetry option to the OP main board/UAVTalk.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1632 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-15 14:43:42 +00:00
stac
ac6989fbeb bmp085: fix configuration of EOC interrupt
The EOC EXTI interrupt configuration was incorrectly
pointing at GPIOG pin 8 rather than GPIOC pin 15.
This was preventing the EOC interrupt from working
properly.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1626 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-15 14:20:59 +00:00
chebuzz
3b5b129445 Fix POSIX simulator to work with new VTOL UAVObjects
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1607 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-13 14:00:53 +00:00
peabody124
47a7b8548b Flight: Safety feature for VTOL. Don't enable motor until throttle brought above .5 then below or to zero.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1604 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-12 22:18:21 +00:00
peabody124
e90e714c2b Flight: Tweaked the throttle handling and VTOL use of it to make sure engines can be shut off easily in stabilization mode.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1593 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-12 02:54:49 +00:00
peabody124
5d1ebf76ea Flight/VTOLmixer: Fix bug in mixer that messed up roll mixing. Also changed minimum to -1 so that neutral can be position motors come on and -1 the off position. Also made failsafe throttle value -1 to be consistent.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1591 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-12 02:54:44 +00:00
peabody124
c376711405 Flight/Stabilization: Make the derivative account for the sampling time (dAngle/dt) for the PID loop since integral does and also make the integral bounds uavobject settings. It was originally bounded by constant/Ki but I'm not sure why as you change the gain of the error integral you also want to decrease the maximum error it can cause.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1590 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-12 02:54:41 +00:00
peabody124
8999355327 Flight: Made actuator a periodic task. I don't think the queue is low enough latency - should figure out how to make this happen as callback is the right way to go.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1589 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-12 02:54:38 +00:00
peabody124
dceb20b16d Flight: VTOLStatus object that returns the thrusts on all the engines
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1588 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-09-12 02:54:34 +00:00