Está en la página 1de 12

///EL siguiente programa guia permite colocar el objeto levitador

//en una determinada distancia, al mover el potenciometro

#include <LiquidCrystal.h>

LiquidCrystal lcd(7, 6, 5, 4, 3, 2); //(RS, ENABLE, D4, D5, D6, D7);

const int trigPin = 9;// Sensor ultrasonico

const int echoPin = 10;//Sensor ultrasonico

long duracion,medida;

long lectura,set_point,set_point1,valor_set;

int distanciaCm,distanciaCm1;

void setup() {

Serial.begin(9600);

lcd.begin(16,2);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);
lcd.setCursor(0,0); lcd.print("DISTANCIA: ");

lcd.setCursor(0,1); lcd.print("SET POINT: ");

void loop() {

Serial.println(medida);

////DISTANCIA///

digitalWrite(trigPin, LOW); delayMicroseconds(2);

digitalWrite(trigPin, HIGH); delayMicroseconds(10);

digitalWrite(trigPin, LOW);

//

duracion = pulseIn(echoPin, HIGH);

distanciaCm = duracion*0.034/2;

distanciaCm1 = distanciaCm-5;

medida=30-distanciaCm1;

lcd.setCursor(11,0); lcd.print((medida/10)%10);

lcd.setCursor(12,0); lcd.print((medida/1)%10);

lcd.setCursor(13,0); lcd.print(" ");

delay(150);

//////SET POINT/////

set_point=analogRead(A0);

lectura=map(set_point,0,1023,150,255);

analogWrite(11,lectura);//Pin 11 es el ventilador

//IMPRESION SET POINT

set_point1=analogRead(A0);

valor_set=map(set_point1,0,1023,0,30);
lcd.setCursor(11,1); lcd.print((valor_set/10)%10);

lcd.setCursor(12,1); lcd.print((valor_set/1)%10);

delay(100);

}
DESPUES DE DATOS ELIMINADOS: ELIMINAMOS LOS PRIMEROS 60 DATOS Y LOS ULTIMOS 60
DATOS PARA QUE LA FT SE APROXIME MAS. TOTAL TENIAMOS 535 DATOS, se cambio el
sample time a 0,25, anterior sample time era 1
PI

También podría gustarte