Paso 10: programación
Software
Editor de programación de PicAxe, el software utilizado para programar el 08M 2, está disponible gratis desde el sitio web de PicAxe.
Programación serial
Para programar un PicAxe chip mediante un puerto USB un AXE027 cable de programación es necesario. Al diseñar el circuito estaba trabajando bajo el supuesto de que el M 08 2 podrían programarse con una conexión directa con el puerto USB datos + y datos-pins. Pensé que podría saltar el 027 y necesitaría sólo el conector Micro-USB para programar el chip. Después de unos intentos en subir el programa al bot, hice algunas pruebas y de investigación y descubrí que el cable del AXE027 contiene un convertidor de serie. No sé los detalles exactos de cómo funciona este convertidor, pero es necesario programar el PicAxe sobre un puerto USB.
Era demasiado tarde para volver atrás y arreglar esto en el diseño, todo se había ya puesto juntos! Además, no había espacio para añadir a un jack estéreo para AXE027 sobre el tablero de circuito. Para programar el chip que necesita para hacer un adaptador que podría recibir al estéreo de la AXE027 y conectar el cable Micro-USB.
Rebusqué a través de mi caja de cosas de la computadora y me encontré una PS2 - USB adaptador que yo no fui emocionalmente. Cortar aparte, quitar el conector USB hembra y había conectado a una clavija estéreo de 3,5 que había sobrado de un proyecto anterior. La imagen adjunta detalla cómo este adaptador fue atado con alambre.
Lo que hace el programa
El robot es controlado por un remoto universal estándar de la tv que tengo por $5. El control remoto se establece en el código de la televisión de Sony, que es lo que es capaz de decodificar el 08M 2. Cuando se pulsa un botón del mando a distancia transmite un código de su LED de infrarrojos. Mientras tanto ha estado esperando el 08M 2 para que su receptor de IR recoger esta transmisión, y cuando lo hace almacena el número del botón correspondiente en una variable. El PicAxe comprueba esa variable y ejecuta el código que está asociado con el número recibido. El programa entonces vuelve a su comienzo y espera otro comando.
El comando de tono de 08M2s es impresionante. Hay miles de gratis, tonos de celular antiguo que fueron hechas para ser reproducido en peizo altavoces y se pueden descargar y programados en el chip. Insertar estas canciones es tan simple como utilizar el Asistente de tono de llamada del Editor de programación de PicAxe para importar las canciones en el código. Cada nota de la canción está representado por un número y se pueden copiar, pegar y se reorganizan para editar las canciones. La orden también tiene opciones para parpadear un LED (los ojos) con la música.
Programé algunos de los botones con canciones y algunos otros con sonidos al azar. Las señales sonoras dan el robot que algunas cortan pequeñas expresiones que son divertidas cuando topa con cosas y tal. Obtener más información sobre el comando de tono se puede encontrar aquí. Esta Página también fue muy útil, ya que muestra qué código # se utiliza para que botones del control remoto.
Cuando uno del volumen + - o canal + botones se presiona el programa enciende el motor apropiado para 100 milisegundos, luego la apaga otra vez. Si ese botón se mantiene pulsado ese poco de repeticiones de código, efectivamente convirtiendo totalmente en el motor. Los ojos de LED están ligados a este mismo botón para que encienda en sincronía con el motor. Los ojos parpadean cada vez que el código se repite, pero los motores no deje tiempo suficiente para afectar el movimiento.
Baile de Robots tienen más divertido
La Pingbot puede ser programado con rutinas de baile con una mezcla de la melodía y control motor. El programa se convierte en un motor (o ambos), toca algunas notas y luego apaga el motor. A continuación se enciende el motor opuesto, la siguiente serie de notas en la canción se juega y el motor está apagado. Cuando estos movimientos se ejecutan juntos no hay dudas entre los mandos y los juegos de la canción sin problemas mientras que el robot gira alrededor en diferentes direcciones. Esto se puede ver en el vídeo en la página de introducción de este Instructable.