Vizitator Postat Ianuarie 3, 2010 Partajează Postat Ianuarie 3, 2010 Zilele astea m-am jucat putin cu niste microcontroller-e din familia AVR: ATmega32 si ATtiny13. Mai jos este descris cum am facut o telecomanda pentru Nikon D90 simuland acelasi tren de impulsuri pe care il scoate o telecomanda originala tip Nikon ML-L3 Wireless Remote Control. Am testat-o numai pe D90 dar aceeasi telecomanda ar trebui sa functioneze cu oricare dintre aparatele: - Nikon N65, N75, Coolpix 8400, 8800, Pronea S, Nuvis S & Lite Touch Zoom, - Nikon D40, D40x, D50, D60, D70, D80 & D90 Pentru asta am folosit doar 3 componente: 1. O bricheta cu LED 2. Un alt LED, infrarosu 3. Un microcontroller ATtiny13 Ideea este urmatoarea: Se inlocuieste LED-ul din bricheta cu unul infrarosu comandat de un ATtiny13 care scoate acelasi semnal cu telecomanda originala. De cate ori se alimenteaza montajul, microcontroller-ul trimite comanda de declansare a aparatului foto dupa care intra in standby. Pentru a face urmatoarea fotografie se opreste si se porneste alimentarea montajului de la butonul brichetei. Cred ca este cel mai simplu montaj posibil cu un microcontroller. Iata cum se face pas cu pas: Se ia o bricheta cu LED: Se desface: Se ia un microcontroller ATMEL ATtiny13, se programeaza si se monteaza pe suportul bateriilor impreuna cu un LED IR (Infra Red): Se monteaza totul la loc si obtinem o telecomanda pentru unele aparate foto Nikon. In imagine Nikon D90 declansat prin bricheta cu telecomanda. Si sursa firmware-ului pentru ATtiny13 scrisa in BASCOM-AVR: ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Infrared Remote Control Transmitter for Nikon D90' -------------------------------------------------'' v0.2' Written by RoGeorge' 2010.01.03' Compiler BASCOM-AVR v1.11.9.1'' Description:' DIY replacement for Nikon ML-L3 Infra Red (IR) Remote Control'' After power up the microcontroller send a' "TAKE PICTURE" IR command to a Nikon camera' then enter in powerdown mode.'' It should work with:' Nikon N65, N75, Coolpix 8400, 8800, Pronea S, Nuvis S & Lite Touch Zoom,' Nikon D40, D40x, D50, D60, D70, D80 & D90 Digital SLR Cameras'' It works (tested) with:' - Nikon D90'' Schematic:' - 1 x ATtiny13' - 1 x normal open microswitch between batteries (push button)' - 3 x 1.5V SR41 (AG3) button cells as power source' - 1 x IR LED between OC0B (PIN 6 = LED anode) and GND (PIN 4 = LED cathode)' - NO curent limiter resistor is necessary for the IR LED'' IR LED waveform out (100% modulated with 38.4 KHz carrier):' - 2000 us on' - 27830 us off' - 390 us on' - 1580 us off' - 410 us on' - 3580 us off' - 400 us on' - 63200 us off' - repet once again the whole sequence'' Fusebits:' Low: -1101010' ??????++-- CKSEL[1] Clock selection' ????++-- SUT[1] Startup time selection' ???+-- CKDIV8 Clock division ratio (1:1/1, 0:1/8)' ??+-- WDTON (1:WDT normal, 0:WDT always on)' ?+-- EESAVE (Retain EEPROM at chip erase 1:No, 0:Yes)' +-- SPIEN (1:Disable ISP, 0:Enable ISP) *Available only HVS mode' High:---11111' ????+-- RSTDISBL (RESET pin 1:Enable, 0:Disable(PB5))' ??++-- BODLEVEL[1] (BOD 11:None, 10:1.8V, 01:2.7V, 00:4.3V)' ?+-- DWEN (On-Chip Debugging via RESET pin 1:Disable, 0:Enable)' +-- SPMEN (SPM instruction 1:Disable, 0:Enable)'' Cal: 75'' Bill of Materials:' - 1 x Cigarette Lighter with white LED for case, batteries and power switch' - 1 x IR LED' - 1 x ATtiny13'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' $regfile = "attiny13.dat" $crystal = 9600000 $swstack = 8 $hwstack = 2 $framesize = 0 $noramclear'initializations''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''select clock prescaller to 1/1 (9.6 MHz)''''''''''''''''''''''''''''''''''''''''' Clkpr = bits(7) Clkpr = 0'Ports init''''''''''' Config Portb = Output'TIMER init''''''''''' Config Timer0 = Counter , _ Edge = Falling , _ Compare A = toggle , _ Compare B = toggle , , _ Clear Timer = 1 ocr0a = 13 ocr0b = 0'Other peripherals init''''''''''''''''''''''' stop adc stop watchdog stop ac'main''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' declare sub pulse1 waitms 63 call pulse1 call pulse1 portb = 0 disable interrupts powerdown end''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' sub pulse1 start timer0 waitus 2000 stop timer0 waitms 28 start timer0 waitus 390 stop timer0 waitus 1580 start timer0 waitus 410 stop timer0 waitus 3580 start timer0 waitus 400 stop timer0 waitms 63 end sub'EOF''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Link spre comentariu
Vizitator Postat Ianuarie 27, 2010 Partajează Postat Ianuarie 27, 2010 Inca o poza cu schema: Link spre comentariu
nicul Postat Ianuarie 30, 2010 Partajează Postat Ianuarie 30, 2010 super misto, aveam si eu o link de ceva vreme dar imi era lene sa ma apuc de ea, http://www.bigmike.it/ircontrol/standard.html ai rezolvat o problema importanta, cea a carcasei si a push button-ului, chiar daca nu fumez o sa caut o bricheta din asta. intreb si eu: 1- bateriile alea sunt cam micutze si led-ul nu e conectat prin tranzistor, cam care e distanta la care bate chestia asta ? stiu ca pot sa pun baterii mai mari, dar pierd avantajul carcasei. 2- de ce e pauza de 63200 us? (eu am d80) Link spre comentariu
Vizitator Postat Februarie 1, 2010 Partajează Postat Februarie 1, 2010 1. Am testat-o in casa si merge peste 7 metri.2. Asa emite telecomanda originala. Merge si cu D80. Link spre comentariu
Vizitator keller946 Postat August 31, 2010 Partajează Postat August 31, 2010 Faină ideea cu telecomanda . Cred că o să încerc să fac și eu una. Ai putea să uploadezi și hex-ul? Link spre comentariu
Vizitator Postat Septembrie 1, 2010 Partajează Postat Septembrie 1, 2010 ...Ai putea să uploadezi și hex-ul?Forumul nu permite atasamente de tip .HEXDupa download trebuie schimbata extensia fisierului din .TXT in .HEX Link spre comentariu
Vizitator keller946 Postat Septembrie 4, 2010 Partajează Postat Septembrie 4, 2010 Merci!Între timp mi-am descărcat și eu bascom pentru că vroiam să îmi fac un led chaser Link spre comentariu
iora Postat Septembrie 4, 2010 Partajează Postat Septembrie 4, 2010 interesant.am sa fac si eu unul,insa intr-o alta carcasa Link spre comentariu
Vizitator Zozel Postat Noiembrie 17, 2010 Partajează Postat Noiembrie 17, 2010 Salut. Interesant circuitul si surprinzator de simplu. Eu sunt incepator si am dat de pagina asta cautand pe google o schema pentru un emitator IR. Receptorul deja il am facut conectat prin portul serial COM1 la calculator. Iata schema: aici sau aici - o folosesc pe prima de sus Folosesc un TSOP1738 si sunt extrem de multumit de rezultat - are sensibilitate extrem de buna, indiferent de unghi de la orice distanta din camera. Plus ca este foarte simplu. Ceea ce vreau eu sa stiu este ce protocol foloseste emitatorul tau si cati biti as putea trimite pe secunda cu el? TSOP1738-ul suporta de exemplu 2400bps receptie. Ce protocol ar trebui sa folosesc ca sa ajung la rata aceasta de transfer? Ce protocol folosesti tu (sau ma rog, emitatorul tau pentru nikon)? Cu ce secventa de biti e echivalent semnalul tau? Mersi! EDIT: Dap...acum vad: http://www.sbprojects.com/projects/nikon/index.htm Deci protocolul e specific Nikonului. Asta nu inseamna totusi ca nu pot sa modific codul pentru propriile nevoi. Intrebarea "TSOP1738-ul suporta de exemplu 2400bps receptie. Ce protocol ar trebui sa folosesc ca sa ajung la rata aceasta de transfer?" ramane deschisa. Multumesc! Link spre comentariu
Vizitator Postat Noiembrie 18, 2010 Partajează Postat Noiembrie 18, 2010 Programul actual trimite doar un tren de impulsuri specific aparatelor foto Nikon. Acest sir de impulsuri declanseaza aparatul foto si face o fotografie. Avantajul este ca poti declansa de la distanta si ca fotografiile ies mai clare decat daca ai declansa apasand cu degetul, asta pentru ca atunci cand apesi misti putin si aparatul foto si risti sa iti iasa fotografia 'miscata'.Montajul de mai sus ar putea trimite date cu 2400 bps daca se reprogrameaza microcontroller-ul. Depinde ce vrei sa faci. Pentru transmisii de date iti recomand sa pui in serie cu LED-ul infra rosu o rezistenta de 100 de ohmi iar in paralel pe alimentare un condensator de 100 nF.Receptorul tau (girder) este gandit pentru telecomenzi infrarosu care folosesc protocolul RC5 dar poate fi folosit si la altele daca ai soft corespunzator. Citeste despre RC5 si vezi cum se potriveste cu aplicatia ta. Link spre comentariu
Postări Recomandate
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 contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum