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

Radar 360° temps réel avec Arduino : guide pas à pas (ultrasons + double servo + stéganographie)

Composants et fournitures

Arduino UNO×1
Capteur ultrasons HC-SR04×1
Servos 180° (RobotGeek ou équivalent)×2
Fils de connexion×1 lot

Outils nécessaires

Applications et services en ligne

Principe

Deux servos montés en série (axe horizontal + axe vertical) permettent un balayage hémisphérique (360° en azimuth, 180° en élévation). Le capteur ultrasons mesure la distance à chaque pas. Les données (distance, angle) sont envoyées par série à un PC qui dessine le radar en temps réel. Après un tour complet, l'image précédente est sauvegardée et une nouvelle commence.

Fonctionnalité bonus : les données radar peuvent être encodées et cachées dans une image (stéganographie) pour transmission discrète.

Montage

Connecter le capteur ultrasons (Trig broche 9, Echo broche 10), servo horizontal (broche 2), servo vertical (broche 3). Le capteur est fixé sur le bras du servo vertical, lui-même monté sur le servo horizontal (voir schémas).

Code Arduino (Servo Control)

#include <Servo.h>
Servo Down, Up;
const int trigPin = 9, echoPin = 10;
int pos = 0, pos2 = 0, distance, _degrees;

void setup() {
  pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);
  Down.attach(2); Up.attach(3);
  Serial.begin(9600);
}

void loop() {
  Down.write(0); Up.write(0);
  for (pos = 0; pos <= 180; pos++) {
    Down.write(pos); _degrees = pos; dis(); delay(50);
    if (pos == 180) {
      for (pos2 = 0; pos2 <= 180; pos2++) {
        Up.write(pos2); _degrees = pos + pos2; dis(); delay(50);
      }
    }
  }
  for (pos = 180; pos >= 0; pos--) {
    Down.write(pos); Up.write(pos); delay(5);
  }
}

void dis() {
  digitalWrite(trigPin, LOW); delayMicroseconds(2);
  digitalWrite(trigPin, HIGH); delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  long duration = pulseIn(echoPin, HIGH);
  distance = duration * 0.034 / 2;
  Serial.print(distance); Serial.print(","); Serial.println(_degrees);
}

Application PC (Radar Drawer)

Un exécutable Windows (fourni en téléchargement : circular_draw_qP2ROsoPds.rar) reçoit les données série, trace le radar en temps réel, et permet l'encodage stéganographique. Code source C# / Visual Studio 2015 disponible sur demande.

Schémas

Trois schémas de câblage fournis (images).

Processus de fabrication

  1. Transfert de données magnétique sans fil Arduino + capteur 3D Infineon TLE493D
  2. Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
  3. Enregistreur de Température et Humidité Arduino avec DHT11 et Shield Ethernet
  4. Construire un Iron Man animé avec Arduino : capteurs, sons et relais
  5. Find Me : Localisateur d'objets intelligent avec Arduino et Bluetooth
  6. Construire un bras robotique 3D fonctionnel piloté par Arduino – Guide pas à pas
  7. Contrôleur d'humidificateur DIY avec Arduino et relais – Installation haute tension sécurisée
  8. Jeu Pong sur Matrice NeoPixel avec Arduino Nano
  9. Volant Joystick Arduino Personnalisé pour Jeux Vidéo