DC motor control program using TA7291P type H bridge driver and rotary encoder with A, B phase.

Dependencies:   QEI mbed-rtos mbed

Fork of DCmotor by manabu kosaka

Revision:
14:02411880ffb9
Parent:
13:ba71733c11d7
--- a/controller.h	Fri Mar 01 02:10:59 2013 +0000
+++ b/controller.h	Tue Mar 12 04:32:22 2013 +0000
@@ -16,7 +16,7 @@
 #define CH_B    p30         // B相用ポート   A phase port
 
     // タイマーのサンプル周期等
-//#define PWM_FREQ 20000.0   // [Hz], PWMチョッピング周波数  pwm freq. (> 1/(DEAD_TIME*10))
+//#define PWM_FREQ 10000.0   // [Hz], PWMチョッピング周波数  pwm freq. (> 1/(DEAD_TIME*10))
 //#define DEADTIME 0.0001    // [s], デッドタイム(モータに加える電圧の正負が変わるときに上下アーム短絡を避けるために同時オフする時間)  // [s], deadtime to be set between plus volt. to/from minus
 #define TS0     0.002      // [s], timerTS0のサンプル時間(電流制御用)   sampling time (priority highest: Ticker IRQ) of motor current i control PID using timer interrupt
 #define TS1     0.002      // [s], timerTS1のサンプル時間(位置制御用)   sampling time (priority high: RtosTimer) of motor angle th PID using rtos-timer
@@ -44,10 +44,10 @@
 #else                       // 電流制御なしのとき
  #define wKp 0.05               // [A/(rad/s)], 速度制御PIDのPゲイン
  #define wKi 0.5//2.50          // [A/(rad/s) s], 速度制御PIDのIゲイン
- #define wKd 0                  // [A/(rad/s)/s], 速度制御PIDのDゲイン
+ #define wKd 0.0005                // [A/(rad/s)/s], 速度制御PIDのDゲイン
 #endif
 #define iLPF   0.95         // 0-1, 速度に対する1次LPFの強さ; Low Pass Filter, G(z)=(1-a)/(z-a)
-#define iMAX   3.3          // [A], 電流指令の最大値
+#define iMAX   1.0//3.3          // [A], 電流指令の最大値
 
 #define DA_PORT p18         // デバッグ用DAポート   analog out (DA) port of mbed
 /*********** 使用するポートやサンプル時間、制御ゲインなどの設定 (ここから) ***************/