class instance NIBObee
Funktion | Beschreibung |
---|---|
void begin () | Initialisierung des NIBObee Roboters |
unsigned int getVoltage () | Versorgungsspannung messen. return-value: Spannung in Millivolt (4.8V ≙ 4800) |
void checkVoltage () | Versorgungsspannung überprüfen, im Fehlerfall anhalten und blinken |
void setLed (int led, int value) | LED ein/ausschalten: led: LED0=0, LED1=1, LED2=2, LED3=3 value: OFF=0, ON=1 |
int getLed (int led) | LED abfragen: led: LED0=0, LED1=1, LED2=2, LED3=3 return-value: OFF=0, ON=1 |
unsigned int getRandomSeed () | Zufallszahlen-Basis liefern |
unsigned int getAnalog (unsigned char adc_channel, unsigned char active) | Rohwert eines analogen Kanals auslesen |
class instance Engine
Funktion | Beschreibung |
---|---|
void begin () | Initialisierung |
void setPWM (int left, int right) | PWM Werte (-1023 ... 0 ... +1023) für die beiden Motoren setzen |
void setSpeed (int left, int right) | Geschwindigkeit für die beiden Motoren setzen. Die Werte werden in Ticks/Sekunde angegeben. 40 Ticks entsprechen einer Radumdrehung (116 mm Strecke) |
void setTargetAbs (int left, int right, unsigned int speed) | Zielposition für Räder setzen. Die Werte werden in Ticks angegeben. 40 Ticks entsprechen einer Radumdrehung (116 mm Strecke) |
void setTargetRel (int left, int right, unsigned int speed) | Zielposition für Räder setzen. Die Werte werden relativ zur aktuellen Position in Ticks angegeben. 40 Ticks entsprechen einer Radumdrehung (116 mm Strecke) |
int getTargetDist () | Verbleibende Distanz zum Ziel bei Durchführung von setTargetAbs() bzw. setTargetRel(). Die Distanz ist der maximale Wert von den verbleibenden linken und rechten Ticks |
void stop () | Motoren anhalten (passiv Stoppen - rollt aus) |
void stopImmediate () | Motoren unverzüglich stoppen (aktiv Stoppen - bremst) |
left | -> siehe Engine.left (nächster Abschnitt) |
right | -> siehe Engine.right (nächster Abschnitt) |
class instances Engine.left / Engine.right
Funktion | Beschreibung |
---|---|
int getTicks () | Aktueller Zählerwert des Rades in Ticks, 40 Ticks entsprechen einer Radumdrehung (116 mm Strecke) |
int resetTicks () | Aktuellen Zählerstand auf 0 setzen |
class instance LineSensor
Funktion | Beschreibung |
---|---|
void begin () | Initialisierung |
unsigned int getL () | Messwert linker Liniensensor |
unsigned int getC () | Messwert mittlerer Liniensensor |
unsigned int getR () | Messwert rechter Liniensensor |
void calibrateWhite () | Kalibrierung auf weissem Untergrund, entspricht dem Wert 4096 (0x1000) |
void calibrateBlack () | Kalibrierung auf schwarzem Untergrund, entspricht dem Wert 0 (0x0000) |
void storeCalibration () | Kalibrierdaten im EEPROM speichern |
class instances FeelerL / FeelerR
Funktion | Beschreibung |
---|---|
void begin () | Initialisierung |
int get () | Sensor abfragen |
class instances ExtSensorL / ExtSensorR
Funktion | Beschreibung |
---|---|
void begin () | Initialisierung |
int activate (unsigned char mode) | Sensor-Modus setzen:
|
int get () | Sensor abfragen |
IO-Definitionen
Die IO-Definitionen sind für fortgeschrittene Benutzer zur Verwendung mit den ARDUINO Digital I/O Funktionen gedacht!
Name | Port + Bit | AVR Pin # | Beschreibung |
---|---|---|---|
IO_AN0 | PA0 | 40 | Erweiterung X1.1 (analog/digital) |
IO_AN1 | PA1 | 39 | Erweiterung X1.2 (analog/digital) |
IO_AN2 | PA2 | 38 | Erweiterung X2.1 (analog/digital) |
IO_AN3 | PA3 | 37 | Erweiterung X3.1 (analog/digital) |
IO_VBAT | PA4 | 36 | Batteriespannung (analog) |
IO_LINE_L | PA5 | 35 | Liniensensor links (analog) |
IO_LINE_C | PA6 | 34 | Liniensensor mitte (analog) |
IO_LINE_R | PA7 | 33 | Liniensensor rechts (analog) |
IO_LED0 | PB0 | 1 | LED0 (links, gelb) |
IO_LED1 | PB1 | 2 | LED1 (links, rot) |
IO_LED2 | PB2 | 3 | LED2 (rechts, rot) |
IO_LED3 | PB3 | 4 | LED3 (rechts, gelb) |
IO_LINE_EN | PB4 | 5 | Liniensensor An/Aus |
IO_MOSI | PB5 | 6 | SPI MOSI |
IO_MISO | PB6 | 7 | SPI MISO |
IO_SCK | PB7 | 8 | SPI SCK |
IO_PC0 | PC0 | 22 | Erweiterung X4.1 (digital) / I²C SCL |
IO_PC1 | PC1 | 23 | Erweiterung X4.2 (digital) / I²C SDA |
IO_PC2 | PC2 | 24 | Erweiterung X2.2 (digital) |
IO_PC3 | PC3 | 25 | Erweiterung X3.2 (digital) |
IO_SENS_L1 | PC4 | 26 | Linker Fühler |
IO_SENS_L2 | PC5 | 27 | Linker Fühler |
IO_SENS_R1 | PC6 | 28 | Rechter Fühler |
IO_SENS_R2 | PC7 | 29 | Rechter Fühler |
IO_RXD | PD0 | 14 | Erweiterung X5.1 (digital) / Serielle Schnittstelle Empfang |
IO_TXD | PD1 | 15 | Erweiterung X5.2 (digital) / Serielle Schnittstelle Senden |
IO_ODO_L | PD2 | 16 | Odometrie links |
IO_ODO_R | PD3 | 17 | Odometrie rechts |
IO_PWM_R | PD4 | 18 | Motor PWM rechts |
IO_PWM_L | PD5 | 19 | Motor PWM links |
IO_DIR_L | PD6 | 20 | Motor Richtung links |
IO_DIR_R | PD7 | 21 | Motor Richtung rechts |
