Hier eine Lösung für die Nutzung mehrere Farben und Sensor nach unten unabhängig vom Untergrund.
Einfach eine rote Platte und eine anders farbige Platte direkt hintereinander legen
Rot ist somit der Trigger und darauf reagiert der Sensor perfekt.
Code:
Event bei Farbwechsel auf Rot => Code ausführen
Jetzt muss ich nur noch weitere Farben in den Code einbauen und fertig
Einfach eine rote Platte und eine anders farbige Platte direkt hintereinander legen

Rot ist somit der Trigger und darauf reagiert der Sensor perfekt.
Code:
Event bei Farbwechsel auf Rot => Code ausführen
C#:
MainBoard.WriteLine("Red detected!");
LegoTrainProject.Port.Colors colour;
bool white_detected = false;
int timeout = 3000;
int time_counter = 0;
while ( !white_detected && (timeout > time_counter) )
{
time_counter = time_counter + 100;
System.Threading.Thread.Sleep(100);
colour = Hub[0].GetColor("A");
if (colour == Port.Colors.WHITE )
{
white_detected = true;
MainBoard.WriteLine("White detected! - Close Crossing");
}
}
Jetzt muss ich nur noch weitere Farben in den Code einbauen und fertig