bt working, different behaviours
[des2015.git] / dsl / runtime / src / nl / ru / des / sensors / RemoteSensors.java
index d25adb3..2075512 100644 (file)
@@ -3,6 +3,7 @@ package nl.ru.des.sensors;
 import java.util.Queue;
 
 import lejos.robotics.SampleProvider;
+import lejos.utility.Delay;
 import nl.ru.des.LCDPrinter;
 
 public class RemoteSensors{
@@ -28,6 +29,7 @@ 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){
@@ -38,13 +40,13 @@ public class RemoteSensors{
                                        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");
                                }