unit test for brushless motors using a potentiometer and a castle creations esc with 0.5 center duty cycle

Dependencies:   ESC Servo mbed

Fork of brushlessmotor by jetfishteam

Committer:
rkk
Date:
Fri Feb 26 14:35:02 2016 +0000
Revision:
3:605f216167f6
Parent:
2:040b8c8f4f92
brushless test program

Who changed what in which revision?

UserRevisionLine numberNew contents of line
demaille 0:187bb46ed128 1 #ifndef MBED_MAINCONTROLLER_H
demaille 0:187bb46ed128 2 #define MBED_MAINCONTROLLER_H
demaille 0:187bb46ed128 3
demaille 0:187bb46ed128 4 #include "mbed.h"
demaille 0:187bb46ed128 5 #include "esc.h"
demaille 0:187bb46ed128 6
demaille 0:187bb46ed128 7 #define MATH_PI 3.14159265359
demaille 2:040b8c8f4f92 8 #define TOFF 0.03
demaille 0:187bb46ed128 9 class MainController {
demaille 0:187bb46ed128 10 public:
demaille 0:187bb46ed128 11 /** Create a MainController
demaille 0:187bb46ed128 12 *
demaille 0:187bb46ed128 13 * @param
demaille 0:187bb46ed128 14 */
demaille 0:187bb46ed128 15 MainController() ;
demaille 0:187bb46ed128 16
demaille 0:187bb46ed128 17 /** Start the main controller
demaille 0:187bb46ed128 18 * @returns
demaille 0:187bb46ed128 19 */
demaille 0:187bb46ed128 20 void start();
demaille 0:187bb46ed128 21 float getDutyCycle();
demaille 0:187bb46ed128 22 float getAmplitude();
demaille 0:187bb46ed128 23
demaille 0:187bb46ed128 24 /** Stop the main controller
demaille 0:187bb46ed128 25 * @returns
demaille 0:187bb46ed128 26 */
demaille 0:187bb46ed128 27 void stop();
demaille 0:187bb46ed128 28
demaille 0:187bb46ed128 29 protected:
demaille 0:187bb46ed128 30 void control();
demaille 0:187bb46ed128 31 //float calculateAdj();
demaille 0:187bb46ed128 32 float signum(float input);
demaille 0:187bb46ed128 33 float saturate(float input);
demaille 0:187bb46ed128 34
demaille 0:187bb46ed128 35 private:
demaille 0:187bb46ed128 36 ESC esc1;
demaille 0:187bb46ed128 37
demaille 0:187bb46ed128 38 Timer timer1;
demaille 0:187bb46ed128 39 Ticker ticker1;
demaille 0:187bb46ed128 40 float amp;
demaille 0:187bb46ed128 41 float dutyCycle;
demaille 0:187bb46ed128 42 float curTime;
demaille 0:187bb46ed128 43 float frqMin;
rkk 3:605f216167f6 44 float frqMax;
rkk 3:605f216167f6 45 PwmOut myled;
rkk 3:605f216167f6 46 AnalogIn mypotentiometer;
demaille 0:187bb46ed128 47
demaille 0:187bb46ed128 48 };
demaille 0:187bb46ed128 49
demaille 0:187bb46ed128 50 #endif