NiboRoboLib 3.6 - NIBO burger Library
niboburger-Verzeichnisreferenz

Dateien

Datei  analog.h [code]
 Die Funktionen ermöglichen den Zugriff auf die analogen Eingänge (Sensorbricks, KEY und Versorgungsspannung).
 
Datei  base.h [code]
 Funktionen für die Versorgungsspannung und interne Definitionen der NIBO burger Library.
 
Datei  bgx1.h [code]
 Routinen zur Kommunikation mit der Display-Erweiterung BGX1 über I²C. Die Erweiterung für den NIBObee ist elektronisch kompatibel, wird jedoch zur Zeit nicht weiter unterstützt!
 
Datei  bgx1_protocol.h [code]
 Definitionen für die Kommunikation des BGX1 über I²C.
 
Datei  clock.h [code]
 Zeitzählung. Die Zeit steht in Sekunden und Millisekunden seit dem Start zur Verfügung.
 
Datei  color.h [code]
 Routinen für 24-Bit RGB Farben und 24-Bit HSV Farben.
 
Datei  delay.h [code]
 Routinen für Verzögerungen.
 
Datei  doc.h [code]
 
Datei  i2cmaster.h [code]
 Routinen zur Kommunikation ueber den I2C Bus.
 
Datei  iodefs.h [code]
 Zuordnung der physikalischen Pins zu symbolischen Namen.
 
Datei  iodefs_niboburger.h [code]
 Zuordnung der physikalischen Pins zu symbolischen Namen.
 
Datei  key.h [code]
 Routinen zur Abfrage der Tasten 1 - 3.
 
Datei  led.h [code]
 Routinen zur Ansteuerung der LEDs.
 
Datei  motpid.h [code]
 PID-Regler.
 
Datei  motpid2.h [code]
 
Datei  motpwm.h [code]
 Funktionen zur Erzeugung der PWM-Signale für die Motoren.
 
Datei  NIBOburger.h [code]
 NIBOburger library for ARDUINO.
 
Datei  odometry.h [code]
 Funktionen zur Odometriemessung Mit den Odometriesensoren wird die Drehung der Räder gemessen. Daraus läßt sich der gefahrene Weg berechnen. Das Wort Odometrie kommt aus dem Griechischem und bedeutet Wegmessung. Die Drehung wird durch Lichtschranken und die Löcher in den roten Zahnrädern gemessen. Jedes Loch löst genau einen Zählimpuls aus, eine komplette Radumdrehung löst 100 (bzw. 20) Impulse aus. Die Räder haben einen Durchmesser von 45 mm, das entspricht einem Umfang von ca. 141 mm. Pro Tick bewegt sich der Roboter somit 1,41 mm (bzw 7,05 mm) vorwärts. Die maximale Geschwindigkeit der Motoren im Leerlauf liegt bei ungefähr 100 Ticks/Sekunde - das sind ca. 14 cm / Sekunde (bzw. 70 cm / Sekunde).
 
Datei  rc5.h [code]
 Routinen fuer die Dekodierung von RC5-Fernbedienungs-Codes Der SFH5110-36 (oder kompatibel) kann einfach mittig in die Buchsenleiste X13 gesteckt werden (Blickrichtung nach hinten / umgebogen nach oben) Als Sendedioden werden einfach die IR-Sensorbricks in den Slots FLL und FRR verwendet.
 
Datei  robo.h [code]
 Hiermit werden alle NIBO burger-Includes eingebunden! Für die Haupt-C-Datei steht die Datei <niboburger/robomain.h> zur verfügung in der auch setup() und loop() deklariert werden!
 
Datei  robomain.h [code]
 Ersetzt die main()-Funktion durch die beiden Funktionen setup() und loop(), wie in Processing... zusätzlich werden alle NIBO burger-Includes eingebunden! Die Datei darf nur von der Haupt-C-Datei eingebunden werden, alle anderen Dateien sollten die Datei <niboburger/robo.h> verwenden.
 
Datei  storage.h [code]
 Funktionen zum Abspeichern von Daten im EEPROM. Die Datensätze werden von der höchsten Addresse an im EEprom gespeichert. Jeder Datensatz hat 32 Bit (4 Byte) Kopfdaten in denen der genaue Typ (3 Byte) und die Größe (1 Byte) gespeichert sind. Der Typ setzt sich aus dem Owner (Bibliothek etc...) dem Eintragstyp (Liniensensor, Baudrate etc...) und der Versionsnummer zusammen. Konfigurationsdaten können somit von verschiedenen Bibliotheksversionen gespeichert und falls sie Kompatibel sind, gemeinsam genutzt werden. Alle Einträge sind auf 32 Bit Addressen ausgerichtet (4 byte aligned). STORAGE_SYS_NAME STORAGE_SYS_UART0_BAUDRATE.
 
Datei  storage_nrl.h [code]
 
Datei  surface.h [code]
 Zugriff auf die aufbereiteten Daten des Boden- bzw. Farbsensors.
 
Datei  usart.h [code]
 Routinen zur Kommunikation über die serielle Schnittstelle (Slot X13)
 
Datei  utils.h [code]
 Nützliche Funktionen, die in C als Makros und in C++ als Templates implementiert sind. Die Funktionen sind frei von Seiteneffekten, das bedeutet, dass der Ausdruck max(++i, j++) ohne Probleme verwendet werden kann!