7 #ifndef __NIBOBURGER_H__
8 #define __NIBOBURGER_H__
18 #if (!defined (_NIBOBURGER_)) && (!defined (ARDUINO_AVR_NIBOBURGER)) && (!defined (ARDUINO_AVR_NIBOBURGER_1284_15)) && (!defined (ARDUINO_AVR_NIBOBURGER_1284_20))
19 #error "NIBOburger library should be used with a NIBOburger robot as board!"
66 void setLeds(
bool led1,
bool led2,
bool led3,
bool led4);
73 void setLed(
int led,
int value);
92 unsigned int getAnalog(
unsigned char adc_channel,
unsigned char active=0);
249 ColorRGB(
unsigned char r,
unsigned char g,
unsigned char b);
254 explicit ColorRGB(
unsigned long val);
269 unsigned int diff(
unsigned long val2)
const;
293 ColorHSV(
unsigned char h,
unsigned char s,
unsigned char v);
298 explicit ColorHSV(
unsigned long val);
308 unsigned int diff(
const ColorHSV & col2,
unsigned int hTol=0)
const;
313 unsigned int diff(
unsigned long val2,
unsigned int hTol=0)
const;
336 unsigned int get(
unsigned char index,
unsigned char absolute=0);
341 unsigned int getL(
unsigned char absolute=0);
346 unsigned int getC(
unsigned char absolute=0);
351 unsigned int getR(
unsigned char absolute=0);
356 unsigned int getCL(
unsigned char absolute=0);
361 unsigned int getCR(
unsigned char absolute=0);
434 unsigned int get(
unsigned char absolute=0);
void setTargetRel(int left, int right, unsigned int speed)
Zielposition für Räder setzen.
unsigned int getKeyState()
aktuellen Tastenzustand auslesen
static const unsigned long CALIBRATE_WHITE
24 Bit HSV-Konstante für Kalibrier-Farbe: weiss
Definition: NIBOburger.h:284
static const unsigned long CALIBRATE_BLACK
24 Bit HSV-Konstante für Kalibrier-Farbe: schwarz
Definition: NIBOburger.h:283
void calibrateBlack()
Kalibrierung auf schwarzem Untergrund, entspricht dem Wert 0 (0x0000)
void stop()
Motoren anhalten (passiv Stoppen - rollt aus)
void begin()
Initialisierung.
static const unsigned long CALIBRATE_RED
24 Bit HSV-Konstante für Kalibrier-Farbe: rot
Definition: NIBOburger.h:285
void resetTicks()
Aktuellen Zählerstand auf 0 setzen.
Eine einzelne Antriebsseite.
Definition: NIBOburger.h:139
SensorClass SensorFLL
Sensor-Brick im Sensor-Slot FLL.
Farbe im HSV Farbmodell.
Definition: NIBOburger.h:279
void setMonitorVoltage(unsigned int millivolt)
Zu überprüfende Spannung setzen, wird mit checkVoltage() überprüft.
void checkVoltage()
Versorgungsspannung überprüfen, im Fehlerfall anhalten und blinken.
unsigned int diff(const ColorHSV &col2, unsigned int hTol=0) const
Farbabweichung (HSV) zu zweiter HSV-Farbe.
void setTargetAbs(int left, int right, unsigned int speed)
Zielposition für Räder setzen.
SensorClass SensorBC
Sensor-Brick im Sensor-Slot BC.
void storeCalibration()
Kalibrierdaten im EEPROM speichern.
Die Klasse repräsentiert die Kernfunktionen des NIBO burger Roboters.
Definition: NIBOburger.h:37
ColorRGB getColorRGB()
RGB-Farbwert aus den drei Sensoren berechnen und zurückliefern.
unsigned int getRandomSeed()
Zufallszahlen-Basis anhand des Rauschens der Sensorwerte liefern.
static const unsigned long CALIBRATE_YELLOW
24 Bit HSV-Konstante für Kalibrier-Farbe: gelb
Definition: NIBOburger.h:288
void begin()
Initialisierung.
unsigned int getL(unsigned char absolute=0)
Messwert linker Bodensensor.
SensorClass SensorBR
Sensor-Brick im Sensor-Slot BR.
static const unsigned long CALIBRATE_YELLOW
24 Bit RGB-Konstante für Kalibrier-Farbe: gelb
Definition: NIBOburger.h:244
void setPWM(int left, int right)
PWM Werte (-1023 ...
Eine Klasse für die drei Bodensensor BL, BC und BR.
Definition: NIBOburger.h:324
static const unsigned long CALIBRATE_GREEN
24 Bit RGB-Konstante für Kalibrier-Farbe: grün
Definition: NIBOburger.h:243
SensorClass SensorFL
Sensor-Brick im Sensor-Slot FL.
void begin()
Initialisierung des NIBOburger Roboters.
int getTicks()
Aktueller Zählerwert des Rades in Ticks, im Precise Mode entsprechen 200 Ticks (Fast: 40 Ticks) einer...
int getTargetDist()
Verbleibende Distanz zum Ziel bei Durchführung von setTargetAbs() bzw.
static const unsigned long CALIBRATE_WHITE
24 Bit RGB-Konstante für Kalibrier-Farbe: weiss
Definition: NIBOburger.h:240
unsigned int getAnalog(unsigned char adc_channel, unsigned char active=0)
Rohwert eines analogen Kanals auslesen.
unsigned int getR(unsigned char absolute=0)
Messwert rechter Bodensensor.
unsigned int getCL(unsigned char absolute=0)
Messwert linker Bodensensor mit Licht vom mittleren Sensor.
static const unsigned long CALIBRATE_BLUE
24 Bit RGB-Konstante für Kalibrier-Farbe: blau
Definition: NIBOburger.h:242
void begin()
Initialisierung.
void randomize()
Basis des Zufallszahlengenerators zufällig setzen.
SensorClass SensorFRR
Sensor-Brick im Sensor-Slot FRR.
void activate(unsigned char mode)
Sensor-Modus setzen:
unsigned int getCR(unsigned char absolute=0)
Messwert rechter Bodensensor mit Licht vom mittleren Sensor.
SensorClass SensorFR
Sensor-Brick im Sensor-Slot FR.
int getRandomInt(int lo, int hi)
Zufallszahl aus dem Interval [lo, hi] generieren.
unsigned int diff(const ColorRGB &col2) const
Farbabweichung (RGB) zu zweiter RGB Farbe.
void deactivate()
Digitalen Pin freigeben.
void setLed(int led, int value)
LED ein/ausschalten:
void setSpeed(int left, int right)
Geschwindigkeit für die beiden Motoren setzen.
Farbe im RGB Farbmodell.
Definition: NIBOburger.h:235
unsigned int getVoltage()
Versorgungsspannung messen.
SensorClass SensorBL
Sensor-Brick im Sensor-Slot BL.
Routinen für 24-Bit RGB Farben und 24-Bit HSV Farben.
Die Klasse steht für den kompletten Antrieb des Roboters.
Definition: NIBOburger.h:166
ColorRGB(unsigned char r, unsigned char g, unsigned char b)
Konstruktor aus einzelnen Farbkomponenten: Rot, Grün und Blau.
void stopImmediate()
Motoren unverzüglich stoppen (aktiv Stoppen - bremst)
static const unsigned long CALIBRATE_BLACK
24 Bit RGB-Konstante für Kalibrier-Farbe: schwarz
Definition: NIBOburger.h:239
ColorHSV getColorHSV()
HSV-Farbwert aus den drei Sensoren berechnen und zurückliefern.
static const unsigned long CALIBRATE_RED
24 Bit RGB-Konstante für Kalibrier-Farbe: rot
Definition: NIBOburger.h:241
EnginePartClass left
linke Seite
Definition: NIBOburger.h:172
void waitAnalogUpdate()
Warten bis ein neuer Satz Messwerte seit dem letzten Aufruf gemessen wurde.
unsigned int getC(unsigned char absolute=0)
Messwert mittlerer Bodensensor.
int getLed(int led)
LED abfragen:
void setLeds(bool led1, bool led2, bool led3, bool led4)
Alle LEDs auf einmal ein/ausschalten.
unsigned int getKeyChar()
nächstes Tastaturereignis auslesen
static const unsigned long CALIBRATE_BLUE
24 Bit HSV-Konstante für Kalibrier-Farbe: blau
Definition: NIBOburger.h:286
ColorHSV(unsigned char h, unsigned char s, unsigned char v)
Konstruktor aus einzelnen Farbkomponenten: Hue, Saturation und Value.
Klasse für die Sensor-Bricks in den Sensor-Slots.
Definition: NIBOburger.h:406
EnginePartClass right
rechte Seite
Definition: NIBOburger.h:177
static const unsigned long CALIBRATE_GREEN
24 Bit HSV-Konstante für Kalibrier-Farbe: grün
Definition: NIBOburger.h:287
void calibrateWhite()
Kalibrierung auf weissem Untergrund, entspricht dem Wert 4096 (0x1000)