» Elektronik » Arduino »Einfacher Entfernungsmesser auf Arduino

Einfacher Arduino Entfernungsmesser


Guten Tag Liebhaber hausgemacht! Heute werden wir einen einfachen Entfernungsmesser montieren Arduino Pro Mini. Das Gerät kann einen Abstand von 2 bis 400 cm messen. Der Fehler dieses Geräts erreicht je nach gemessenem Abstand nur +/- 1-5 cm.

Werkzeuge und Materialien
-Arduino Pro mini
Sensor HC-04
- Anzeige auf tm1637
-Wire (ich habe - MGTF 0.12)
-Programmer
-Plastikgehäuse
-Li-On-Batterie
-Kleiner Schalter
- Ladetafel am TP4056
Sekundenkleber
-Lötkolben
-Solder
Kolophonium
Bohren, bohren usw.

Schritt eins. Schema:
Nach dem Schema ist alles einfach, ohne Zusätze.


Schritt zwei. Fallvorbereitung:
Zuerst probieren wir den Sensor an und bohren zwei Löcher für 15 mm.

Machen Sie als nächstes ein Loch für einen Micro-USB-Anschluss mit einem 3-3,5-mm-Bohrer.

Wir wählen einen Bohrer für den Durchmesser des Schalters und des Bohrers.

Auf dem Deckel machen wir ein „Fenster“ für die Sieben-Segment-Anzeige (auf dem Foto ohne Verarbeitung) und beenden alle Unregelmäßigkeiten mit einer Datei.


Schritt drei. Firmware:
In der Skizze werden Variablen hervorgehoben, die für Sie angepasst werden können. Der gesamte Code ist auskommentiert.

#include  // Bibliotheken für die Arbeit
#include 
// ------------- Zum Konfigurieren --------------------------------- --------------------------------
bool Long = 0; // 0 - Messen Sie die Länge vom Sensor
               // 1 - Messen Sie die Länge von der Gehäusewand, die dem Sensor gegenüberliegt
vorzeichenloser int corpus = 10; // Abstand vom Sensor zur gegenüberliegenden Gehäusewand (in Zentimetern)

#define CLK 2 // Pins zum Verbinden
# DIO definieren 3
#define TRIG 4
# ECHO definieren 5
// ------------------------------------------------ ----------------------------------------------
vorzeichenloser int impulse = 0; // Variablen zur Berechnung
unsigned int sm = 0;

GyverTM1637 disp (CLK, DIO);
void setup () {
 PinMode (TRIG, OUTPUT); // als Ausgabe setzen
 pinMode (ECHO, INPUT); // als Eingabe setzen
 Disp. Helligkeit (7); // Helligkeit 0-7
 disp.point (0); // Schalte den Doppelpunkt aus
  disp.clear (); // lösche den Indikator
}}

void loop () {
 digitalWrite (TRIG, HIGH); // 5 Volt liefern
  delayMicroseconds (10); // Verzögerung von 10 Mikrosekunden
  digitalWrite (TRIG, LOW); // 0 servieren
 
  Impuls = ImpulsIn (ECHO, HOCH); // Pulslänge messen
  sm = Impuls / 58; // in Zentimeter umrechnen

  if (Long == 1) {// Einstellungen überprüfen
    sm = sm + Korpus;
  }}

  if (sm <= 2) {// null falsche Werte
    sm = 1;
  }}
  if (sm> = 405) {
    sm = 1;
  }}

  int integer = sm / 10;
  int decimal = sm% 10;
  dezimal = dezimal * 10;
 disp.displayClock (Ganzzahl, Dezimalzahl); // Ausgabe an Indikator

  Verzögerung (300); // Verzögerung 0,3 Sek. zwischen Wertausgabe
}}

Schließen Sie als nächstes den Programmierer und das Flash-MK an.


Vierter Schritt: Montage:
Da das Gerät mit Batteriestrom betrieben wird, benötigen wir keine zusätzliche Ladung. Daher löten wir auf der Arduino-Platine die LEDs und den Reset-Knopf (um die Größe zu reduzieren).

Kleben Sie die Batterie auf Sekundenkleber auf das Gehäuse. Wir kleben die Ladetafel auf den Akku, installieren den Schalter und löten alles gemäß dem Schema.

Wir kleben den Sensor auf das Gehäuse und löten alles gemäß dem Schema. Zuerst kam die Idee, die Platine auf doppelseitiges Klebeband zu kleben, aber dann wurde beschlossen, sie auf Sekundenkleber zu kleben. Der Indikator kann angeschraubt oder geklebt werden.


Fünfter Schritt. Test:
Hinweis: Das vierte Segment zeigt immer 0 an. Dies soll sicherstellen, dass das letzte Segment nicht leer ist. Wenn sich herausstellt, dass der Messwert 270 beträgt, bedeutet dies, dass der Abstand 27 cm beträgt.

Natürlich kann das Zeugnis mit dem Lineal überprüft werden.
8
8.3
7.6

Kommentar hinzufügen

    • lächelnlächeltxaxaokweiß nichtYahoonea
      ChefKratzerDummkopfjaja-jaaggressivGeheimnis
      Entschuldigungtanzendance2Tanz3VerzeihungHilfeGetränke
      hör aufFreundegutgut gutpfeifenOhnmachtZunge
      RauchklatschenCrayerklärenspöttischdon-t_mentionherunterladen
      Hitzeärgerlichlach1mdaTreffenMoskingnegativ
      not_iPopcornbestrafenlesenerschreckenAngstSuche
      verspottendankedasto_clueumnikakutstimme zu
      schlechtbeeeblack_eyeblum3errötenprahlenLangeweile
      zensiertAngenehmheitsecret2drohenSiegyusun_bespectacled
      shokrespektlolvorgezogenWillkommenKrutoyya_za
      ya_dobryiHelferne_huliganne_othodiFludVerbotschließen
3 Kommentar
Gast George
Das Projekt wurde von "AlexGiver" gestohlen, der Autor ist also "Ratte" !!!
Zuerst
Wir benötigen keine zusätzlichen Gebühren. Deshalb auf dem Brett Arduino Löten Sie die LEDs
, aber dann geben wir dumm viel mehr gespart aus
Das vierte Segment zeigt immer 0 an.

Natürlich kann das Zeugnis mit dem Lineal überprüft werden.
Und was sind die Ergebnisse?

Das Projekt selbst in der vorgestellten Form ist rein pädagogisch und ohne praktische Bedeutung.
Löwe
Ich habe viel mit diesem Sensor experimentiert, leider hängt die Genauigkeit seiner Messung stark von der Rechtwinkligkeit der Messebene zur Ebene des Geräts ab.

Wir empfehlen Ihnen zu lesen:

Gib es für das Smartphone ...