Joseph Roberts / Mbed 2 deprecated Quadcopter_mk2

Dependencies:   mbed MODSERIAL filter mbed-rtos ConfigFile PID PPM FreeIMU_external_magnetometer TinyGPS

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers AltitudeController.h Source File

AltitudeController.h

00001 #ifndef AltitudeController_H
00002 #define AltitudeController_H
00003 
00004 #include "mbed.h"
00005 #include "Global.h"
00006 #include "PidWrapper.h"
00007 #include "Sensors.h"
00008 #include "ConfigFileWrapper.h"
00009 #include "Status.h"
00010 
00011 class AltitudeController               
00012 {
00013   public:                  
00014     AltitudeController(Sensors& sensors, ConfigFileWrapper& configFileWrapper, Status& status); 
00015     ~AltitudeController();
00016     
00017     double compute(double targetAltitude, double climbRate);
00018     void reset();
00019     void setAltitudeRatePidParameters(PidWrapper::PidParameter pidParameters);
00020     void setAltitudeStabPidParameters(PidWrapper::PidParameter pidParameters);
00021     PidWrapper::NavigationControllerPidParameters getPidParameters();
00022     
00023   private:
00024     Sensors& _sensors;
00025     ConfigFileWrapper& _configFileWrapper;
00026     Status& _status;
00027     Sensors::Altitude _altitude;
00028     PidWrapper _altitudeRatePidController;
00029     PidWrapper _altitudeStabPidController;
00030 };
00031 
00032 #endif