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

Projet Fil Laser Arduino : Construire un Détecteur d'Intrusion Simple

Composants et fournitures

Composant Description Quantité
Arduino UNO Ou carte compatible 1
Plaque d'essai sans soudure demi-taille Montage 1
Résistance 10 kΩ Pour diviseurs de tension 3
Fils de liaison (jumper wires) génériques Connexions 1
Photorésistance (LDR) Détection du faisceau laser 2
Diode laser Source du faisceau 1
Bouton poussoir 12mm SparkFun Changement de mode (configuration/armé) 1
Buzzer Alarme sonore 1

Applications et services en ligne

À propos du projet

Construction d'un fil laser (Laser Tripwire)

Composants

L'auteur a utilisé une plaque d'essai séparée pour le circuit de détection laser, facilitant l'alignement du laser sur la photorésistance.

Fabrication du détecteur laser

Deux photorésistances sont montées en diviseurs de tension avec les résistances 10 kΩ. L'une détecte le faisceau laser (connectée sur A0), l'autre mesure la lumière ambiante (connectée sur A1) pour compenser les variations d'éclairage. Les sorties sont reliées aux entrées analogiques de l'Arduino.

Installation du buzzer

Le buzzer est connecté entre la borne négative (rail GND) et la broche 3 de l'Arduino (PWM).

Fabrication du bouton

Le bouton est monté avec une résistance de rappel 10 kΩ vers la masse. L'intersection bouton/résistance est connectée à la broche 4 de l'Arduino. L'autre borne du bouton va au +5V.

Connexion du laser

Le laser est alimenté par la broche 2 (commande) et la masse. Un laser bon marché a été « hacké » en connectant des pinces crocodile au ressort et au boîtier, avec du Velcro pour maintenir le bouton enfoncé.

Logique du programme

Le programme vérifie en permanence l'état du bouton :

Mode configuration :

Mode armé :

Mode alarme (Trip) :

Code

// Fil laser 5 broches
int mode = 1;
int ambiant;
int trip = 1000;
int minLight = 900;
int makeBeep = 1;
int atAverage;
long millisCount;
int laserPin = 2;
int ledPin = 13;
int buzzerPin = 3;
String modeNames[3] = {"SETTINGS","ARMED","TRIP"};
int modePin = 4;
int tripPin = A0;
int ambiantPin = A1;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(laserPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  pinMode(modePin, INPUT);
  Serial.begin(9600);
}

void loop() {
  if (digitalRead(modePin) == 1) {
    trip = analogRead(tripPin);
    mode = mode + 1;
    if (mode >= 2) mode = 0;
    beep(1);
    delay(300);
  }
  switch (mode) {
    case 0: // Calibration
      digitalWrite(laserPin, HIGH);
      ambiant = analogRead(ambiantPin);
      trip = analogRead(tripPin);
      atAverage = ambiant + ((trip - ambiant)/2);
      stats();
      if (trip >= minLight) digitalWrite(ledPin, HIGH);
      else digitalWrite(ledPin, LOW);
      break;
    case 1: // Armé
      digitalWrite(laserPin, HIGH);
      digitalWrite(ledPin, LOW);
      ambiant = analogRead(ambiantPin);
      atAverage = ambiant + ((trip - ambiant)/2);
      if (analogRead(tripPin) < atAverage) mode = 2;
      if ((millis() - millisCount) >= 3000) {
        millisCount = millis();
        stats();
      }
      break;
    case 2: // Alarme
      if ((millis() - millisCount) >= 1000) {
        millisCount = millis();
        stats();
        beep(3);
        mode = 1;
      }
      break;
  }
  delay(1);
}

void beep(int qty) {
  if (makeBeep == 1) {
    for (int count = 1; count <= qty; count++) {
      digitalWrite(buzzerPin, HIGH);
      delay(50);
      digitalWrite(buzzerPin, LOW);
      delay(50);
    }
  }
}

void stats() {
  Serial.print("A:"); Serial.print(ambiant);
  Serial.print(" T:"); Serial.print(trip);
  Serial.print(" AT:"); Serial.print(atAverage);
  Serial.print(" MODE:"); Serial.print(modeNames[mode]);
  Serial.println("");
}

Schémas

Vue plaque d'essai et schéma électrique fournis en images.

Processus de fabrication

  1. Poupée interactive « Squid Game » avec Arduino UNO – Projet DIY
  2. Horloge Arduino temps réel pour les heures de prière islamiques
  3. Robot de détection humaine basé sur Arduino Uno : Intégration capteurs étape par étape
  4. Serveur Web Arduino Uno WiFi : Commander une LED via Navigateur
  5. Calculatrice basique Arduino UNO - Projet facile pour débutants
  6. Afficher des images sur un écran TFT 1,17 pouces avec Arduino UNO
  7. Construire un affichage à persistance rétinienne portable avec Arduino UNO et ATtiny85
  8. Maîtriser une matrice LED 8×8 avec Arduino Uno : Guide pas à pas
  9. Contrôle de ventilateur PWM 4 broches 25 kHz avec Arduino Uno – Construction, code et test