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

Dependencies:   CruizCore_R1370P

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

Revision:
0:3d9101dd0061
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/PathFollowing1.h	Wed Oct 31 09:56:08 2018 +0000
@@ -0,0 +1,50 @@
+#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
\ No newline at end of file