Sari la conținut
ELFORUM - Forumul electronistilor

ir receiver


Vizitator H4cK3r

Postări Recomandate

Vizitator H4cK3r

Stiti cumva un tutorial(sau poate sa ma ajutati voi) pentru a imbina un ir receiver si un pic pentru a controla un circuit?

 

De exemplu, aprinderea unui bec folosind telecomanda de la televizor.Acest ir receiver este bun pentru astfel de aplicatie?Posted Image (RPM7140 ROHM).

 

Banuiesc ca acest lucru este realizat folosind conversia analog-digital a semnalului, si fiecare tasta a telecomenzii reprezinta un numar in baza 4 sau 8(un fel de ascii).

Link spre comentariu
  • Răspunsuri 15
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • costi002

    2

  • Mondan

    2

  • nico_2010

    2

  • 10vid

    1

Top autori în acest subiect

Acela transmite pe 40 kHz. Foarte multe telecomenzi (daca nu majoritatea) lucreaza pe 38kHz. E enervant faptul ca sunt doua standarde: 38kHz si 40kHz (sau chiar 36kHz), aparent din cauza unor confuzii create la decodificarea telecomenzilor Philips (detinatorul patentului) in primii ani.Din graficele de pe foaia tehnica a acelui produs reiese ca la 38kHz intensitatea semnalului scade cu 7.5 dB. Asta inseamna ca distanta maxima scade la 64%.O alternativa ar fi TSOP1238 sau TSOP2438.

Link spre comentariu

Sunt mai multe protocoale pt telecomenzi, inafara de codificare difera si purtatoarea:-RC5 (Philips) - original 36KHz-Nec - 38KHz-Sony - 40 KHz.

Link spre comentariu
Vizitator H4cK3r

@10vidam citit despre aceasta incompatibilitate, asa ca mi-am comandat si un ir receiver care transmite pe 38 KHz.m-ai putea ajuta te rog cu niste tutoriale sau ai putea sa-mi explici cum pot combina output-ul receiver-ului cu input-ul pic-ului?Asta in caz ca se poate face o legatura directa, desigur.

Link spre comentariu

@10vid

 

am citit despre aceasta incompatibilitate, asa ca mi-am comandat si un ir receiver care transmite pe 38 KHz.

 

m-ai putea ajuta te rog cu niste tutoriale sau ai putea sa-mi explici cum pot combina output-ul receiver-ului cu input-ul pic-ului?Asta in caz ca se poate face o legatura directa, desigur.

Daca e receiver atunci nu transmite ci primeste adica primeste lumina IR. Cat timp primeste lumina IR pulsatorie la 38kHz pinul output cade la 0V (0 logic). Cat timp nu primeste lumina IR pulsatorie, pinul output "scoate" 5V (1 logic). De aici mai departe e simplu sa comunice cu un microcontroler. Pui pinul uC ca input (registrul TRIS) si poti citit usor receiverul.
Link spre comentariu

Sa clarific eu:Receptoarul ala are trei pini: +, - si semnal Pe senmal pui voltmetru preferabil analogic.Pe +, - il alimentezi dintr-o prinntr-un stab de 5V de ex 7805.Sa nu gresesti pinii. Acum apropii o telecomanda, apesi un botun, si ar trebui sa se vada reactia pe voltmetru.Ideal ar fi osciloscop, dar banuiesc ca nu ai. Daca ai osciloscop, sau poate la scoala sa rogi un prof sa te lasa cu osciloscopul, posteaza forma impulsurilor.De aici nu mai este decat un protocol serial asincron de receptie.Pai chiar asta face omu': invata. E pacat sa intri pe forum si sa te descurajeze ca nu stii bazele. :cry:

Link spre comentariu
Vizitator H4cK3r

@Mondan,mersi pentru ajutor!

 

Posted Image

 

asta afiseaza pickit2 logic tool dupa ce am apasat pe "volume up".sa inteleg ca receiver-ul primeste 01001010101010101100101010.acum cum fac?conectez pin-ul receiver-ului la pic, salvez output-ul receiver-ului intr-un vector, si dupa compar cu niste string-uri de numere deja memorate?

 

de exemplu char volume[]="01001010101010101100101010" si char string[] (aici salvez output-ul), si dupa fac if(strcmp(volume,string)==0)......?

 

 

nu vreau arduino deoarece face lucrurile mult prea simple.

Link spre comentariu

@Mondan,mersi pentru ajutor!asta afiseaza pickit2 logic tool dupa ce am apasat pe "volume up".sa inteleg ca receiver-ul primeste 01001010101010101100101010.acum cum fac?conectez pin-ul receiver-ului la pic, salvez output-ul receiver-ului intr-un vector, si dupa compar cu niste string-uri de numere deja memorate?de exemplu char volume[]="01001010101010101100101010" si char string[] (aici salvez output-ul), si dupa fac if(strcmp(volume,string)==0)......?

Pentru a te lamuri mai bine de ceea ce transmite telecomanda televizorului tau (care, banuiesc, este cu protocol RC5), citeste asta:http://en.wikipedia.org/wiki/RC-5.Vei observa care sunt codurile comenzilor transmise de telecomanda si le vei implementa in PIC (pentru comparatie cu semnalul transmis) pentru a fi decodificate. Mai departe tu stii ce vrei sa faci.Aici : http://www.bowdenshobbycircuits.info/readout.htm ai si o mica aplicatie cu PIC16F628(A)
Link spre comentariu

Tare cu Pickit 2.In principu da. Conectezi out IR la un pin al PIC-ului, printr-un 1K. Asta ca sa nu fie pinul accidental pe out.Poate MikroC sa aiba ceva definit pentru citirea seriala.Ca sa fii sigur ca nimeresti caracteristicile receptiei seriale (baud rate), o iei invers.Scrii numarul ala citit 01001..... si incerci sa il transmiti tu serial cu PIC-ul. Il compari cu imaginea postata anerior.Numarul ala nu e string "01001.." trebuie transformat in zecimal sau hexa - nu stiu daca intreg sirul sau nu (ex sa nu fie ultimul bit paritate).Daca pana aici merge doar schimbi instructiunea din transmisie in receptie. Citirea serial asincron se face soft asa:-stii cat dureaza un bit-linia este initial pe 1-logic asta insemna ca este Idle-in bucla se astepta linia seriala ca cada in 0 logic. De obicei asta este bitul de start.-se astepta jumatate din perioada bit-ului si se citeste valoarea liniei (1 sau 0). - prima citire va fi la jumate bitului de start.- se astepta o durata egala cu bitul - se citeste bitul urmator la jumatatea lui - si tot asa pentru N biti.Daca vrei sa definesti procedura soft, nu este simplu, ca nu "nimeresti" Delay-ul. Mai te inspiri din altele gasite pe NET

Link spre comentariu

Salut, zi-mi si mie, te rog, ce este cu acel PICKIT2 logic tool? Cu un programator PICKIT2 se poate face achizitie de semnale logice ca in imagine? Daca da, cu ce soft?Multumesc anticipat.

Link spre comentariu

Salut, zi-mi si mie, te rog, ce este cu acel PICKIT2 logic tool? Cu un programator PICKIT2 se poate face achizitie de semnale logice ca in imagine? Daca da, cu ce soft?Multumesc anticipat.

Cu softul PICKIT2--> Tools-->Logic tool
Link spre comentariu
Vizitator H4cK3r

Folosind pickit 2 logic tool am aflat delay-urile.Ele sunt urmatoarele:0-1000us1-840us0-1.8ms1-880us0-920us1-880us0-880us1-880us0-920us1-880us0-880us1-880us0-920us1-880us0-880us1-1.8ms0-1.76ms1-880us0-920us1-880us0-880us1-880us0-920usteoretic, daca aprind si sting un ir led dupa acest cod, televizorul va recunoaste instructiunea?de ce este o diferenta intre durata de timp a "bit-ilor"?Ma refer la 880us,920us etc.Banuiesc ca pentru a trimite acest cod, nu pot folosi Delay10TCYx sau orice alta instructiune de delay, trebuie cu timeri, nu?

Link spre comentariu

Protocolul folosit la telecomanda ta foloseste o codificare "deosebita" - manchester pe numele ei, asa ca poate ar fi bine sa citesti mai multe despre protocolul asta, ca sa si intelegi ce se intampla si de ce. Mie pagina SB-Projects mi-a fost de mare ajutor.Diferentele de 20..40 us sunt acceptabile, nu cred c-o sa gasesti telecomanda fara diferente.

Citirea serial asincron se face soft asa:-stii cat dureaza un bit...-se astepta jumatate din perioada bit-ului si se citeste valoarea liniei (1 sau 0). - prima citire va fi la jumate bitului de start.- se astepta o durata egala cu bitul - se citeste bitul urmator la jumatatea lui

Sorry Mondan, fiind vorba de RC5 cu codificare Manchester (valoarea bitului e data de tranzitia 0->1 sau 1->0 la ~jumatatea bitului) nu prea se potriveste ce ai zis tu cu ce se intampla de fapt.
Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări