春ロボ2019 経路追従プログラム(ver.2)

Dependencies:   CruizCore_R1370P

Fork of PathFollowing1 by 春ロボ1班(元F3RC4班+)

PathFollowing1.h

Committer:
yuki0701
Date:
2018-10-31
Revision:
1:9858517eef98
Parent:
0:3d9101dd0061

File content as of revision 1:9858517eef98:

#ifndef HARUROBO2019_PATHFOLLOWING_H
#define HARUROBO2019_PATHFOLLOWING_H
#include <EC.h>
#include <R1370P.h>

class pathfollowing1 : public Ec
{
private:
    double p_out,r_out;
    double Kvq_p,Kvq_d,Kvr_p,Kvr_d;
    double diff,diff_old,diffangle,diffangle_old;
    double out_dutyQ,out_dutyR;
    double now_angle,target_angle;
    double now_timeQ,old_timeQ,now_timeR,old_timeR;
    
protected:

public:



double now_x, now_y;

void XYRmotorout(double plot_x1, double plot_y1, double plot_x2, double plot_y2, double *ad_x_out, double *ad_y_out, double *ad_r_out);
//出発地点、目標地点の座標から機体のx軸方向、y軸方向、旋回の出力を算出する関数
/*
 *⒈main分内でx_out,y_out,r_outをdouble型で定義
 *⒉XYRmotorout関数使用時は、num番目のx、y座標、num+1番目のx,y座標に加えx_out,y_out,r_outのアドレス(&x_out,&y_out,&r_out)を渡す→(XYRmotorout(num,&x_out,&y_out,&r_out))
*/



void set_p_out(double p);
//ベクトルABに平行方向の出力値設定関数

void q_setPDparam(double q_p,double q_d);
//ベクトルABに垂直な方向の誤差を埋めるPD制御のパラメータ設定関数 

void r_setPDparam(double r_p,double r_d);
//機体角度と目標角度の誤差を埋めるPD制御のパラメータ設定関数

void set_r_out(double r);
//旋回時の最大出力値設定関数

void set_target_angle(double t);
//機体目標角度設定関数


};
#endif