AlphaBot: Linienverfolger kalibrieren

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

Autor: Prof. Dr.-Ing. Schneider

Inhalt des 9. Termins

  • Ich stelle Euch den Sensor "Linienverfolger" vor.
  • Wir kalibrieren den Sensor.
  • Wir lesen die Messwerte ein.
  • Wir programmieren einen 2-Punkt-Regler, um einer Linie zu folgen.

Quelltext

Kalibrierung

/* Sensorbibliothek hinzufügen */
#include "TRSensors.h"

#define NUM_SENSORS 5

/* Die Sensoren 1..5 sind an die analogen Eingänge 0..4 angeschlosse */
TRSensors trs =   TRSensors();       // Handle zum Sensor

/* Einmalige Systeminitialisierung               */
void setup() {
  Serial.begin(9600); // Init für serielle Ausgabe mit 9600 Baud

  Serial.println("Kalibrierung startet für 10s...");
  for (int i = 0; i < 400; i++)                  // make the calibration take about 10 seconds
  {
    trs.calibrate();                             // reads all sensors 10 times
  }
  Serial.println("Kalibrierung beendet");
  
  // Ausgabe der Minimalwerte während der Kalibrierung
  for (int i = 0; i < NUM_SENSORS; i++)
  {
    Serial.print(trs.calibratedMin[i]);
    Serial.print(' ');
  }
  Serial.println(); 

     // Ausgabe der Maximalwerte während der Kalibrierung
  for (int i = 0; i < NUM_SENSORS; i++)
  {
    Serial.print(trs.calibratedMax[i]);
    Serial.print(' ');
  }
  Serial.println();
  delay(1000);
  
  Serial.println("SETUP beendet");
}
/* Main Schleife */
void loop() {
    unsigned int Messwerte[NUM_SENSORS]; // Meswert Array
    unsigned int position = trs.readLine(Messwerte);
    for (unsigned char i = 0; i < NUM_SENSORS; i++)
    {
      Serial.print(Messwerte[i]);
      Serial.print('\t');
    }
    Serial.println(position);
}


Abb. 1: Motorenbezeichnung in Fahrtrichtung

Hausaufgaben bis zum 10. Termin

  • Bastelt Euch einen Rundkurs.
  • Folgt der Linie auf dem Rundkurs.
  • Ist eine Fahrt in beide Richtungen möglich?


Hinweise:

  • Einen Artikel zum Linienverfolger findet Ihr hier.
  • Die Jumper von Block F müssen alle links gesetzt sein.

Musterlösung


→ zurück zum Hauptartikel: Projekt Alf