Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Entra en la casa como un Lord Sith

Componentes y suministros

Particle Photon
× 2
Arduino UNO
× 1
Adafruit Music Maker MP3 Shield
× 1
Sensor de movimiento PIR Adafruit
× 1
LED (genérico)
× 2
Resistencia 220 ohmios
× 2
cables de puente
× 1
Altavoz:3 W, 4 ohmios
× 1
Breadboard (genérico)
× 2
Cargador de pared USB Micro B
× 1
Cable USB-A a B
× 1
Male-Header 36 Position 1 Row - Long (0.1 ")
× 1

Herramientas y máquinas necesarias

Soldador (genérico)

Aplicaciones y servicios en línea

Nube de partículas

Acerca de este proyecto

Mi hija es una gran fan de Star Wars (aunque todavía no ha visto ninguna de las películas). No es de extrañar que estuviera muy contenta cuando le pregunté si quería construir un proyecto temático de Star Wars. No sé cuántas veces me ha hecho tocar la Marcha Imperial (la canción principal de Darth Vader) cuando está usando su disfraz de Darth Vader para poder hacer una gran entrada a la habitación. Por lo tanto, nos decidimos rápidamente por la idea de este proyecto:detectar automáticamente a alguien que llega a casa y luego activar la reproducción de la Marcha Imperial justo antes de que la persona entre a la casa.

Este es un proyecto bastante simple, por lo que es adecuado para principiantes. Lo encontré interesante porque es la primera vez que utilizo el patrón de publicación / suscripción desde / hacia la nube. También fue la primera vez que integré diferentes tipos de microcontroladores en un solo proyecto. Me encanta la simplicidad y la facilidad de uso de Photon cuando se trata de crear una solución conectada a la nube. Y no se puede superar la variedad y la magnitud del hardware adicional disponible para Arduino. Poder juntarlos tan fácilmente permitió que este proyecto se hiciera realidad rápidamente.


Paso 1:ensamble el sensor

Tiempo:10 minutos

Partes:fotón, resistencia de 220 ohmios, LED, sensor de movimiento PIR, placa de pruebas, cables de puente macho / macho, cable USB micro B

Herramientas:N / A

Primero, conecte el LED al Photon. Monte su Photon en la placa de pruebas. Luego conecte la resistencia entre el pin de tierra de un Photon y una fila abierta en la placa de pruebas. Finalmente, conecte la pata larga del LED a un PIN digital en el Photon (usé el pin D0) y la pata corta del LED a la fila abierta a la que está conectada la resistencia. Francamente, el LED es opcional, pero lo uso para indicar el estado del sensor, ya que el sensor PIR en sí no proporciona ninguna indicación de cuándo se detecta movimiento ni el Fotón proporciona ninguna indicación cuando publica el evento en la nube.

A continuación, conecte el sensor PIR al Photon. Monte el sensor PIR en la placa de pruebas:utilizo clavijas de cabezal hembra en ángulo recto para conectar el sensor PIR a la placa de pruebas, ya que esto me permite "asegurar" el sensor PIR a la placa de pruebas verticalmente. (Si no tiene clavijas de cabezal en ángulo recto, use cinta adhesiva de doble cara o una tachuela adhesiva para montar su sensor PIR en la mesa o lo que sea que lo esté montando y use cables de puente hembra / macho directamente del sensor PIR macho pines a la placa de pruebas.) Use cables de puente para conectar el GND del PIR al pin GND del Photon, el pin 5V del PIR al pin Vin del Photon y el pin de señal del PIR a un pin digital en el Photon (yo usé el pin D7).

Verifique dos veces la hoja de datos de su sensor para asegurarse de identificar correctamente los 5V, GND y el pin de señal del sensor, ya que su orden varía según el fabricante. Aunque mi sensor PIR funciona a 5 voltios, su pin de señal funciona a solo 3,3 V, por lo que se puede conectar directamente a un pin digital en el Photon. Nuevamente, revise la hoja de datos de su sensor para asegurarse de que el voltaje de la señal sea de 3.3V.

Encienda el conjunto a través del conector USB Micro B del Photon a una PC o una toma de corriente. Abra el IDE de partículas y pegue el código del sensor que se proporciona a continuación. Luego, muestre el código al Photon.

Ahora, si mueve la mano frente al sensor, el LED debería encenderse. Además, puede verificar sus registros en Particle Dashboard para ver que el evento fue publicado.

Paso 2:ensamble el gatillo

Tiempo:10 minutos

Partes:fotón, resistencia de 220 ohmios, LED, placa de pruebas, cables de puente macho / hembra

Herramientas:NA

Conecte el LED y la resistencia al fotón tal como lo hizo en el paso anterior. Nuevamente, el LED es opcional, pero me parece útil para indicar cuándo se recibe un evento de la nube de partículas. A continuación, conecte el extremo macho de los cables de puente al Vin de Photon, GND y un pin digital (usé el pin D7). El pin digital del Photon se conectará a uno de los pines GPIO del Music Maker para activar la música. Las conexiones Vin y GND de Photon se utilizarán para alimentar el Photon desde Arduino.

Pero primero, antes de conectarse al Arduino, encienda el conjunto a través del conector USB Micro B del Photon a una PC o una toma de corriente. Abra el IDE de partículas y pegue el código de activación que se proporciona a continuación. Luego, muestre el código al Photon; asegúrese de haber seleccionado el dispositivo correcto para actualizar el código ahora que tiene dos dispositivos conectados al IDE de partículas.



Paso 3:ensambla el escudo de Arduino y Music Maker

Tiempo:20 minutos

Partes:Arduino Uno, escudo Adafruit Music Maker, Photon, resistencia de 220 ohmios, LED, mini placa de pruebas, cables de puente, cable USB

Herramientas:soldador

Los pines de encabezado se incluyen con el protector de Music Maker, sin embargo, debe soldarlos. Además de los pines del cabezal para conectar el escudo al Arduino, agregué pines macho del cabezal en la parte superior del escudo para GPIO y conexiones de alimentación del Photon. (Si tuviera pines de encabezado hembra, los habría usado para que solo necesitara cables de puente macho / macho. Pero solo tenía pines de cabezal macho a mano (además de cables de puente macho / hembra), así que decidí ruta en su lugar.)

Conecte el cable de puente del pin digital del Photon a un pin GPIO en el escudo (usé el pin 7 en el escudo). Conecte el puente del Vin del Photon al pin 5v en el escudo y el puente GND al pin GND del escudo.

Por último, conecte su (s) altavoz (s) a los bloques de terminales en el blindaje; hay un bloque de terminales para un altavoz derecho y otro para un altavoz izquierdo. Acabo de conectar un altavoz; rescaté un pequeño altavoz de uno de los juguetes rotos de mi hija antes de tirarlo.

Conecte el Arduino a su máquina de desarrollo, pegue el boceto de Arduino a continuación en el IDE de Arduino y cárguelo.

Eso es. Camine frente al sensor y siéntese y espere a que comience la música.

Acerca del código

Como mencioné anteriormente, esta fue la primera vez que usé el patrón de publicación / suscripción. Fue bastante fácil de hacer con Photon. En el código del sensor, cuando el pin de señal del sensor PIR se pone ALTO, enciendo el LED y publico un evento en la nube de partículas. La publicación de un evento solo requiere una línea:

Published =Particle.publish ("movimiento detectado", NULL, 60, PRIVATE);

Inicialmente, no hice que la publicación fuera privada, no me importaba ya que no hay información de identificación personal. Pero, cuando fui a suscribirme al evento, recibí muchas falsas alarmas; aparentemente, muchos otros usuarios están publicando eventos orientados al "movimiento". Entonces, cambié la llamada de suscripción para suscribirme solo a eventos desde mis dispositivos agregando el parámetro "MY_DEVICES":

Particle.subscribe ("movimiento", soundAlarm, MY_DEVICES);

Y para que la función de suscripción se limite solo a mis dispositivos, tuve que hacer que la publicación fuera privada.

El código de activación simplemente llama al controlador de eventos, soundAlarm, cuando ocurre el evento de movimiento. Todo lo que hace el controlador de eventos es encender el LED y poner el pin GPIO en el escudo de Music Maker ALTO. El boceto de Arduino detecta que el pin GPIO está ALTO y luego espera 60 segundos (para que estacione mi auto, recoja mis cosas y entre a la casa) antes de reproducir el archivo MP3 en la tarjeta SD.


Implementar el proyecto

Configuré el sensor en el garaje en los estantes justo al lado de donde estaciono mi auto. Coloqué el gatillo y el Arduino con el escudo y el altavoz de Music Maker en la encimera de la cocina, ya que mi hija suele estar en la mesa de la cocina cuando llego a casa. Ambas ubicaciones tienen enchufes de pared cercanos, lo que facilitó la alimentación de ambas partes del proyecto.

Código

  • Código del sensor
  • Código de activación
  • Código de protección de Arduino y Music Maker
Código del sensor C / C ++
Código de muestra para el fotón que publica un evento en la nube de partículas cada vez que se detecta movimiento.
 // define el LED en el pin D0int led =D0; // define la entrada del sensor PIR en el pin D6int pir =D6; // track si la publicación fue exitosa o no; bool publicado; void setup () {// establece el pin LED como pinMode de salida (led, OUTPUT); // establece el pin de entrada del sensor PIR como input pinMode (pir, INPUT); // asegúrese de que el LED esté apagado digitalWrite (led, LOW);} void loop () {if (digitalRead (pir) ==HIGH) // si se detecta movimiento {// enciende el LED como un indicador de que fui detectado digitalWrite (led, ALTO); publicado =Partícula.publish ("movimiento detectado", NULO, 60, PRIVADO); if (! Published) // si la publicación no tuvo éxito {// parpadea el LED 10 veces como un indicador de la falla de publicación para (int i =0; i <10; i ++) {digitalWrite (led, LOW); retraso (500); digitalWrite (led, ALTO); retraso (500); }}} else // si no se detecta movimiento, apague el LED digitalWrite (led, LOW); // espere 2 segundos antes de tomar otra demora de lectura (2000);} 
Código de activación C / C ++
Código de muestra para el Photon que se suscribe a eventos de movimiento en la nube de partículas publicada por mi sensor y luego activa el escudo de Music Maker para reproducir el MP3.
 // definir el LED en el pin D0int led =D0; // definir el disparador para Arduino en el pin D7int trigger =D7; void soundAlarm (const char * event, const char * data) {// cuando se ha activado el evento de movimiento // enciende el LED digitalWrite (led, HIGH); // enciende el disparador digitalWrite (disparador, ALTO); // espera dos segundos de retraso (2000); // apaga el disparador digitalWrite (disparador, BAJO); // apaga el LED digitalWrite (led, LOW);} void setup () {// suscríbete a eventos de movimiento solo desde mis dispositivos // define soundAlarm como el controlador de eventos Particle.subscribe ("motion", soundAlarm, MY_DEVICES); // establece el pin LED como salida pinMode (led, OUTPUT); // establece el pin de activación como salida pinMode (trigger, OUTPUT);} void loop () {} 
Código protector de Arduino y Music Maker Arduino
Código de muestra para que Arduino reproduzca MP3 a través del protector de Music Maker basado en el disparador del Photon conectado.
 / ********************** ************************************ Este boceto reproduce un MP3 de la tarjeta SD utilizando Adafruitt Music Escudo del fabricante cuando se activa por un fotón que está conectado a uno de los pines GPIO del escudo. Gracias a Adafruit por el tutorial y la biblioteca bien escritos. https://learn.adafruit.com/adafruit-music-maker-shield-vs1053-mp3-wav-wave-ogg-vorbis-player/pinouts ***************** ****************************************** /// incluir SPI, Las bibliotecas de Music Maker y SD # incluyen  #include  #include  // Define los pines utilizados para el protector del fabricante de música # define SHIELD_RESET -1 // PIN de reinicio VS1053 (¡sin usar! ) #define SHIELD_CS 7 // Pin de selección de chip VS1053 (salida) #define SHIELD_DCS 6 // Pin de selección de comando / datos VS1053 (salida) #define CARDCS 4 // Pin de selección de chip de tarjeta // DREQ debe ser un pin Int, ver http ://arduino.cc/en/Reference/attachInterrupt#define DREQ 3 // VS1053 Solicitud de datos, idealmente un pin de interrupción // definir el reproductor de música // define el pin GPIO en el que se conecta el fotónint photonPin =7; void setup () {// inicializa el reproductor de música musicPlayer.begin (); // inicializar la tarjeta SD SD.begin (CARDCS); // Establece el volumen de los canales izquierdo y derecho. números más bajos ==volumen más alto! musicPlayer.setVolume (1,1); // Si DREQ está en un pin de interrupción (en uno, # 2 o # 3) // podemos reproducir audio de fondo pero no // se está usando en esta fase inicial del proyecto // inicializar la interrupción DREQ // musicPlayer.useInterrupt (VS1053_FILEPLAYER_PIN_INT); // inicializa el pin GPIO al que está conectado el fotón como entrada musicPlayer.GPIO_pinMode (photonPin, INPUT);} void loop () {if (musicPlayer.GPIO_digitalRead (photonPin) ==HIGH) {// espera 60 segundos antes de reproducir de modo que estoy // entrando en la casa justo después de que comience la demora (60000); // Reproduce el archivo, no regreses hasta que esté completo musicPlayer.playFullFile ("track001.mp3"); } retraso (500);} 

Esquemas

sensor.fzz trigger.fzz

Proceso de manufactura

  1. ¿Cuáles son los componentes utilizados en una máquina CNC
  2. Los componentes clave de una buena comunicación en una crisis
  3. ¿Cómo será el futuro de la fabricación?
  4. The Annoy-O-Bug:Un lanzador chirriante y luminoso
  5. ¿Está lista la nanotecnología para entrar en la guerra de seguridad de IoT?
  6. ¿Cuáles son los componentes de un sistema de aire comprimido?
  7. ¿Qué sucede con los diversos componentes de la grúa durante las modernizaciones?
  8. ¿Cómo será el técnico del futuro?
  9. Los componentes principales de las máquinas de sierra de cinta
  10. La guía definitiva para diseñar piezas mecanizadas
  11. El mercado de los componentes aeroespaciales y de los componentes aeronáuticos de precisión