Inhaltsverzeichnis:

DC MOTOR Handgestensteuerung Geschwindigkeit und Richtung mit Arduino - Gunook
DC MOTOR Handgestensteuerung Geschwindigkeit und Richtung mit Arduino - Gunook

Video: DC MOTOR Handgestensteuerung Geschwindigkeit und Richtung mit Arduino - Gunook

Video: DC MOTOR Handgestensteuerung Geschwindigkeit und Richtung mit Arduino - Gunook
Video: Arduino Positioniersystem günstig (Part 1) 2024, Juli
Anonim
Image
Image

In diesem Tutorial lernen wir, wie man einen Gleichstrommotor mit Handgesten mit Arduino und Visuino steuert.

Schau das Video!

Schau dir auch das an: Handgesten-Tutorial

Schritt 1: Was Sie brauchen

Was wirst du brauchen
Was wirst du brauchen
Was wirst du brauchen
Was wirst du brauchen

Arduino UNO (oder ein anderes Board)

  • APDS9960 Näherungs-Gestensensor
  • L298N DC MOTOR CONTROLER Treiber
  • OLED-Display
  • Batterien
  • Gleichspannungs Motor
  • Steckbrett
  • Überbrückungsdrähte
  • Visuino-Programm: Visuino herunterladen

Schritt 2: Die Schaltung

Die Rennbahn
Die Rennbahn
  • Verbinden Sie den digitalen Pin (2) von Arduino mit dem Motortreiber-Pin (IN2)
  • Verbinden Sie den digitalen Pin (3) von Arduino mit dem Motortreiber-Pin (IN1)
  • Verbinden Sie einen Gleichstrommotor mit einer Seite des Motortreibers
  • Verbinden Sie den Pin der Stromversorgung (Batterien) (gnd) mit dem Pin des Motortreibers (gnd)
  • Verbinden Sie den Pin (+) der Stromversorgung (Batterien) mit dem Pin (+) der Motortreibersteuerung.
  • Verbinden Sie GND von Arduino mit dem Motortreiber-Controller-Pin (Gnd)
  • Verbinden Sie den OLED-Display-Pin (GND) mit dem Arduino-Pin (GND)
  • Verbinden Sie den OLED-Display-Pin (VCC) mit dem Arduino-Pin (5V)
  • Verbinden Sie den OLED-Display-Pin (SCL) mit dem Arduino-Pin (SCL)
  • Verbinden Sie den OLED-Display-Pin (SDA) mit dem Arduino-Pin (SDA)
  • Verbinden Sie den Sensor-Pin [GND] mit dem Arduino-Board-Pin [GND]
  • Verbinden Sie den Sensor-Pin [Vin] mit dem Arduino-Board-Pin [3.3V]
  • Verbinden Sie den Sensor-Pin [SDA] mit dem Arduino-Board-Pin [SDA]
  • Verbinden Sie den Sensor-Pin [SCL] mit dem Arduino-Board-Pin [SCL]

Schritt 3: Starten Sie Visuino und wählen Sie den Arduino UNO-Board-Typ aus

Starten Sie Visuino und wählen Sie den Arduino UNO-Board-Typ aus
Starten Sie Visuino und wählen Sie den Arduino UNO-Board-Typ aus
Starten Sie Visuino und wählen Sie den Arduino UNO-Board-Typ aus
Starten Sie Visuino und wählen Sie den Arduino UNO-Board-Typ aus

Das Visuino: https://www.visuino.eu muss installiert sein. Starten Sie Visuino wie im ersten Bild gezeigt Klicken Sie auf die Schaltfläche "Tools" auf der Arduino-Komponente (Bild 1) in Visuino Wenn der Dialog erscheint, wählen Sie "Arduino UNO" wie in Bild 2 gezeigt

Schritt 4: In Visuino Komponenten hinzufügen

In Visuino Komponenten hinzufügen
In Visuino Komponenten hinzufügen
In Visuino Komponenten hinzufügen
In Visuino Komponenten hinzufügen
In Visuino Komponenten hinzufügen
In Visuino Komponenten hinzufügen
  • Komponente "Gesture Color Proximity APDS9960 I2C" hinzufügen
  • Komponente "Aufwärts-/Abwärtszähler" hinzufügen
  • Komponente "SR Flip-Flop" hinzufügen
  • Komponente "Analog nach Wert dividieren" hinzufügen
  • Komponente "Geschwindigkeit und Richtung zur Geschwindigkeit" hinzufügen
  • Komponente "Dual DC Motor Driver Digital and PWM Pins Bridge (L9110S, L298N)" hinzufügen
  • Komponente "Textwert" hinzufügen
  • Komponente "SSD1306/SH1106 OLED Display (I2C)" hinzufügen
  • Komponente "Verzögerung" hinzufügen

Schritt 5: In Visuino Set-Komponenten

In Visuino Set-Komponenten
In Visuino Set-Komponenten
In Visuino Set-Komponenten
In Visuino Set-Komponenten
In Visuino Set-Komponenten
In Visuino Set-Komponenten
  • Komponente "UpDownCounter1" auswählen und im Eigenschaftenfenster Max>Wert auf 10. setzen
  • Komponente "UpDownCounter1" auswählen und im Eigenschaftsfenster Min>Wert auf 0 setzen
  • Komponente "DivideByValue1" auswählen und im Eigenschaftsfenster Wert auf 10. setzen
  • Wählen Sie die Komponente "SpeedAndDirectionToSpeed1" und setzen Sie im Eigenschaftenfenster Initial Reverse auf True und Initial Speed auf 1
  • Wählen Sie die Komponente "Delay1" und setzen Sie im Eigenschaftenfenster Can Restart auf False und Interval (uS) auf 1000000
  • Doppelklicken Sie auf die Komponente "TextValue1" und ziehen Sie im Elements-Fenster 4X "Set Value" auf die linke Seite
  • Auf der linken Seite "Set Value1" auswählen und im Eigenschaftsfenster Value auf "FASTER" setzen
  • Auf der linken Seite "Set Value2" auswählen und im Eigenschaftsfenster Value auf "SLOWER" setzen
  • Auf der linken Seite "Set Value3" auswählen und im Eigenschaftsfenster Value auf "LEFT" setzen
  • Auf der linken Seite "Set Value4" auswählen und im Eigenschaftsfenster Value auf "RIGHT" setzen
  • Schließen Sie das Elements-Fenster
  • Doppelklicken Sie auf die Komponente "DisplayOLED1" und ziehen Sie in den Elementen "Text Field" nach links und "Fill Screen" nach links
  • Wählen Sie auf der linken Seite "Text Field1" und stellen Sie im Eigenschaftenfenster die Größe auf 3
  • Schließen Sie das Elements-Fenster

Schritt 6: In Visuino Connect-Komponenten

In Visuino Connect-Komponenten
In Visuino Connect-Komponenten
In Visuino Connect-Komponenten
In Visuino Connect-Komponenten
In Visuino Connect-Komponenten
In Visuino Connect-Komponenten
In Visuino Connect-Komponenten
In Visuino Connect-Komponenten

Verbinden Sie den "GestureColorProximity1"-Pin Gesture>Up mit dem "UpDownCounter1"-Pin Up

Verbinden Sie den Pin "GestureColorProximity1" Gesture>Up to "TextValue1>Set Value1" Pin In

  • Verbinden Sie den "GestureColorProximity1"-Pin Gesture>Down mit dem "UpDownCounter1"-Pin Down
  • Verbinden Sie den "GestureColorProximity1"-Pin Gesture>Down mit dem "TextValue1>Set Value2"-Pin In
  • Verbinden Sie den "GestureColorProximity1" Pin Gesture>Left mit dem "SRFlipFlop1" Pin Set
  • Verbinden Sie den "GestureColorProximity1"-Pin Gesture>Left mit dem "TextValue1>Set Value3"-Pin In
  • Verbinden Sie den "GestureColorProximity1"-Pin Gesture>Right mit dem "SRFlipFlop1"-Pin Reset
  • Verbinden Sie den "GestureColorProximity1"-Pin Gesture>Right mit dem "TextValue1>Set Value4"-Pin In
  • Verbinden Sie "GestureColorProximity1" Pin Control I2C mit Arduino Board Pin I2C In
  • Verbinden Sie "UpDownCounter1" Pin Out mit "DivideByValue1" Pin In
  • Verbinden Sie den "DivideByValue1"-Pin-Out mit der "SpeedAndDirectionToSpeed1"-Pin-Geschwindigkeit
  • Verbinden Sie "SRFlipFlop1" Pin Out mit "SpeedAndDirectionToSpeed1" Pin Reverse
  • Verbinden Sie den "SpeedAndDirectionToSpeed1"-Pin mit "DualMotorDriver1" Motors[0]>In
  • Verbinden Sie "DualMotorDriver1" Motors[0] Pin Direction (B) mit dem Arduino Board Digital Pin 2
  • Verbinden Sie "DualMotorDriver1" Motors[0] Pin Speed (A) mit dem Arduino Board Digital Pin 3
  • Verbinden Sie den "TextValue1"-Pin mit "DisplayOLED1"> Text Field1>Clock
  • Verbinden Sie "TextValue1" Pin Out mit "DisplayOLED1"> Text Field1>In
  • Verbinden Sie "TextValue1" Pin Out mit "Delay1" Pin Start
  • Verbinden Sie "Delay1" Pin Out mit "DisplayOLED1"> Fill Screen1>Clock
  • Verbinden Sie "DisplayOLED1" Pin Out I2C mit Arduino Board Pin I2C In

Schritt 7: Generieren, Kompilieren und Hochladen des Arduino-Codes

Generieren, kompilieren und laden Sie den Arduino-Code hoch
Generieren, kompilieren und laden Sie den Arduino-Code hoch

Klicken Sie in Visuino unten auf die Registerkarte "Build", stellen Sie sicher, dass der richtige Port ausgewählt ist, und klicken Sie dann auf die Schaltfläche "Compile/Build and Upload".

Schritt 8: Spielen

Wenn Sie das Arduino UNO-Modul mit Strom versorgen und eine Geste über den Näherungsgestensensor machen, beginnt sich der Motor zu bewegen und das OLED-Display zeigt die Richtung an. Sehen Sie sich das Video für die detaillierte Demonstration an.

Herzliche Glückwünsche! Sie haben Ihr Projekt mit Visuino abgeschlossen. Ebenfalls beigefügt ist das Visuino-Projekt, das ich für dieses Instructable erstellt habe. Sie können es herunterladen und in Visuino öffnen:

Empfohlen: