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@7:c9707baaf007, 2019-09-23 (annotated)
- Committer:
- piroro4560
- Date:
- Mon Sep 23 23:28:45 2019 +0000
- Revision:
- 7:c9707baaf007
- Parent:
- 5:8dce5092a719
- Child:
- 8:4f8e46a3efc8
add function
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 | 4:40c5ac00bb5b | 11 | public: |
| piroro4560 | 0:92d6abcc2b52 | 12 | |
| piroro4560 | 4:40c5ac00bb5b | 13 | /** |
| piroro4560 | 4:40c5ac00bb5b | 14 | * コンストラクタ |
| piroro4560 | 4:40c5ac00bb5b | 15 | * @param accdis_ 加速距離 |
| piroro4560 | 4:40c5ac00bb5b | 16 | * @param decdis_ 減速距離(誤差あり。大きめに調整すると良い) |
| piroro4560 | 4:40c5ac00bb5b | 17 | * @param maxspeed_ 最大速度(?) |
| piroro4560 | 4:40c5ac00bb5b | 18 | */ |
| piroro4560 | 4:40c5ac00bb5b | 19 | Proto1(double accdis_, double decdis_, double maxspeed_, double s_vector_); |
| piroro4560 | 4:40c5ac00bb5b | 20 | |
| piroro4560 | 4:40c5ac00bb5b | 21 | /** |
| piroro4560 | 4:40c5ac00bb5b | 22 | * 目標点を設定する |
| piroro4560 | 4:40c5ac00bb5b | 23 | * @param target_ 目標点 |
| piroro4560 | 4:40c5ac00bb5b | 24 | * @param start_ 開始地点 |
| piroro4560 | 4:40c5ac00bb5b | 25 | */ |
| piroro4560 | 4:40c5ac00bb5b | 26 | void target(double target_, double start_); |
| piroro4560 | 0:92d6abcc2b52 | 27 | |
| piroro4560 | 4:40c5ac00bb5b | 28 | /** |
| piroro4560 | 4:40c5ac00bb5b | 29 | * xy座標で目標点を設定する |
| piroro4560 | 4:40c5ac00bb5b | 30 | * @param targetx_ 目標点のx座標 |
| piroro4560 | 4:40c5ac00bb5b | 31 | * @param targety_ 目標点のy座標 |
| piroro4560 | 4:40c5ac00bb5b | 32 | * @param startx_ 開始地点のx座標 |
| piroro4560 | 4:40c5ac00bb5b | 33 | * @param starty_ 開始地点のy座標 |
| piroro4560 | 4:40c5ac00bb5b | 34 | */ |
| ec30109b | 5:8dce5092a719 | 35 | void targetXY(int targetx_, int targety_, int startx_, int starty_); |
| piroro4560 | 0:92d6abcc2b52 | 36 | |
| piroro4560 | 4:40c5ac00bb5b | 37 | /** |
| piroro4560 | 4:40c5ac00bb5b | 38 | * 現在地点を入力 |
| piroro4560 | 4:40c5ac00bb5b | 39 | * @param now_ 現在地点 |
| piroro4560 | 4:40c5ac00bb5b | 40 | */ |
| piroro4560 | 4:40c5ac00bb5b | 41 | void Input_now(double now_); |
| piroro4560 | 0:92d6abcc2b52 | 42 | |
| piroro4560 | 4:40c5ac00bb5b | 43 | /** |
| piroro4560 | 4:40c5ac00bb5b | 44 | * 現在地点を入力 |
| piroro4560 | 4:40c5ac00bb5b | 45 | * @param now_x 現在地点のx座標 |
| piroro4560 | 4:40c5ac00bb5b | 46 | * @param now_y 現在地点のy座標 |
| piroro4560 | 4:40c5ac00bb5b | 47 | */ |
| ec30109b | 5:8dce5092a719 | 48 | void Input_nowXY(int now_x, int now_y); |
| piroro4560 | 0:92d6abcc2b52 | 49 | |
| piroro4560 | 4:40c5ac00bb5b | 50 | /** |
| piroro4560 | 4:40c5ac00bb5b | 51 | * S字に変化する速度を計算 |
| piroro4560 | 4:40c5ac00bb5b | 52 | */ |
| piroro4560 | 4:40c5ac00bb5b | 53 | void calculate(); |
| piroro4560 | 4:40c5ac00bb5b | 54 | |
| piroro4560 | 4:40c5ac00bb5b | 55 | /** |
| piroro4560 | 4:40c5ac00bb5b | 56 | * x方向のベクトルを返す |
| piroro4560 | 4:40c5ac00bb5b | 57 | */ |
| piroro4560 | 4:40c5ac00bb5b | 58 | double getvalue_x(); |
| piroro4560 | 0:92d6abcc2b52 | 59 | |
| piroro4560 | 4:40c5ac00bb5b | 60 | /** |
| piroro4560 | 4:40c5ac00bb5b | 61 | * y方向のベクトルを返す |
| piroro4560 | 4:40c5ac00bb5b | 62 | */ |
| piroro4560 | 4:40c5ac00bb5b | 63 | double getvalue_y(); |
| piroro4560 | 0:92d6abcc2b52 | 64 | |
| piroro4560 | 4:40c5ac00bb5b | 65 | /** |
| piroro4560 | 4:40c5ac00bb5b | 66 | * そのまま返す |
| piroro4560 | 4:40c5ac00bb5b | 67 | */ |
| piroro4560 | 4:40c5ac00bb5b | 68 | double getvalue(); |
| piroro4560 | 7:c9707baaf007 | 69 | |
| piroro4560 | 7:c9707baaf007 | 70 | /** |
| piroro4560 | 7:c9707baaf007 | 71 | * 角度を返す |
| piroro4560 | 7:c9707baaf007 | 72 | */ |
| piroro4560 | 7:c9707baaf007 | 73 | double getTheta(); |
| piroro4560 | 7:c9707baaf007 | 74 | |
| piroro4560 | 7:c9707baaf007 | 75 | |
| piroro4560 | 0:92d6abcc2b52 | 76 | |
| piroro4560 | 4:40c5ac00bb5b | 77 | double accdis; |
| piroro4560 | 4:40c5ac00bb5b | 78 | double decdis; |
| piroro4560 | 4:40c5ac00bb5b | 79 | double accdis2; |
| piroro4560 | 4:40c5ac00bb5b | 80 | double decdis2; |
| piroro4560 | 4:40c5ac00bb5b | 81 | double accsec; |
| piroro4560 | 4:40c5ac00bb5b | 82 | double decsec; |
| piroro4560 | 4:40c5ac00bb5b | 83 | double maxspeed; |
| piroro4560 | 4:40c5ac00bb5b | 84 | double maxspeed2; |
| piroro4560 | 4:40c5ac00bb5b | 85 | |
| piroro4560 | 4:40c5ac00bb5b | 86 | double s_vector; |
| piroro4560 | 4:40c5ac00bb5b | 87 | double vector; |
| piroro4560 | 0:92d6abcc2b52 | 88 | |
| piroro4560 | 4:40c5ac00bb5b | 89 | double startx; |
| piroro4560 | 4:40c5ac00bb5b | 90 | double starty; |
| piroro4560 | 4:40c5ac00bb5b | 91 | double start; |
| piroro4560 | 4:40c5ac00bb5b | 92 | double nowx; |
| piroro4560 | 4:40c5ac00bb5b | 93 | double nowy; |
| piroro4560 | 4:40c5ac00bb5b | 94 | double now; |
| piroro4560 | 4:40c5ac00bb5b | 95 | |
| piroro4560 | 4:40c5ac00bb5b | 96 | double targetDis; |
| piroro4560 | 4:40c5ac00bb5b | 97 | double targetRad; |
| piroro4560 | 4:40c5ac00bb5b | 98 | double targetx; |
| piroro4560 | 4:40c5ac00bb5b | 99 | double targety; |
| piroro4560 | 4:40c5ac00bb5b | 100 | double nowDis; |
| piroro4560 | 4:40c5ac00bb5b | 101 | double consdis; |
| piroro4560 | 4:40c5ac00bb5b | 102 | double counter; |
| piroro4560 | 0:92d6abcc2b52 | 103 | |
| piroro4560 | 0:92d6abcc2b52 | 104 | }; |
| piroro4560 | 0:92d6abcc2b52 | 105 | |
| piroro4560 | 0:92d6abcc2b52 | 106 | #endif |