Saltar la navegación

ultra_so_basic_2

El logo d'arduino us baixarà l'arxiu per fer la pràctica.

logo_arduino

esquema 2

// Sensor de ultrasons HR-SC04
// original de dorcu.com
//simplificado sacosta.org et amb arduino 1
//detecta 4 zones d'aproximació
//molt aprop menys de 10 cm
//aprop entre 10 i 20
//lluny entre 20 i 30
//molt lluny més de 30
// 1 agost 2015
//sacosta.org

// Definim els pins a emprar. En aquest primera aproximació emprarem només el 7, 8, 5V i GND
#define trigPin 7 //trig va a 7
#define echoPin 8 //echo va a 8
//vcc va a 5v
//gnd a gnd

int molt_aprop = 10;
int aprop = 20;
int lluny = 30;
// Establim la distància en cm per a la comprobació i que ens digui molt aprop, aprop, lluny o molt 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

}

void loop() {
  int distancia;

  distancia = ultrasonido.Ranging(CM);

  if (distancia < molt_aprop){
    Serial.print("Molt aprop - Distancia: ");
    Serial.print(ultrasonido.Ranging(CM));
    Serial.println(" cm");
  }
  else if (distancia >= molt_aprop && distancia < aprop){
    Serial.print("Aprop - Distancia: ");
    Serial.print(ultrasonido.Ranging(CM));
    Serial.println(" cm");
  }
  else if(distancia >= aprop && distancia < lluny){
    Serial.print("Lluny - Distancia: ");
    Serial.print(ultrasonido.Ranging(CM));
    Serial.println(" cm");
  }
  else {
    Serial.print("Molt lluny - Distancia: ");
    Serial.print(ultrasonido.Ranging(CM));
    Serial.println(" cm");
  }

  delay(1000);//cada segon comprova la distància
}