Paso 49:
Programación
Introduzca este código en tu editor y presione F5 mientras el robot está conectado:
principal:
readadc 0, b0
de depuración
Goto principal
Ahora toma tu mano delante de la cabeza de robot´s y observe cómo la variable b0 cambia de valor. Puede utilizar los conocimientos adquiridos para decidir lo que debe suceder cuando (cómo cerrar cosas deben recibir antes de..)
Usted puede notar cómo cosas comienzo a ir "mal" si el material es demasiado cerca de los "ojos"; El sostenido se hace para trabajar con cosas que son de 10-80 CM de distancia. Cosas que están más cercanos parece ser de otra manera, que puede ser todo un reto para el programa.
Usted puede obtener muchos otros sensores de distancia que no tienen este problema. Sin embargo es el más barato, fuerte y easiset al programa, por eso que hice una elección tan "malo" para ti, lo siento ;) Mirar y ver lo que todo el mundo utiliza, antes de decidir para una actualización.
Ahora te aconsejo poner tu robot para arriba en una caja de cerillas o similares, como las ruedas comenzarán a girar.
Introduzca este código en tu editor y presione F5 mientras el robot está conectado:
alto 4
5 bajo
Una de las ruedas debe girar en una dirección. ¿Se vuelve hacia delante de las ruedas? Si es así, esto es la instrucción para que la rueda a girar hacia adelante.
Si la rueda gira hacia atrás, usted puede intentar esto:
4 bajo
5 alta
Para activar la otra rueda, es necesario introducir
6 alta
7 bajo
(o al revés para la dirección opuesta.)
Lo que pasa aquí es que usando sólo las opciones disponibles para el microcontrolador; poder activar o desactivar (alta / baja) tiene pins, es comandante el regulador del motor para ajustar motor A o B en el modo de avanzar o retroceder.
4 bajo
5 bajo
6 bajo
7 bajo
detiene todos los motores
El servo que ya han probado.
Hacia un lado es:
servo 0, 75 esperar 2
el otro lado es:
servo 0, 225 esperar 2
- Centro:
servo 0, 150 esperar 2
Aquí es un pequeño programa que (si, si todo va bien, e Introduzca los parámetros correctos para alta y baja para el cableado de los motores) hacer el robot conducir alrededor, parada frente a las cosas, mire a cada lado, para decidir cual es el mejor, ponga eso y conduce hacia nuevas aventuras. En el código he hecho llamadas observaciones: material escrito para explicar lo que está sucediendo.
Puede escribir estos comentarios u observaciones en el código, es una buena idea para mantener la pista.
Son escritos con un ' signo. Sin embargo, copiar este texto de aquí podría alterar a otra cosa, y tienes que corregir esto manualmente, lo siento. Su editor de programación tiene códigos de color, que te ayudará a mostrarte como comentarios y lo que reconoce como código.
Símbolo dangerlevel = 70' ¿a qué distancia lo deben, antes de reaccionar?
símbolo de giro = 300' Esto establece cuánto debe girarse
símbolo servo_turn = 700' Esto establece por cuánto tiempo debemos esperar para que el servo de vuelta (dependiendo de la velocidad de it´s) antes de medir distancia
principal: ' bucle principal
readadc 1, b1 ' Lee cuanta distancia por delante
Si b1 < dangerlevel entonces
peligros de GoSub ' si nada adelante, impulsar
otra cosa
GoSub whichway ' si obstáculo adelante decide qué manera es mejor
terminar si
Goto principal ' Esto termina el bucle, el resto son solo sub rutinas
peligros:' esto debe ser tu combinación para hacer el robot hacia adelante, estos probablemente necesitará ajustar para adaptarse a la forma han conectado sus motores robots
5 alta: alta 6: baja 4: baja 7
volver
whichway:
totalhalt GoSub ' primera parada!
' Buscar una manera de:
GoSub lturn ' mirar a un lado
pausa servo_turn ' esperar a que el servo que se terminó convirtiendo
readadc 1, b1
totalhalt GoSub
«Miran para otro lado:
GoSub rturn ' mirar para otro lado
pausa servo_turn ' esperar a que el servo que se terminó convirtiendo
readadc 1, b2
totalhalt GoSub
' Decidir cual es la mejor manera:
Si b1
GoSub body_lturn
otra cosa
GoSub body_rturn
terminar si
volver
body_lturn:
6 alta: baja 5: baja 7: alta 4' esto debería ser la combinación que convierte al robot de una manera
vuelta de la pausa: totalhalt gosub
volver
body_rturn:
alta 5: baja 6: baja 4: alto 7' debe ser la combinación que convierte al robot al revés
vuelta de la pausa: totalhalt gosub
volver
rturn:
servo 0, 100' mirar a un lado
volver
lturn:
servo 0, 200' mirar para otro lado
volver
totalhalt:
baja 4: baja 5: baja 6: baja 7' baja en todos los 4 detiene el robot!
Servo 0,150' adelantar de la cara
espera 1' congelar todo por un segundo
volver
Con algunos inteligente de programación y ajuste, usted puede hacer el robot, it´s cabeza, tomar decisiones, hacer pequeños ajustes, girar a hacia agujeros"interesantes" como las puertas, todos trabajando al mismo tiempo, mientras se conduce. Se ve muy bien si haces el giro del robot mientras la cabeza gira ;)
Tiempo divertido
También puede colocar una lámpara o un LED al pin 2 y tierra y escribir (recuerda LED´s necesita dar vuelta a la forma correcta alrededor de)
2 alta
para encender la lámpara, y
Baja 2
para desactivar ;)