Diferencia entre revisiones de «Ejemplos»

De Proyecto Butiá
Saltar a: navegación, buscar
Línea 1: Línea 1:
 
+
== Seguidor de líneas a ambos lados ==
== Texto de titular ==
+
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
import butiaAPI
 
import butiaAPI
Línea 12: Línea 11:
 
i = 0
 
i = 0
 
veces = 1
 
veces = 1
gireDerecha = 0
+
gireDerecha = 0  
 +
#inicializacion de variables
  
 
while i<200:
 
while i<200:
 +
        #creamos la variable i para que se ejecutara 199 veces y no por siempre
 
         i += 1
 
         i += 1
 
         linea = robot.getEscalaGris()
 
         linea = robot.getEscalaGris()
 
         print linea
 
         print linea
 
+
        #guardamos el valor del sensor en linea y lo imprime en pantalla
 +
     
 
         if linea > "200":
 
         if linea > "200":
 
                 veces = 1
 
                 veces = 1
 
                 robot.setVelocidadMotores("0", "400", "0", "400")
 
                 robot.setVelocidadMotores("0", "400", "0", "400")
 
+
                #si el valor del sensor es >200 los motores avanzan
 
         else:
 
         else:
 
                 if gireDerecha == 1:
 
                 if gireDerecha == 1:
                         #Giro a la izq
+
                         #si gire a la derecha ahora giro a la izq
 
                         robot.setVelocidadMotores("1", "400", "0", "400")
 
                         robot.setVelocidadMotores("1", "400", "0", "400")
 
                         gireDerecha = 0
 
                         gireDerecha = 0
  
 
                 else:
 
                 else:
                         #Giro a la der
+
                         #si gire a la izquierda ahora giro a la der
 
                         robot.setVelocidadMotores("0", "400", "1", "400")
 
                         robot.setVelocidadMotores("0", "400", "1", "400")
 
                         gireDerecha = 1
 
                         gireDerecha = 1
 
                  
 
                  
 
                 time.sleep(veces * 0.1)
 
                 time.sleep(veces * 0.1)
 +
                #procesa la info
 
                 robot.setVelocidadMotores("0", "0", "0", "0")
 
                 robot.setVelocidadMotores("0", "0", "0", "0")
  
 
                 veces += 1
 
                 veces += 1
 
+
                #incrementa el angulo de giro
 
         time.sleep(0.2)
 
         time.sleep(0.2)
  
 
robot.setVelocidadMotores("0", "0", "0", "0")
 
robot.setVelocidadMotores("0", "0", "0", "0")
 +
#se detiene
 
</syntaxhighlight>
 
</syntaxhighlight>

Revisión del 01:42 20 jun 2011

Seguidor de líneas a ambos lados

import butiaAPI
import time

robot = butiaAPI.robot()

robot.abrirSensor()
robot.abrirMotores()

i = 0
veces = 1
gireDerecha = 0 
#inicializacion de variables

while i<200:
        #creamos la variable i para que se ejecutara 199 veces y no por siempre
        i += 1
        linea = robot.getEscalaGris()
        print linea
        #guardamos el valor del sensor en linea y lo imprime en pantalla
       
        if linea > "200":
                veces = 1
                robot.setVelocidadMotores("0", "400", "0", "400")
                #si el valor del sensor es >200 los motores avanzan
        else:
                if gireDerecha == 1:
                        #si gire a la derecha ahora giro a la izq
                        robot.setVelocidadMotores("1", "400", "0", "400")
                        gireDerecha = 0

                else:
                        #si gire a la izquierda ahora giro a la der
                        robot.setVelocidadMotores("0", "400", "1", "400")
                        gireDerecha = 1
                
                time.sleep(veces * 0.1)
                #procesa la info
                robot.setVelocidadMotores("0", "0", "0", "0")

                veces += 1
                #incrementa el angulo de giro
        time.sleep(0.2)

robot.setVelocidadMotores("0", "0", "0", "0")
#se detiene