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

Last change on this file since 44 was 44, checked in by Bayard Gildas, 5 years ago

Demo Pid et controller automatique scripté

File size: 1.3 KB
Line 
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
19namespace framework {
20    namespace core {
21        class FrameworkManager;
22        class cvmatrix;
23    }
24    namespace gui {
25        class GroupBox;
26        class DoubleSpinBox;
27    }
28    namespace filter {
29        class Pid;
30    }
31    namespace sensor {
32        class TargetController;
33    }
34}
35
36class PidUav : public framework::meta::UavStateMachine {
37    public:
38        PidUav(framework::meta::Uav* uav, framework::sensor::TargetController *controller);
39        ~PidUav();
40
41    protected:
42        void SignalEvent(Event_t event);
43        void ExtraCheckJoystick(void);
44    private:
45        void ComputeCustomTorques(framework::core::Euler &torques);
46        bool StartCustomMode();
47        void StartOscillatingMode();
48        framework::filter::Pid *my_uPitch,*my_uRoll;
49        enum class BehaviourMode_t {
50            Default,
51            Oscillating
52        };
53        BehaviourMode_t behaviourMode;
54};
55
56#endif // PID_UAV_H
Note: See TracBrowser for help on using the repository browser.