Pages: [1] 2 3   Go Down
Author Topic: arduino uno e sensore pir SE-10  (Read 3003 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

SAlve,
premetto doverosamente che sono veramente negato in questo campo, ma ho tanta voglia di iniziare a capirci qualcosa.

Ho comprato arduino uno, ho già utilizzato qualche sensore con successo, ma adesso ho dei problemi con un sensore SE-10 pir.

In pratica ho collegato al sensore seguendo questa immagine: http://bildr.org/blog/wp-content/uploads/2011/06/PIR-Arduino_hookup.png
L'unica differenza è che non avendo una resistenza da 10k ho dovuto unirne 2 da 4.5k e altre due da 345 circa.Cmq ho raggiunto i 10kohm, verificando con il tester.

Appena compilo e faccio l'upload sulla scheda, attento a non far scattare il sensore...funziona, ovvero passo davanti al sensore e rilevo il movimento, subito dopo inizia un calvario di valori random, inizia a verificare movimenti che non esistono. Se stacco la corrente e l'alimento nuovamente continua a non funzionare, sempre falsi positivi random. L'unico modo per ripristinare la funzionalità del sensore è quello di staccare la corrente, rifare l'upload del codice e riaprire il terminale, a quel punto funziona nuovamente, sempre prima di averlo fatto scattare la prima volta, poi riinizia d'accapo.

Quando ho montato il sensore la prima volta,  non ho seguito il datasheet ed ho attaccato il gnd della scheda al pin alarm del sensore, avrei potuto danneggiarlo ? Magari è per questo che non funziona...

il codice che uso è questo, sempre preso dal sito dove è presente l'immagine:
int pirPin = 2; //digital 2

void setup(){
 Serial.begin(9600);
 pinMode(pirPin, INPUT);
}

void loop(){
  int pirVal = digitalRead(pirPin);

  if(pirVal == LOW){ //was motion detected
    Serial.println("Motion Detected");
    delay(2000);
  }

}

premetto che già la prima cosa strana è che a me funziona al contrario, quando rileva il movimento lo stato del pin è HIGH.

Approfitto del post per chiedervi un'ulteriore cosa, come mai se sul codice faccio un semplice loop() i++ print i quando chiudo e riapro la seriale I viene azzerata ? O_o mi pongo il problema che venga riavviato il codice.

Spero di non aver sparato troppe cavolate e spero tanto in un vostro riscontro.

Cordiali Saluti.







Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11995
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se fai così tante domande diventa difficile darti risposta adeguata, potresti accontentarti di risolvere un problema per volta.
Il PIR potresti averlo danneggiato con il primo collegamento sbagliato, visto che quando lo hai attivato il pin "alarm" è andato in corto a massa.
La cosa che trovo stravagante sono i valori che stai dichiarano di aver usato, dove li hai presi? in vita mia (e di anni ne ho tanti!) non credo di aver mai visto valori del genere; sei sicuro di ciò che hai scritto? Penso di sì visto che dici di aver controllato col tester, ma mi pare lo stesso strano.

Il tuo sensore si comporta al contrario di ciò che si aspetta il software, quindi metti HIGH al posto di LOW e rifai le prove.

Quando chiudi e riapri la seriale in effetti resetti il micro e il codice riparte, quindi è normale che le variabili si azzerino.
« Last Edit: November 13, 2011, 06:13:28 pm by menniti » Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao e ti ringrazio per la risposta.
con il tester ho verificato gli ohm settando la misurazione specifica, puntando i due puntali alle estremità delle resistenze.

Avevo letto che era necessaria una resistenza da 10k. io a casa avevo questo:

2 resistenze 330 ohm 1/4 di watt.
2 resistenze da 4,7 kohm 1/4 di watt.

Le ho unite e pressapoco ero sui 10k.
Ho utilizzato più resistenze legate tra loro anzichhè una resistenza da 10k. Pensando quale possa essere il problema mi sono chiesto se questo potesse essere un problema..quindi è probabile che quel corto mi abbia danneggiato in qualche modo il sensore ? Perchè lo ripeto, effettivamente funziona, ma quando scatta la prima volta, è finita.

Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11995
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

330 e 4,7K sono valori normalissimi, allora i conti mi tornano smiley-lol
Prova il sensore col tester scollegato da Arduino: metti il tester su Volt, il puntale + dopo la R che hai costruito (lasciala così non sovraccarichi il sensore) ed il puntale - a massa (negativo dell'alimentazione).
In tal modo ogni volta che attivi il sensore devi leggere una tensione positiva: se così NON è il sensore è rotto, se è così allora stai sbagliando qualcosa sui collegamenti o sul software, hai fatto la prova a mettere HIGH invece di LOW???
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

allora, ho fatto una foto dei collegamenti per verificare che il tutto è collegato bene.

Il sensore continua a spararmi valori randomici, un secondo rileva movimento l'altro no e viceversa.

Ecco l'immagine: http://s9.postimage.org/lwl5ebygv/PICT1192.jpg

Ragazzi per favore, aiutatemi, perchè rischio di impazzire!!!!!!!
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11995
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

No, rischia di impazzire chi vuole aiutarti, se ti si chiede di fare delle prove e tu vai avanti per la tua strada.
E' impossibile sbagliare quei collegamenti, anche se il filo nero non fa capire se la R finisce realmente su +5V o meno, al di là di questo bisogna levarci il dubbio se il sensore funziona o se l'hai rotto, quindi fai la prova che ti ho detto. Ciao.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusami,
allora facendo come tu hai detto ho verificato che la corrente varia tra 0.2 circa  a 5V passando per tutti i valori intermedi arbitrariamente.

Non sembra segua un filo logico con i miei movimenti, è completamente per i fatti suoi.

Tornando ai collegamenti io ho in pratica collegato il GND alla massa del sensore, ho collegato il positivo del sensore ai 5v dell'arduino ed il pin alarm è collegato ad una resistenza che è inserita tra i 5v dell' arduino ed il pin alarm del sensore.

Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora, ho appena verificato che utilizzando un alimentatore da 12v, lasciando sempre una resistenza da 10k, ho tra il pin e la massa dell'alimentazione un valore fisso di 12v quando non c'è movimento ed un valore molto più basso quando c'è movimento. quindi con un alimentatore da 12v sembra funzionare.

Strano, perchè leggendo su internet nessuno usa i 12v con il mio stesso sensore..cmq nel datasheet c'è scritto 12v.

A questo punto non posso collegare il pin in una porta digitale con arduino se mi escono 12v, giusto ?

Che cosa mi consigliate ?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora, ho appena verificato che utilizzando un alimentatore da 12v, lasciando sempre una resistenza da 10k, ho tra il pin e la massa dell'alimentazione un valore fisso di 12v quando non c'è movimento ed un valore molto più basso quando c'è movimento. quindi con un alimentatore da 12v sembra funzionare.

Strano, perchè leggendo su internet nessuno usa i 12v con il mio stesso sensore..cmq nel datasheet c'è scritto 12v.

A questo punto non posso collegare il pin in una porta digitale con arduino se mi escono 12v, giusto ?

Che cosa mi consigliate ?
Logged

Monselice PD Italy
Offline Offline
Faraday Member
**
Karma: 26
Posts: 5480
фон Крыса
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Spero te non stia alimentando il PIR con 12V se è così ed hai la massa comune ad arduino.. quando il sensore dà il segnale lo da a 12V e non a 5V che corrispondono ai massimi accettati in ingresso dal microprocessore!!!

dai un occhio a questa pagina prima di far malanni và smiley
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1285343809/all
Logged

Se corri veloce come un fulmine, ti schianterai come un tuono.

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11995
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sì lo puoi usare, basta che metti un partitore per ridurre i 12V dell'uscita del sensore ai 5V compatibili con Arduino.
Ciò che non capisco è perché usi una pull-up per gestire un segnale positivo.
Fai una cosa: il capo della R 10K spostalo da 5V a GND e vedi cosa succede, ma continua a lavorare con 5V, dopo ti spiego come calcolare il partitore se proprio sono necessari i 12V
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sì lo puoi usare, basta che metti un partitore per ridurre i 12V dell'uscita del sensore ai 5V compatibili con Arduino.
Ciò che non capisco è perché usi una pull-up per gestire un segnale positivo.
Fai una cosa: il capo della R 10K spostalo da 5V a GND e vedi cosa succede, ma continua a lavorare con 5V, dopo ti spiego come calcolare il partitore se proprio sono necessari i 12V

Se metto la resitenza da 10k tra la massa ed il pin, non mi arriva tensione sul pin, misurando sempre il pin e la massa con il tester..
Sono l'unico a cui questo sensore non funziona con 5v....
Come procedo ?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Spero te non stia alimentando il PIR con 12V se è così ed hai la massa comune ad arduino.. quando il sensore dà il segnale lo da a 12V e non a 5V che corrispondono ai massimi accettati in ingresso dal microprocessore!!!

dai un occhio a questa pagina prima di far malanni và smiley
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1285343809/all

Avevo letto quel post, non ho ricavato le informazioni che mi servivano, a loro possibilemente a 5v funziona..
Cmq uso sempre la massa dell'alimentatore.

Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11995
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sì lo puoi usare, basta che metti un partitore per ridurre i 12V dell'uscita del sensore ai 5V compatibili con Arduino.
Ciò che non capisco è perché usi una pull-up per gestire un segnale positivo.
Fai una cosa: il capo della R 10K spostalo da 5V a GND e vedi cosa succede, ma continua a lavorare con 5V, dopo ti spiego come calcolare il partitore se proprio sono necessari i 12V

Se metto la resitenza da 10k tra la massa ed il pin, non mi arriva tensione sul pin, misurando sempre il pin e la massa con il tester..
Sono l'unico a cui questo sensore non funziona con 5v....
Come procedo ?

No, proprio non torna questa cosa: un sensore che genera tensioni positive NON può avere una pull-up che dovrebbe mantenere, IN ASSENZA DI SEGNALE, una valore tipico di 5V sul pin; infatti tu a sensore attivo hai 5V ed a sensore disattivo hai 0V circa; quindi la R va tra il pin di Arduino e GND. Se mettendola così non rilevi più alcuna variazione è palese che il sensore è guasto, visto che basta un "carico" di soli 10K per azzerarne il segnale.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Offline Offline
Newbie
*
Karma: 0
Posts: 14
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ricapitolando. il sensore senza resistenza è a 0v, appena uso la resistenza da 10k (tra pin e positivo) il valore è di 12v circa fissi, quando c'è movimento ha una fluttuazione tra 0 e 12v per circa due secondi, poi si ristabilizza sui 12v, senza movimento.

Il prob è che a 5v questo non succede, non ho un valore fisso sui 5v ma un range da 0 a 5v come se rilevasse continuamente movimento, con 12v si stabilizza tra 11.70 e 12.30v.

A questo punto, d(scusami ti do del tu per facilità) dicendomi di misurare i v tra pin e massa, utilizzando tra pin e massa una resistenza da 10k, vedo 0, e quindi mi dici che non funziona..Perchè mi dici di mettere la resistenza tra il pin ed il gnd ? io tra tutti gli esempi che ho visto lo collegavano proprio come lo collego io, non capisco.

Logged

Pages: [1] 2 3   Go Up
Jump to: