ti bisogna il phaserunner

Dependencies:   mbed PID mbed-rtos

Revision:
8:1655d27152e6
Parent:
7:15e6fc689368
Child:
9:56aed8c6779f
--- a/Peripherien/Regler.h	Thu May 16 20:42:39 2019 +0000
+++ b/Peripherien/Regler.h	Fri May 17 14:35:54 2019 +0000
@@ -7,6 +7,7 @@
 
 #include "Phaserunner.h"
 #include "Encoder.h"
+#include "PID.h"
 
 class Regler{
 private:
@@ -16,6 +17,9 @@
     Phaserunner& linkspedal;
     Phaserunner& rechtspedal;
     
+    // PID Regler
+    PID          pid;
+    
     //Encoder
     Encoder&     encoder;
 
@@ -31,6 +35,18 @@
     // Ticker
     Ticker ticker;
     
+    // Ellipse Parameters
+    float a_,b_,beta_;
+    
+    // Regler Parameters Pedale
+    float Kp_,Ki_,Ts_,setPoint_;
+    
+    // Ergometer Stufe (von 1 bis 10)
+    float ErgoStufe_;
+    
+    // Pedelec Values
+    float PedStufe_, PedFactor_; 
+    
     const static float PI = 3.14159265;
 
 
@@ -86,6 +102,46 @@
      * @param recuperation
      */
     void setRecuperationPedals(uint8_t recuperation);
+    
+    /**
+     * Setzt die Ellipse Parameters
+     * @param a
+     * @param b
+     * @param beta
+     */
+    void setEllipseParameters(float a, float b, float beta);
+    
+    /**
+     * Setzt die PI Regler Parameters
+     * @param Kp
+     * @param Ki
+     * @param Ts in s
+     */
+    void setReglerParameters(float Kp, float Ki, float Ts);
+    
+    /**
+     * Setzt die PI Regler Setpoint
+     * @param SetPoint
+     */
+    void setReglerSetPoint(float Setpoint);
+    
+    /**
+     * Setzt die Ergometer schwirichkeit Stufe
+     * @param ErgoStufe
+     */
+    void setErgoStufe(float ErgoStufe);
+    
+    /**
+     * Setzt die Pedelec schwirichkeit Stufe
+     * @param ErgoStufe
+     */
+    void setPedStufe(float PedStufe);
+    
+    /**
+     * Setzt die Pedelec Factor
+     * @param PedFactor
+     */
+    void setPedFactor(float PedFactor);
 };
 
 #endif //PA_REGLER_H