Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Antworten
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Ich habe mich heute mal wieder in der Abstandmessung mit Ultraschall beschäftigt. Ich will für meine Frau eine Abstandsmessung in der Garage einbauen. Ich habe heute einen Uno, einen Ultraschall Sensor und zwei LED - Ringe mit je 26 LED´s eingebaut. Habe die Ultraschallmessung schon mal reingestrickt und eine LED Anzeige mit zwei LED - Ringen. Die muss ich noch umstricken. Diese Anzeige macht zur Zeit einfach faxen, weil das noch ein Testprogramm ist, das ich vor 1-2 Jahren mal zum Spass gemacht habe. Ich möchte unter 2 Meter Abstand den Ring mit Gelben Leds füllen, die mit näher kommen mehr angehen. Wenn der Ring voll ist und das Auto in den Bereich kommt wo es stehen bleiben kann, wird der LED-Ring dann mit grünen LED´s gefüllt, wenn das Auto zu weit reingefahren ist, wird der Ring mit roten LEDs gefüllt. Da wirds dann höchste Zeit zum Bremsen :(o): :(o): Das sind mal die Vorgaben, die ich mir gesetzt habe. Das Gerät hat zwei LED-Ringe, und ich möchte da gerne auch einen Ultraschall Sensor für den Seitenabstand rechts einsetzen. Da dann das selbe Prinzip. Gelb bischen weit weg, Grün gut, Rot zu nahe.

So bin ich wohl die nächten Paar Tage wieder aufgräumt :(oo):

Franz :(V):
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Ich stelle fest, der Ultraschall Sensor ist für diese Messung nicht zu gebrauchen. Wenn er auf eine zum Schall rechwinklige Flächt trifft, macht er brauchbare Messungen. Wenn die Fläche, zu der er messen soll im Winkel in irgend einer Richtung von den 90 Grad zur Schallquelle abweicht, ist es unmöglich, gute Messwerte zu bekommen. Z.B. 50cm Abstand, auf ein Hindernis 90 Grad zum Schall, alles super. sobald diese Fläche aber in einem deutlich schrägeren Winkel zum Schall steht, geht der Schall nicht direkt zurück, sondern in diesem schrägen Winkel irgendwo an die Wand und weiter durch den Raum, so dass er dann plötzlich erst nach der 3-4-5 fachen Zeit zum Sensor kommt, und das Ergebnis dann 150 - 200 und mehr cm ist. Und ein Auto mit gerade abfallender Vorderfront ist ja eher nicht normal. Also den US-Sensor in dem Fall, einfach in der Pfreife rauchen :(o): :(o):

Am ArduinoCC Forum hat gerade einer Zeitgleich einer auch Interesse an so einem Gerät. Der hat den VL53L0X Sensor zur Entfernungsmessung verwendet. Das sind IR-Sensoren, die auf kleine Entfernungen, also bis 50cm bei meinen Test´s vor ein paar Monaten schon recht genau waren. Ich habe mich also da gleich drangehängt, meinen US_Sensor rausgeschmissen, einen VL53L0X Sensor eingebaut, die Software gleich so verwendet, wie sie im ArduinoCC Forum gerade auch verwendet wird. Und se funktioniert schon recht gut. Habe nur noch an meine LED Ringe angepasst, die erstes nicht 16 sondern 24 LED´s haben, und ich habe 2 Ringe, also 48 LED´s. Die Kiste funktioniert schon grundsätzlich. Den Rest mache ich noch passend.

Wenn ich weiter bin, gehts hier auch weiter.

Grüße
Franz :(V):
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Hier ist mal die verwendete Sofware:

Code: Alles auswählen

/* Parkhilfe mit VL53L0X
   Weitere Infos und Tutorial auf https://www.makerblog.at

   Einparkhilfe z.B. zur fixen Montage an der rückseitigen Garagenwand,
   misst den Abstand zwischen Sensor und Objekt (Auto) und visualisiert die
   korrekte Einparkposition mit WS2812B RGB LEDs


   Setup:

   - Arduino Uno

   - VL53LX0 Laser Sensor
     - Arduino 5V an Sensor VIN
     - Arduino GND an Sensor GND
     - Arduino A4 an Sensor SDA (I2C Data)
     - Arduino A5 an Sensor SCL (I2C Clock)

   - WS2812B RGB LED Stripe
     - Arduino D6 über 220Ohm Widerstand an LED Data In
     - Stromversorgung über Arduino bei wenigen LEDs oder
       mit eigener Stromquelle an +/- des LED Stripes
       Achtung: Kondensator zwischen 5V und GND
       Siehe Tutorials zu WS2812B Neopixel LEDs

*/

// Libraries für I2C, Sensor und RGB LEDs einbinden. Alle Bibliotheken
// können über den Library Manager der Arduino IDE installiert werden
#include "Wire.h"
#include "VL53L0X.h"
#include "Adafruit_NeoPixel.h"

// Sensorobjekt
VL53L0X distanceSensor;

// Datenpin für den WS2812B LED Streifen
#define LEDPIN 6
#define LEDCOUNT 48

#define RANGESTARTMM 2000
#define RANGEENDMM 500

#define ORANGESTARTLED 34
#define REDSTARTLED 48

// LEDs initialisieren
// in diesem Fall 48 LEDs mit den Adressen 0 bis 47
Adafruit_NeoPixel strip = Adafruit_NeoPixel(LEDCOUNT, LEDPIN, NEO_GRB + NEO_KHZ800);

// Standardfarben für die LEDs definieren
uint32_t rgbRed = strip.Color(255, 0, 0);
uint32_t rgbOrange = strip.Color(255, 90, 0);
uint32_t rgbGreen = strip.Color(0, 255, 0);
uint32_t rgbBlack = strip.Color(0, 0, 0);
uint32_t activeColor = rgbBlack;


uint32_t savedTime;
int savedPixel;

void setup()
{
  Serial.begin(9600);
  Wire.begin();
  // Distanzsensor initialisieren und konfigurieren
  distanceSensor.setTimeout(500);
  if (!distanceSensor.init())
  {
    Serial.println("VL53L0X Sensor nicht gefunden! Ablauf angehalten.");
    while (1) {}
  }
  // Sensor auf 10 Messungen pro Sekunde
  distanceSensor.setMeasurementTimingBudget(100000);
  // LED Streifen starten und Helligkeit setzen
  strip.begin();
  strip.setBrightness(100); // Helligkeit 0-255
  strip.show();
}

void loop()
{
  // Entfernung in mm lesen
  int dist = distanceSensor.readRangeSingleMillimeters();
  // Falls TIMEOUT dann Fehler seriell ausgeben und dist auf 0 setzen
  if (distanceSensor.timeoutOccurred())
  {
    Serial.println("TIMEOUT");
    dist = 0;
  }
  int lastPixel = 0;
  // Sensorbereich in mm in Anzahl der LEDs umwandeln, im Beispiel
  // den Bereich von 50mm bis 200mm auf die LEDs 16 bis 0 mappen
  // D.h. bei bei dist=200 ist lastPixel = 0, bei dist=50 ist
  // lastPixel = 16 und der Wertebereich dazwischen wird ebenfalls
  // richtig umgerechnet.
  // ACHTUNG: eine Range von 50-200mm ist zum Testen auf dem Schreibtisch,
  // in der Garage passen Werte zwischen 500 und 2000mm besser :)
  // Mit den Konstanten ersetzt heisst diese Zeile
  // lastPixel = map(dist, 500, 2000, 47, 0);
  lastPixel = map(dist, RANGEENDMM, RANGESTARTMM, LEDCOUNT - 1, 0);
  if (lastPixel != savedPixel)
  {
    savedTime = millis();
    savedPixel = lastPixel;
  }
  // Zur Kontrolle Ausgabe der Distanz und der ermittelten LED
  // am seriellen Monitor
  Serial.print("dist = ");
  Serial.print(dist);
  Serial.print(" => ");
  Serial.print("lastPixel = ");
  Serial.println(lastPixel);
  // Alle LEDs löschen (= auf schwarz setzen)
  for (int i = 0; i < LEDCOUNT; i++)
  {
    strip.setPixelColor(i, rgbBlack);
  }
  // Entsprechend der Anzahl der aktiven LEDs ändert
  // ändert sich auch die Farbe aller LEDs
  if (millis() - savedTime < 5000)
  {
    if (lastPixel >= REDSTARTLED)
    {
      activeColor = rgbRed;
    }
    else if (lastPixel >= ORANGESTARTLED)
    {
      activeColor = rgbOrange;
    }
    else if (lastPixel >= 0)
    {
      activeColor = rgbGreen;
    }
    else
    {
      activeColor = rgbBlack;
    }
  }
  else
  { activeColor = rgbBlack; }
  // Wenn lastPixel >= LEDCOUNT dann auf LEDCOUNT-1 setzen
  if (lastPixel >= LEDCOUNT)
  {
    lastPixel = LEDCOUNT - 1;
  }
  // Nummerierung der LEDs beginnt bei 0!
  for (int i = 0; i <= lastPixel; i++)
  {
    strip.setPixelColor(i, activeColor);
  }
  // LEDs aktualisieren
  strip.show();
}
Hier ist ein Video davon.

Im Grunde schon ganz gut. Wenn man stehen bleibt, schalten die LED´s nach ein paar Sekunden ab, Aber ich konnte nicht so ruhig stehen wie ein Auto :(o): :(o): Der Ring unten zeigt die Statusfarbe gleich voll an, der Ring oben zeigt die Bewegung in der jeweiligen Statusfarbe an. Also grundsätzlich schon ganz gut. :(oo):
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Hier habe ich noch das Video von Ersteller des Programmes. Da kann man sich noch ein wenig informieren, um zu wissen was in dem Programm wo zu ändern ist, um es anzupassen an eigene Hardware.

Franz

PS: Und hier noch unser Thema beim markerblog.at
Bernhard - Fony
Beiträge: 73
Registriert: Mo 12. Jun 2023, 17:49
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Bernhard - Fony »

Na ja, will Deine bessere Hälfte nicht beleidigen aber 0,5m in der Garage ist bisschen wenig, ist ja ganz anderes Verhalten als Drusen in eine Parklücke sich reinquetschen, finde Einparksensoren besser, habe meiner Tochter eingebaut.
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Hey Bernhard.
Wir haben die Einparksensoren am Auto nur hinten. Und sie kommt schon zurecht damit. Aber wir haben in der Garage Schränke und Regale. Und dadurch ist der Platz nicht soooo lang. Das Gerät zeigt den Abstand ab etwa 1,2 Meter vom Gerät zum Auto mit Grün, 0,8 Meter bis 0,4m Gelb, dann Rot für zu weit vorne. Und der Gelbe Bereich ist OK zum stehen lassen. So jedenfalls will ich es einstellen. Habe aber heute noch nichts dran gemacht. Habe zur Zeit noch ein paar andere Baustellen :sad:

Morgen möchte ich es in der Garage korrekt einstellen und installieren. Ich möchte das richtige abstellen in der Garage einfach nur erleichtern.

Schönes Wochenende
Franz
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Ich habe gerade mal einen ersten Test in der Garage gemacht. Der Sensor zielte da auf die sehr schräge Schnauze. Das ist gar nicht gut. Ich muss also den Sensor aus dem Gehäuse rausnehmen und tiefer possitionieren, dass er auf die Stoßstange zielt.

Dann schauma mal wie´s läuft. :(oo):
Bernhard - Fony
Beiträge: 73
Registriert: Mo 12. Jun 2023, 17:49
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Bernhard - Fony »

Habe aber heute noch nichts dran gemacht. Habe zur Zeit noch ein paar andere Baustellen

Da sagst Du was :lol: , war schon so weit bei meiner alten Firma anrufen ob die nicht einen brauchen, als ich noch gearbeitet habe hatte mehr zeit als Renner ;)
Benutzeravatar
Admin
Administrator
Beiträge: 1199
Registriert: Mo 20. Apr 2020, 09:47
Wohnort: 82441 Ohlstadt
Kontaktdaten:

Re: Einparkhilfe in der Garage mit Ultraschall und LED - Ring Anzeige

Beitrag von Admin »

Ich baue jetzt nochmal um. Ich möchte den seitlichen Abstand, Beifahrertüre <-> Wand, mit Ultraschall und den Abstand vorne <-> zur Wand mit dem VL53L0X messen. Mal schauen wie das geht.

Franz
Antworten

Zurück zu „Hardware / Schaltungstechnik“

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot] und 18 Gäste