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.
proto01.h@3:c46f084010aa, 2019-08-22 (annotated)
- Committer:
- piroro4560
- Date:
- Thu Aug 22 14:07:24 2019 +0000
- Revision:
- 3:c46f084010aa
- Parent:
- prototype01.h@2:95ef998b5a62
- Child:
- 4:40c5ac00bb5b
change name
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| piroro4560 | 1:ad711893a3a7 | 1 | #ifndef PROTO01_H |
| piroro4560 | 1:ad711893a3a7 | 2 | #define PROTO01_H |
| piroro4560 | 0:92d6abcc2b52 | 3 | #define PI 3.141592653589793238462643383219502884 |
| piroro4560 | 0:92d6abcc2b52 | 4 | |
| piroro4560 | 0:92d6abcc2b52 | 5 | #include "mbed.h" |
| piroro4560 | 0:92d6abcc2b52 | 6 | |
| piroro4560 | 2:95ef998b5a62 | 7 | /** |
| piroro4560 | 2:95ef998b5a62 | 8 | * S字制御クラス |
| piroro4560 | 2:95ef998b5a62 | 9 | */ |
| piroro4560 | 3:c46f084010aa | 10 | class Proto1 { |
| piroro4560 | 0:92d6abcc2b52 | 11 | public: |
| piroro4560 | 0:92d6abcc2b52 | 12 | |
| piroro4560 | 0:92d6abcc2b52 | 13 | /** |
| piroro4560 | 0:92d6abcc2b52 | 14 | * コンストラクタ |
| piroro4560 | 0:92d6abcc2b52 | 15 | * @param accdis_ 加速距離 |
| piroro4560 | 0:92d6abcc2b52 | 16 | * @param decdis_ 減速距離(誤差あり。大きめに調整すると良い) |
| piroro4560 | 0:92d6abcc2b52 | 17 | * @param maxspeed_ 最大速度(?) |
| piroro4560 | 0:92d6abcc2b52 | 18 | */ |
| piroro4560 | 3:c46f084010aa | 19 | Proto1(double accdis_, double decdis_, double maxspeed_, double s_vector_); |
| piroro4560 | 0:92d6abcc2b52 | 20 | |
| piroro4560 | 0:92d6abcc2b52 | 21 | /** |
| piroro4560 | 0:92d6abcc2b52 | 22 | * 目標点の設定 |
| piroro4560 | 0:92d6abcc2b52 | 23 | * @param targetx_ 目標点のx座標 |
| piroro4560 | 0:92d6abcc2b52 | 24 | * @param targety_ 目標点のy座標 |
| piroro4560 | 0:92d6abcc2b52 | 25 | * @param startx_ 開始地点のx座標 |
| piroro4560 | 0:92d6abcc2b52 | 26 | * @param starty_ 開始地点のy座標 |
| piroro4560 | 0:92d6abcc2b52 | 27 | */ |
| piroro4560 | 0:92d6abcc2b52 | 28 | void target_xy(int targetx_, int targety_, int startx_, int starty_); |
| piroro4560 | 0:92d6abcc2b52 | 29 | |
| piroro4560 | 0:92d6abcc2b52 | 30 | /** |
| piroro4560 | 0:92d6abcc2b52 | 31 | * S字に変化する速度を計算 |
| piroro4560 | 0:92d6abcc2b52 | 32 | * @param now_x 現在地点のx座標 |
| piroro4560 | 0:92d6abcc2b52 | 33 | * @param now_y 現在地点のy座標 |
| piroro4560 | 0:92d6abcc2b52 | 34 | */ |
| piroro4560 | 0:92d6abcc2b52 | 35 | void calculate(int now_x, int now_y); |
| piroro4560 | 0:92d6abcc2b52 | 36 | |
| piroro4560 | 0:92d6abcc2b52 | 37 | double getvalue_x(); |
| piroro4560 | 0:92d6abcc2b52 | 38 | |
| piroro4560 | 0:92d6abcc2b52 | 39 | double getvalue_y(); |
| piroro4560 | 0:92d6abcc2b52 | 40 | |
| piroro4560 | 0:92d6abcc2b52 | 41 | /*** |
| piroro4560 | 0:92d6abcc2b52 | 42 | * accDis : 加速中に進む距離 |
| piroro4560 | 0:92d6abcc2b52 | 43 | * decDis : 減速中に進む距離 |
| piroro4560 | 0:92d6abcc2b52 | 44 | * maxspeed : 最大速度 |
| piroro4560 | 0:92d6abcc2b52 | 45 | **/ |
| piroro4560 | 0:92d6abcc2b52 | 46 | double accdis; |
| piroro4560 | 0:92d6abcc2b52 | 47 | double decdis; |
| piroro4560 | 0:92d6abcc2b52 | 48 | double accdis2; |
| piroro4560 | 0:92d6abcc2b52 | 49 | double decdis2; |
| piroro4560 | 0:92d6abcc2b52 | 50 | double maxspeed; |
| piroro4560 | 0:92d6abcc2b52 | 51 | |
| piroro4560 | 0:92d6abcc2b52 | 52 | double accsec; |
| piroro4560 | 0:92d6abcc2b52 | 53 | double decsec; |
| piroro4560 | 0:92d6abcc2b52 | 54 | |
| piroro4560 | 0:92d6abcc2b52 | 55 | double s_vector; |
| piroro4560 | 0:92d6abcc2b52 | 56 | // s_vector : start speed |
| piroro4560 | 0:92d6abcc2b52 | 57 | double vector; |
| piroro4560 | 0:92d6abcc2b52 | 58 | |
| piroro4560 | 0:92d6abcc2b52 | 59 | double targetx; |
| piroro4560 | 0:92d6abcc2b52 | 60 | double targety; |
| piroro4560 | 0:92d6abcc2b52 | 61 | double startx; |
| piroro4560 | 0:92d6abcc2b52 | 62 | double starty; |
| piroro4560 | 0:92d6abcc2b52 | 63 | double nowx; |
| piroro4560 | 0:92d6abcc2b52 | 64 | double nowy; |
| piroro4560 | 0:92d6abcc2b52 | 65 | |
| piroro4560 | 0:92d6abcc2b52 | 66 | /*** |
| piroro4560 | 0:92d6abcc2b52 | 67 | * tergetDis : 開始地点から目標点までの距離 |
| piroro4560 | 0:92d6abcc2b52 | 68 | * tergetRad : 現在地と目標点がなす角度 |
| piroro4560 | 0:92d6abcc2b52 | 69 | * nowDis : 進んだ距離 |
| piroro4560 | 0:92d6abcc2b52 | 70 | **/ |
| piroro4560 | 0:92d6abcc2b52 | 71 | double targetDis; |
| piroro4560 | 0:92d6abcc2b52 | 72 | double targetRad; |
| piroro4560 | 0:92d6abcc2b52 | 73 | double nowDis; |
| piroro4560 | 0:92d6abcc2b52 | 74 | double middledis; |
| piroro4560 | 0:92d6abcc2b52 | 75 | double counter; |
| piroro4560 | 0:92d6abcc2b52 | 76 | |
| piroro4560 | 0:92d6abcc2b52 | 77 | }; |
| piroro4560 | 0:92d6abcc2b52 | 78 | |
| piroro4560 | 0:92d6abcc2b52 | 79 | #endif |