Caméra de détection de mouvement Android contrôlée par un MCU Arduino
Composants et fournitures
| Composant | Quantité |
|---|---|
| Arduino UNO | 1 |
| Capteur ultrasonique HC-SR04 | 1 |
| LED blanche | 1 |
| LDR (photorésistance) | 1 |
| Plaque d'essai (breadboard) | 1 |
| Fils de connexion (jumper wires) | 1 |
À propos du projet
Bonjour à tous. Nos smartphones intègrent divers capteurs utilisés par de nombreuses applications. Mais parfois, nous avons besoin d'ajouter des capteurs externes ; pour cela, nous utilisons un Arduino ou un microcontrôleur. Comme le titre l'indique, je vais décrire comment réaliser une caméra à détection de mouvement avec un smartphone et un Arduino.
Mise en route
Coupez les fils audio gauche/droite d'un casque. Vous verrez un fil rouge (microphone) et un fil noir (masse). Soudez des fils de connexion sur ces deux conducteurs.
Câblage
Réalisez le circuit Arduino comme suit :
- Broche Arduino 2 → LED blanche
- Broche Arduino 6 → Trig (capteur ultrasonique)
- Broche Arduino 7 → Echo (capteur ultrasonique)
- Alimentez le capteur ultrasonique en 5 V.
Pour la prise casque :
- Fil rouge → une patte du LDR
- Fil noir → l'autre patte du LDR
Le LDR doit faire face à la LED blanche. Vous pouvez isoler l'ensemble avec du ruban adhésif noir.
Alimentez l'Arduino, branchez la prise casque sur votre smartphone, ouvrez l'application appareil photo. Placez un objet devant le capteur ultrasonique : le téléphone prendra des photos automatiquement. Fabriquez ensuite un boîtier esthétique.
Félicitations ! Vous avez réalisé votre propre caméra à détection de mouvement.
Fonctionnement
Le capteur ultrasonique mesure la distance. Lorsque celle-ci devient inférieure à 30 cm, l'Arduino allume la LED. La lumière fait chuter la résistance du LDR, ce qui simule l'appui sur le bouton de volume du casque (raccourci obturateur dans l'application caméra). L'association LED + LDR forme un optocoupleur.
Code source
#define pingTrig 6
#define pingEcho 7
int cameratrigger = 2;
int led = 3;
void setup() {
Serial.begin(9600);
pinMode(pingTrig, OUTPUT);
pinMode(pingEcho, INPUT);
delay(200);
pinMode(led, OUTPUT);
pinMode(cameratrigger, OUTPUT);
}
void loop() {
long duration, inches, cm;
digitalWrite(pingTrig, LOW);
delayMicroseconds(2);
digitalWrite(pingTrig, HIGH);
delayMicroseconds(10);
digitalWrite(pingTrig, LOW);
duration = pulseIn(pingEcho, HIGH);
cm = duration / 29 / 2;
Serial.print("-->");
Serial.println(cm);
if (cm < 30) {
digitalWrite(cameratrigger, HIGH);
digitalWrite(led, HIGH);
delay(200);
digitalWrite(cameratrigger, LOW);
digitalWrite(led, LOW);
delay(200);
}
}
Schéma
Une image de câblage est fournie dans le projet original.
Processus de fabrication
- Maîtriser le GPIO Raspberry Pi : Interfacer un capteur PIR de mouvement sur B+/Modèle 2
- Comment connecter, calibrer et programmer le capteur de mouvement PIR HC‑SR501 avec un Raspberry Pi
- Contrôler la Luminosité de LEDs par PWM avec un Bouton Poussoir sur Arduino Mega
- Dispositif de mesure précis de pression et débit d'air avec capteur analogique
- Construire un jeu gyroscopique temps réel avec Arduino Nano et capteur MPU-6050
- Caméra de sécurité ESP32 à détection de mouvement pour Discord
- Projet capteur DHT11 température/humidité avec indicateurs LED et buzzer piézo
- Capteur CO2 K30 : Surveillance en temps réel de la qualité de l'air intérieur
- Unopad : contrôleur MIDI Arduino fluide pour Ableton Live