picontroller.h

00001 /***************************************************************************
00002                           picontroller.h  -  description
00003                              -------------------
00004     begin                : Mon Feb 25 2002
00005     copyright            : (C) 2002 by Axel Schneider, Daniel Westhoff
00006     email                : axel.schneider@uni-bielefeld.de,
00007                                                                                                          daniel.westhoff@uni-bielefeld.de
00008  ***************************************************************************/
00009 
00010 
00011 #ifndef PICONTROLLER_H
00012 #define PICONTROLLER_H
00013 
00014 #include <sys/time.h>
00015 
00020 class PIController {
00021 
00022 
00023 
00024 public:
00025         virtual ~PIController();
00032    PIController(const double kr, const double tr);
00036   double step(const double xDesired, const double xNow);
00040   void setIFade(const double iFade);
00044   void setKr(const double kr);
00048   void setTr(const double tr);
00052   void setPFade(const double pFade);
00053         
00054 
00055 
00056 private: // Private methods
00060    PIController();
00061 
00062 
00063 
00064 private: // Private attributes
00068   double _kr;
00072   double _tr;
00076   double _tSample;
00080   timeval _start;
00084   timeval _stop;
00088   double _xdk;
00092   double _xdkOld;
00096   double _yk;
00100   bool _firstRun;
00104   double _pFade;
00108   double _iFade;
00109 };
00110 
00111 #endif


tams Tim Baier bhandlib v0.25
Generated Wed Aug 16 14:57:09 2006 by doxygen 1.4.7