Etwas dauerhaft überprüfen, wie ?

JavaNewie

Mitglied
Hi Comm,

ich programmieren derzeit mit einem kleinen Roboter von Lego, der mit zwei Sensoren ausgestattet ist.
Einem Infrarotsensor, der den Abstand zur Wand mist an dem der Roboter entlang fährt und einem Touchsensor der überprüfen soll, ob sich vor dem Roboter ein(e) Wand/Hindernis befindet. Das mit dem Infrarotsensor funktioniert soweit, er korrigiert die Fahrtrichtung, sofern der Roboter zu stark von der geraden Linie der Wand abweicht. Jedoch schaffe ich es nicht den Touchsensor so zu implementieren, dass er dauerhaft (also in jeder millisekunde des Programms) überprüft, ob der Touchsensor gepressed ist.
Wie könnte man soetwas machen? Geht das? Gibt es so etwas wie einen Interrupt bei Microcontrollern?

Wäre über Antworten echt froh ! :)

Viele liebe Grüße,

JavaNewie
 

Machareder

Bekanntes Mitglied
so einen Roboter hab ich auch :D
kann man den echt über java (<- also wirklich pures java programmieren!?)
Oder meinst du das Programm(hab einmal was mit dem gemacht ;) )? Also auf die schnelle beim überfliegen könnt ich dir nur einen sleep-block(try/catch) "empfehlen" und den auf 1 setzt, aber des würde glaub ich auch wenig Sinn ergeben :D
 

anti-held

Bekanntes Mitglied
Du brauchst einen Thread der nebenläufig eine Schleife durchläuft, in der er immer eine bestimmte Zeit wartet (z.B. mit [c]sleep(100)[/c] für 0,1 sec) und dann die Sensordaten liest und mögliche Aktionen ausführt.
 

MrClave

Bekanntes Mitglied
Bevor man irgendwas mit while(true) bastelt, sollte man über einen Timer nachdenken.
Wesentlich schöner.

Jemand, der Roboter steuert, sollte so etwas wissen.
 
Zuletzt bearbeitet:

DaveIT

Mitglied
Busy waiting sollte man eigentlich vermeiden. Natürlich gibt es in Java etwas 'ähnliches' wie Interrupts. Die Grundidee dahinter ist eben, dass gewisse Aktionen erst ausgeführt werden wenn sich die betreffende Komponente meldet.

Schau dir in diesem Zusammenhang das Schlüsselwort
Code:
synchronized
an ( in der Doku oder einem der vielen Java Bücher). Für Sensoren gibt es ein
Code:
SensorEvent
. Mit dem event kannst du dann, wenn etwas passiert, die Daten weitergeben. Verarbeiten könntest du das dann mit
Code:
TimerTask
.

Als kurzer Leidfaden (kein ausführbarer Code!):

Code:
public void sensorChanges( SensorEvent event){
  synchronized (this){
    //wir machen etwas mit dem Sensor event
   // wir fügen z.B. Sensordaten zu einem Datenfeld data hinzu
  }
}

class doSomethingWithSensordata extends TimerTask {
  public synchronized void run() {
     for (Sensordata i: data) {
         //Wir machen etwas mit den Daten, z.B. Änderung der Fahrtrichtung   
     } 
  }
}

Hope that helps...
 
Zuletzt bearbeitet:

JavaNewie

Mitglied
Wow, erstmal danke für die vielen Antworten!

Zu den Fragen, ja klar das geht, ich programmiere mit Eclipse. Ich stelle euch mal die Seite rein, wo ein Leidfaden vorhanden ist, wie man die Konfigurationen (sd card, ssh verbindung ...) einstellt.
leJOS / EV3 Wiki / Home

Das Model ist ein Mindstorm ev3.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
S Möglichkeit, mit g.draw etwas vor ein JTextfield zu „zeichnen“? Java Basics - Anfänger-Themen 7
T Methode soll etwas ausrechnen und zurückgeben (klappt nd) hat wer eine Idee? Java Basics - Anfänger-Themen 11
schemil053 Multithread - Input verrutscht während etwas ausgegeben wird Java Basics - Anfänger-Themen 6
K Warum gibt mir z. B. 40^128 eine Zahl? Ich dachte mit xor kann man nur booleanwerte erhalten, also prüfen ob etwas whar oder falsch ist? Java Basics - Anfänger-Themen 1
Y Wie kann man überprüfen, ob bei einem Print Befehl tatsächlich etwas geprintet wurde? Java Basics - Anfänger-Themen 4
M In gleicher zeile hinter ausgabe noch etwas ausgeben Java Basics - Anfänger-Themen 1
B Wie kann ich etwas vor der Main-Methode ausführen? Java Basics - Anfänger-Themen 21
A Haben KNNs ein Gedächtnis, lernen etwas oder verändern sich, während sie nicht trainieren, aber aktiv sind? Java Basics - Anfänger-Themen 3
CptK Methoden While-Schleife so lange ausführen, wie Methode etwas zurückgibt Java Basics - Anfänger-Themen 2
D Etwas unsicher wie es weitergehen soll Java Basics - Anfänger-Themen 2
I In der Mitte eines Frames mit BorderLayout etwas malen Java Basics - Anfänger-Themen 7
K Durch eine Text eingabe etwas Ausführen Java Basics - Anfänger-Themen 5
A Ich habe das Gefühl etwas grundlegendes falsch zu machen Java Basics - Anfänger-Themen 6
D Probleme beim Kompelieren mache ich etwas falsch ? Java Basics - Anfänger-Themen 3
F (Eclipse) Beim importieren etwas fehlerhaft bitte um Hilfe :) Java Basics - Anfänger-Themen 3
T Erste Schritte Textfeld abfragen ob etwas enthalten ist. Java Basics - Anfänger-Themen 17
O Etwas auf der Konsole ausgeben, usw. Java Basics - Anfänger-Themen 22
J Input/Output Scanner Input als etwas einsetzen Java Basics - Anfänger-Themen 3
DaCrazyJavaExpert Input/Output Prüfen wie oft etwas eingegeben wurde Java Basics - Anfänger-Themen 2
JavaNewbie2.0 Gibt meiner Meinung etwas falsches aus. Java Basics - Anfänger-Themen 7
JavaNewbie2.0 Habe ein frage wie man etwas macht. Java Basics - Anfänger-Themen 13
O Klassen etwas Bruchrechnern Java Basics - Anfänger-Themen 5
R warum kann System.out.println(..) etwas, was Swing-Elemente Nicht können ? Java Basics - Anfänger-Themen 11
M Variablen Eine etwas andere if Abfrage ! Java Basics - Anfänger-Themen 10
D Etwas speichern Java Basics - Anfänger-Themen 5
L Gibt es etwas wie "HashMap <String, String, String> Java Basics - Anfänger-Themen 9
A scan.nextLine() - Wenn man zu lange nichts macht, soll etwas passieren Java Basics - Anfänger-Themen 3
B Wie kann man auf das JFrame einer anderen Klasse zugreifen, etwas hinzufügen und entfernen?? Java Basics - Anfänger-Themen 3
S Komponente sagen, sie soll etwas tun Java Basics - Anfänger-Themen 3
J Für 3 Sekunden etwas bestimmtes zeichnen Java Basics - Anfänger-Themen 8
H Etwas wie sort() / sorted() in JAVA-Collections? Java Basics - Anfänger-Themen 5
S 0 wird negativ, wenn sie mit etwas negativen multipliziert wird. Warum? Java Basics - Anfänger-Themen 4
G gegen (etwas) programmieren Java Basics - Anfänger-Themen 11
Binary.Coder Vor und nach jeder Codezeile etwas einfügen Java Basics - Anfänger-Themen 3
A Wie kann man etwas von Typ Image wieder löschen? Java Basics - Anfänger-Themen 7
G vor String etwas anhängen Java Basics - Anfänger-Themen 2
D Attributen und Methoden, etwas vergessen? Java Basics - Anfänger-Themen 6
T TCP, Empfang nur wenn wirklich etwas kommt Java Basics - Anfänger-Themen 6
F Etwas bestimmtes löschen Java Basics - Anfänger-Themen 13
N prüfe ob etwas in einer Matrix steht... Java Basics - Anfänger-Themen 14
S etwas schierige Ausgabe mit Systemout Java Basics - Anfänger-Themen 5
G Methode, die etwas hochzählt Java Basics - Anfänger-Themen 6
U etwas aufaddieren... acc. Java Basics - Anfänger-Themen 12
T Etwas an paint()-Methode übergeben? Java Basics - Anfänger-Themen 6
T RandomAccessFile - Wie schreibe ich etwas in eine txt Datei? Java Basics - Anfänger-Themen 5
G etwas is falsch? Java Basics - Anfänger-Themen 10
S Compile zu etwas Ausführbarem Java Basics - Anfänger-Themen 4
X Wie save ich etwas? Java Basics - Anfänger-Themen 6
R etwas andere for schleife Java Basics - Anfänger-Themen 2
G die etwas andere suche! Java Basics - Anfänger-Themen 22
M Über einen Button etwas zeichnen lassen Java Basics - Anfänger-Themen 5
L URL aufrufen und per get etwas übergeben Java Basics - Anfänger-Themen 6
K Einer Methode etwas zuweisen Java Basics - Anfänger-Themen 22
N aus einer file etwas auslesen. Java Basics - Anfänger-Themen 2
T Aus Klasse "B" in Klasse "A" etwas tun? Java Basics - Anfänger-Themen 8
G Programme etwas machen lassen. Java Basics - Anfänger-Themen 4
B Etwas in der konsole ausgeben ? Java Basics - Anfänger-Themen 7
G Programm soll nach bestimmter Zeit etwas tun Java Basics - Anfänger-Themen 24
B KeyListener (etwas bewegen) Java Basics - Anfänger-Themen 10
P Textdateischreiben, etwas fehlt noch bzw. 1 error kommt Java Basics - Anfänger-Themen 4
H in Textdateien etwas schreiben bzw. speichern Java Basics - Anfänger-Themen 2
D In String etwas einfügen. Java Basics - Anfänger-Themen 2
B Irgend etwas ist merkwürdig! brauche hilfe Java Basics - Anfänger-Themen 16
D Mein kleines Programm etwas schöner machen :-) Java Basics - Anfänger-Themen 13
G Gibt es so etwas wie eine Textfeldgruppe? Java Basics - Anfänger-Themen 2
R Dem Textfeld einer Internetseite etwas übergeben Java Basics - Anfänger-Themen 6
P Wie kann ich beispielsweise Speicherstände eines Spiels DAUERHAFT in meinem Programm speichern? Java Basics - Anfänger-Themen 3
N Veränderungen dauerhaft speichern Java Basics - Anfänger-Themen 3
L0MiN Erste Schritte Neue Punkte zu einer Map hinzufügen und dauerhaft speichern? Java Basics - Anfänger-Themen 4
O Variabeln aus einer andere Klasse dauerhaft einen anderen Wert übergeben Java Basics - Anfänger-Themen 5
E Socket (Client) dauerhaft aktiv? Java Basics - Anfänger-Themen 9
R .log-Datei dauerhaft auslesen Java Basics - Anfänger-Themen 7
M Daten dauerhaft speichern Java Basics - Anfänger-Themen 3
S String dauerhaft mit replaceAll verändern Java Basics - Anfänger-Themen 3
B Wie kann ich eine dauerhaft ausführbare Datei erstellen? Java Basics - Anfänger-Themen 6
F Wert dauerhaft speichern Java Basics - Anfänger-Themen 3
L Werte dauerhaft speichern Java Basics - Anfänger-Themen 3
K Mehrere Werte in einem Switch Case parallel überprüfen Java Basics - Anfänger-Themen 6
M Scanner Input mit if überprüfen Java Basics - Anfänger-Themen 5
Beowend String auf Satzzeichen überprüfen? Java Basics - Anfänger-Themen 6
N String überprüfen Java Basics - Anfänger-Themen 3
A Gleichheit überprüfen Java Basics - Anfänger-Themen 8
N ResultSet auf Einträge überprüfen Java Basics - Anfänger-Themen 5
T Variable von Objekten in einer Methode überprüfen Java Basics - Anfänger-Themen 26
R ISBN-10-Code überprüfen Java Basics - Anfänger-Themen 7
T Diagonale von 2DArray auf gleichheit überprüfen Java Basics - Anfänger-Themen 2
M Wie kann ich den Index i von einer LinkedList überprüfen? Java Basics - Anfänger-Themen 36
P9cman Vokale in einem String überprüfen mittels Rekursion Java Basics - Anfänger-Themen 8
U zwei 2D arrays auf gleich sein überprüfen Java Basics - Anfänger-Themen 14
P Möglichen Pfad überprüfen Java Basics - Anfänger-Themen 5
Z Kein überprüfen des gesamten Arrays möglich.(Viergewinnt Spiel) Java Basics - Anfänger-Themen 6
C String auf Dualzahl überprüfen Java Basics - Anfänger-Themen 5
L Wie Input auf verschiedene Kriterien hin überprüfen? Java Basics - Anfänger-Themen 3
P Parameter auf Datenformat überprüfen Java Basics - Anfänger-Themen 5
F Hilfe - Wahrheitswert überprüfen ohne If Java Basics - Anfänger-Themen 2
C Ganzzahlige Werte in Boolean ausgeben und überprüfen ob Primzahl oder nicht, wenn es keine Primzahl ist soll es die Primfaktorzerlegung ausgeben Java Basics - Anfänger-Themen 4
H Harshad-Zahl (Nivenzahl) und Palindrom überprüfen Java Basics - Anfänger-Themen 2
R Wie überprüfen wann der User online oder offline ist? Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben