first
Dependents: 17robo_fuzi 17robo_tokyo_kaede
Diff: pid_encoder.h
- Revision:
- 1:0c64de09bd9b
- Parent:
- 0:929eee8e2c2c
--- a/pid_encoder.h Sun Sep 24 05:24:06 2017 +0000 +++ b/pid_encoder.h Wed Sep 27 08:58:30 2017 +0000 @@ -1,4 +1,48 @@ - +/* +[Encorder] + **PositionPidを継承しているバージョン + **エンコーダICからの出力を読み取りPprを指定することで, pulse, deg, rad, 回転数などを出力 + **ターゲット角度を指定することでPID制御を通した出力値(-1.0~0.0~1.0)出力できる + +[Public Member Functions] + Encoder (PinName A_Phase, PinName B_Phase); + **<Create> 宣言 + + void setup(float Kp, float Ki, float Kd, float dt); + **PIDのパラメータを設定 + + void cal(float target, float dt); + **calを行うことでデータを更新できる + + float duty(); + **PID計算を行ったモーターへの出力値(-1.0~1.0)を出力 + + float duty_enableWidth(float duty_min, float duty_max); + **PID計算を行ったモーターへの出力値(-1.0~1.0)を出力 + **引数でduty値を0と基準としたときの前後を指定することで、ストールさせないようにする + + void setPpr(int Ppr); + **エンコーダのPPRを指定 + + float deg(); + **設定したPPRに基づきdegを出力 + + float get_deg_cylinder(); + **cylinder用のdegを出力 //基本的に17roboの大会用 + + float rad(); + **設定したPPRに基づきradを出力 + + int pulse(); + **設定したPPRに基づきradを出力 + + float N(); + **設定したPPRに基づき回転数を出力 + + void origin(); + **エンコーダ読み取り数を原点に指定する + */ + #ifndef MBED_PID_ENCORDER_H #define MBED_PID_ENCORDER_H