Six crescent shaped legs

Dependencies:   mbed

PIDController.hpp

Committer:
sim642
Date:
2016-06-21
Revision:
47:4f418a4b0051
Parent:
13:dc5f5f19e4e8

File content as of revision 47:4f418a4b0051:

#ifndef PID_CONTROLLER_H
#define PID_CONTROLLER_H

#include "ErrorController.hpp"
#include "mbed.h"

struct PIDData
{
    float Kp, Ki, Kd;
};

class PIDController : public ErrorController
{
public:
    PIDController(PIDData nData);
    virtual ~PIDController();

    virtual void reset();
    virtual float step(float error);

    void set(PIDData nData);

protected:
    PIDData data;

private:
    Timer timer;

    float prev_error;
    float integral;
};

#endif // PID_CONTROLLER_H