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

Manipulador de interruptor de luz inalámbrico

Componentes y suministros

Arduino UNO
× 2
Servos (Tower Pro MG996R)
× 1
Módulo de transmisión y recepción de 433 MHz
× 1

Herramientas y máquinas necesarias

Impresora 3D (genérica)

Aplicaciones y servicios en línea

Arduino IDE

Acerca de este proyecto

Ideación

Así que no soy fanático de levantarme una vez que he decidido quedarme dormido. A veces solo quiero leer un poco antes de quedarme dormido y necesito que la luz esté encendida. Así que decidí hacer este manipulador de interruptores de luz.

Me di cuenta de que esto tiene un par de otras implicaciones:

  • Niños que son demasiado bajos para alcanzar el interruptor
  • Personas con movilidad reducida

El Proyecto

Este proyecto se basa en gran medida en que las placas de RF de 433 MHz se comunican entre sí. A veces esto puede ser una gran hazaña. Si el código no funciona bien para usted, intente modificar estos valores en Slave_servo.ino:

  const unsigned int upperThreshold =70; // valor de umbral superior const unsigned int lowerThreshold =50; // valor de umbral inferior  
  • Master_Remote.ino se conecta al Arduino con el transmisor
  • Slave_Servo.ino va en el mismo Arduino que el receptor

Cableado

El cableado para esto es bastante simple, solo use las imágenes en este enlace y las imágenes en "Esquemas".

Nota

  • El botón va en el mismo Arduino que el transmisor, y el servo va en el mismo Arduino que el receptor.

Montaje en pared

En cuanto al soporte para el servo en la pared, necesitará acceso a una impresora 3D. El montaje del servo se ha modelado en OpenSCAD, es posible que deba cambiar la ubicación del orificio. He incluido el archivo OpenSCAD, para que se puedan modificar los parámetros del agujero. Querrá imprimir mhacks_lightswitchv4.stl para empezar.

Una vez impreso, asegure el servo y adhiera la montura en el interruptor (esto se puede hacer con algo tan simple como tiras de comando, o si está realmente seguro de que le gusta, superpegamento (no recomiendo esto).

Proyecto final

Aquí está el proyecto final (lo envié para un hackathon en línea llamado Mhacks).

Para que la configuración sea más permanente, es posible que desee imprimir una carcasa Arduino. Este caso funciona muy bien. Puede montarlo, así como la placa de pruebas en la pared, usando tiras de comando.

Desarrollos futuros

  • Utilice una placa basada en ESP8266 para controlar el servo, en lugar de 2 Arduinos
  • Haga una cubierta de interruptor de luz que incorpore un servo de manera más elocuente
  • Desarrolle el código de Alexa de manera que pueda ser controlado por voz

Código

  • Slave_Servo.ino
  • Master_Remote.ino
Slave_Servo.ino Arduino
 #define rfReceivePin A0 // Pin del receptor de RF =Pin analógico 0 #define ledPin 13 // LED integrado =pin digital 13 #include  Servo servo; unsigned int data =0; // variable utilizada para almacenar datos recibidos const unsigned int upperThreshold =70; // valor de umbral superior const unsigned int lowerThreshold =50; // valor de umbral inferior void setup () {pinMode (ledPin, OUTPUT); Serial.begin (9600); servo.attach (9); } bucle vacío () {datos =analogRead (rfReceivePin); // escucha los datos en el pin analógico 0 if (data  lowerThreshold) {digitalWrite (ledPin, HIGH); // Si se recibe una señal ALTA, ENCIENDA el LED Serial.println (data); servo.write (90); }} 
Master_Remote.ino Arduino
 #define rfTransmitPin 4 // RF Transmitter pin =digital pin 4 #define buttonPin 2 #define led 13 void setup () {// ponga su código de configuración aquí, para ejecutar una vez:pinMode (rfTransmitPin, OUTPUT); pinMode (buttonPin, INPUT); pinMode (led, SALIDA); Serial.begin (9600);} int buttonState =0; void loop () {// ponga su código principal aquí, para que se ejecute repetidamente:buttonState =digitalRead (buttonPin); if (buttonState ==HIGH) {// enciende el LED:digitalWrite (rfTransmitPin, HIGH); digitalWrite (led, ALTO); Serial.println ("transmitir"); retraso (10); } else {// apaga el LED:digitalWrite (rfTransmitPin, LOW); digitalWrite (led, BAJO); Serial.println ("no"); }} 

Piezas y carcasas personalizadas

mhacks_lightswitch_hpXQkie6X4.scad
Caja de Arduino
Archivo CAD en thingiverse.com

Esquemas


Proceso de manufactura

  1. Hacer Monitor Ambilight usando Arduino
  2. Transferencia de datos magnética inalámbrica
  3. Juego Arduino Pong - Pantalla OLED
  4. Detector de frecuencia de audio
  5. Clon Arduino Tamagotchi - Mascota digital
  6. Adaptadores MIDI inalámbricos USB-BLE
  7. Tech-TicTacToe
  8. Pistola de agua con sensor de movimiento
  9. Temporizador de cuenta atrás de Arduino
  10. Arduino Sunflower:Un Sun-Dancer electrónico
  11. RC Porsche Car (Proyecto Arduino)