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

28 Commits

Author SHA1 Message Date
James Cotton
2ccd6605a4 Now the stabilization refactor is in we can make swapping between tuning the
system in rate or attitude mode software configurable.
2012-08-03 09:37:45 -05:00
James Cotton
a9af53b4f3 Create new autotuning module which rotates through the axes for autotuning and
then computes new stabilization settings.
2012-08-03 09:37:44 -05:00
James Cotton
17a0d3ebb4 Add a relay stabilization mode 2012-08-03 09:37:44 -05:00
Oleg Semyonov
cd6387d0a6 Add support for more than 3-pos FlightMode switches
It is now possible to have 1 to 6 flight mode switch positions
(usefull for guidance, position hold and similar use).

The input channel range is divided into N (1 to 6) zones and each
zone represents a flight mode. Default is 3 zones (backward compatible),
but more can be chosen.

How to use: configure Tx mixers in a way they provide required number
of different values for the same FlightMode channel. For instance,
using Turnigy 9X radio with ER9X firmware, one can create a mixer like
this:

     -100 MAX ID0   Manual
   R  -50 MAX ID1   Stabilized1 (Rate)
   R    0 MAX ID2   Stabilized2 (Attitude)
   R   50 MAX RUD   PositionHold
   R  100 MAX ELE   ReturnToBase

And set number of flight mode positions to 5. As a result, the 3-pos
switch (ID0, ID1, ID2) will provide first three flight modes, the rudder
D/R switch will override those and enable the 4th flight mode, and
elevator D/R switch will have highest precedence and activate the 5th
flight mode.

This will change the ManualControlSettings objectID.
2012-06-23 22:10:19 +03:00
James Cotton
bda3f301cb Rename VBar mode to VirtualBar 2012-06-04 12:22:39 -05:00
James Cotton
1b55df733d Create virtual flybar setting for stabilization modes 2012-06-04 12:22:38 -05:00
James Cotton
3155324384 Merge branch 'next' into cc3d
Conflicts:
	Makefile
	ground/openpilotgcs/src/plugins/config/configahrswidget.cpp
	shared/uavobjectdefinition/ahrscalibration.xml
	shared/uavobjectdefinition/ahrssettings.xml
	shared/uavobjectdefinition/attituderaw.xml
2012-05-03 16:31:49 -05:00
Brian Webb
eb6f175af4 Fixed metadata settings in object browswer, and removed update mode never from all uavobjects that used it (changed to manual). 2012-04-21 11:59:14 -07:00
Oleg Semyonov
912bea559f Add stick deadband option for Roll/Pitch/Yaw inputs to firmware 2012-01-15 21:13:22 +02:00
James Cotton
ef05cafaca Merge branch 'revolution' into altitudehold
Conflicts:
	flight/Libraries/insgps13state.c
	flight/OpenPilot/Makefile
	ground/openpilotgcs/src/plugins/uavobjects/uavobjects.pro
2012-01-01 10:50:35 -06:00
Oleg Semyonov
0116e6a007 spektrum: rework DSM2/DSMJ/DSMX driver for explicit DSMX resolution support
- both CC serial ports are now disabled by default (no telemetry);
- serial ports now have DSM2, DSMX (10bit) and DSMX (11bit) options;
- ReceiverGroups now have DSM (MainPort) and DSM (FlexiPort) options.

For DSM2 protocol there is an explicit resolution bit in the stream, so
the DSM2 should be selected. For DSMX there is no such bit, and user
should choose the resolution from the list configuring the spektrum port.
ReceiverGroups have single DSM option which is handled by the same driver.

Downside: this implementation saves received frame first, unrolls by the
end of frame. This should be ok, but may be improved by unrolling channels
on the fly in the rx callback.

Another minor difference is that a ChannelGroup is now bound to port:
DSM (MainPort) or DSM (FlexiPort). This was considered as acceptable
solution in order to not have 6 DSM options for each ChannelGroup and
even more in case of new DSM protocol variations.

Known problem: it is not possible to choose same protocols like
DSM2/DSM2 for two ports. It can be enabled by adding an exception to
common rule, though.

The DSMX throttle channel misbehavior (zero value) is not treated
specially yet. It should trigger the failsafe being out of bounds.
More info and data dumps are required to handle this properly.
2011-10-30 19:29:03 +02:00
James Cotton
1783817b96 INS: First pass at altitude hold code 2011-09-13 01:44:53 -05:00
James Cotton
1a5fd9f30e Heli: Added an explicit collective channel. Also make the default channel
number 0 since that is not invalid.
2011-09-07 01:48:39 -05:00
James Cotton
8c91522e54 UAVO: Reorder field names of ManualControlSettings which affects the order of
channels listed in the UI configuration.  This keeps it consistent with the
previous releases.
2011-09-06 16:42:03 -05:00
Stacey Sheldon
06cdeb7b61 rcvr: support multiple simultaneous receivers
Now also supports multiple instances of the Spektrum driver.
These are configured as Spektrum1 and Spektrum2.
2011-08-02 01:22:04 -04:00
Stacey Sheldon
829b8b83f6 rcvr: Add GCS receiver driver for rcvr via telemetry
This allows the GCS to emulate a receiver device via the
telemetry link.

Select "GCS" as your input type in the manualcontrol config
screen and calibrate it as normal.

Note: The expected values for the channels are in microseconds
      just like a PWM or PPM input device.  The channel values
      are validated against minimum/maximum pulse lengths just
      like normal receivers.
2011-08-02 01:22:04 -04:00
James Cotton
53ca934b2b Merge branch 'heli_stabilization'
Conflicts:
	flight/CopterControl/System/inc/pios_config.h
	flight/Modules/Attitude/attitude.c
	flight/Modules/ManualControl/manualcontrol.c
	flight/Modules/Stabilization/stabilization.c
2011-07-12 13:28:20 -05:00
Stacey Sheldon
a8787ee015 bootcfg: Add support for selecting S.Bus receivers in inputtype 2011-07-06 22:38:23 -04:00
James Cotton
ad8876c62a OP-193: Weak leveling variant on rate mode. Slowly will return to level. 2011-07-04 20:44:55 -05:00
James Cotton
c0eff41dc6 OP-410 OP-333: Created an Axis-lock setting for stabilization 2011-06-24 10:38:26 -05:00
Oleg Semyonov
f766642f0d Merge branch 'master' into heli_improvements
Conflicts:
	shared/uavobjectdefinition/manualcontrolsettings.xml
2011-06-09 10:11:27 +03:00
James Cotton
99b3a629a8 OP-493: Force three AccessoryDesired objects to always exist. Routing to
Mixing channel now works.  However Accessory desired instances do not show up
in GCS.
2011-06-05 15:38:58 -05:00
James Cotton
483deb2bfc Changed the default values for manual control settings to none to avoid
problems with channel mappings being different by brand.

You will need to recalibrate your transmitter.
2011-06-05 11:01:00 -05:00
peabody124
16723fbdf9 Change default yaw mode to rate
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3076 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-26 11:40:07 +00:00
peabody124
3b13ad6859 OP-329: Enumerate more possible flight modes now like multiple stabilization
modes so that the FlightMode field is complete in terms of being informative
enough

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2935 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-02 01:25:44 +00:00
loris
6e942d786a OP-316 UAVObject Fix typo, indents, units, default values
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2896 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-27 00:38:59 +00:00
FredericG
d7fc7646b0 OP-246 UAVOBJ CHANGE - Setting to disable arming/disarming
options="Always Disarmed,Always Armed,Roll Left,Roll Right,Pitch Forward,Pitch Aft,Yaw Left,Yaw Right" defaultvalue="Always Disarmed"

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2744 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-06 16:16:20 +00:00
stac
5e6d87b2db UAVObjects-xml: Move UAVObject definitions outside of gcs dir
The UAVObject definition (.xml) files are used by both the
GCS build as well as the flight software builds.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2526 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-22 17:38:43 +00:00