3/20 13:39

Dependencies:   mbed move4wheel2 EC CruizCore_R1370P

Committer:
la00noix
Date:
Wed Feb 13 03:02:19 2019 +0000
Revision:
0:c61c6e4775ca
Child:
1:3c11e07da92a
a

Who changed what in which revision?

UserRevisionLine numberNew contents of line
la00noix 0:c61c6e4775ca 1 #include "EC.h"
la00noix 0:c61c6e4775ca 2 #include "R1370P.h"
la00noix 0:c61c6e4775ca 3 #include "move4wheel.h"
la00noix 0:c61c6e4775ca 4 #include "mbed.h"
la00noix 0:c61c6e4775ca 5 #include "math.h"
la00noix 0:c61c6e4775ca 6 #include "PathFollowing.h"
la00noix 0:c61c6e4775ca 7 #include "movement.h"
la00noix 0:c61c6e4775ca 8 #include "maxonsetting.h"
la00noix 0:c61c6e4775ca 9 #include "manual.h"
la00noix 0:c61c6e4775ca 10 #include "can.h"
la00noix 0:c61c6e4775ca 11
la00noix 0:c61c6e4775ca 12 #define PI 3.141592
la00noix 0:c61c6e4775ca 13
la00noix 0:c61c6e4775ca 14 //#define PROGRAM_INFO //プログラム使用時に使用プログラムの情報を最初に表示する際に定義
la00noix 0:c61c6e4775ca 15
la00noix 0:c61c6e4775ca 16 #define HARUROBO_TEST_MODE //テスト自動プログラム(練習・動作確認用)使用時に定義
la00noix 0:c61c6e4775ca 17 //#define HARUROBO_RIGHT_MODE //本番用自動プログラム(右側フィールド)使用時に定義
la00noix 0:c61c6e4775ca 18 //#define HARUROBO_LEFT_MODE //本番用自動プログラム(左側フィールド)使用時に定義
la00noix 0:c61c6e4775ca 19
la00noix 0:c61c6e4775ca 20 int go_waitmode = 0;
la00noix 0:c61c6e4775ca 21
la00noix 0:c61c6e4775ca 22 //-----mbed led------------------//点灯条件-----------------------//参照場所------------------------------//
la00noix 0:c61c6e4775ca 23 //DigitalOut canread_led(LED1); //canread -> on //can.cpp
la00noix 0:c61c6e4775ca 24 //DigitalOut cansend_led(LED2); //cansend -> on //can.cpp
la00noix 0:c61c6e4775ca 25 //DigitalOut debug_led(LED3); //maxon debug programme -> on //maxonsetting.cpp
la00noix 0:c61c6e4775ca 26
la00noix 0:c61c6e4775ca 27 //////////////////////////////////////////////////////////////以下main文/////////////////////////////////////////////////////////////////
la00noix 0:c61c6e4775ca 28
la00noix 0:c61c6e4775ca 29 int main(){
la00noix 0:c61c6e4775ca 30
la00noix 0:c61c6e4775ca 31 UserLoopSetting_maxon();
la00noix 0:c61c6e4775ca 32 UserLoopSetting_sensor();
la00noix 0:c61c6e4775ca 33 UserLoopSetting_can();
la00noix 0:c61c6e4775ca 34
la00noix 0:c61c6e4775ca 35 #ifdef PROGRAM_INFO //プログラム使用時に使用プログラムの情報を最初に表示
la00noix 0:c61c6e4775ca 36
la00noix 0:c61c6e4775ca 37 printf("ソースファイル名 : %s¥n", __FILE__);
la00noix 0:c61c6e4775ca 38 printf("作成日付 : %s¥n", __DATE__);
la00noix 0:c61c6e4775ca 39 printf("作成時刻 : %s¥n", __TIME__);
la00noix 0:c61c6e4775ca 40
la00noix 0:c61c6e4775ca 41 #endif
la00noix 0:c61c6e4775ca 42
la00noix 0:c61c6e4775ca 43 while(1){
la00noix 0:c61c6e4775ca 44
la00noix 0:c61c6e4775ca 45 switch(id1_value[0]){
la00noix 0:c61c6e4775ca 46
la00noix 0:c61c6e4775ca 47 //-----auto mode----------------------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 48 case 1:
la00noix 0:c61c6e4775ca 49
la00noix 0:c61c6e4775ca 50 //-----テスト自動プログラム(練習・動作確認用--------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 51 #ifdef HARUROBO_TEST_MODE
la00noix 0:c61c6e4775ca 52
la00noix 0:c61c6e4775ca 53 if(go_waitmode == 0){
la00noix 0:c61c6e4775ca 54
la00noix 0:c61c6e4775ca 55 purecurve(1,1,1,
la00noix 0:c61c6e4775ca 56 0,0,
la00noix 0:c61c6e4775ca 57 1000,1000,
la00noix 0:c61c6e4775ca 58 9,
la00noix 0:c61c6e4775ca 59 1000,5,0.1,10,0.1,500,0);
la00noix 0:c61c6e4775ca 60 gogo_straight(1,1,
la00noix 0:c61c6e4775ca 61 1000,1000,
la00noix 0:c61c6e4775ca 62 1000,2000,
la00noix 0:c61c6e4775ca 63 1000,1000,
la00noix 0:c61c6e4775ca 64 5,0.1,10,0.1,600,0);
la00noix 0:c61c6e4775ca 65 MaxonControl(0,0,0,0);
la00noix 0:c61c6e4775ca 66
la00noix 0:c61c6e4775ca 67 go_waitmode = 1;
la00noix 0:c61c6e4775ca 68
la00noix 0:c61c6e4775ca 69 }else if(go_waitmode == 1){
la00noix 0:c61c6e4775ca 70
la00noix 0:c61c6e4775ca 71 MaxonControl(0,0,0,0);
la00noix 0:c61c6e4775ca 72
la00noix 0:c61c6e4775ca 73 }
la00noix 0:c61c6e4775ca 74
la00noix 0:c61c6e4775ca 75
la00noix 0:c61c6e4775ca 76 #endif
la00noix 0:c61c6e4775ca 77 //--------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 78
la00noix 0:c61c6e4775ca 79
la00noix 0:c61c6e4775ca 80
la00noix 0:c61c6e4775ca 81
la00noix 0:c61c6e4775ca 82 //-----本番用自動プログラム(右側フィールド用)-------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 83 #ifdef HARUROBO_RIGHT_MODE
la00noix 0:c61c6e4775ca 84
la00noix 0:c61c6e4775ca 85 //ここに本番用自動プログラム(右側フィールド用)を書く
la00noix 0:c61c6e4775ca 86
la00noix 0:c61c6e4775ca 87 #endif
la00noix 0:c61c6e4775ca 88 //---------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 89
la00noix 0:c61c6e4775ca 90
la00noix 0:c61c6e4775ca 91
la00noix 0:c61c6e4775ca 92 //-----本番用自動プログラム(左側フィールド用)-------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 93 #ifdef HARUROBO_LEFT_MODE //
la00noix 0:c61c6e4775ca 94
la00noix 0:c61c6e4775ca 95 //ここに本番用自動プログラム(左側フィールド用)を書く
la00noix 0:c61c6e4775ca 96
la00noix 0:c61c6e4775ca 97 #endif
la00noix 0:c61c6e4775ca 98 //---------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 99 MaxonControl(0,0,0,0);
la00noix 0:c61c6e4775ca 100 break;
la00noix 0:c61c6e4775ca 101
la00noix 0:c61c6e4775ca 102 //-----wait mode----------------------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 103 case 0:
la00noix 0:c61c6e4775ca 104
la00noix 0:c61c6e4775ca 105 calc_xy(0,1,1);
la00noix 0:c61c6e4775ca 106 ashi_led();
la00noix 0:c61c6e4775ca 107 MaxonControl(0,0,0,0);
la00noix 0:c61c6e4775ca 108
la00noix 0:c61c6e4775ca 109 break;
la00noix 0:c61c6e4775ca 110
la00noix 0:c61c6e4775ca 111 //-----manual mode--------------------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 112 case 2:
la00noix 0:c61c6e4775ca 113
la00noix 0:c61c6e4775ca 114 ManualOut(250,100,500,200);
la00noix 0:c61c6e4775ca 115
la00noix 0:c61c6e4775ca 116 break;
la00noix 0:c61c6e4775ca 117 //------------------------------------------------------------------------------------------------------------------------------------//
la00noix 0:c61c6e4775ca 118 }
la00noix 0:c61c6e4775ca 119 }
la00noix 0:c61c6e4775ca 120 }