Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package br.follow_line;
- import lejos.nxt.*;
- public class ler_dados implements Runnable{
- private int valor_medio,touch,dado_motora,dado_motorb,dado_sensor,variacao_motora,variacao_motorb,motora_antes=0,motorb_antes=0;
- long inicio, fim;
- double tempo, velocidade_a,velocidade_b;
- TouchSensor touch_s2 = new TouchSensor(SensorPort.S2); //Setar sensor de toque
- public void run(){
- touch=1;
- try {
- Thread.sleep(1000);
- do{
- valor_medio = ((major.branco - major.preto)/2) + major.preto;
- if (touch_s2.isPressed()&&(major.light.getNormalizedLightValue() < valor_medio)){
- touch++;
- }
- if (touch % 2 != 0){
- if (major.light.getNormalizedLightValue() < valor_medio){
- Motor.A.setPower(10); //Setar potĂȘncia no motor
- Motor.A.backward();
- Motor.B.stop();
- }
- else{
- Motor.B.setPower(10);
- Motor.B.backward();
- Motor.A.stop();
- }
- }
- else if (touch % 2 == 0){
- if (major.light.getNormalizedLightValue() < valor_medio){
- Motor.B.setPower(10);
- Motor.B.backward();
- Motor.A.stop();
- }
- else{
- Motor.A.setPower(10);
- Motor.A.backward();
- Motor.B.stop();
- }
- }
- else{
- System.out.println("Erro no Controle On/Off");
- }
- ///////////////////////////////////////////////////////////
- dado_sensor = major.light.getNormalizedLightValue();
- inicio = System.currentTimeMillis(); //Inicia contagem de tempo
- dado_motora = Motor.A.getTachoCount()*-1;
- dado_motorb = Motor.B.getTachoCount()*-1;
- fim = System.currentTimeMillis() - inicio; //Para contagem de tempo
- variacao_motora = dado_motora - motora_antes;
- variacao_motorb = dado_motorb - motorb_antes;
- motora_antes = dado_motora;
- motorb_antes = dado_motorb;
- System.out.println("DA: " + Integer.toString(variacao_motora));
- System.out.println("DB: " + Integer.toString(variacao_motorb));
- tempo = fim * 0.001;
- velocidade_a = (double)(variacao_motora / tempo); //velocidade Motor A
- velocidade_b = (double)(variacao_motorb / tempo); //velocidade Motor B
- System.out.println("PA: " + Integer.toString(dado_motora));
- System.out.println("PB: " + Integer.toString(dado_motorb));
- System.out.println("S: " + Integer.toString(dado_sensor));
- System.out.println("VA: " + Double.toString(velocidade_a));
- System.out.println("VB: " + Double.toString(velocidade_b));
- System.out.println("T: " + Double.toString(tempo));
- }while(true);
- }
- catch (InterruptedException e) { //Se der erro ao compilar informar o erro
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment