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.
YELLOW_steps.cpp@0:1cfd66c3a181, 2019-05-22 (annotated)
- Committer:
- xav_jann1
- Date:
- Wed May 22 16:54:27 2019 +0000
- Revision:
- 0:1cfd66c3a181
Premiere version
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
xav_jann1 | 0:1cfd66c3a181 | 1 | // Eléments: |
xav_jann1 | 0:1cfd66c3a181 | 2 | #include "Base.h" |
xav_jann1 | 0:1cfd66c3a181 | 3 | #include "Servo.h" |
xav_jann1 | 0:1cfd66c3a181 | 4 | #include "Infra.h" |
xav_jann1 | 0:1cfd66c3a181 | 5 | |
xav_jann1 | 0:1cfd66c3a181 | 6 | extern Base base; |
xav_jann1 | 0:1cfd66c3a181 | 7 | extern Servo servo; |
xav_jann1 | 0:1cfd66c3a181 | 8 | extern Infra infraFrontG; |
xav_jann1 | 0:1cfd66c3a181 | 9 | extern Infra infraFrontD; |
xav_jann1 | 0:1cfd66c3a181 | 10 | extern Infra infraBack; |
xav_jann1 | 0:1cfd66c3a181 | 11 | extern DigitalOut pompe; |
xav_jann1 | 0:1cfd66c3a181 | 12 | |
xav_jann1 | 0:1cfd66c3a181 | 13 | // Déplacement pour côté Jaune: |
xav_jann1 | 0:1cfd66c3a181 | 14 | int YELLOW_steps(int state) { |
xav_jann1 | 0:1cfd66c3a181 | 15 | int timeOut = 3000; |
xav_jann1 | 0:1cfd66c3a181 | 16 | |
xav_jann1 | 0:1cfd66c3a181 | 17 | // 0: Avant: |
xav_jann1 | 0:1cfd66c3a181 | 18 | if (state == 0) { |
xav_jann1 | 0:1cfd66c3a181 | 19 | base.forward(-1700); |
xav_jann1 | 0:1cfd66c3a181 | 20 | timeOut = 6000; |
xav_jann1 | 0:1cfd66c3a181 | 21 | } |
xav_jann1 | 0:1cfd66c3a181 | 22 | |
xav_jann1 | 0:1cfd66c3a181 | 23 | // 1: Tourne: |
xav_jann1 | 0:1cfd66c3a181 | 24 | else if (state == 1) { |
xav_jann1 | 0:1cfd66c3a181 | 25 | base.turn(90.0f); |
xav_jann1 | 0:1cfd66c3a181 | 26 | infraFrontG.off(); |
xav_jann1 | 0:1cfd66c3a181 | 27 | infraFrontD.off(); |
xav_jann1 | 0:1cfd66c3a181 | 28 | infraBack.on(); |
xav_jann1 | 0:1cfd66c3a181 | 29 | } |
xav_jann1 | 0:1cfd66c3a181 | 30 | |
xav_jann1 | 0:1cfd66c3a181 | 31 | // 2: Avance vers palet: |
xav_jann1 | 0:1cfd66c3a181 | 32 | else if (state == 2) { |
xav_jann1 | 0:1cfd66c3a181 | 33 | servo.pos(10); |
xav_jann1 | 0:1cfd66c3a181 | 34 | base.forward(-470); |
xav_jann1 | 0:1cfd66c3a181 | 35 | timeOut = 3000; |
xav_jann1 | 0:1cfd66c3a181 | 36 | } |
xav_jann1 | 0:1cfd66c3a181 | 37 | |
xav_jann1 | 0:1cfd66c3a181 | 38 | // 3: Servo: |
xav_jann1 | 0:1cfd66c3a181 | 39 | else if (state == 3) { |
xav_jann1 | 0:1cfd66c3a181 | 40 | //base.stop(); |
xav_jann1 | 0:1cfd66c3a181 | 41 | servo.pos(45); |
xav_jann1 | 0:1cfd66c3a181 | 42 | timeOut = 3000; |
xav_jann1 | 0:1cfd66c3a181 | 43 | } |
xav_jann1 | 0:1cfd66c3a181 | 44 | |
xav_jann1 | 0:1cfd66c3a181 | 45 | // 4: Recule du palet: |
xav_jann1 | 0:1cfd66c3a181 | 46 | else if (state == 4) { |
xav_jann1 | 0:1cfd66c3a181 | 47 | base.start(); |
xav_jann1 | 0:1cfd66c3a181 | 48 | base.backward(-200); |
xav_jann1 | 0:1cfd66c3a181 | 49 | timeOut = 3000; |
xav_jann1 | 0:1cfd66c3a181 | 50 | } |
xav_jann1 | 0:1cfd66c3a181 | 51 | |
xav_jann1 | 0:1cfd66c3a181 | 52 | // 5: Tourne |
xav_jann1 | 0:1cfd66c3a181 | 53 | else if (state == 5) { |
xav_jann1 | 0:1cfd66c3a181 | 54 | base.start(); |
xav_jann1 | 0:1cfd66c3a181 | 55 | base.turn(90.0f); |
xav_jann1 | 0:1cfd66c3a181 | 56 | } |
xav_jann1 | 0:1cfd66c3a181 | 57 | |
xav_jann1 | 0:1cfd66c3a181 | 58 | // 6: Avance |
xav_jann1 | 0:1cfd66c3a181 | 59 | else if (state == 6) { |
xav_jann1 | 0:1cfd66c3a181 | 60 | base.backward(-520); |
xav_jann1 | 0:1cfd66c3a181 | 61 | infraFrontG.on(); |
xav_jann1 | 0:1cfd66c3a181 | 62 | infraFrontD.on(); |
xav_jann1 | 0:1cfd66c3a181 | 63 | } |
xav_jann1 | 0:1cfd66c3a181 | 64 | |
xav_jann1 | 0:1cfd66c3a181 | 65 | // 7: Tourne |
xav_jann1 | 0:1cfd66c3a181 | 66 | else if (state == 7) { |
xav_jann1 | 0:1cfd66c3a181 | 67 | base.turn(-90.0f); |
xav_jann1 | 0:1cfd66c3a181 | 68 | servo.pos(130.0f); |
xav_jann1 | 0:1cfd66c3a181 | 69 | infraFrontG.off(); |
xav_jann1 | 0:1cfd66c3a181 | 70 | infraFrontD.off(); |
xav_jann1 | 0:1cfd66c3a181 | 71 | } |
xav_jann1 | 0:1cfd66c3a181 | 72 | |
xav_jann1 | 0:1cfd66c3a181 | 73 | // 8: Avance |
xav_jann1 | 0:1cfd66c3a181 | 74 | else if (state == 8) base.forward(-400.0f); |
xav_jann1 | 0:1cfd66c3a181 | 75 | |
xav_jann1 | 0:1cfd66c3a181 | 76 | // 9: Pompe à air |
xav_jann1 | 0:1cfd66c3a181 | 77 | else if (state == 9) { |
xav_jann1 | 0:1cfd66c3a181 | 78 | pompe = 1; |
xav_jann1 | 0:1cfd66c3a181 | 79 | timeOut = 2000; |
xav_jann1 | 0:1cfd66c3a181 | 80 | } |
xav_jann1 | 0:1cfd66c3a181 | 81 | |
xav_jann1 | 0:1cfd66c3a181 | 82 | // 10: Recule du Goldenium |
xav_jann1 | 0:1cfd66c3a181 | 83 | else if (state == 10) { |
xav_jann1 | 0:1cfd66c3a181 | 84 | base.backward(-500.0f); |
xav_jann1 | 0:1cfd66c3a181 | 85 | timeOut = 1000; |
xav_jann1 | 0:1cfd66c3a181 | 86 | } |
xav_jann1 | 0:1cfd66c3a181 | 87 | |
xav_jann1 | 0:1cfd66c3a181 | 88 | // 11: Désactive la pompe |
xav_jann1 | 0:1cfd66c3a181 | 89 | else if (state == 11) { |
xav_jann1 | 0:1cfd66c3a181 | 90 | pompe = 0; |
xav_jann1 | 0:1cfd66c3a181 | 91 | timeOut = 1000; |
xav_jann1 | 0:1cfd66c3a181 | 92 | } |
xav_jann1 | 0:1cfd66c3a181 | 93 | |
xav_jann1 | 0:1cfd66c3a181 | 94 | // 12: Tourne pour revenir |
xav_jann1 | 0:1cfd66c3a181 | 95 | else if (state == 12) { |
xav_jann1 | 0:1cfd66c3a181 | 96 | base.turn(90.0f); |
xav_jann1 | 0:1cfd66c3a181 | 97 | } |
xav_jann1 | 0:1cfd66c3a181 | 98 | |
xav_jann1 | 0:1cfd66c3a181 | 99 | // 13: Avance pour revenir |
xav_jann1 | 0:1cfd66c3a181 | 100 | else if (state == 13) { |
xav_jann1 | 0:1cfd66c3a181 | 101 | base.forward(-1700); |
xav_jann1 | 0:1cfd66c3a181 | 102 | infraFrontG.on(); |
xav_jann1 | 0:1cfd66c3a181 | 103 | infraFrontD.on(); |
xav_jann1 | 0:1cfd66c3a181 | 104 | timeOut = 6000; |
xav_jann1 | 0:1cfd66c3a181 | 105 | } |
xav_jann1 | 0:1cfd66c3a181 | 106 | |
xav_jann1 | 0:1cfd66c3a181 | 107 | // 14: Fin |
xav_jann1 | 0:1cfd66c3a181 | 108 | else if (state == 14) { |
xav_jann1 | 0:1cfd66c3a181 | 109 | base.stop(); |
xav_jann1 | 0:1cfd66c3a181 | 110 | } |
xav_jann1 | 0:1cfd66c3a181 | 111 | |
xav_jann1 | 0:1cfd66c3a181 | 112 | return timeOut; |
xav_jann1 | 0:1cfd66c3a181 | 113 | } |