source: flair-src/trunk/demos/PidStandalone/uav/src/PidUav.h

Last change on this file was 318, checked in by Sanahuja Guillaume, 2 years ago
File size: 1.1 KB
RevLine 
[44]1//  created:    2016/06/01
2//  filename:   PidUav.h
3//
4//  author:     Gildas Bayard
5//              Copyright Heudiasyc UMR UTC/CNRS 7253
6//
7//  version:    $Id: $
8//
9//  purpose:    Uav class showing the incidence of pid parameters choice
10//
11//
12/*********************************************************************/
13
14#ifndef PID_UAV_H
15#define PID_UAV_H
16
17#include <UavStateMachine.h>
18
[105]19namespace flair {
20  namespace gui {
21    class GroupBox;
22    class DoubleSpinBox;
23  }
24  namespace filter {
25    class Pid;
26  }
27  namespace sensor {
28    class TargetController;
29  }
[44]30}
31
[105]32class PidUav : public flair::meta::UavStateMachine {
33public:
34  PidUav(flair::meta::Uav *uav,
35         flair::sensor::TargetController *controller);
36  ~PidUav();
[44]37
[105]38protected:
39  void SignalEvent(Event_t event);
40  void ExtraCheckJoystick(void);
41
42private:
43  void ComputeCustomTorques(flair::core::Euler &torques);
44  bool StartCustomMode();
45  void StartOscillatingMode();
46  flair::filter::Pid *my_uPitch, *my_uRoll;
47  enum class BehaviourMode_t { Default, Oscillating };
48  BehaviourMode_t behaviourMode;
[44]49};
50
51#endif // PID_UAV_H
Note: See TracBrowser for help on using the repository browser.