Inhaltsverzeichnis:

TrigonoDuino - Entfernung ohne Sensor messen - Gunook
TrigonoDuino - Entfernung ohne Sensor messen - Gunook

Video: TrigonoDuino - Entfernung ohne Sensor messen - Gunook

Video: TrigonoDuino - Entfernung ohne Sensor messen - Gunook
Video: Arduino Pulse Wave Generator 2024, November
Anonim
TrigonoDuino - Entfernung ohne Sensor messen
TrigonoDuino - Entfernung ohne Sensor messen
TrigonoDuino - Entfernung ohne Sensor messen
TrigonoDuino - Entfernung ohne Sensor messen
TrigonoDuino - Entfernung ohne Sensor messen
TrigonoDuino - Entfernung ohne Sensor messen

Dieses Projekt ist für die Entfernungsmessung ohne kommerziellen Sensor gedacht. Es ist ein Projekt zum Verständnis trigonometrischer Regeln mit einer konkreten Lösung. Es könnte für einige andere trigonometrische Berechnungen angepasst werden. Cos Sin und andere funktionieren mit Math.h.

Es ist ein Prototyp der ersten Version dieser Art von Messung mit Laserstrahlen, Anregungen oder Tipps sind willkommen.

Es verwendet Mathematik zum Messen von Entfernungen mit Trigonometrie-Regeln.

Es arbeitet mit zwei Laserdioden, einem Servomotor SG90, einem Potentiometer 10k und einem Arduino Uno.

Die Genauigkeit beträgt ca. +- 2 mm für <1 Meter Entfernung, die Entfernung wird in Zentimetern angezeigt. Wenn Sie auf Zoll umrechnen möchten, 1 cm = 0,393701 Zoll, müssen Sie durch 2, 54 dividieren. Bei größeren Entfernungen können Sie aufgrund des kleinen Versatzwinkels auf A (anstelle von 90° haben Sie möglicherweise 90,05°) die Genauigkeit verlieren.

Erläuterung:

Potentiometer bewegen den Laser C auf dem Servomotor, dies gibt dem Arduino den Winkel C. Laser Ein Punkt ergibt einen rechten Winkel. Bewegen Sie den Laserpunkt (C) mit dem Potentiometer bis zur Überlagerung der beiden Laserstrahlen, dies ergibt Punkt B.

Tipps: Justieren Sie die Laserstrahlen mit der Laser-Schraublinse nach oben, um einen perfekten Laserpunkt zu erhalten.

Schritt 1: Teileliste

Stückliste
Stückliste
Stückliste
Stückliste
Stückliste
Stückliste
Stückliste
Stückliste

Hauptsächlich:

- Zwei Laser:

- Arduino Uno:

- Servomotor:

- 10k Potentimeter:

-Dupont-Draht:

Werkzeug:

- Lötkolben:

(Ich habe diesen und es ist ein sehr guter Lötkolben, bei der Arbeit benutze ich einen Weller, aber für mich selbst benutze ich ihn)

Optional:

- Widerstände:

Schritt 2: Verdrahtung der Elektronik

Verkabelung der Elektronik
Verkabelung der Elektronik
Verkabelung der Elektronik
Verkabelung der Elektronik
Verkabelung der Elektronik
Verkabelung der Elektronik
Verkabelung der Elektronik
Verkabelung der Elektronik

Verbinden Sie die Diodenemitter, 5V mit dem roten Kabel und GND mit dem blauen Kabel.

Verbinden Sie Servo Rot mit 5V, Schwarz mit GND und Orange mit Arduino Digital Pin 3.

Verbinden Sie den linken Pin des Potentiometers mit Digital Pin 8, den rechten Pin mit Digital Pin 9 und den mittleren Pin mit Analog Pin A0. Der linke Pin ist für mich violett.

Sehen Sie sich den Schaltplan vor dem Einschalten an. Seien Sie vorsichtig mit Laserstrahlen, dies könnte Ihre Augen schädigen. Sie können Widerstände zwischen dem roten Draht der Dioden und dem Arduino hinzufügen, 10k wird auf dem Modul KY008 verwendet.

Tipp: Benötigen Sie Lötkolben, um Dupont-Drähte für Laser und Potentiometer vorzubereiten.

Schritt 3: 3D-Druck der Platte

3D-Druck der Platte
3D-Druck der Platte
3D-Druck der Platte
3D-Druck der Platte
3D-Druck der Platte
3D-Druck der Platte
3D-Druck der Platte
3D-Druck der Platte

Entworfen mit Autocad und exportiert im STL-Format.

www.autodesk.fr/products/autocad/overview

Die vereinfachte Version drucken ist besser für Sie, verwenden Sie die Schraube, die mit SG90 vorhanden ist, um sie zu reparieren. Die Mitte des Servos muss rechts von der Stütze sein, sieht wie auf den Bildern aus.

Wichtig:

Stellen Sie das Servo auf (0) Grad ein, bevor Sie das zweite Teil auf den Servomotor kleben. Platzieren Sie die Laserzeiger auf eine parallele Position mit Servo auf (0), ersetzen Sie val durch 0: monServomoteur.write(0);.

Fügen Sie noch nicht ein, warten Sie das Ende des nächsten Schritts ab.

Schritt 4: Der Arduino-Code

Der Arduino-Code
Der Arduino-Code
Der Arduino-Code
Der Arduino-Code
Der Arduino-Code
Der Arduino-Code

Sie könnten den Code finden, um es zu verwenden.

Arduino IDE herunterladen und installieren:

Es ist erforderlich, die Bibliothek Math.h zum Projekt hinzuzufügen.

Dreieck ist Rechteck an der A-Ecke, wir kennen AC als 14cm, und der Servomotor gibt den Winkel C an, außerdem berechnen wir den Winkel B für die Messung des Abstands AB mit Tan (B), B ist die Verbindung zwischen 2 Laserpunkten. Der Gesamtwinkel des Dreiecks beträgt 180°, mit einem 90°-Winkel auf A.

Die Entfernungsmessung beginnt in der Nähe des Lasers an der Ecke A.

Wenn Sie keinen OLED-Bildschirm haben, verwenden Sie TrigonoDuinoSerial.ino. Ich habe einen SSD1306 Oled-Bildschirm verwendet, um dies ohne Computer zu verwenden.

Nb: Können Sie 4064 durch 1028 ändern, hängt es vom Arduino-Board ab. Für mich hat der analoge Wavgat R3-Pin einen Wert zwischen 0 und 4064 zurückgegeben, aber für einige andere sind es 0 und 1028.

Edit: Map-Funktion ist nicht für Genauigkeit geeignet, Berechnungsmodus wurde in der neuen Codeversion geändert, um doppelte anstelle des langen Variablentyps zu verwenden. "For" Loop wurde für einen besseren stabilen Wert des Servomotors erhöht.

Montagelaser an ihren Plätzen setzen servo.write auf 0 und fügen Sie das Haltelasergehäuse in die Mitte des Servos ein. Laser müssen parallel sein. Stellen Sie die Laserstrahlen auf die gleiche Höhe ein und die Zeiger müssen den gleichen Abstand wie die Laser selbst haben.

Schritt 5: Testmaßnahme

Testmaßnahme
Testmaßnahme
Testmaßnahme
Testmaßnahme
Testmaßnahme
Testmaßnahme

Fahren Sie nun mit dem Messtest fort. Passen Sie Ihre AC-Länge bei Bedarf auf die Mitte der Lasergehäuse an.

Potentiometer langsam mit kleinem Schritt drehen. Sie können den Laserfokus einstellen (den Schraubenkopflaser drehen), um präzise auf große Entfernungen zu zeigen.

Sie könnten mit diesem Gerät einige Meter messen, aber die Präzision wird weniger genau sein. Messungen unter 1 Meter sind wirklich gut.

Nach vorne:

Zum Beispiel könnten Sie ein zweites Servo zum Messen unter den ersten Laser legen, aber es braucht mehr Berechnung. Es könnte eine großartige Sache für junge Studenten sein, die Trigonometrie lernen, da es eine echte Anwendung der Mathematik bietet.

Sie könnten einen besseren Servomotor einsetzen und einige Potentiometer hinzufügen, um die Präzision (1 Potentiometer für 15° zum Beispiel) und den Entfernungsbereich der Messung zu erhöhen.

Könnte eine seitliche Verschiebung des Servos hinzufügen, um die Wechselstromlänge schnell zu ändern.

Empfohlen: