Hallo ich habe ein Problem mit meinem Programm bin noch relativ neu in Yava daher frag ich um hilfe bischen Fachkenntnise konnt ich mit schon aneigenen aber noch net so viel das ich mein Problemm lösen kann ich fang einfach mal an:
Ich soll einen kleinen mini.Computer ein parr Befehle ausführen lassen.
Dazu habe ich 2 Motoren und 1Sensor(Lichtsensor)
Ich soll ein Fahrzeug auf einer Linie fahren lassen ohne das es je anhählt und der linie folgt. Sobald es einen unterschied wahrnimmt soll es anders reagieren und dann wieder auf die Bahn zurückkommen.
Das habe ich bereit reingebracht:
Quellcode:
So hier ist das was ich bereits geschrieben er soll halt immer wieder einlesen macht aber momentan nix das macht es mir um so schwerer.
Ich habe es auch schon Prüfen lassen, es wird mir kein Fehler angezeigt vielleicht könnt ihr mir ja helfen.
Der Roboter soll nur weiterfahren nicht stoppen oder so er soll halt ganz flüssig seiner linie folgen und wenn er sie verliehrt sie wieder suchen und weiter fahren.
Dánke schon mal an alle folgenden beiträge ^^
Ich soll einen kleinen mini.Computer ein parr Befehle ausführen lassen.
Dazu habe ich 2 Motoren und 1Sensor(Lichtsensor)
Ich soll ein Fahrzeug auf einer Linie fahren lassen ohne das es je anhählt und der linie folgt. Sobald es einen unterschied wahrnimmt soll es anders reagieren und dann wieder auf die Bahn zurückkommen.
Das habe ich bereit reingebracht:
Quellcode:
Java:
currentPost.edit(
import lejos.nxt.*;
import lejos.navigation.*;
import lejos.navigation.Pilot;
import lejos.nxt.SensorPort;
/**
* Roboter folgt einer Spur
*/
public class Spurenfolger
{
public static void main (String[] aArg) throws Exception
{
Pilot basti = new TachoPilot(5.6f, 13.5f, Motor.A, Motor.C);
LightSensor Sensor = new LightSensor(SensorPort.S1);
int startwert = Sensor.readValue();
int delta = 20;
int differenz = 0;
int wert = 9;
while (differenz > -delta && differenz < delta)
{
int aktuell = Sensor.readValue();
differenz = aktuell - startwert;
Sensor.readValue();
LCD.drawString("aktuell: " + Sensor.readValue(),0,1);
LCD.drawString("Differenz: " + differenz,0,1);
Button.ESCAPE.waitForPressAndRelease();
if (differenz < delta)
{ if (differenz < wert)
{ basti.forward();
basti.rotate(5);
} }
else
{
basti.forward();
}
}
}
}
);
Ich habe es auch schon Prüfen lassen, es wird mir kein Fehler angezeigt vielleicht könnt ihr mir ja helfen.
Der Roboter soll nur weiterfahren nicht stoppen oder so er soll halt ganz flüssig seiner linie folgen und wenn er sie verliehrt sie wieder suchen und weiter fahren.
Dánke schon mal an alle folgenden beiträge ^^
Zuletzt bearbeitet: