straordinario!
Sei hai modo di provare il codice con un tuo sensore, ti sarei grato se postassi il risultato.
si, dunque ho aggiunto una costante output
per accendere il led in caso di allarme..
mi va in allarme dopo 2 click, si accende il led
ma mi rimane sempre acceso.. quindi semmai dovessi abilitare
un relè 5V su quella uscita, mi rimarrebbe perennemente eccitato.
cosa posso aggiungere per terminare l'attivazione dell'uscita?
per il resto tutto ok!
ma perchè si devono per forza usare gli interrupt,
con i wich, break e i goto e altra roba non si riesce?
diablotron:
si, dunque ho aggiunto una costante output
per accendere il led in caso di allarme..
mi va in allarme dopo 2 click, si accende il led
ma mi rimane sempre acceso.. quindi semmai dovessi abilitare
un relè 5V su quella uscita, mi rimarrebbe perennemente eccitato.
cosa posso aggiungere per terminare l'attivazione dell'uscita?per il resto tutto ok!
Anche se intuisco cosa significhi "ho aggiunto una costante output", tecnicamente non significa nulla. Probabilmente hai aggiunto una riga come:
pinMode(relePin, OUTPUT);
nella funzione setup() e qualcosa come
digitalWrite(relePin, HIGH);
in loop().
Comunque per evitare fraintendimenti ti consiglio di postare il codice completo dello sketch modificato, eventualmente indicando le modifiche con un commento.
Nel merito:
- immagino che per "click" tu ti riferisca al rumore fatto dal sensore mentre tiri il filo... se è così il comportamento mi sembra corretto, in quanto ho messo 5 conteggi su un interrupt di tipo CHANGE e ogni "click" presumibilmente apre/chiude il contatto...
In sintesi: prova a modificare NUM_IMPULSI_ALLARME e a prendere nota di quanti "click" servono per andare in allarme. - se il contatto è pulito, forse bisogna attivare il pullup interno o (forse meglio) mettere una resistenza sul pin 2 di Arduino da 10k verso 5V (qualche esperto di HW mi corregga se sbaglio)
- per quanto riguarda il passaggio dallo stato di allarme a quello di riposo, si potrebbe mettere un timeout, scaduto il quale viene chiamata una funzione tipo "allarmeTerminato", eventualmente affiancandolo da un pulsante che in un sistema reale sarebbe un segnale HIGH/LOW proveniente dal modulo tastiera, e che assume un particolare stato quando l'utente digita il codice corretto di disattivazione...
ho l'ultima versione 1.0.3. scaricata proprio ieri.
perdonami per il linguaggio poco consono, sono alle prime armi,
pian piano mi adeguerò al vostro di "standard di comunicazione"
e grazie per i suggerimenti.
io avevo un libro di programmazione in C,
usato alla facoltà di Informatica Applicata di Urbino,
che spero di ritrovare e rispolverare..
Ovviamente da intendere, viste le mie scarse conoscenze,
che di quel libro massimo sarò arrivato alle prime 30 pagine,
dopodichè mollai, per altri motivi, ma rimase tutto così..
ho appena finito di studiare il "piccolo manuale di Arduino" di Tettamanzi,
ma di questo genere di sketch, con interrupt e altro non c'è nulla,
perciò avrei bisogno di passare ad altro libro..
Nessun problema, se ti ho fatto notare una cosa è stato solo nell'ottica di scambio di conoscenze.
Purtroppo non saprei che libro consigliarti...
TROVATO!!
ho due libri:
- Programmare in C senza errori (Andrew Koenig edizione APOGEO)
- The C Programming Language (Kernighan - Ritchie ) edizione Jackson Libri)
fortunatamente in italiano..
avrei circa una 500ina di pagine da studiare..
Per il momento io ho risolto così e dopo varie prove il sistema funziona perfettamente...
Tre sensori tapparelle con tre Relè d'uscita uno per ogni sensore...
Allego il video di dimostrazione...Arduino e scheda contaimpulsi sensori tapparelle - YouTube
Aggiornata la versione per il controllo dei sensori roller tapparelle...
Una singola scheda Arduino1 riesce a gestire 6 sensori Tapparelle con 6 relative uscite a Relè per indicare l'allarme specifico...
Ciao, potresti mettere un link al codice ? Grazie!
Buongiorno a tutti, sono appena arrivato a Arduino e al forum, volevo sapere se qualcuno ha già realizzato un contaimpulsi per contatti inerziali e/o fune per tapparella. Personalmente ho trovato il modo di, utilizzando 3 resistenze, avere su una linea le segnalazioni corrette di allarme sensore A allarme sensore B allarme A e B taglio cavi e corto di due sensori a filo. Il problema è che basta un impulso e l'uscita si attiva pertanto diventa poco affidabile utilizzarlo su centrali che non hanno la possibilità di configurare l'ingresso per impulsi e finestra temporale. Grazie e buon lavoro a tutti