From b7c3b1fdd183b93fbff7b4631efb1b57cc5c3d9d Mon Sep 17 00:00:00 2001 From: James Cotton Date: Sat, 14 Apr 2012 14:01:42 -0500 Subject: [PATCH] Make the simulation provide GPSVelocity object since this is critical for EKF now --- flight/Modules/Sensors/simulated/sensors.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/flight/Modules/Sensors/simulated/sensors.c b/flight/Modules/Sensors/simulated/sensors.c index d660419ec..50e79c336 100644 --- a/flight/Modules/Sensors/simulated/sensors.c +++ b/flight/Modules/Sensors/simulated/sensors.c @@ -59,6 +59,7 @@ #include "gyrosbias.h" #include "flightstatus.h" #include "gpsposition.h" +#include "gpsvelocity.h" #include "homelocation.h" #include "magnetometer.h" #include "ratedesired.h" @@ -100,6 +101,7 @@ int32_t SensorsInitialize(void) GyrosInitialize(); GyrosBiasInitialize(); GPSPositionInitialize(); + GPSVelocityInitialize(); MagnetometerInitialize(); RevoCalibrationInitialize(); @@ -467,6 +469,13 @@ static void simulateModelQuadcopter() gpsPosition.PDOP = 1; GPSPositionSet(&gpsPosition); last_gps_time = PIOS_DELAY_GetRaw(); + + GPSVelocityData gpsVelocity; + GPSVelocityGet(&gpsVelocity); + gpsVelocity.North = vel[0] + gps_vel_drift[0]; + gpsVelocity.East = vel[1] + gps_vel_drift[1]; + gpsVelocity.Down = vel[2] + gps_vel_drift[2]; + GPSVelocitySet(&gpsVelocity); } // Update mag periodically