1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-13 20:48:42 +01:00
Commit Graph

36 Commits

Author SHA1 Message Date
peabody124
5f9289f0c0 Flight: Keep getting WMM memory usage down
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1438 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-27 21:05:38 +00:00
peabody124
16361dea12 AHRS: Making AHRS populate the NED/Vel fields of PositionActual. May rename object to PositionVelocityActual. Also created a GPSTime object which is populated from the GPRMC command. Also added a GPZDA parsing command, but by default OP GPS doesn't send this command. Made the computation of the world magnetic model use the current time to set the magnetic vector. Note: currently if you set your home location and save it to SD, this will not recompute the vector over time. I'm not sure how sensitive this is.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1435 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-27 19:59:25 +00:00
stac
24a4c6b791 gps: Update GPSPosition instead of PositionActual
GPS module now updates GPSPosition UAVObject
rather than the PositionActual object.  The
GPSPosition object is intended to be consumed
only by the AHRS.  The AHRS will use this (and
other inputs) to compute a filtered version of
the position in the PositionActual object.

This commit will cause temporary breakage of the
GPS functionality in the GCS until the PositionActual
object is properly updated by the AHRS.  Most of the
GCS should continue to use PositionActual.  The only
exception to this might be any tool for specifically
visualizing the raw GPS state.

GPS.c is now only responsible for receiving a
complete NMEA sentence from the COM interface.

NMEA parsing is now factored out into NMEA.[ch]
which is where GPSPosition is now updated based
on the complete NMEA sentences obtained from the
GPS.

Latitude and Longitude are now encoded in a
fixed-point notation in units of degrees x 10^-7
to prevent truncation of precision due to encoding
into a float.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1431 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-27 02:15:00 +00:00
peabody124
2db294caf7 OP-125 Flight: Changed GPS stack size to a bit closer to what the internal model needs to get rid of out of memory warning, but it could still use 1k less if it pulled all the constants from flash when needed and computed the time difference when called. Also changed ManualControl so it checks the active control values to determine the warning, so if GCS is controlling the warning light goes out.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1387 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-23 06:03:19 +00:00
peabody124
b32184d1ec OP-119 Flight: Converted HomeLocation object to use cm for the home base instead of floating point.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1382 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-23 02:49:53 +00:00
peabody124
2e705e6836 OP-116 AHRS: Made data going to the AHRS in NED format. Once the final estimate object is created I'll repeat the same calculation to populate it, although we want to avoid going back to LLA format on the OP because the CPU requirements are excessive.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1376 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-22 19:01:36 +00:00
stac
a960d6e1b1 GPS: fix typo desimal->decimal throughout
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1352 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-21 16:19:12 +00:00
peabody124
bb79ba66fa OP-119 AHRS: Converted the big data structures for the WMM calculation to be allocated on the stack, which forced a dependency on FreeRTOS :-( but keeps things on the heap. Also changed the HomeLocation object to include a Set field. When this is false, OP will try and update it whenever it gets a 3D fix. If it is saved to disk with this field as true, then it won't need to get a lock to send the magnetic flux vector to the AHRS.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1346 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-21 08:35:44 +00:00
peabody124
4b0a0236d8 OP-119 AHRS: Increased GPS stack size to allow WWM to not overwrite other memory. In addition converted all the calls to use pointers so I will switch to using pvPortMalloc vPortFree to get it off the stack entirely. Now correctly computing flux for me and running.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1345 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-21 08:35:41 +00:00
peabody124
2031cfe4d0 OP-119 AHRS: Added error counters for the messages as well as changed an error on AHRS echo back for the HomeLocation message.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1344 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-20 22:52:13 +00:00
peabody124
86766ecc14 OP-119 AHRS: Removed WMM computation for now because it was triggering a reset (probably not watchdog) which is weird - it worked on AHRS. Maybe running out of memory? Also added the break on comm error in ahrs_comms to resync with it. I think the message to send the home location is also not working right now. Fixed chip reset.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1340 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-20 14:48:02 +00:00
peabody124
ef0b307353 [OP-119] Flight/AHRS: Created a HomeLocation object which is updated when the GPS gets an initial 3D fix and populated with the information to convert from LLA from the GPS to NED reference frame. Also added a message for passing the MagneticNorth vector to the AHRS and removed that computation from AHRS.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1337 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-19 20:38:27 +00:00
peabody124
d928676f5e More documentation updates, standardizing format to include addtogroup at the beginning of headers so files are associated with modules
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1121 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-07-16 19:53:35 +00:00
peabody124
1cd81e211f Added Doxygen comments for OpenPilot modules
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1101 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-07-16 01:02:34 +00:00
sambas
9003cd8eca OP-97 flight/GPS: GeoidSeparation added, need to think that precision problem
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1056 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-07-10 07:27:07 +00:00
stac
771a56ca9d com/usart: generalize com driver API
- Created a pluggable COM layer
- Converted COM + USART init into static initializers
  rather than typedefs
- Generalized the USB HID COM API to match the USART
  API.
- Changed USART and COM layers to be data driven rather
  than #ifdef'ing/switching on the specifics of each port

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@760 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-06-13 04:24:26 +00:00
vassilis
eaa9d97939 Flight/GPS Renamed GPSObject to PositionActual and implemented field for GPS status (NoGPS, NoFix, Fix2D and Fix3D)
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@734 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-06-10 01:28:06 +00:00
FredericG
8a7eba0675 List of modules in Makefile - Automatic init of included modules
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@716 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-06-05 15:17:31 +00:00
stac
e2721136ae GPS: fix buffer overrun in nmeaProcess()
nmeaProcess was attempting to null-terminate the
NMEA sentence but was not considering that the
preceeding loop may have looped beyond the end
of the packet buffer.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@709 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-06-03 13:58:18 +00:00
sambas
c53aa219d5 OP-25 Flight/GPS: Speed from knots to m/s
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@691 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-05-30 18:09:37 +00:00
sambas
4f4391708e OP-25 Flight/GPS: Heading and GroundSpeed used, speed in knots?
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@687 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-05-30 06:31:58 +00:00
sambas
ebff9f3638 OP-25 Flight/GPS: New GPS fields in use
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@665 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-05-25 05:32:43 +00:00
sambas
ec40618664 OP-25 Flight/GPS: Optimized GPS, buffer overflow fixed, RMC sentence handler
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@660 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-05-24 19:49:37 +00:00
sambas
b7601c9765 OP-25 Flight/GPS: changes for OPGPS
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@639 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-05-18 12:49:47 +00:00
sambas
b8b5bffe4d OP-25 Flight/GPS: using strsep instead of strtok_r (thanks for the hint PeterG). Prepared for GPGSA.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@535 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-21 09:56:23 +00:00
sambas
923ee3ccaf OP-25: gpsinfo removed, cleaned things up.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@522 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-18 07:37:55 +00:00
vassilis
40beb15129 OP-4 Flight/System Created CPU utilization measurement and created object to report system information (load, heap and time)
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@519 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-18 02:13:59 +00:00
sambas
6c4cd936e5 OP-25: GPS Objects working. You need to raise configTOTAL_HEAP_SIZE in FreeRTOSConfig.h if all tasks enabled.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@514 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-17 08:49:19 +00:00
vassilis
5889849060 OP-4 Flight/Telemetry Various bug fixes while testing telemetry (working but not fully tested)
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@500 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-15 02:15:46 +00:00
sambas
23aa2ea1cd OP-25: lat, lon and alt to float, lat and lon to desimal degrees format
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@435 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-07 08:02:44 +00:00
vassilis
b00ab0e2ee Flight/UAVObject: Added support for periodic queue events (in addition to callbacks), removed unused functions in GPS module
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@425 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-04-05 00:59:51 +00:00
sambas
066f42a2c5 OP-25: simplified gps structure
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@404 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-03-28 14:36:18 +00:00
sambas
3656caccbb Checksum check for nmea sentences
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@399 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-03-27 13:13:39 +00:00
sambas
9490bcdb93 OP-25: GPS tested and working, using TrimbleGPS 5Hz, 5 lat/lon desimals
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@386 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-03-25 19:36:52 +00:00
sambas
dad62c3316 Reworked the nmea sentence parser, most values still in string form
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@356 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-03-21 11:32:53 +00:00
sambas
22698313fc OP-25: preliminary GPS module, needs some cleaning. I'll start testing when I get HW ready.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@351 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-03-20 15:45:15 +00:00