update with altimeter, swimfile.txt endleg.txt, etc see changes_13sep.txt also reset_PI()
Dependencies: mbed MODSERIAL FATFileSystem
OuterLoop/OuterLoop.hpp
- Committer:
- danstrider
- Date:
- 2017-10-27
- Revision:
- 11:3b241ecb75ed
- Parent:
- 10:085ab7328054
File content as of revision 11:3b241ecb75ed:
#ifndef OUTERLOOP_HPP #define OUTERLOOP_HPP #include "mbed.h" #include "PidController.hpp" #include "PosVelFilter.hpp" // This class is an outer loop controller with its own instance of a position velocity filter. class OuterLoop { public: OuterLoop(float interval, int sensor); // functions for setting up void init(); void update(); void start(); void stop(); // setting and getting variables void setCommand(float cmd); float getCommand(); float getOutput(); float getPosition(); float getVelocity(); void setControllerP(float P); float getControllerP(); void setControllerI(float I); float getControllerI(); void setControllerD(float D); float getControllerD(); void setTravelLimit(float limit); float getTravelLimit(); void setFilterFrequency(float frequency); float getFilterFrequency; void setDeadband(float deadband); bool toggleDeadband(bool toggle); void setOutputOffset(float offset); float getOutputOffset(); protected: PosVelFilter _filter; PIDController _pid; Ticker _pulse; void refreshPVState(); float _SetPoint; float _sensorVal; // position and velocity in raw units float _position; float _velocity; // setup parameters float _Pgain; float _Igain; float _Dgain; float _dt; float _filterFrequency; float _deadband; char _sensor; float _offset; }; #endif