import java.util.Queue;
import lejos.robotics.SampleProvider;
+import lejos.utility.Delay;
import nl.ru.des.LCDPrinter;
public class RemoteSensors{
public void start(Queue<String> q){
long last = System.currentTimeMillis();
+ Delay.msDelay(1000);
LCDPrinter.print("Start sending values...");
while(true){
if(System.currentTimeMillis()-last > DELAY && q.size()<5){
q.add(Integer.toString(RemoteSensorEnum.LEFT.ordinal())+Integer.toString((int)leftLatest)+"\n");
}
right.fetchSample(rightSamples, 0);
+
if(rightSamples[0] != rightLatest){
rightLatest = rightSamples[0];
q.add(Integer.toString(RemoteSensorEnum.RIGHT.ordinal())+Integer.toString((int)rightLatest)+"\n");
}
-
ultra.fetchSample(ultraSamples, 0);
- if(ultraSamples[0] != ultraLatest){
+ if(Math.abs(ultraSamples[0] - ultraLatest) > 0.025){
ultraLatest = ultraSamples[0];
q.add(Integer.toString(RemoteSensorEnum.ULTRA.ordinal())+Float.toString(ultraLatest)+"\n");
}