Bloody Lola en Omega 2 o Python asfixiante en Halloween

Nunca entendí estas vacaciones. Pero la idea nació. Haz una muñeca espeluznante que brille con sus ojos y produzca sonidos espeluznantes.

imagen Una cabeza de niño genial apareció bajo esto (gracias Anton) y un concurso de Cebolla con un sorteo de ballenas especiales, que la conciencia no me permite comprar. Si es así, hice el cerebro de la niña Lola en Omega 2, usando mis mejores prácticas del artículo anterior.

Todos los que estén interesados ​​en cómo repetir tal cosa, por favor, debajo del gato.

Necesitaremos: dos LED, un altavoz, una fuente de alimentación de 12 voltios, un sensor de movimiento (solo necesita 12 voltios), un convertidor de potencia de 3,3 voltios, un convertidor de potencia de 5 voltios, un amplificador simple (cualquier clase D con fuente de alimentación de 3-12 voltios) y Omega 2. Aún así, opcionalmente, necesitará una unidad flash USB o una tarjeta SD para ampliar el espacio en disco.

Abrimos la muñeca y colocamos los LED en los ojos y el altavoz en el área de la boca con adhesivo termofusible. Emitimos el cableado al área del cerebro Omega 2. Soldamos el altavoz al amplificador, conectamos los LED a los transistores de efecto de campo ... En general, ensamblamos el siguiente circuito.

imagen

En lugar de un convertidor de 5 voltios, puede tomar una fuente de alimentación dual para 5 y 12 voltios, que está más cerca.

A continuación, vaya a la configuración del software. Si desea utilizar el sonido i2s, instalamos el firmware b193 en omega, porque más i2s no funciona. De lo contrario, puede insertar una tarjeta de sonido en el USB y luego configurar el sonido para esta guía . Si está haciendo lo que yo hice, entonces escribí aquí sobre trabajar con el sonido i2s. Nos conectamos a wifi y aumentamos el espacio en disco omega 2. Todo se detalla en el manual aquí . Después de eso realizamos

opkg update opkg install alsa-utils mpg123 python pyOnionGpio nano 

Ahora nuestro omega ya casi puede hablar y solo queda escribir un código Python para este negocio. La lógica es simple. El sensor de movimiento abre el circuito entre los dos GPIO. Por un lado, alimentamos una unidad lógica cuando se enciende (tengo 15 salidas), leemos el valor de la segunda (uso 17 salidas). Cuando hay 0 (porque el sensor PIR ha activado y abierto la línea), comenzamos a reproducir sonidos terribles y parpadear los LED. El resto del tiempo estamos en silencio y no tocamos a nadie. La implementación de todo esto se ve así.

 import onionGpio import subprocess import random gpioOut = onionGpio.OnionGpio(15) gpioOut.setOutputDirection(0) gpioOut.setValue(1) gpioObj = onionGpio.OnionGpio(17) status = gpioObj.setInputDirection() while True: #   value = gpioObj.getValue() #   if int(value)==0: cmd = "fast-gpio pwm 18 " + str(random.randint(5,15)) + " 50" subprocess.call(cmd, shell=True) cmd = "fast-gpio pwm 19 " + str(random.randint(2,10)) + " 50" subprocess.call(cmd, stdout=subprocess.PIPE, shell=True) cmd = "mpg123 -f 256 -C /mnt/sda1/" + str(random.randint(1,6)) + ".mp3" subprocess.call(cmd, shell=True) #   else: subprocess.call("fast-gpio set 18 0", shell=True) subprocess.call("fast-gpio set 19 0", shell=True) 

Los archivos de sonidos espeluznantes se agregan a / mnt / sda1 bajo los nombres 1.mp3, 2.mp3 ... Tengo 6. y uno de ellos se enciende aleatoriamente. La frecuencia de las salidas PWM del Omega 2 también se activa aleatoriamente por separado debajo de los ojos izquierdo y derecho. Sería posible usar hardware PWM, pero aquí la posible inestabilidad de frecuencia es una ventaja. Luego escribimos dos líneas en rc.local ejecutando el comando nano /etc/rc.local

 omega2-ctrl gpiomux set i2s i2s python /mnt/sda1/start.py 

Como creo que adivinó el script que cité anteriormente, debe guardarlo en el directorio / mnt / sda1 con el nombre start.py .

El siguiente es el último paso. El mas creativo. Maquillaje. Acabo de preguntarle a mi esposa (tramposa) y ella fue genial. Muchas gracias

imagen

Puedes ver cómo funciona todo con el sonido en el siguiente video. En la oscuridad, "Eater of Male Hearts" de Lola se ve bastante espeluznante, para ser honesto. Espero que lo hayas disfrutado. Gracias por su atencion!


¿Y qué productos caseros terribles hiciste?

Source: https://habr.com/ru/post/es427893/


All Articles