establece la posicion de referencia del brazo robotico, manda la posicion de los encoders por bluetooth y permite el control remoto a traves de un dispositivo android.

Dependencies:   Motor QEI mbed

Revision:
13:d09934a46cf8
Parent:
12:5fb00cff7a0e
--- a/main.cpp	Mon Jun 12 11:54:40 2017 +0000
+++ b/main.cpp	Mon Jun 12 12:35:32 2017 +0000
@@ -181,7 +181,7 @@
     while (mp1==1)              // Mientras no se pulse el microswitch
     {
         enc=enc1.getPulses();   // leemos el contador del encoder
-        mover(1,dir,0.7);       // movemos el motor en la dirección inicial
+        mover(1,dir,1);       // movemos el motor en la dirección inicial
         wait(0.01);             // esperamos 0.01s
         if (enc==enc1.getPulses())  // Si el contador no se ha incrementado, hemos llegado al extremo
             dir=1;              // se cambia la dirección del motor
@@ -190,22 +190,39 @@
     
     // posicionar brazo
     dir=-1;                     // mover primero hacia delante
-    while (mp2==1)          // Mientras se mantenga pulsado el boton
-            mover(2,dir,0.7);   // se seguira moviendo el motor en la direccion inicial
+    while (dir==-1)             // mientras la direccion sea hacia delante:
+    {
+        while (mp2==0)          // Mientras se mantenga pulsado el boton
+            mover(2,dir,1);   // se seguira moviendo el motor en la direccion inicial
+        dir=1;                  // se cambia a direccion
+        while (mp2==1)          // Mientras el MP esté sin pulsar:
+        {
+            enc=enc2.getPulses();   // leemos el valor de los encoders
+            mover(2,dir,1);   // movemos el motor
+            wait(0.05);         // esperamos 0.01s
+            if(enc==enc2.getPulses())   // Si el contador no ha cambiado
+            {
+                if (dir==-1)
+                dir=1;          // cambiamos la dirección
+                else if (dir==1)
+                dir=-1;
+            }
+        }
+    }
     frenar(2);                  // el motor ha llegado a la posicion adecuada y se frena
     
     // posicionar antebrazo
-    dir=-1;                      // mover primero hacia delante
-    while (dir==-1)              // mientras la direccion sea hacia delante:
+    dir=-1;                     // mover primero hacia delante
+    while (dir==-1)             // mientras la direccion sea hacia delante:
     {
         while (mp3==0)          // Mientras se mantenga pulsado el boton
-            mover(3,dir,0.7);   // se seguira moviendo el motor en la direccion inicial
-        dir=1;                 // se cambia a direccion
+            mover(3,dir,1);   // se seguira moviendo el motor en la direccion inicial
+        dir=1;                  // se cambia a direccion
         while (mp3==1)          // Mientras el MP esté sin pulsar:
         {
             enc=enc3.getPulses();   // leemos el valor de los encoders
-            mover(3,dir,0.7);   // movemos el motor
-            wait(0.01);         // esperamos 0.01s
+            mover(3,dir,1);   // movemos el motor
+            wait(0.05);         // esperamos 0.01s
             if(enc==enc3.getPulses())   // Si el contador no ha cambiado
             {
                 if (dir==-1)
@@ -222,13 +239,13 @@
     while (dir==-1)              // Mientras que la dirección del motor sea 1:
     {
         while (mp4==0)          // Mientras el MP esté pulsado
-            mover(14,dir,0.7);   // movemos los motores 4 y 5
+            mover(14,dir,1);   // movemos los motores 4 y 5
         dir=1;
         while (mp4==1)          // Mientras el MP esté sin pulsar:
         {
             enc=enc5.getPulses();   // leemos el valor del los encoders
-            mover(14,dir,0.7);   // movemos los motores
-            wait(0.01);         // esperamos 0.01s
+            mover(14,dir,1);   // movemos los motores
+            wait(0.01);          // esperamos 0.01s
             if(enc==enc5.getPulses())   // Si el contador no ha cambiado
             {
                 if (dir==-1)
@@ -243,8 +260,8 @@
     // posicionamiento de la rotacion de la muñeca
     while (mp5==1)              // Mientras no se pulse el MS
     {
-        mover(15,1,0.7);         // se mueven los motores 4 y 5 
-        wait(0.02);             // esperamos 0.01s
+        mover(15,1,1);         // se mueven los motores 4 y 5 
+        wait(0.01);             // esperamos 0.01s
     }
     frenar(15);                  // frenamos los motores