ultra_so_basic_4a
/***************************************************/
//original de dorcu.com, simplificat per sacosta.org
// 1 agost 2015
// Definim els pins a emprar. En aquest primera aproximació emprarem només el 7, 8, 5V i GND
#define trigPin 7
#define echoPin 8
//vcc va a 5v
//gnd a gnd
#define led1 10 //definim led1 al pin 10 (led vermell)
#define led2 11//definim led2 al pin 11 (led verd)
int dis = 15; // Establim la distància en cm per a la comprobació i que ens digui aprop o lluny
// LLibreria necesaria per el funcionamient. es pot trobar a https://mega.co.nz/#!bMBXgD7Q!2sCMD1fupFCENXINfngolbyt4zrN0olDw_t5Zk-taAU
#include "Ultrasonic.h"
// Declaram el sensor ultrasons als pins digitals assignats anteriorment
Ultrasonic ultrasonido(trigPin, echoPin);
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT); // Establim el pin trig com a sortida
pinMode(echoPin, INPUT); // Establim el pin echo com entrada
pinMode(led1, OUTPUT); //Establim led1 com a sortida
pinMode(led2, OUTPUT); //Establim led2 com a sortida
digitalWrite(led1, LOW); //Apagam els led1
digitalWrite(led2, LOW); //Apagam el led2
}
void loop() {
int distancia;
distancia = ultrasonido.Ranging(CM);
if (distancia < dis) {
Serial.print("Led vermell - Distancia: ");
Serial.print(ultrasonido.Ranging(CM));
Serial.println(" cm");
digitalWrite(led1, HIGH);
delay(500);
}
else if (distancia >= dis && distancia < 50) {
digitalWrite(led2, HIGH); // Encenem el led verd
Serial.print("Led verd - Distancia: ");
Serial.print(ultrasonido.Ranging(CM));
Serial.println(" cm");
delay(500);
}
digitalWrite(led1, LOW); //apagam els led1
digitalWrite(led2, LOW); //apagam el led2
}
Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0