Diferencia entre revisiones de «Ejemplos»
De Proyecto Butiá
(→Seguidor de líneas a ambos lados) |
|||
| (No se muestran 2 ediciones intermedias de 2 usuarios) | |||
| Línea 1: | Línea 1: | ||
| − | + | == Seguidor de líneas a ambos lados == | |
| − | == | + | |
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
| − | import | + | #si no estoy en la carpeta |
| + | import sys | ||
| + | sys.path.insert(0, '/home/olpc/Activities/TurtleBots.activity/plugins/butia') | ||
| + | |||
| + | from pybot import usb4butia | ||
import time | import time | ||
| − | robot = | + | robot = usb4butia.USB4Butia() |
| − | + | ||
| − | + | ||
| − | + | ||
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. | + | linea = robot.getGray() |
print linea | print linea | ||
| − | + | #guardamos el valor del sensor en linea y lo imprime en pantalla | |
| − | if linea > | + | |
| + | if linea > 2000: | ||
veces = 1 | veces = 1 | ||
| − | robot. | + | robot.set2MotorSpeed(0, 400, 0, 400) |
| − | + | #si el valor del sensor es >2000 los motores avanzan | |
else: | else: | ||
if gireDerecha == 1: | if gireDerecha == 1: | ||
| − | # | + | #si gire a la derecha ahora giro a la izq |
| − | robot. | + | robot.set2MotorSpeed(1, 400, 0, 400) |
gireDerecha = 0 | gireDerecha = 0 | ||
else: | else: | ||
| − | # | + | #si gire a la izquierda ahora giro a la der |
| − | robot. | + | robot.set2MotorSpeed(0, 400, 1, 400) |
gireDerecha = 1 | gireDerecha = 1 | ||
time.sleep(veces * 0.1) | time.sleep(veces * 0.1) | ||
| − | robot. | + | #procesa la info |
| + | robot.set2MotorSpeed(0, 0, 0, 0) | ||
veces += 1 | veces += 1 | ||
| − | + | #incrementa el angulo de giro | |
time.sleep(0.2) | time.sleep(0.2) | ||
| − | robot. | + | robot.set2MotorSpeed(0, 0, 0, 0) |
| + | #se detiene | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Revisión actual del 18:01 29 mar 2014
Seguidor de líneas a ambos lados
#si no estoy en la carpeta
import sys
sys.path.insert(0, '/home/olpc/Activities/TurtleBots.activity/plugins/butia')
from pybot import usb4butia
import time
robot = usb4butia.USB4Butia()
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.getGray()
print linea
#guardamos el valor del sensor en linea y lo imprime en pantalla
if linea > 2000:
veces = 1
robot.set2MotorSpeed(0, 400, 0, 400)
#si el valor del sensor es >2000 los motores avanzan
else:
if gireDerecha == 1:
#si gire a la derecha ahora giro a la izq
robot.set2MotorSpeed(1, 400, 0, 400)
gireDerecha = 0
else:
#si gire a la izquierda ahora giro a la der
robot.set2MotorSpeed(0, 400, 1, 400)
gireDerecha = 1
time.sleep(veces * 0.1)
#procesa la info
robot.set2MotorSpeed(0, 0, 0, 0)
veces += 1
#incrementa el angulo de giro
time.sleep(0.2)
robot.set2MotorSpeed(0, 0, 0, 0)
#se detiene