Advertisement
Guest User

Untitled

a guest
Feb 27th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.81 KB | None | 0 0
  1. /*
  2. Sensor d'Ultrasons: Avís lluminós de proximitat
  3. En apropar un objecte al sensor a menys del límit especificat (10cm) s'encén un LED.
  4. */
  5.  
  6. int LedPin = 13;
  7. int TriggerPin = 3;
  8. int EchoPin = 4;
  9. int limit = 10; //límit en cm especificat per encendre el led
  10. long duracio = 0;
  11. long distancia = 0;
  12.  
  13. void setup() {
  14. Serial.begin(9600);
  15. pinMode(LedPin, OUTPUT);
  16. pinMode(TriggerPin, OUTPUT);
  17. pinMode(EchoPin, INPUT);
  18. }
  19.  
  20. void loop() {
  21. digitalWrite(TriggerPin, LOW); //iniciem el disparador amb LOW durant 4us
  22. delayMicroseconds(4);
  23. digitalWrite(TriggerPin, HIGH); //activem el Trigger durant 10us
  24. delayMicroseconds(10);
  25. digitalWrite(TriggerPin, LOW);
  26. duracio = pulseIn(EchoPin, HIGH); //mesurem el temps entre pulsos, en microsegons
  27. distancia = duracio * 10 / 292/ 2; //convertim a distancia a centímetres
  28. if (distancia >= 500 || distancia <= 0)
  29. { // si la distància és major de 500cm o menor de 0cm
  30. Serial.println("Fora de rang"); // no mesura res
  31. }
  32. else {
  33. if (distancia <= limit && distancia >= 1)
  34. {
  35. digitalWrite(LedPin, 1); // encén el led si la distància és menor del límit especificat
  36. Serial.print("Distancia: "); // envia el valor de la distància pel port serie
  37. Serial.print(distancia);
  38. Serial.println("cm. --> Encesa del led");
  39. }
  40. else {
  41. Serial.print("Distancia: "); // envia el valor de la distància pel port serie
  42. Serial.print(distancia);
  43. Serial.println("cm.");
  44. digitalWrite(LedPin, 0); // apaga el led si la distància és najor del límit especificat
  45. }
  46. }
  47. delay(500);
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement