RoboterCC - Robotic Code Compiler
Forum Robot Kits NIBO burger Lassen sich die Abstandssensoren kallibrieren?

Welcome

Nachrichten

Sie sind nicht eingeloggt.

Werbung

Letzte Themen

  • Keine Beiträge vorhanden

Site-Statistic

  • 7433 private projects
  • 378 public projects
  • 16180353 lines compiled
  • 58212 builds
NIBO @ facebook YouTube Twitter
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
  • Seite:
  • 1
  • 2

THEMA: Lassen sich die Abstandssensoren kallibrieren?

Lassen sich die Abstandssensoren kallibrieren? 5 Jahre 5 Tage her #4382

  • boson
  • bosons Avatar
  • OFFLINE
  • Senior Boarder
  • Beiträge: 38
Abfangs hatte mein Burger eine Kurve gefahren, weil ein Sensor permanent ausgelöst hat und dass obwohl alle Sensoren mit Schrumpfschlauch abgeklebt waren und nur noch von Vorne empfangen haben. Aber erst als ich die IR LED ebenfalls abgeklebt habe, war das Problem Hardwaretechnisch behoben.

Trotzdem: Ich habe mir die Sensordaten x=getObstSensorValue(ANALOG_xx)>>1 meines Burgers permanent über Bee Blue auf ein Terminal überagen lassen(xx = FL, FLL, FR, FRR). Ohne Hinderniss sollten die eigentlich 1 oder 0 sein. Die Werte gehen von 0 bis 127 bei vollem Kontakt.

Aber die Sensoren sind unterschiedlich empfindlich. Selbst im abgeklebten Zustand zeigt einer 3 anstatt 1. Ganz abgeklebt (Kappe) geht auch er auf 0. Überhaupt scheint dieser Sensor früher zu reagieren. Das hat natürlich Auswirkungen auf das Fahrferhalten. Kurz gesagt der Burger weicht linken Hindernissen anders aus als rechten. Es reicht nicht, wenn ich einfach -2 als Korrekturwert eingebe, das ist viel zu statisch. Bei den Farbsensoren wird ja eine Kallibrierung zu Anfang gemacht. Wo kallibriere ich am besten die Abstanstandssensoren?

Gruß Boson
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Lassen sich die Abstandssensoren kallibrieren? 5 Jahre 5 Tage her #4383

  • Georg
  • Georgs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 290
Beispiel

Die Empfindlichkeit ist bei allen IR-Sensoren in etwa gleich, nur der Untergrund ist unterschiedlich.

lg Georg
Letzte Änderung: 5 Jahre 5 Tage her von Georg.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Lassen sich die Abstandssensoren kallibrieren? 5 Jahre 5 Tage her #4384

  • boson
  • bosons Avatar
  • OFFLINE
  • Senior Boarder
  • Beiträge: 38
Ich spreche von den Abstenssensoren und meine Messwerte zeigen, dass die Empfindlichkeit eben nicht gleich ist. Ein Sensor ist deutlich empfindlicher. Was die Bodensensoren betrifft, würde es ja keiner Kallibrierung bedürfen, wären sie tatsächlich gleich. Ich habe mich ohnehin gewundert, warum man die paar kritischen Bauteile nicht mit Metallschichtwiderständen gemacht hat.

Schöne Ostern Boson
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Lassen sich die Abstandssensoren kallibrieren? 5 Jahre 4 Tage her #4385

  • Georg
  • Georgs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 290
Die 4 IR-Abstandssensoren haben
einen unterschiedlichen Offset.
Im obigen Link ist ein Beispiel
Code zur Lösung dieser Aufgabe.
Letzte Änderung: 5 Jahre 4 Tage her von Georg.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Lassen sich die Abstandssensoren kallibrieren? 5 Jahre 4 Tage her #4386

  • boson
  • bosons Avatar
  • OFFLINE
  • Senior Boarder
  • Beiträge: 38
OK, da war ich etwas schnell, das Beispiel habe ich nicht gesehen.

:oops:

Allerdings kapier ich's nicht vollständig:

uint8_t l = analog_getValueExt(ANALOG_FL, 2);

OK du benutzt ANALOG_ACTIVE - ANALOG_PASSIVE

while (!analog_has_update()); // Warten bis die Messung beendet

Dann wartest du bis die Messung abgeschlossen ist.

if (l < l_min) l_min = l; // Offset bestimmen

wenn l kleiner Offset_l (was zumindest bei 1. Mal immer der Fall ist überschreibst du den auf 255 gesetzten Offset mit dem Messwert

l -=l_min; // Offset abziehen

wenn die Abfrage ausgeführt wurde ist hier l = 0 falls nicht wird der Offset davon abgezogen - soweit so gut....

l = l > 5; // Hindernis erkennen

hier steig ich aus, ich kapier nicht was das soll. l > 5 lifert 1 zurück wenn l > 5 und 0 wenn nicht, aber warum schreibst du das wieder in l? Arbeitest du dann nur mit 1 oder 0 läuft das im Abstands Event dauernd oder wird das einmalig aufgerufen und du verwendest nur den Offset?



Gruß Boson
Letzte Änderung: 5 Jahre 4 Tage her von boson.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Lassen sich die Abstandssensoren kallibrieren? 5 Jahre 4 Tage her #4387

  • Georg
  • Georgs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 290
boson schrieb:
l = l > 5; // Hindernis erkennen

hier steig ich aus, ich kapier nicht was das soll. l > 5 lifert 1 zurück wenn l > 5 und 0 wenn nicht, aber warum schreibst du das wieder in l? Arbeitest du dann nur mit 1 oder 0 läuft das im Abstands Event dauernd oder wird das einmalig aufgerufen und du verwendest nur den Offset?
Gruß Boson

Am Schluß im Beispiel steht

led_set(1, ll);
led_set(2, l);
led_set(3, r);
led_set(4, rr);

Mit 0/1 wird die LED angesteuert.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
  • Seite:
  • 1
  • 2
Ladezeit der Seite: 0.049 Sekunden

Werbung