sábado, 18 de marzo de 2017

Sensor de aparcamento con arduino e sensor de ultrasonidos


AQUÍ VAI O CÓDIGO PARA O IDE DE ARDUINO
#include <Wire.h>
#include <rgb_lcd.h> // librería para a miña pantalla LCD
#include <SoftwareSerial.h> //
#include "Ultrasonic.h" //librería para o meu sensor ultrasónico
#define BUZZER_PIN              6

rgb_lcd lcd;
int colorR = 70;  //variando o número correspondente á cor Vermello, Verde ou Azul, variará a cor
int colorG = 20;  //da retroiluminación
int colorB = 40;
Ultrasonic ultrasonic(5);

void setup()
{
  Serial.begin(9600);
  pinMode(BUZZER_PIN, OUTPUT);
    lcd.begin(16, 2);  //configuramos o número de columnas e de filas que ten a pantalla
    lcd.setRGB(colorR, colorG, colorB);  //configuramos as cores da iluminacion posterior
     // imprime na pantalla LCD a mensaxe entre paréntesis
     lcd.clear();   //borra calquera contido residual  
}

void loop()
{
    long RangeInCentimeters;
    RangeInCentimeters = ultrasonic.MeasureInCentimeters();
    delay(150);
   
    if(RangeInCentimeters>10) {
    lcd.clear();
    lcd.setCursor (0,0);  // indicamos que poña o cursor na fila 0, columna 0
    lcd.print("LONXE!");   //imprime este texto
    lcd.setCursor(0,1) ;
    lcd.print(RangeInCentimeters,DEC);
    lcd.setCursor(5,1) ;
    lcd.print("cm");
    lcd.setRGB(colorR=0, colorG=250, colorB=0);   //configuramos a cor de fondo
    delay(200);
    digitalWrite(BUZZER_PIN, LOW);
    delayMicroseconds(RangeInCentimeters/10);
}
else {
  lcd.clear();
  lcd.setCursor (0,0);
  lcd.print("MOI CERCA!");
  lcd.setCursor(0,1) ;
    lcd.print(RangeInCentimeters,DEC);
    lcd.setCursor(5,1) ;
    lcd.print("cm");
lcd.setRGB(colorR=250, colorG=0, colorB=0);
 delay(200);
 digitalWrite(BUZZER_PIN, HIGH);
    delayMicroseconds(RangeInCentimeters/5);
}
}


Ningún comentario:

Publicar un comentario