最終調整

Dependencies:   mbed AQM0802 CRotaryEncoder TB6612FNG

Files at this revision

API Documentation at this revision

Comitter:
GGU
Date:
Sat Nov 30 06:01:16 2019 +0000
Parent:
33:c0c7cc1ba2ec
Commit message:
test

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
tuning.h Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Thu Nov 28 02:52:38 2019 +0000
+++ b/main.cpp	Sat Nov 30 06:01:16 2019 +0000
@@ -90,7 +90,7 @@
 
 int Imaginary_Speed=0;                 //曲率演算にて求めた2走目以降の仮想走行速度
 int Next_Imaginary_Speed=0;
-long int       course_data[100][3];                  //コース情報の記憶用配列マーカ数は行数分まで対応し、
+long int       course_data[200][3];                  //コース情報の記憶用配列マーカ数は行数分まで対応し、
                                             //列情報は左タイヤ走行距離、右タイヤ走行距離、演算で求めた2走目走行速度を格納する。
 int Row=0;                                  //行情報を格納。マーカ通過ごとに加算し、走行終了後リセットされる。
 int Marker_Cnt=0;
@@ -273,6 +273,12 @@
                 Target_Speed_A=Low_Speed;
                 Target_Speed_B=Low_Speed;
             } 
+    }//現在速度が中間速度で次のコースが急カーブであり、残り距離が---だったとき
+    else if((course_data[Row][2]==High_Speed)&&(Next_Imaginary_Speed==High_Speed)){
+            if(Recent_Distance<(HM_BREAK_DISANCE)){
+                Target_Speed_A=Low_Speed;
+                Target_Speed_B=Low_Speed;
+            } 
     }          
 }
 
--- a/tuning.h	Thu Nov 28 02:52:38 2019 +0000
+++ b/tuning.h	Sat Nov 30 06:01:16 2019 +0000
@@ -7,17 +7,17 @@
 ************************************/
 
 ////////機体速度関連
-#define     LOW_SPEED                900     //標準速度[mm/sec]
-#define     MEDIUM_SPEED            1100     //2走目の中間速度[mm/sec]
+#define     LOW_SPEED               875     //標準速度[mm/sec]
+#define     MEDIUM_SPEED            1075     //2走目の中間速度[mm/sec]
 #define     HIGH_SPEED              1300     //2走目の高速速度[mm/sec]
 #define     STOP_DISTANCE         200000     //停止距離200000[um]⇒20[cm]
 #define     TURN_POWER              0.3f     //コースアウト時の旋回力
 
 
 ///////マーカ判定関連
-#define     DEFAULT_GRAY            0.25f     //フォトリフレクタデジタル入力の閾値
+#define     DEFAULT_GRAY            0.3f     //フォトリフレクタデジタル入力の閾値
                                              //シリアル通信でSensor_Digital値を確認し調整する。
-#define     MARKER_WIDTH            9000     //マーカ幅[um](ビニルテープ幅19000[um]以内)
+#define     MARKER_WIDTH            7800     //マーカ幅[um](ビニルテープ幅19000[um]以内)
                                              //コースの傷によってマーカ誤検知する場合は値を大きくする。
 #define     CROSS_JUDGE                4     //ラインセンサいくつ以上白線検知で交差点認識するか設定。
 
@@ -26,9 +26,9 @@
 #define     HIGH_SPEED_SECTION      1.35f     //最高速度の左右回転差の上限倍率     
 #define     MEDIUM_SPEED_SECTION    1.65f     //中間速度の左右回転差の上限倍率
 #define     LOW_SPEED_SECTION       2.00f     //最低速度の左右回転差の上限倍率
-#define     HL_BREAK_DISANCE      200000     //高速度で次のカーブが低速カーブのときのブレーキング距離[um]
-#define     HM_BREAK_DISANCE      150000     //高速度で次のカーブが中間速度カーブのときのブレーキング距離[um]
-#define     ML_BREAK_DISANCE      100000     //中間速度で次のカーブが低速カーブのときのブレーキング距離[um]
+#define     HL_BREAK_DISANCE       245000     //高速度で次のカーブが低速カーブのときのブレーキング距離[um]
+#define     HM_BREAK_DISANCE       145000     //高速度で次のカーブが中間速度カーブのときのブレーキング距離[um]
+#define     ML_BREAK_DISANCE        95000    //中間速度で次のカーブが低速カーブのときのブレーキング距離[um]
 
 
 
@@ -45,16 +45,16 @@
 
 //ラインセンサ各種制御成分
 //P成分
-#define     S_KP_LOW                0.8f     //低速P成分
-#define     S_KP_MEDIUM             0.5f     //中速P成分
+#define     S_KP_LOW                1.0f     //低速P成分
+#define     S_KP_MEDIUM             0.7f     //中速P成分
 #define     S_KP_HIGH               0.3f     //高速P成分
 
-#define     S_KP_DEFAULT_HIGH       0.8f     //3走目P成分
+#define     S_KP_DEFAULT_HIGH       1.1f     //3走目P成分
 
 //D成分
 #define     S_KD_LOW                5.0f     //低速D成分
 #define     S_KD_MEDIUM             4.0f     //中速D成分
 #define     S_KD_HIGH               3.0f     //高速D成分
 
-#define     S_KD_DEFAULT_HIGH       5.0f     //3走目D成分
+#define     S_KD_DEFAULT_HIGH       4.8f     //3走目D成分
 //////////☆★☆★☆★☆★☆★//////////////