Rescue-Line Programmablauf in RobotC:
task main()
{
//SENSOR-SETUP
//beide Helligkeitssensoren anmelden
//Ultraschall anmelden
//Gyro anmelden
while (true){
//MESSWERTE MESSEN
// Helligkeit links
// Helligkeit rechts
// Ultraschall
// Farbwerte links
// Farbwerte rechts
//MESSWERTE DARSTELLEN (DISPLAY)
// (DEBUGGING)
//P-REGLER:
//Helligkeitswerte in Motoransteuerung umrechnen
//FARBEN AUSWERTEN
// In Richtung des grünen Punkts abbiegen
//HINDERNIS: ULTRASCHALL NUTZEN
//Gyro-Sensor reset()
//"Haken schlagen"
//Kurzes Päusschen
//eraseDisplay()
}
}
Soccer-Roboter in RobotC:
void RICHTUNG_FESTLEGEN()
{
//halbmanuell:
// Roboter korrekt platzieren,
// Kompass oder Gyro als 0-Richtung festlegen
// mit Nutzereingabe bestätigen
}
task main(){
// SENSOR SETUP
// IR SEEKER
// Kompass oder Gyro
// Ultraschall
// Helligkeit oder IR-Abstandssensor
// Korrekten Winkel für Torrichtung festsetzen
// funktion RICHTUNG_FESTLEGEN()
while (true){
// Falls Knopf gedrückt: void RICHTUNG_FESTLEGEN()
//1. Kompass-Sensor auslesen
//2. IR-Seeker auslesen
// MESSWERTE AUF DISPLAY DARSTELLEN
// Kompass-Abgleich: Wo ist das Tor?
// Winkel zum Tor berechnen()
// IR-SEEKER AUSWWERTUNG, 10 FALLUNTERSCHEIDUNGEN nach Richtung des Balls:
//FALL 1: Optimalfall, der Ball ist geradeaus
// Helligkeitsensor auslesen
//VERZWEIGUNG 2: Helligkeitssensor auswerten: Hat man den Ball?
// Wenn Ja: Torfahrt berechnen()
// Wenn Nein: geradeaus zum Ball
//FALL 2 bis FALL 5, Ball schräg vor sich:
// Diagonale zum Ball fahren
//FALL 6 bis FALL 10, Ball neben oder hinter sich:
// Rückwärts fahren bis Ball schräg vor sich
}// ENDE while (true)
}// ENDE task main()