Podem utilitzar dos tipus de sensors:
El sensor d'infrarojos connectat a un pin digital té un abast molt limitat, potser no ens interessi.
Si el connectem a un pin d'entrada analògic hem de posar un objecte a una distància per tal de definir un valor de referència. És una tasca feixuga, no tenim molt temps.
El sensor d'ultrasons és més gran, però més fàcil de connectar (els pins del sensor es connecten directament a l'Arduino, sense resistències), i té un abast de fins a 3 m.
La meva proposta de programa per accionar un servo amb sensor d'ultrasons
include <Servo.h> // llibreria per treballar amb servos int TrigPin = 6; // pin emissor del sensor int EchoPin = 7; // pin receptor del sensor Servo valvula; // creació d'objecte tipus servo (que he anomenat valvula) int llindar = 20; // distància d'accionament del servo long durada, distancia; // variables sense valor inicial void setup() { //Serial.begin (9600); // per monitorització de les dades del sensor // els pins del sensor són sortides digitals: pinMode(TrigPin, OUTPUT); pinMode(EchoPin, INPUT); valvula.attach(9); // enviament de senyals servo pel pin de connexió del servo } void loop() { // enviament del pols d'ultraso digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); // càlcul de la distància detectada pel sensor durada = pulseIn(echoPin, HIGH); distancia = durada/58.2; //Serial.println(distancia); // monitorització de la distància if (distancia < llindar) { valvula.write(180); // accionament del servo (posició 180º) } else { Servo1.write(0); // posició de repós del servo (0º) } delay(50); // petita pausa entre bucles per no superposar polsos d'ultrasons }Potser val la pena enviar els senyals servo [attach(9);] només quan es detecti vaixell, i aturar-les [detach();] quan no es detecta vaixell, per no gastar piles (l'enviament de senyals servo, tot i que aquestes singuin 0, gasta energia).
Proposta de muntatge
Tot i que afegeix pes a l'extrem en voladiu, proposo muntar el sensor al mateix pont. L'avantatge és que si el vaixell pot passar per sota del pont, el sensor no el detectarà, és a dir, el pont només s'obrirà quan passi un vaixell prou alt.
Com que el sensor té tendència a sortir-se del seu suport, he acabat afegint una L al darrera que fa de topall.
Cap comentari:
Publica un comentari a l'entrada