角度調整用のプログラムです。 (モータードライバー+磁気センサー)
Dependencies: ATP3012 mbed a HMC US015_2 getGPS
main.cpp@2:83023bafb526, 2021-12-14 (annotated)
- Committer:
- ushiroji
- Date:
- Tue Dec 14 07:13:21 2021 +0000
- Revision:
- 2:83023bafb526
- Parent:
- 1:f70beec382b6
test
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ushiroji | 0:99f4fe3e21c6 | 1 | #include "mbed.h" |
ushiroji | 0:99f4fe3e21c6 | 2 | // 自作関数 |
ushiroji | 0:99f4fe3e21c6 | 3 | #include "Function.h" |
ushiroji | 0:99f4fe3e21c6 | 4 | |
ushiroji | 0:99f4fe3e21c6 | 5 | int main() { |
ushiroji | 1:f70beec382b6 | 6 | double angle = 0; |
ushiroji | 1:f70beec382b6 | 7 | |
ushiroji | 2:83023bafb526 | 8 | |
ushiroji | 2:83023bafb526 | 9 | |
ushiroji | 2:83023bafb526 | 10 | Move('2', 0.5); |
ushiroji | 2:83023bafb526 | 11 | wait(20); |
ushiroji | 2:83023bafb526 | 12 | Move('2', 0.3); |
ushiroji | 2:83023bafb526 | 13 | wait(10); |
ushiroji | 2:83023bafb526 | 14 | Move('2', 0.18); |
ushiroji | 2:83023bafb526 | 15 | wait(10); |
ushiroji | 2:83023bafb526 | 16 | Move('1', 0); |
ushiroji | 2:83023bafb526 | 17 | wait(10); |
ushiroji | 2:83023bafb526 | 18 | |
ushiroji | 2:83023bafb526 | 19 | |
ushiroji | 2:83023bafb526 | 20 | |
ushiroji | 2:83023bafb526 | 21 | |
ushiroji | 1:f70beec382b6 | 22 | Calibration(); |
ushiroji | 1:f70beec382b6 | 23 | |
ushiroji | 1:f70beec382b6 | 24 | compass.setOpMode(HMC6352_CONTINUOUS, 1, 20); |
ushiroji | 1:f70beec382b6 | 25 | angle = compass.sample() / 10; |
ushiroji | 1:f70beec382b6 | 26 | xbee.printf("%f\r\n", angle); |
ushiroji | 1:f70beec382b6 | 27 | |
ushiroji | 1:f70beec382b6 | 28 | //角度調節 |
ushiroji | 1:f70beec382b6 | 29 | while(1) { |
ushiroji | 1:f70beec382b6 | 30 | if(angle < 20 || angle > 340) { //角度判定 |
ushiroji | 1:f70beec382b6 | 31 | xbee.printf("direction finish\n\r"); |
ushiroji | 1:f70beec382b6 | 32 | Move('1', 0); //停止 |
ushiroji | 1:f70beec382b6 | 33 | wait(5); |
ushiroji | 1:f70beec382b6 | 34 | compass.setOpMode(HMC6352_CONTINUOUS, 1, 20); |
ushiroji | 1:f70beec382b6 | 35 | angle = compass.sample() / 10; |
ushiroji | 1:f70beec382b6 | 36 | xbee.printf("%f\r\n", angle); |
ushiroji | 1:f70beec382b6 | 37 | } |
ushiroji | 1:f70beec382b6 | 38 | else { |
ushiroji | 1:f70beec382b6 | 39 | Move('4', 0.15);//時計回りに回転 |
ushiroji | 1:f70beec382b6 | 40 | compass.setOpMode(HMC6352_CONTINUOUS, 1, 20); |
ushiroji | 1:f70beec382b6 | 41 | angle = compass.sample() / 10; |
ushiroji | 1:f70beec382b6 | 42 | xbee.printf("%f\r\n", angle); |
ushiroji | 2:83023bafb526 | 43 | speak(); |
ushiroji | 1:f70beec382b6 | 44 | } |
ushiroji | 0:99f4fe3e21c6 | 45 | } |
ushiroji | 1:f70beec382b6 | 46 | } |