cases gebasseerd op snake, ideetje nog niet werkend

Dependencies:   mbed

Committer:
Miriam
Date:
Tue Oct 31 11:18:52 2017 +0000
Revision:
0:8c4c4aac180b
cases gebasseerd op snake

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Miriam 0:8c4c4aac180b 1 #include "mbed.h"
Miriam 0:8c4c4aac180b 2
Miriam 0:8c4c4aac180b 3 //global variabelen
Miriam 0:8c4c4aac180b 4
Miriam 0:8c4c4aac180b 5 DigitalOut gpo(D0);
Miriam 0:8c4c4aac180b 6 DigitalOut led(LED_RED);
Miriam 0:8c4c4aac180b 7 const int depth =20;
Miriam 0:8c4c4aac180b 8 const int height = 20;
Miriam 0:8c4c4aac180b 9 int z, y, Goalz, Goaly, MemPrePos;
Miriam 0:8c4c4aac180b 10 dir = enum eDirection {STOP = 0, LEFT, RIGHT, UP, DOWN, SERVOAAN, SERVOUIT} ;
Miriam 0:8c4c4aac180b 11
Miriam 0:8c4c4aac180b 12 void setup()
Miriam 0:8c4c4aac180b 13 {
Miriam 0:8c4c4aac180b 14 bool outofreach = false;
Miriam 0:8c4c4aac180b 15 dir = 0;
Miriam 0:8c4c4aac180b 16 //z = startpositie van z. bijv. z = depth/2;
Miriam 0:8c4c4aac180b 17 //y = startpositie van y. y = height/2;
Miriam 0:8c4c4aac180b 18 // Set Goalz en Goaly based on EMG signals --> maybe not in here
Miriam 0:8c4c4aac180b 19 MemPrePos = 0;
Miriam 0:8c4c4aac180b 20 }
Miriam 0:8c4c4aac180b 21
Miriam 0:8c4c4aac180b 22 void MovementSpace()
Miriam 0:8c4c4aac180b 23 {
Miriam 0:8c4c4aac180b 24 // bounderies robot
Miriam 0:8c4c4aac180b 25 }
Miriam 0:8c4c4aac180b 26
Miriam 0:8c4c4aac180b 27 void Logic ()
Miriam 0:8c4c4aac180b 28 {
Miriam 0:8c4c4aac180b 29 switch (dir)
Miriam 0:8c4c4aac180b 30 {
Miriam 0:8c4c4aac180b 31 case LEFT:
Miriam 0:8c4c4aac180b 32 Goalz++;
Miriam 0:8c4c4aac180b 33 case RIGHT:
Miriam 0:8c4c4aac180b 34 Goalz--;
Miriam 0:8c4c4aac180b 35 case UP:
Miriam 0:8c4c4aac180b 36 Goaly++;
Miriam 0:8c4c4aac180b 37 case DOWN:
Miriam 0:8c4c4aac180b 38 Goaly--;
Miriam 0:8c4c4aac180b 39 case SERVOAAN:
Miriam 0:8c4c4aac180b 40 //;
Miriam 0:8c4c4aac180b 41 case SERVOUIT:
Miriam 0:8c4c4aac180b 42 //;
Miriam 0:8c4c4aac180b 43 default:
Miriam 0:8c4c4aac180b 44 break;
Miriam 0:8c4c4aac180b 45 }
Miriam 0:8c4c4aac180b 46
Miriam 0:8c4c4aac180b 47 // RKI: q1(t + T) = q1(t) +
Miriam 0:8c4c4aac180b 48 // (sin(q1)L1+sin(q2)L2)(Rdoely - cos(q1)L1-cos(q2)L2)K -
Miriam 0:8c4c4aac180b 49 // (cos(q1)L1 +cos(q2)L2)K(T/B1)(Rdoelx - sin(q1)L1 - sin(q2)L2)
Miriam 0:8c4c4aac180b 50 //
Miriam 0:8c4c4aac180b 51 // q2(t + T) = q2(t) +
Miriam 0:8c4c4aac180b 52 // (2*sin(q1)L1 + sin(q2)L2)(Rdoely - cos(q1)L1-cos(q2)L2)K -
Miriam 0:8c4c4aac180b 53 // cos(q2)L2(Rdoelx - sin(q1)L1-sin(q2)L2)K(T/B2)
Miriam 0:8c4c4aac180b 54 //
Miriam 0:8c4c4aac180b 55 // lengte van de armen = L1 en L2
Miriam 0:8c4c4aac180b 56 // q zijn de hoeken van de joint dus de hoeken van de motor
Miriam 0:8c4c4aac180b 57
Miriam 0:8c4c4aac180b 58 if (y of z = bounderies robot)
Miriam 0:8c4c4aac180b 59 {
Miriam 0:8c4c4aac180b 60 outofreach=true;
Miriam 0:8c4c4aac180b 61 }
Miriam 0:8c4c4aac180b 62
Miriam 0:8c4c4aac180b 63 }
Miriam 0:8c4c4aac180b 64
Miriam 0:8c4c4aac180b 65 int main()
Miriam 0:8c4c4aac180b 66 {
Miriam 0:8c4c4aac180b 67 setup ()
Miriam 0:8c4c4aac180b 68 while (!outofreach)
Miriam 0:8c4c4aac180b 69 {
Miriam 0:8c4c4aac180b 70 ticker.emg ()
Miriam 0:8c4c4aac180b 71 }
Miriam 0:8c4c4aac180b 72 }