Paso 7: Un sombrero para el RabbitPi
Una de las cosas más emblemáticas sobre el Nabaztag fue la manera movería sus orejas cuando venía una notificación en. Podrían ajustarse a una orientación particular moviéndolos manualmente o mediante el establecimiento de una posición usando el software de control - mi objetivo era sólo hacerlos mover.
No había utilizado motores con las Pi de frambuesa antes así que este fue otro tema de investigación nuevo para mí - primero necesitaba saber qué tipo de motores me ocupan, todos sabía había 2 motores, cada uno con 2 cables. Leyendo Internet llegué a la conclusión deben ser motores de corriente continua sencillos en lugar de motores paso a paso, un hecho confirmado por esta increíblemente útil instructable "hackear el Nabaztag" por Liana_B, que yo leería aproximadamente un mes antes.
Una vez más gracias a la flexibilidad de Pi hay muchas maneras diferentes, que los motores pueden controlarse, pero decidí usar un tablero de Adafruit DC & sombrero Motor paso a paso . Yo he usado pantallas de Adafruit y baratijas antes y me encanta las instrucciones detalladas y ejemplos que vienen como estándar.
Usando una tabla con el sombrero (Hardware conectado en la parte superior) estándar significada el controlador motor cabrían pulcramente encima el Pí ocupando un mínimo espacio, y porque utiliza la interfaz I2C deja libre los pines GPIO que necesitaba para el botón de Alexa/Clap y LEDs.
Como era de esperar de soldadura el sombrero fue realmente sencillo, y pronto tuve montado sobre el PI y conectado hasta el oído de dos motores. Yo había planeado funcionar los motores de una potencia de usb del Banco para que lo haría sólo necesita un único enchufe, pero esto resultó no para tener suficientes reclutas, incluso luz no hasta el "trabajo" en el sombrero. En vez de eso decidí utilizar un adaptador de alimentación de CC para ejecutar el sombrero y los oídos, que convenientemente tenía uno de aquellos universales con puntas intercambiables prácticos. Lo que tenia era una toma de corriente para conectar el adaptador al sombrero. Yo estaba a punto de salir para Norwich Maplin (otra vez) cuando me acordé del desmontaje que cable de alimentación original de Nabaztag fue una clavija DC - por lo tanto podía simplemente volver a cable la toma original al sombrero - aseado! Al final también volver a usé la fuente de alimentación original de Nabaztag, como siempre la cantidad justa de potencia.
Con todo cableado y una sensible tensión seleccionadas tentativamente corrí el ejemplo python incluido con el sombrero de Motor DC, código de ejemplo que constantemente cambia la velocidad y dirección del motor para ilustrar las opciones de control diferentes. Estaba tan emocionada cuando funcionaba, mi primer motor controlado Pi! Pero luego me di cuenta de algo - un gimoteo agudo muy fuerte como quien ejecuta un dedo mojado alrededor de una copa de vino. Se trataba de nada bueno en todo, quería tener los oídos mover y notificaciones se están leyendo aunque no ensordecedor el ruido era muy sensible. He probado diferentes voltajes pero no cambio. En cuanto a Google me enteré de que esto puede suceder debido a PWM (modulación de anchura de pulso) y que un remedio puede soldar condensadores pequeños a través de los terminales del motor. En los motores de estos estaban ya en lugar. También experimenté con cambiar la frecuencia PWM pero aún ningún cambio. Después de practicar me di cuenta de que el ruido sólo ocurrió cuando la velocidad del motor se cambió por el código de bajo a alto - para que se ajuste a una velocidad alta constante elimina el lloriqueo en conjunto - ufff!
He creado un par de scripts de python de prueba basado en los ejemplos de Adafruit, uno para el movimiento durante las notificaciones y otro para hacer las orejas realizar un lleno de "circuito" en el inicio, con el objetivo de copiar el código de trabajo de éstos en las secuencias de comandos principal utilizados para manejar las interacciones de Alexa y Gmail/Ivona.