Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed move4wheel2 EC CruizCore_R1370P
main.cpp@1:d66ba60fa9a9, 2019-06-15 (annotated)
- Committer:
- yuki0701
- Date:
- Sat Jun 15 04:46:41 2019 +0000
- Revision:
- 1:d66ba60fa9a9
- Parent:
- 0:0727df1dfa3e
a
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| yuki0701 | 0:0727df1dfa3e | 1 | #include "EC.h" |
| yuki0701 | 0:0727df1dfa3e | 2 | #include "R1370P.h" |
| yuki0701 | 0:0727df1dfa3e | 3 | #include "move4wheel.h" |
| yuki0701 | 0:0727df1dfa3e | 4 | #include "mbed.h" |
| yuki0701 | 0:0727df1dfa3e | 5 | #include "math.h" |
| yuki0701 | 0:0727df1dfa3e | 6 | #include "PathFollowing.h" |
| yuki0701 | 0:0727df1dfa3e | 7 | #include "movement.h" |
| yuki0701 | 0:0727df1dfa3e | 8 | #include "maxonsetting.h" |
| yuki0701 | 0:0727df1dfa3e | 9 | #include "DCsetting.h" |
| yuki0701 | 0:0727df1dfa3e | 10 | |
| yuki0701 | 0:0727df1dfa3e | 11 | |
| yuki0701 | 0:0727df1dfa3e | 12 | /*---------------------使用モーターの種類を選択(maxonsetting.cpp / DCsetting.cpp / movement.cppでも同様に選択)-----------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 13 | //#define DC_MOTOR_MODE //DCモーター |
| yuki0701 | 0:0727df1dfa3e | 14 | #define MAXON_MOTOR_MODE //マクソンモーター |
| yuki0701 | 0:0727df1dfa3e | 15 | /*----------------------------------------------------------------------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 16 | |
| yuki0701 | 0:0727df1dfa3e | 17 | |
| yuki0701 | 0:0727df1dfa3e | 18 | /*---------------------ESCONの使用有無を選択------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 19 | #define ESCON_USE_MODE //ESCON使用 |
| yuki0701 | 0:0727df1dfa3e | 20 | //#define ESCON_DISUSE_MODE //ESCON不使用 |
| yuki0701 | 0:0727df1dfa3e | 21 | /*---------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 22 | |
| yuki0701 | 0:0727df1dfa3e | 23 | |
| yuki0701 | 0:0727df1dfa3e | 24 | /*---------------------プログラムモードの選択------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 25 | //#define NHK2020_DEBUG_MODE //デバッグ用(パソコン操作) |
| yuki0701 | 0:0727df1dfa3e | 26 | #define NHK2020_TEST_MODE //試走用 |
| yuki0701 | 0:0727df1dfa3e | 27 | //#define NHK2020_MAIN_MODE //本番用 |
| yuki0701 | 0:0727df1dfa3e | 28 | /*---------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 29 | |
| yuki0701 | 0:0727df1dfa3e | 30 | |
| yuki0701 | 0:0727df1dfa3e | 31 | /*------------------使用プログラムの情報を出力-----------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 32 | //#define PROGRAM_INFO |
| yuki0701 | 0:0727df1dfa3e | 33 | /*---------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 34 | |
| yuki0701 | 0:0727df1dfa3e | 35 | |
| yuki0701 | 0:0727df1dfa3e | 36 | /*------------運動時の各速度の設定----------*/ |
| yuki0701 | 0:0727df1dfa3e | 37 | double st_speed = 500; // 移動開始時の速度 |
| yuki0701 | 0:0727df1dfa3e | 38 | double max_speed = 2500; // 直線移動時の最大速度 |
| yuki0701 | 0:0727df1dfa3e | 39 | double mid_speed = 2000; // 直線移動時の中間速度 |
| yuki0701 | 0:0727df1dfa3e | 40 | double turn_speed = 1000; // 旋回時の速度 |
| yuki0701 | 0:0727df1dfa3e | 41 | double end_speed = 200; // 停止直前の速度 |
| yuki0701 | 0:0727df1dfa3e | 42 | /*--------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 43 | |
| yuki0701 | 0:0727df1dfa3e | 44 | |
| yuki0701 | 0:0727df1dfa3e | 45 | //-----mbed led------------------//点灯条件-----------------------//参照場所------------------------------// |
| yuki0701 | 0:0727df1dfa3e | 46 | //DigitalOut debug_led(LED3); //maxon debug programme -> on //maxonsetting.cpp |
| yuki0701 | 0:0727df1dfa3e | 47 | |
| yuki0701 | 0:0727df1dfa3e | 48 | |
| yuki0701 | 0:0727df1dfa3e | 49 | Serial pc(USBTX,USBRX); |
| yuki0701 | 0:0727df1dfa3e | 50 | |
| yuki0701 | 0:0727df1dfa3e | 51 | //////////////////////////////////////////////////////////////以下main文///////////////////////////////////////////////////////////////// |
| yuki0701 | 0:0727df1dfa3e | 52 | |
| yuki0701 | 0:0727df1dfa3e | 53 | int main() |
| yuki0701 | 0:0727df1dfa3e | 54 | { |
| yuki0701 | 0:0727df1dfa3e | 55 | |
| yuki0701 | 0:0727df1dfa3e | 56 | UserLoopSetting_maxon(); |
| yuki0701 | 0:0727df1dfa3e | 57 | UserLoopSetting_sensor(); |
| yuki0701 | 0:0727df1dfa3e | 58 | UserLoopSetting_enc(); |
| yuki0701 | 0:0727df1dfa3e | 59 | |
| yuki0701 | 0:0727df1dfa3e | 60 | #ifdef PROGRAM_INFO //プログラム使用時に使用プログラムの情報を最初に表示 |
| yuki0701 | 0:0727df1dfa3e | 61 | |
| yuki0701 | 0:0727df1dfa3e | 62 | printf("ソースファイル名 : %s¥n", __FILE__); |
| yuki0701 | 0:0727df1dfa3e | 63 | printf("作成日付 : %s¥n", __DATE__); |
| yuki0701 | 0:0727df1dfa3e | 64 | printf("作成時刻 : %s¥n", __TIME__); |
| yuki0701 | 0:0727df1dfa3e | 65 | |
| yuki0701 | 0:0727df1dfa3e | 66 | #endif |
| yuki0701 | 0:0727df1dfa3e | 67 | |
| yuki0701 | 0:0727df1dfa3e | 68 | |
| yuki0701 | 0:0727df1dfa3e | 69 | /*-------------------------------------------デバッグ用プログラム-----------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 70 | #ifdef NHK2020_DEBUG_MODE |
| yuki0701 | 0:0727df1dfa3e | 71 | |
| yuki0701 | 0:0727df1dfa3e | 72 | static char pc_command = '\0'; |
| yuki0701 | 0:0727df1dfa3e | 73 | int md = 0; |
| yuki0701 | 0:0727df1dfa3e | 74 | |
| yuki0701 | 0:0727df1dfa3e | 75 | while(1) { |
| yuki0701 | 0:0727df1dfa3e | 76 | pc_command = pc.getc(); |
| yuki0701 | 0:0727df1dfa3e | 77 | |
| yuki0701 | 0:0727df1dfa3e | 78 | if(pc_command == 'w') { //"w"を押すと全モーターを正方向に加速 |
| yuki0701 | 0:0727df1dfa3e | 79 | md += 500; |
| yuki0701 | 0:0727df1dfa3e | 80 | } else if(pc_command == 's') { //"s"を押すと全モーターを負方向に加速 |
| yuki0701 | 0:0727df1dfa3e | 81 | md -= 500; |
| yuki0701 | 0:0727df1dfa3e | 82 | } |
| yuki0701 | 0:0727df1dfa3e | 83 | |
| yuki0701 | 0:0727df1dfa3e | 84 | #ifdef MAXON_MOTOR_MODE |
| yuki0701 | 0:0727df1dfa3e | 85 | MaxonControl(dm,dm,dm,dm); |
| yuki0701 | 0:0727df1dfa3e | 86 | #endif |
| yuki0701 | 0:0727df1dfa3e | 87 | #ifdef DC_MOTOR_MODE |
| yuki0701 | 0:0727df1dfa3e | 88 | DCControl(dm,dm,dm,dm); |
| yuki0701 | 0:0727df1dfa3e | 89 | #endif |
| yuki0701 | 0:0727df1dfa3e | 90 | } |
| yuki0701 | 0:0727df1dfa3e | 91 | #endif |
| yuki0701 | 0:0727df1dfa3e | 92 | /*-------------------------------------------------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 93 | |
| yuki0701 | 0:0727df1dfa3e | 94 | |
| yuki0701 | 0:0727df1dfa3e | 95 | /*-------------------------------------------試走用プログラム-----------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 96 | #ifdef NHK2020_TEST_MODE |
| yuki0701 | 0:0727df1dfa3e | 97 | |
| yuki0701 | 1:d66ba60fa9a9 | 98 | //spline_curve(0,0,100,50,30,0,70,50,10); |
| yuki0701 | 1:d66ba60fa9a9 | 99 | spline_curve(0,0,100,50,30,0,70,50,10); |
| yuki0701 | 1:d66ba60fa9a9 | 100 | //straight(1,1,0,0,1000,0,5000,5000,5,0.1,10,0.1,600,0); |
| yuki0701 | 1:d66ba60fa9a9 | 101 | //MaxonControl(0,0,0,0); |
| yuki0701 | 0:0727df1dfa3e | 102 | |
| yuki0701 | 0:0727df1dfa3e | 103 | #endif |
| yuki0701 | 0:0727df1dfa3e | 104 | /*-------------------------------------------------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 105 | |
| yuki0701 | 0:0727df1dfa3e | 106 | |
| yuki0701 | 0:0727df1dfa3e | 107 | /*-------------------------------------------本番用プログラム-----------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 108 | #ifdef NHK2020_MAIN_MODE |
| yuki0701 | 0:0727df1dfa3e | 109 | |
| yuki0701 | 0:0727df1dfa3e | 110 | |
| yuki0701 | 0:0727df1dfa3e | 111 | #endif |
| yuki0701 | 0:0727df1dfa3e | 112 | /*-------------------------------------------------------------------------------------------------------*/ |
| yuki0701 | 0:0727df1dfa3e | 113 | } |