Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Interrupteur lumineux sans fil intelligent : Manipulateur d'interrupteur piloté par Arduino

Composants et fournitures

Arduino UNO ×2 (1 maître + 1 esclave)
Servomoteur Tower Pro MG996R ×1
Modules RF 433 MHz (émetteur + récepteur) ×1 paire

Outils et machines nécessaires

Applications et services en ligne

À propos du projet

Idée

Ne plus avoir à se lever pour éteindre la lumière une fois au lit. Cette solution actionne physiquement l'interrupteur mural via un servo, commandé à distance par liaison radio 433 MHz. Utile aussi pour : enfants trop petits, personnes à mobilité réduite.

Le projet

Basé sur la communication entre deux modules 433 MHz (un émetteur sur la télécommande, un récepteur sur l'actionneur). La fiabilité RF peut varier : si instable, ajustez les seuils dans Slave_Servo.ino :

const unsigned int upperThreshold = 70;
const unsigned int lowerThreshold = 50;

Câblage

Simple : bouton sur Arduino maître + émetteur ; servo sur Arduino esclave + récepteur. Schémas fournis en section schémas.

Fixation murale (impression 3D)

Le support de servo se colle sur l'interrupteur (bandes Command ou velcro – évitez la colle forte). Conçu sous OpenSCAD (mhacks_lightswitchv4.stl), le trou de passage du levier est paramétrable pour s'adapter à votre interrupteur.

Projet final

Présenté au hackathon MHacks. Pour installation permanente : boîtier Arduino imprimé 3D + breadboard, fixés au mur (bandes Command).

Évolutions futures

Code

Slave_Servo.ino (Arduino esclave + récepteur + servo)

#define rfReceivePin A0
#define ledPin 13
#include 
Servo servo;
unsigned int data = 0;
const unsigned int upperThreshold = 70;
const unsigned int lowerThreshold = 50;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  servo.attach(9);
}

void loop() {
  data = analogRead(rfReceivePin);
  if (data < upperThreshold) {
    digitalWrite(ledPin, LOW);
    servo.write(0);    // Position OFF
  }
  if (data > lowerThreshold) {
    digitalWrite(ledPin, HIGH);
    servo.write(90);   // Position ON
  }
}

Master_Remote.ino (Arduino maître + émetteur + bouton)


#define rfTransmitPin 4
#define buttonPin 2
#define led 13

void setup() {
  pinMode(rfTransmitPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  pinMode(led, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int buttonState = digitalRead(buttonPin);
  if (buttonState == HIGH) {
    digitalWrite(rfTransmitPin, HIGH);
    digitalWrite(led, HIGH);
    Serial.println("transmit");
    delay(10);
  } else {
    digitalWrite(rfTransmitPin, LOW);
    digitalWrite(led, LOW);
    Serial.println("no");
  }
}

Pièces personnalisées

Schémas

Deux schémas : câblage maître (bouton + émetteur 433 MHz) et esclave (récepteur 433 MHz + servo + LED). Disponibles en section schémas.

Processus de fabrication

  1. Créer un système Ambilight spectaculaire pour moniteur avec Arduino
  2. Transfert de données magnétique sans fil Arduino + capteur 3D Infineon TLE493D
  3. Créer un jeu Pong classique sur Arduino UNO avec écran OLED – Tutoriel étape par étape
  4. Détecteur de fréquence audio Arduino — Mesurer le pic sonore avec module haute sensibilité
  5. Construisez votre propre Tamagotchi Arduino : Un animal de compagnie numérique DIY
  6. Adaptateurs MIDI USB-BLE sans fil – Connectivité transparente pour musiciens
  7. Morpion sur matrice LED MAX7219 avec boîtier en carton
  8. Pistolet à eau intelligent à détection de mouvement avec Arduino Nano
  9. Construire un minuteur à rebours Arduino fiable avec afficheur 7 segments SparkFun