春ロボ1班(元F3RC4班+) / PathFollowing1-ver4

Dependencies:   CruizCore_R1370P

Dependents:   harurobo-XYRmotorout-ver2

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

Files at this revision

API Documentation at this revision

Comitter:
yuki0701
Date:
Thu Nov 01 03:40:05 2018 +0000
Parent:
2:cd72726e166f
Commit message:
a;

Changed in this revision

PathFollowing1.cpp Show annotated file Show diff for this revision Revisions of this file
PathFollowing1.h Show annotated file Show diff for this revision Revisions of this file
--- a/PathFollowing1.cpp	Thu Nov 01 03:03:45 2018 +0000
+++ b/PathFollowing1.cpp	Thu Nov 01 03:40:05 2018 +0000
@@ -3,12 +3,21 @@
 #include <math.h>
 
 
-namespace{
+
     R1370P gyro(PC_6,PC_7);
-    }
+    Timer timer; 
+    
+    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;
+    double now_x, now_y;
+    
 
 //初期座標:A, 目標座標:B、機体位置:C、点Cから直線ABに下ろした垂線の足:H
-void pathfollowing1::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){ //プログラム使用時、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){ //プログラム使用時、now_x,now_yはグローバル変数として定義する必要あり
 
     double Vector_P[2] = {(plot_x2 - plot_x1), (plot_y2 - plot_y1)}; //ベクトルAB
     double A_Vector_P = hypot(Vector_P[0], Vector_P[1]); //ベクトルABの大きさ(hypot(a,b)で√(a^2+b^2)を計算できる <math.h>))
@@ -62,25 +71,25 @@
 
 
     
-void pathfollowing1::set_p_out(double p){ //ベクトルABに平行方向の出力値設定関数
+void set_p_out(double p){ //ベクトルABに平行方向の出力値設定関数
     p_out = p;
     }
     
-void pathfollowing1::q_setPDparam(double q_p,double q_d){ //ベクトルABに垂直な方向の誤差を埋めるPD制御のパラメータ設定関数
+void q_setPDparam(double q_p,double q_d){ //ベクトルABに垂直な方向の誤差を埋めるPD制御のパラメータ設定関数
     Kvq_p=q_p;
     Kvq_d=q_d;
 }
    
-void pathfollowing1::r_setPDparam(double r_p,double r_d){ //機体角度と目標角度の誤差を埋めるPD制御のパラメータ設定関数
+void r_setPDparam(double r_p,double r_d){ //機体角度と目標角度の誤差を埋めるPD制御のパラメータ設定関数
     Kvr_p=r_p;
     Kvr_d=r_d;
 }
  
-void pathfollowing1::set_r_out(double r){ //旋回時の最大出力値設定関数
+void set_r_out(double r){ //旋回時の最大出力値設定関数
     r_out = r;
     }
     
-void pathfollowing1::set_target_angle(double t){ //機体の目標角度設定関数
+void set_target_angle(double t){ //機体の目標角度設定関数
     target_angle = t;
     }
 
--- a/PathFollowing1.h	Thu Nov 01 03:03:45 2018 +0000
+++ b/PathFollowing1.h	Thu Nov 01 03:40:05 2018 +0000
@@ -2,24 +2,8 @@
 #define HARUROBO2019_PATHFOLLOWING_H
 #include <EC.h>
 #include <R1370P.h>
+extern double now_x,now_y;
 
-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軸方向、旋回の出力を算出する関数
@@ -46,5 +30,5 @@
 //機体目標角度設定関数
 
 
-};
+
 #endif
\ No newline at end of file