Gps Nikon

GPS paikkatieto Nikon kameraan ja Nikon D40 suljinvian korjaus ja remote shutter device

NikonGPS.jpg
EM-411_GPS.jpgGPS-cameras-04.jpgGPSUnitGP-1.png
GPS-cameras%20.jpg

Tämä liitin löytyy seraavista Nikon kameroista _

D4/D3 series/D2XS/D2X/D2HS/D800 series/D700/
D600/D300 series/D200/D7000/D90/D5200/D5100/
D5000/D3200/D3100/P7700


Nikon DX40 suljinvian korjaus

Korjaus ei onnistu yhdellä kädellä. Pitää keskittyä täydellisesti tehtävään.
Jos sinulla ei ole kärsivällisyyttä, älä aloita tätä työtä.

=== Välineet ====

Ei tarvita kuin yksi ristipäämeisseli, mutta se pitää olla oikea.
Älä aloita työtä ennenkuin sinulla on erittäin sopiva ristipääruuvimeisseli !
Mene vaikka kauppaan kameran kanssa sovittamaan.
Ruuvit ovat tiukassa. Yhdellä kädellä avaus ei onnistu.

=== Miten korjataan kamera ==

NikonD40.jpg
Nikon_D40screws.jpg

Ota akku ja muistikortti pois.
Avaa pohjan ruuvit ( 8 kpl).
Akkukotelon pohjassa on ruuvi, sitä ei tarvitse irroittaa, mutta sen yläreunassa on ruuvi, joka pitää avata.
Objektiivin alla on kaksi ruuvia, jotka pitää avata.
Kameran sivussa on muistikortin ympärillä kaksi ruuvia, joita ei tarvitse irroittaa.

Irroita kameran alaosa.

Etsi suljinmoottori.
NikonD40a.jpg
Nikon_Shutter_error224.jpg

Voitele sulkimen hammaspyörän akseli ( ei punaista hammaspyörää) silikonispraylla.
Käytä suljinta käsikäytöllä (M) kunnes suljinvirhettä ei enää tule.
Kokeilussa laita akku paikoilleen ja pidä sitä käsin paikallaan testien aikana.
Muistikorttia ei vielä tarvita.

Kasaa kamera. Nyt tarvitset tietoja mihin paikkaan tulee minkä pituinen ruuvi.
Jos olet vahingossa ottanut akkukotelon ruuvin pohjasta irti ja laitat siihen liian pitkän ruuvin kameran laukaisunappi ei toimi.
Jos olet vahingossa ottanunut muistikortin ruuvit irti ja laitat niihin liian pitkät ruuvit, akku ei mahdu paikoilleen.
Kuten huomaat, en ymmärtänyt tehdä ruuvikarttaa.

Ohjekuvat ovat huonoja, koska ne on otettu kamerakännykällä, ei Nikonilla

Varaa ilmastointiteippiä, kynä ja paperia.
Tee kartta paperille ruuveista ja numeroi ne pituuden mukaan sitä mukaa kun irroitat ne .
Laita ne teipille kasaan 1,2 ja 3.
Pituus on tärkeä asia kameraan kasattaessa.
NikonD40b.jpg
Nikon_Shutter_error224.jpg

Tee paperista aukko, jonka avulla voit suunnata voiteluaineen vain oikeaan paikkaan.
Käytä voiteluainetta erittäin säästeliäästi.

Parempi on suihkuttaa voiteluainetta ruuvimeisseliin ja tipauttaa siitä pieni pisara punaisen muovisen hammasrattaan akselille.

NikonD40c.jpg
Silicon_spreay0225.jpgVoiltelun jälkeen kokeilin suljinta muutaman kerran ennenkuin voitelu tehosi.
Testausta voi tehdä kamera auki pitämällä akkua paikoillaan käsin.
—-
Lopuksi: toimiiko korjauksen jälkeen?
Toimii
===
nikonremote.jpg

Minun teki mieli ottaa automaattisesti kuvia Nikonillani.
Miten se onnistuisti?
Etsin Nikonin protokollan ja tein pienen laitteen.
Ei PIC-prosessori + IR-lähetin. Nikon ei toimi automaattiseti 10 minuutin jälkeen, joten tein aikaväisäätimen laitteen päälle 1s- 10 minuuttia.
Laite antaa Nikonille aina kaksi sarjaa pulsseja. Ensimmäinen on fokuspulssi ja siten laukaisu.

Kokeilin laitetta Robottikerhon Räyskälän retkellä. Laite oli koko illan päällä ja kuvausväli oli asetettu 2 minuuttiin.
Tuli niin hirveästi kuvia! Mutta silloi tällöin ihan hyviä.
Hyvin toimi.

NikonIr.jpg

Tässä on Nikonin koodi

ML-L3.png

Tässä on koodi Nikon remotelle
/*
Nikon IR remote device
Name: Pekka Ritamaki
File NIKON.c
date:1.7.2007
CPU : PIC12F675
IO: IR out =GPIO.2 LC206 IR LED ilman etuvastusta
Potentiometer: GP.0
Clock: Intenal 4MHz
Time : 1s -8minuuttia

*/
#include <12F675.h>
//#device adc=8

#use delay(clock=4000000,restart_wdt)
#use fast_io(A) // IO tris is done by user, not by complier
#fuses INTRC_IO,WDT,PUT,PROTECT,NOMCLR,NOBROWNOUT
//No Watch Dog Timer

#BYTE timer0 = 1
#BYTE T1CON = 0x10
#byte GPIO = 5
#byte WPU_12F675 = 0x95

// bit control pullup
#BYTE CMCON =0x19
#bit CM0 = CMCON.0
#bit CM1 = CMCON.1
#bit CM2 = CMCON.2
#byte ADCON0 = 0x1F
#BYTE ANSEL = 0x9F
#bit ADON = ADCON0.0

// Weak pullup for each bit
#byte OPTION_REG = 0x81

#bit GENERALPULLUP = OPTION_REG.7
// 1= enabled
#bit WPU2 = OPTION_REG.0
1= enabled
Weak pullup reg bit7 =0
#BYTE TRISIO = 0x85
#BIT IR = GPIO.2

int8 iron, flip;

// count ON-delay so, that real delay is COUNT = delayus/26 us
// With asm adjust 2*13 = 26 IR pulsses

void pulseon(int16 count ) {
while (count—) {

IR=1;
#asm
NOP
NOP
NOP
NOP
NOP
NOP
#endASM

IR=0;

#asm
NOP
NOP
NOP
NOP
NOP
NOP
NOP
#endASM
}
}

// these IR pulsses are done 2 series between 63 ms
// 2200us on, 27ms off, 400us on, 1500 us off, 400 us on, 3000 us off, 400 us on, 63ms off,
void Nikoncode (void) {

pulseon(84 ); // 2200us on or 2200us/26us = 84 pcs* 26 IR pulsses
// pulseoff();
delay_ms(27); // pulsses off 27 ms
pulseon(15); // 400 us/26us = 15 // 400us pulsses

delay_us(1500); //1500 us off
pulseon(15); // 400/26 = 15 400 us pulsses

delay_us(3000);
pulseon(15); // 400/26 = 15 => 400 us pulsses
delay_ms(63); // for next round 63mS delay,
}

void main()
{

setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
// setup_comparator(NC_NC);
setup_vref(FALSE);
set_tris_a(0b111011);

setup_comparator( NC_NC_NC_NC);
// setup_counters (RTCC_EXT_L_TO_H, WDT_2304MS);
// setup_timer_0 (RTCC_DIV_2|RTCC_EXT_L_TO_H);
// setup_timer_1 ( T1_INTERNAL | T1_DIV_BY_1 );
GENERALPULLUP =1 ; // 1= enable GENERAL PULLUP
WPU2 =1; // 1= enable PULLUP RA.2
//ext_int_edge( H_TO_L ); // Sets up EXT interrupt level

IR=0;

while (1){
// 2.2 ms start
nikoncode(); // 1 kerta
nikoncode(); // 1 toinen

sleep();
}
}

Pekka OH3GDO

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License