Lunedì sono arrivati tanti nuovi sensori e schede da usare con Arduino, non ho resistito alla tentazione di sperimentare da subito uno di essi: il sensore PIR Questo sensore, secondo le specifiche rilasciate dal produttore, è in grado di rilevare un oggetto in movimento in una stanza fino ad una distanza di 7 metri e con un angolo di incidenza di 110°. Per alimentarlo basta Arduino con i suoi 5v in quanto il suo assorbimento è di 50μA. Il sensore presenta una cupola in plastica, removibile, sfaccettata in modo da permettergli la copertura dei 110° indicati: tolta la cupola che fa da diffusore del raggio IR il sensore si presenta come nella figura a destra. Dal sensore fuoriescono 3 cavi di collegamento, da sinistra a destra:
- nero: GND o massa ( polo negativo di alimentazione )
- rosso: 5V ( polo positivo di alimentazione )
- verde: segnale digitale
Il tipo di colegamento puoi vederlo meglio in figura: il funzionamento è semplice: quando rileva un movimento l’uscita del segnale passa da LOW ad HIGH, secondo le specifiche del costruttore l’uscita passa da 0,4v a 4v, quindi da una soglia inferiore ai 2,5v ad una superiore. Il sensore presenta anche un potenziometro per regolare il tempo di eccitazione dopo aver rilevato il movimento, ossia il tempo in cui il pin del segnale digitale resta a HIGH prima che, in assenza di movimento, torni a LOW: ho eseguito qualche test ruotando al massimo grado in senso orario il potenziometro di delay rilevando con arduino un tempo di circa 19-20 sec prima che il sensore torni a LOW, in assenza di movimenti rilevati. Specifico in assenza di movimenti rilevati in quanto se nel suo raggio d’azione si ripresenta un oggetto in movimento il suo stato resta HIGH in quanto il contatore interno si resetta e comincia a contare 19-20sec da quel momento. Per realizzare il progetto che ti propongo ho posizionato il potenziometro come in figura, riducendo a minimo il tempo tra rilevazione dell’oggetto e passaggio a LOW.
Il progetto con il sensore PIR
per eseguire i test ti occorre:
- n.1 arduino uno o equivalente ( duemilanove, mega, leonardo, mini, ecc… )
- n.1 sensore PIR
- n.1 breadboard
- n.1 resistenza da 470Ω
- n.1 led rosso
- n.1 led verde
- qualche cavo per breadboard
ora che hai tutto puoi collegarlo come in figura:
Lo sketch
L’esempio ce puoi utilizzare per testare il sensore PIR con arduino è molto semplice, l’idea è che quando passi un oggetto in movimento passa davanti al sensore la luce verde si accende, ovviamente invertendo i pin a cui sono connessi i due led puoi ottenere il risultato inverso, ossia che il led verde resta sempre acceso ed il led rosso si accende quando il sensore PIR rileva il movimento di un oggetto.
int segnal = 3; int ledGreen = 4; int ledRed = 5; void setup() { pinMode( ledGreen, OUTPUT ); pinMode( ledRed, OUTPUT ); digitalWrite( ledGreen, LOW ); digitalWrite( ledRed, LOW ); } void loop() { int pirSegnal = digitalRead( segnal ); int pirSegnal2= (pirSegnal == HIGH)? LOW:HIGH; digitalWrite( ledGreen, pirSegnal ); digitalWrite( ledRed, pirSegnal2 ); delay(100); }
Se leggi lo schema ti accorgerai che le prime linee determinano i pin a cui hai collegato i led ed il segnale digitale proveniente dal sensore pir.
Il passaggio di stato e quindi l’accensione del led verde nella condizione di allarme lo ottieni con l’operazione di if presente alla linea 17: in cui il valore digitale letto sul pin 3 ( pirSegnal ) viene invertito da HIGH a LOW e viceversa;
Gli altri comandi ti sono tutti oramai noti.
Il video
ed ecco un video demo in cui il led verde si accende ogni volta che la mano passa nell’area sensibile del sensore:
Buon divertimento !!!
95 commenti
Vai al modulo dei commenti
Ciao Mauro,
vorrei provare uno dei miei PIR usati per gli antifurti, purtroppo non sono uguali a quello che tu hai provato. I miei hanno un + e – per i 12V, poi ho 2 contatti (se non sbaglio sono normalmente aperti…)
Posso usarlo? oppure devo necessariamente acquistare quello che hai provato tu?
Grazie
R
Autore
Ciao Roberto,
il divertimento con Arduino è proprio sperimentare con strumenti riciclati o che già possiedi.
Se non avessi già un sensore PIR, come me, dovresti acquistarlo, siccome ne possiedi uno prova ad utilizzarlo.
I contatti puoi verificarli con il tester se siano na o nc, magari sono uno ed uno, puoi trattarli come semplici pulsanti utilizzando una resistenza di pull-up o pull-down per rendere stabile l’uscita.
Mauro
Grazie Mauro!
premetto che i miei pir sono a 12v, comunque ho fatto in questo modo:
Ho alimentato il pir con i 5v di arduino, mentre il terzo filo di arduino, il pin 3, l’ ho collegato a uno dei 2 contatti “alarm” del pir, ma non funziona. Ho provato entrambi i contatti, niente..dove sbaglio? Lo schema è banale, forse il pir non è appropriato? Per sfruttare questo pir dovrei collegare 2 fili di arduino forse?
Autore
Ciao Roberto,
se i due sensori PIR in tuo possesso funzionano a 12v probabilmente a 5v non ricevono sufficiente alimentazione.
Puoi procedere o costuendoti un circuito con un optoisolatore in cui il contatto del PIR accenda il led dell’opto isolatore mediante una resistenza appropriata e il fotoresistore lo alimenti a 5v oppure realizzando un partitore di resistenze in cui il contatto del PIR è connesso a monte di una resistenza da circa 1500 ohm, nell’altro capo della resistenza ci colleghi il pin di arduino e da questo metti una resistenza da 1000 ohm verso il negativo di Arduino ( GND ).
Ricorda che tutti i pin negativi: PIR, optoisolatore, Arduino, ecc… devono essere connessi assieme.
Io preferisco la prima strada e trovi un articolo sul blog, presto scriverò anche un articolo su come si realizza un partitore.
Mauro
Una precisazione sui sensori PIR dei sistemi di allarme.
I sensori infrarossi detti PIR hanno fondamentalmente tutti lo stesso tipo di connessione.
Alimentazione 12Vdc ed uscita in contatto a relé NA e NC
Per collegarlo ad Arduino basta fare come segue, invertendone la logica se necessario.
Collegare una resistenza da circa 10KOhm tra +5Vdc di Arduino e un input digitale a scelta.
in condizioni normali l’ingresso sará a 5Vdc ovvero allo stato logico HIGH
Prendete ora i due contatti relé del sensore e collegatene uno alla Gnd di Arduino e l’altro allo stesso input digitale che avete scelto in precedenza.
A questo punto avrete quanto segue:
se avete utilizzato il contatto NA del PIR, lo stato dell’ingresso digitale sará normalmente HIGH che diventa LOW se il sensore rileva una presenza.
se avete usato il contatto NC invece, lo stato dell’ingresso digitale sará normalmente LOW che diventa HIGH se il sensore rileva una presenza.
Questa logica puó essere modificata da pull-up a pull-down senza problemi. L’importante e non lasciare l’input digitale flottante ovvero senza collegamento.
Alberto
Autore
Grazie Alberto,
ottima precisazione come sempre.
Mauro
thanks Mauro, e se alimentassi separatamente il pir a 12v?
Scusa Mauro,
forse comprerò gli stessi PIR che utilizzzi tu! 2 domande:
– se un soggetto si trova davanti al pir per 2-3 minuti, il led verde rimane acceso per la stessa durata della permanenza del soggetto?
– dove posso comprare questi pir?
R
Autore
Ciao Roberto,
io ho comprato questo sensore da robot-domestici.it, tuttavia mi piacerebbe far funzionare quelli che già hai e magari ne compri altri per ampliare il tuo progetto, che ne dici?
Sulla permanenza non so dirti, dovrei fare qualche test.
Spero presto di poter riprendere questo progetto e fare tutti i test che possono essere interessanti.
Mauro
Ciao Mauro vorrei sapere, cosa hai collegato al sensore PIR?
Dalla foto “connessioni dal sensore PIR” (la 3° foto a partire dall’alto) nell’articolo c’è collegato un modulo con scritto DFRobot, cosè? cosa serve? è necessario?
Sto cercando in internet materiale per fare un piccolo sistema di sorveglianza in casa e volevo sapere se è necessario questo modulo per interfacciare il sensore con Arduino.
Ti ringrazio e faccio i complimenti per l’articolo.
Autore
Ciao Gabriele,
la scheda che vedi nella 3° figura è il sensore pir girato, l’ho messa per indicare i collegamenti come sono eseguiti.
Leggendo l’articolo scoprirai a cosa serve e come opera.
Mauro
Buondì 🙂 Complimenti per i tuoi articoli!
Volevo chiederti, avresti il riferimento del sensore PIR utilizzato nella prova? 🙂
Grazie!
Autore
Ciao Andrea,
io l’ho acquistato da robot-domestici.it, mi sembra ne abbiano solo un tipo con il cavetto.
Mauro
Ciao Mauro,
innanzitutto complimenti per il tuo sito, è veramente fantastico.
Per caso mi sono trovato tra le mani dei sensori PIR murata e700 e vorrei riuscire ad utilizzarli in qualche modo. Ho provato a collegarlo ad arduino ma non da segni di vita. Guardando il tuo post inoltre ho visto che il tuo PIR è dotato di una scheda di interfaccia di cui il mio PIR non è dotato (in pratica ho trovato solo il componente discreto così com’è) e mi chiedevo se e in che modo posso utilizzarlo con arduino.
Ti ringrazio in anticipo.
Simone.
Autore
Ciao Simone,
grazie per i complimenti.
Ho cercato in internet il tipo di sensore che hai ed ho trovato il datasheet sul sito della casa produttrice: http://www.murata.com
Sul Datasheet c’è anche il circuito tipicamente utilizzato e consigliato per utilizzare questo sensore, puoi collegare ad arduino l’uscita del circuito consigliato dal produttore.
Mauro
Ciao Mauro,
nella mia ricerca su internet ho trovato il tuo sito ed il tutto mi è stato utile ma vorrei chiederti un piccolo aiuto. Sto cercando un sensore tipo PIR però con un campo di azione di massimo un metro con un angolo di 90° circa. Sai se esiste qualcosa di simile o dove posso cercare?
Grazie
Autore
Ciao Marius,
penso tu possa cercare nel campo degli allarmi.
Mauro
Ho cercato ma sono tutti con campo di azione dai 3/4 metri in su… non so più dove cercare. Comunque grazie.
Se trovi qualcosa o se hai qualche soluzione alternativa ti chiederei cortesemente di farmelo sapere via e-mail. Grazie ancora
Autore
Ciao Marius,
nessuno di quelli che hai trovato è regolabile?
Mi sembra che i modelli di sensore pir utilizzati negli impianti professionali possano regolare la sensibilità ed il raggio di azione.
Mauro
Normalmente i sensori infrarossi o PIR non hanno la possibilitá di regolare la profonditá dell’azione perché la sensibilitá del sensore serve per discriminare le piccole differenze di temperatura che deve rilevare.
Davanti al sensore c’é una lente che scompone l’ambiente in fasci in modo da creare le zone necessarie a percepire la differenza di temperatura generata da un corpo caldo che le attraversa.
Per limitare il raggio di azione non si puó fare nulla ma si possono avere dei “raggi” diretti solo dove serve senza che altre aree ddel nostro ambiente vadano ad influenzare la captazione del PIR.
Per distanze minori ai 8-10 metri é meglio utilizzare gli ultrasuoni o gli ottici oppure ancora le barriere ad infrarossi.
Alberto
Salve sono un novellino e sto progettando un semplice progetto scolastico, ho deciso di utilizzare e già acquistato la nuova Arduino Due da utilizzare poi con sensori PIR. Ho appena letto che la nuova scheda possiede il processore che lavora a 3,3V… La mia domanda è questa, la scheda arduino supporta, gestisce 4 sensori PIR che hanno bisogno di un alimentazione 3-5V e rilasciano un segnale digitale di 4V (HIGH) e 0,4V (LOW), senza bruciare il processore o danneggiare la scheda??
Questo è il sensore: http://www.homotix.it/catalogo/infrarossi/digital-infrared-motion-sensor-s75
Grazie per la disponibilità.
Alessandro
Autore
Ciao Alessandro,
per un primo progetto con Arduino ti consiglio l’arduino Uno o Leonardo.
Lavorano a 5v e trovi tutti i sensori che vuoi pir ed anche altri.
I 3,3v di arduino due la rendono più adatta a chi ha un po’ di esperienza e conoscenza di elettronica.
Io comunque risolvo con i partitori di tensione, sono composti da resistenze, facili da costruire e usare.
Ho scritto un articolo che ti consiglio di leggere.
Mauro
Buon giorno
Chiedo cortesemente una consulenza, devo alimentare n.15 led da 1,5 watt cad.uno (12volt)
inseriti nella scala interna di casa, mi è possibile utilizzare questi sensori, uno in cima ed uno a monte, creando una deviata?
grazie saluti
Autore
Ciao Giorgio,
il sensore pir si limita a dirti che ha rilevato il passaggio di un corpo nel suo raggio di azione ed a ritardare lo spegnimento.
Se ci usi arduino, dei relay ed uno sketch scritto per gestire i sensori puoi sicuramente fare tutto quello che desideri.
Mauro
Ciao mauro ti volevo chiedere, se volessi aggiungere altri sensori pir nel mio progetto di maturita come potrei fare ?? e se c’e’ la possibilita di aggiungere un display lcd..grazie e buona giornata
Autore
Ciao Loris,
puoi farlo, così come hai aggiunto il primo aggiungi altri sensori.
Anche il display LCD puoi aggiungerlo come descritto in uno dei miei articoli dedicati proprio ai display.
Mauro
ciao mauro
innanzitutto ti ringrazio per la risposta …ma ti vokevo chiedere se con un solo arduino riesco a fare ls gestione di piu sensori ?? se si quanti??
grazie e buona giornata
Autore
Ciao Loris,
dipende dal tipo di sensori che vuoi utilizzare.
I sensori per arduino esistono di molteplici tipi: Analogoci, digitali, SPI, I2C
Ognuno di quei sensori prevede la possibilità o meno di essere collegato con altri sensori simili o compatibili.
Ti consiglio la lettura dei miei articoli del corso base per comprendere meglio come è fatto arduino e che tipo di segnali/sensori puoi collegare.
Mauro
Ciao Mauro,
volevo chiederti il nome specifico di questo sensore pir che hai usato,e se lo sketch che hai illustrato prima e’ completo oppure no …:) grazie mille e buona giornata
Autore
Ciao Loris,
il sensore lo trovi sul sito robot-domestici.it non penso abbia un nome è tra i sensori di prossimità.
Lo sketch fa esattamente quello che vedi e che trovi descritto nel testo.
ciao mauro, attualmente svolgo un lavoro di tesi di laurea, per implementare un rover con un sensore pir. Avrei bisogno di alcune informazioni per capire come lavora tale sensore. In particolare vorrei capire cosa il sensore riceve in ingresso, n’onda elettromagnetica con dipendenza dalla temperatura? se è così, nella programmazione, il termine di comparazione per rilevare una sorgente di calore è la temperatura?grazie.francesco.
Autore
Ciao Francesco,
esistono diversi tipi di sensori PIR sul mercato.
Se ricordo bene i sensori di tipo IR usano il principio di funzionamento da te descritto, tuttavia potrei sbagliarmi o il tuo sensore potrebbe avere caratteristiche differenti.
Ti consiglio di far riferimento al datasheet del produttore eventualmente chiedendo al produttore stesso il principio di funzionamento.
Ciao mauro, ti chiedo una cosa nel codice postato…quando si accende il sensore? quando trova un valore maggiore di 100? ma di cosa? grazie.saluti
Autore
Ciao Francesco il valore é quello letto sul pin a cui è connesso il sensore.
Se leggi tutta la mia descrizione ti sarà chiaro.
Se vuoi conoscere come leggere valori dai pin ti consiglio il mio corso arduino online gratuito
ok grazie mille
ciao mauro, ti vorrei chiedere una mano nell’elaborazione dello sketch di tale sensore. Vorrei stampare a video il valore dei volts letti dal sensore in modo da poter capire se gli oggetti possono essere diversificati in relazione al valore dei volt. Ho visto un po in giro, ti posto il codice così mi puoi dire come può essere modificato per avere tale risultato.Grazie per la disponibilità.
[ codice rimosso in automatico ]
Autore
Ciao Francesco,
purtroppo, come hai letto in fondo ad ogni articolo, non è possibile aggiungere codice nei commenti.
Mi incuriosiva la possibilità di comprendere da questo tipo di sensore l’oggetto rilevata.
Purtroppo i sensori pir come quello provato sono dotati di una elettronica che si occupa di trasferire solo il segnale on/off temporizzato.
Probabilmente potresti provare con un sensore pir puro, senza elettronica.
si l’applicazione presentata era interessante…maledetto sensore. Grazie ancora mauro.buon lavoro.
mi puoi fare un esempio di sensori PIR puri? grazie mauro.
Autore
Ciao Francesco,
devi prendere la sola parte di rilevazione ( componente attivo ) e studiare il datasheet per costruirti un circuito di controllo in grado di restituirti i valori che ti interessano.
Considera che non sarà mai una telecamera ad infrarossi e non vedrai mai le macchie di calore come nelle serie televisive.
Forse possono fare cose simili i rilevatori a microonde ma costano decisamente di più e sono molto più complessi.
Ciao Mauro,
complimenti per questo tutorial.
Ho messo il link a questo tutorial sul mio sito, sotto la voce
Elettronica > Arduino > Projects, Sensors & Boards.> Sensors > PIR
Se vuoi aggiungere altri tutorial provenienti dal tuo sito fammi sapere.
Fabio
Autore
Ciao Fabio, grazie per la citazione.
Ho letto il progetto del tuo sito e mi sembra molto interessante. Se ti occorre alto materiale prendi pure dal blog.
La sintassi
(pirSegnal == HIGH)? LOW:HIGH;
Non l’avevo mai vista!!!
Ciao Mauro…
Volevo sapere 2 cosine…
1) è possibile inserire il led di rilevamento (con relativa resistenza da 220) tra il grd e il segnale del pir, risparmiando così dei preziosi pin di Arduino?
2) quanto potrebbero essere lunghi i cavi di collegamento tra Arduino e il PIR? Magari si potrebbero usare 3 cavi di un cavo ethernet già passato in una canalina?
Grazie!!!
Autore
Ciao Andrea,
i collegamenti mostrati sono solo un esempio, puoi cambiarli tutti se vuoi, il senso dell’esempio e controllare die led in funzione del segnale proveniente dal sensore pir.
Più i cavi sono lunghi maggiore deve essere la sezione.
Autore
Ciao Andrea,
intendi su arduino o in generale nella programmazione?
intendevo su Arduino… anche in vb c’è qualcosa di simile:
iif(condizione, vero,falso)
Autore
Ciao Andrea, non ho capito la domanda.
Buongiorno Mauro,
se volessi avere indicazione sulla data e ora del rilevamento quale è la funzione da usare nello sketch?
Grazie
Autore
Ciao Enrico,
non ho capito la domanda.
ciao mauro, ho visto ho visto che con arduino si fanno miracoli, io vorrei sapere, se possibile come accendere un led ad alta intensità con un modulo pir descritto qui, dato che ne ho quattro !!!!! ma senza arduino… ciao grazie
Autore
Ciao Giuliano,
non so se si possano fare miracoli con aduino, io non so farne 🙂
Questo sensore pir restituisce un segnale HIGH quando scatta, hai provato a collegarci un relay che controlla il tuo led ad alta intensità?
e ma.sull’ uscita ci sono 3 volt a vuoto troppo poco per pilotare un relè come faccio ad aumentare i volt in uscita?
Autore
Ciao Giuliano,
puoi mettere un circuito con transistor o con un optoisolatore, io preferisco il secondo metodo.
ciao Mauro,
volevo sapere se questo bellissimo sensore è applicabile ad oggetti in movimento e non solo al movimento del calore umano, ad esempio se rileva lo spostamento di una macchinina tipo hot wheels.
Autore
Ciao Ernesto,
per quanto e so io no, è un sensore che lavora con le fonti termiche rilevabili da IR
Ciao Mauro,
ti volevo chiedere perchè non riesca a fare ciò che hai fatto tu nel tutorial, pur provandoci, e poi facendo copia e incolla dello sketch per vedere se avessi sbagliato qualcosa, i led non funzionano come nel video, m puoi aiutare? grazie
Autore
Ciao Matteo,
verifica che i collegamenti siano i medesimi e che il sensore si comporti allo stesso modo di quello usato da me, a volte basta che il sensore ti dia un valore differente e lo sketch va modificato.
Secondo me nel setup manca questa istruzione:
pinMode(segnal, INPUT);
Cioè bisogna settare come input il segnale relativo al pir ( in modo da leggerlo correttamente da Arduino). Senza, infatti, non mi funzionava.
Un saluto e grazie per l’articolo 😉
Autore
Ciao Ren,
grazie per il suggerimento.
Il comando pinMode a volte può essere omesso, ma dipende anche dal tipo di componentistica che si utilizza e come colloquia con Arduino, nel mio caso non è stato necessario; nel tuo ed in quello di molti altri potrebbe essere la differenza tra un progetto funzionante ed uno non funzionante.
Ciao Mauro,
ho provato il tuo programma, ma non so perché il sensorePir è sempre in stato alto, cioè vede sempre un movimento, quindi il led Verde è sempre acceso, sai quale potrebbe essere il problema? Grazie per una tua risposta.
Autore
Ciao Agostino,
il sensore pir è il medesimo che ho mostrato io acquistato da robotics-3d.com ? potrebbe trattarsi di modello differente che va tarato.
Ciao Mauro, grazie per questo post! Sto cercando di realizzare un progetto con 2 sensori PIR. Il problema che ho è che, anche tarando al minimo il potenziometro, il valore del pin rimane HIGH per 1 o 2 secondi. Non c’è un modo per escludere il potenziometro o per avere il minor valore di tempo “HIGH” possibile?
Grazie
Autore
Ciao Luca,
il modo migliore è usare un sensore PIR differente.
Vorrei modificare questo progetto nel senso che al posto di accendere il led dovrebbe contare dei passaggi. Ad una certa ora dovrebbe spedire un messaggio ad un numero di cellulare con il numero dei passaggi registrati fino a quell’ora. Come dovrei muovermi? Mi puoi indirizzare in qualche modo? Grazie
Autore
Ciao Jkwxp2004,
ti consiglio di leggere e comprendere bene come funziona questo sketch e poi leggere altri articoli in merito a come creare un contatore con arduino, la memorizzazione dei dati e l’invio sms.
Salve ragazzi,qualcuno sa per cortesia come far lampeggiare il led che si accende quando il sensore Pir
Rileva presenza.
Autore
Ciao Gero,
a quale led ti riferisci?
Salve, grazie per condividere i tuoi programmi.
Vorrei usare il sensore di rilevamento di movimento non per far accendere un led ma per far partire un audio.
Ho trovato il modo di far leggere un audio ad arduino, ma non ho idea di come metterli assieme.
come potrei fare?
grazie
Mauro
Autore
Ciao Mauro,
ti consiglio di studiare le lezioni base del mio corso Arduino gratuito on-line, con un po di impegno vedrai che già dopo qualche lezione sarai in grado di controllare un segnale in input ed output.
come faccio a collegare piu sensori pir?
Autore
Ciao Violinho,
uno per pin.
Ciao Mauro intanto grazie per i tutorial che fai che puntualmente mi danno una buona mano ma ora vorrei chiederti una cosa su questo sensore PIR.
Sto cercando di fare un cronometro digitale per i miei allenamenti di corsa veloce in pista di atletica e volevo usare questo sensore per rilevare la presenza e quindi cronometrare!
Secondo te è possibile?i miei dubbi a riguardo sono:
– è possibile ridurre l’angolo di incidenza diciamo sui 10° in modo da rilevare solo il puntuale movimento?
– questo sensore riesce a rilevare un movimento a circa 35km/h ?
la mia idea sarebbe fare in modo che questo sensore sia alto per un tempo piu breve, e quindi piu preciso, possibile
Autore
Ciao Mattia, in genere i sensori pir non sono adatti all’uso che desideri farne.
Forse puoi ridurre l’angolo di incidenza con opportune lenti e diffusori calibrati, tuttavia sulla velocità di risposta tra oggetto, o persona, rilevati ed impulso penso tu possa far poco.
Ti consiglio una barriera laser con trasmettitore e ricevitore già accordati, mi sembra di averne vista una in promozione sul sito robotics-3D.com, controlla tra i prodotti in promo o quelli in ultimo arrivo.
Ti riferisci a questo?
http://www.robotics-3d.com/component/virtuemart/robotica-domotica/sensori/infrared-proximity-sensor-sharp-gp2y0a21yk
Perché a quanto so è lento per l’uso che voglio farne?
Autore
Ciao Mattia,
no, mi riferivo a questo:
http://www.robotics-3d.com/component/virtuemart/robotica-domotica/prototipazione/interruttori-e-manopole/the-laser-photoelectric-switch-gab100m-ak-5v
Ciao Mauro, complimenti per ii suoi progetti, avrrei bisogno di un piccolo aiutino, sto lavorando a un sistema d’allarme progettato con arduino, tastierino, tft etc… e vorrei aggiungere un ritardo a un sensore(quello del ingresso) in modo da avere il tempo di introdurre il codice pero nello stesso tempo vorrei che quando il sensore mi rileva cambi la scritta sul tft ti mostro la parte dello sketch dove vorrei fare questa modifica grazie in anticipo
[[ codice rimosso in automatico ]]
Autore
Ciao Bogdan,
ti invito al rispetto delle regole del blog che trovi in fondo ad ogni articolo.
Per la tua richiesta puoi semplicemnete fare in modo che alla rilevazione della tua presenza da parte del sensore di ingresso:
– cambi il testo sul display;
– imposti il valore del time corrente con la funzione millis
– inizi a verificare che il codice da tastiera sia inserito entro il passaggio del tempo rilevato dal millis()
Puoi leggere come funziona il millis in alcuni miei articoli sul blog.
Ciao Mauro, come devo programmare la scheda se al posto del led che si accende al passaggio volessi mettere un display che conteggi il numero dei passaggi?
Autore
Ciao Marco,
puoi leggere un articolo su come si collega e controlla un display LCD e implementare un semplice contatore.
Sconsiglio di usare solo la memoria (SRAM) arduino perché si cancella ad ogni reset, volontario o involontario, e/o interruzione di alimentazione facendoti perdere il conteggio.
grazie
ciao Mauro, sono interessato anche io al far partire un video nel momento in cui qualcuno passa davanti al sensore, il video che duri fino alla fine … dopodiche si torna al primo frame e aspetta un altro movimento per riprodurre il video di nuovo, sto leggendo su come fare su processing e fino ad ora riesco a far funzionare singolarmente …. ovvero processing mi fa partire un video se premo run the sketch e riesco a leggere il sensore … ma non riesco a cpire come dire a processing che deve far partire il video a movimento rilevato
Autore
Ciao Vittorio,
lascio il tuo commento on-line perché qualcuno con più esperienza su Processing di me possa darti una dritta.
Ciao Mauro , complimenti per il blog e per i tuoi progetti.
Ho comprato un sensore PIR , precisamente un HC-SR501 , ma ho notato che oltre al fatto che il ritardo minimo non è 300 millisecondi come dichiarato , ma 2 secondi anche con il potenziometro del delay al minimo.
La cosa strana è che dopo una rilevazione , il sensore, per alcuni secondi non risulta rispondere ad un’altro movimento , nel datasheet in questione vedo una voce “Block Time” , potrebbe essere questo paramentro il problema? E’ un paramentro non variabile? Anche nella tua esperieza hai avuto questo “problema”?
Attendo una tua risposta 🙂
Autore
Ciao Carlo,
in merito al ritardo non rispondente alle specifiche dovresti chiedere al fornitore/produttore.
Io non ho rilavato ritardi ulteriori oltre a quelli impostati.
Considera che dopo una rilevazione parte il ritardo prima che il sensore sia in grado di eseguire una nuova rilevazione.
Ciao Mauro prima di tutto complimenti per la pagina.
Volevo chiederti se mi potresti dare una mano con un mio progetto..ovvero…usare Arduino uno come centrale d’allarme con 4 sensori già già in mio possesso sono NC appena rilevano il movimento passano in NO. Rilevato il movimento mi si attiva un’uscita che poi andrò a collegare ad una sirena è ad un combinatore GSM..per attivare/disattivare l’allarme avevo pensato di usare un radio comando che mi andava ad alimentare/disalimentare tutto Arduino così da prolungare la vita della scheda pure..il problema che non saprei da dove partire già è un po che ci lavoro con scarsi risultati..grazie mille in anticipo
Autore
Ciao Giovanni,
esempi e progetti come quello che vuoi realizzare sono disponibili in rete e distribuiti gratuitamente.
Ti consiglio di cercare qualcuno di essi, vicino alle tue esigenze, e di studiarlo per comprenderne le caratteristiche ed adattarlo alle tue esigenze.
In alternativa puoi:
1. leggere e studiare i miei corsi online gratuiti arduino
2. commissionarmi il progetto, leggi nella sezione “collabora al blog” come fare.
Buongiorno Mauro,
sono nuovissimo di Arduino, e ti ringrazio in anticipo per la pazienza che avrai..
ho acquistato nei mercati orientali diversi PIR, ed ho sperimentato diversi sketch fino a trovarne uno che riesce a tararlo e pilotarli perfettamente.. Mi si è presentata la curiosità/necessità di temporizzatore la sua accensione in determinate ore della giornata, ed ho analizzato altri sketch fino ad arrivare ad una commistione del 1°(quello funzionale) e del 2°(quello temporale).. potrei condividerlo sul blog se tu mi dessi l’OK sulla sua funzionalità.. il compilatore non mi dà errore, ma non sono sicuro di aver messo compilato la sintassi correttamente. Grazie, Claudio
Autore
Ciao Claudio,
non ho compreso la tua richiesta.
Se hai un articolo/progetto che desideri condividere puoi seguire le istruzioni della pagina “collabora al blog”;
se hai uno sketch che non funziona prova a comprendere bene cosa hai scritto e cosa avresti voluto eseguire.
In ogni caso, nei commenti, non è possibile inserire commenti e se desideri commissionarmi un progetto puoi utilizzare le istruzioni presenti nella sezione “sostienimi”
Ciao,
prima di tutto ti faccio i miei complimenti per il sito. Sono alle prime armi con Arduino e, attraverso il tuo sito inizio a capirci qualche cosa (sempre poco),
Volevo solo chiederti se è possibile, utilizzando un PIR, dopo aver rilevato un movimento comandare un servo con snodo nella direzione del movimento rilevato.
Hai già fatto qualche cosa di simile.
Se puoi fammi sapere, Grazie , f.
Autore
Ciao Filippo,
un sensore PIR usato in modo tradizionale, come in questo articolo, rileva solo se un oggetto ha interrotto il suo fascio IR ma non è in grado di dirti la direzione di spostamento.
Un haking del sensore o un uso differente di un sensore IR potrebbe farlo ma credo abbia costi superiori.
Puoi in alternativa usare più sensori per determinare la direzione di spostamento o il movimento di un oggetto difronte a tali sensori.
CIAO MAURO VORREI CHIEDERTI UNA COSINA IO QUANDO FACCIO PASSARE LA MANO IL LED ROSSO SI ACCENDE MA DOPO NEANCHE UN SECONDO SI SPEGNE è POSSIBILE FARE IN MODO CHE IL LED RIMANA ACCESO QUANDO IL PI RILEVA UN MOVIMENTO SENZA SPEGNERSI . GRAZIE SE MI RISPONDI CIAO E BUONA CONTINUAZIONE
Autore
Ciao Luca,
si puoi definire un delay al momento della rilavazione in modo che il led resti acceso, ricorda che il comando delay() ferma completamente il programma fino alla sua conclusione.
Trovi alcuni articoli dedicati al delay() ed al millis() su questo blog.
Ciao Mauro, non ho avuto problemi a modificare il programma come desideravo ma non riesco a capire cosa siano i parametri Target x, Target y, Target y. Ti ringrazio!
Autore
Ciao Egidio,
forse non è questo l’articolo a cui ti riferisci, non esistono quei parametri in questo articolo.