Discussione: Sensori infrarosso
Visualizza messaggio singolo
  #7  
Vecchio 24-08-2009, 18.27.25
L'avatar di alejandro
alejandro alejandro non è collegato
Robottaro gold
 
Data registrazione: 23-01-2009
Residenza: acerra
Messaggi: 114
Potenza rep: 89
alejandro La sua reputazione  oltre la sua famaalejandro La sua reputazione  oltre la sua fama
Predefinito

se ti pu servire la mia esperienza coi tsop1138 direi di rispettare alcune cose per quanto riguarda il HW:
1)condensatore elettrolitico 4,7mF con + verso + tsop () e negativo verso massa
2)resistenza a 100 ohm su + tsop
3)distanza minima fra led ir e tsop = 4,5 cm
4)"intubare" il led(il tsop e molto sensibile,devi indirizzare il fascio ir)
5)ingresso del led resistenza sui 56 - 4XX ohm(+ alto valore della resistenza,minore la distanza illuminazione)
6)ovvio,collegare il led ir a un pin PWM del pic per poter gestire il PWM
io non uso picaxe,ma guardando il link que hai postato,immagino che PWMOut X,Y,Z sia qualcosa come X = porta - Y = Periodo - Z = Dutycicle.
non te rimane altro che controllare che la porta che gestisce il PWM sia giusta.
calcolare il periodo in base a un dutycicle di 127 per ottenere una frequenza di 36Khz.il link parla di una frequenza da 38Khz fino ha 59Khz.
ricorda sempre che i tsop hanno un "segnale invertito",cio "illuminato" = 0v(ho quasi),non "illuminato" = 5v(sicuro).
o inverti lo stato logico con un inverter(tipo SN74) opp. te lo tieni cosi.
ma,in questo caso,all'ingresso del pin di lettura dello stato logico del tsop ti conviene inserire una resistenza da "taglio"(io uso una di 1K).t'allego lo schema dei sensori ir centrali di Vicky.



dimenticavo,io ho usato un PWM in comune pre tutti i led ir.
il pic genera un carrier da 3XKhz e lo trasmette a tutti i led ir.il led ir che io metto basso fa passare il carrier ed illumina il led ir.lo alzo e spengo il led.fra una "illuminazione" e l'altra fai passare minimo un periodo di 10 volte il tempo di led accesso.
in mikrobasic qualcosa cosa come:
for X = 1 to 3
PORTX.Y=0 'basso,quindi il carrier illumina il led
delay_ms(1)
Illuminato=PORTX.X 'variabile che immagazzina lo stato del tsop
if Illuminato=0 then 'se il tsop fu illimunato,ostaculo in vista
break 'esco dello statment
end if 'se non se verifica lo sato logico = 0
PORTX.Y=1 'alto,quindi il led si spegne
delay_ms(10) 'grazie marnic
next X
if Illuminato=0 then.............fai quello che vuoi

Ultima modifica di alejandro : 24-08-2009 alle ore 18.40.47
Rispondi citando