s-shape control
proto01.h
- Committer:
- piroro4560
- Date:
- 2019-09-27
- Revision:
- 5:b257821e4713
- Parent:
- 4:40c5ac00bb5b
File content as of revision 5:b257821e4713:
#ifndef PROTO01_H #define PROTO01_H #define PI 3.141592653589793238462643383219502884 #include "mbed.h" /** * S字制御クラス */ class Proto1 { public: /** * コンストラクタ * @param accdis_ 加速距離 * @param decdis_ 減速距離(誤差あり。大きめに調整すると良い) * @param maxspeed_ 最大速度(?) */ Proto1(double accdis_, double decdis_, double maxspeed_, double s_vector_); /** * 目標点を設定する * @param target_ 目標点 * @param start_ 開始地点 */ void target(double target_, double start_); /** * xy座標で目標点を設定する * @param targetx_ 目標点のx座標 * @param targety_ 目標点のy座標 * @param startx_ 開始地点のx座標 * @param starty_ 開始地点のy座標 */ void targetXY(int targetx_, int targety_, int startx_, int starty_); /** * 現在地点を入力 * @param now_ 現在地点 */ void Input_now(double now_); /** * 現在地点を入力 * @param now_x 現在地点のx座標 * @param now_y 現在地点のy座標 */ void Input_nowXY(int now_x, int now_y); /** * S字に変化する速度を計算 */ void calculate(); /** * x方向のベクトルを返す */ double getvalue_x(); /** * y方向のベクトルを返す */ double getvalue_y(); /** * そのまま返す */ double getvalue(); double accdis; double decdis; double accdis2; double decdis2; double accsec; double decsec; double maxspeed; double maxspeed2; double s_vector; double vector; double startx; double starty; double start; double nowx; double nowy; double now; double targetDis; double targetRad; double targetx; double targety; double nowDis; //consdis : 一定速度で走るところ double consdis; double counter; }; #endif