- public void debug(){
- new Thread(){
- @Override public void run(){
- while(true){
- ultra.fetchSample(ultraSamples, 0);
- leftLight.fetchSample(leftLightSamples, 0);
- rightLight.fetchSample(rightLightSamples, 0);
- LCD.drawString("back: " + Float.toString(ultraSamples[0]), 0, 1);
- LCD.drawString("front: " + Float.toString(frontUltra), 0, 2);
- LCD.drawString("left: " + Float.toString(leftLightSamples[0]), 0, 3);
- LCD.drawString("right: " + Float.toString(rightLightSamples[0]), 0, 4);
- Delay.msDelay(250);
- }
- }
- }.run();
+
+ public void calibrate() {
+ System.out.println("Put left light on Blue");
+ Button.waitForAnyEvent();
+ leftLight();
+ DANGER_LIGHT = leftLightSamples[0];
+ System.out.println("Light limit: " + Float.toString(DANGER_LIGHT));
+
+ Delay.msDelay(350);
+ System.out.println("Put left light on Black");
+ Button.waitForAnyEvent();
+ leftLight();
+ DANGER_LIGHT = (leftLightSamples[0]+DANGER_LIGHT)/2.0f;
+ System.out.println("Light limit: " + Float.toString(DANGER_LIGHT));
+
+ Delay.msDelay(350);
+ System.out.println("Place back ultra safe");
+ Button.waitForAnyEvent();
+ backDistance();
+ DANGER_DISTANCE_BACK = ultraSamples[0] + 0.05f;
+ System.out.println("Back ultra limit: " + Float.toString(DANGER_DISTANCE_BACK));
+
+ Delay.msDelay(350);
+ System.out.println("Place front ultra in danger");
+ Button.waitForAnyEvent();
+ DANGER_DISTANCE_FRONT = frontUltra;
+ System.out.println("Calibration done");
+ System.out.println("Front ultra limit: " + Float.toString(DANGER_DISTANCE_FRONT));