Close

dalkova spoust pro zrcadlovku

Úvodní stránka Fórum Vaše projekty Arduino dalkova spoust pro zrcadlovku

Aktuálně je na stránce zobrazeno 15 příspěvků - 1. až 15. (celkem z 29)
  • Autor
    Příspěvky
  • #9301
    fidos
    Účastník

    Ahoj

    obracim se na Vas s prosbou o radu, kde muze byt chyba v zapojeni dalkove spouste. Sestavil jsem podle navodu viz. :

    http://www.instructables.com/id/Motion-Triggered-DSLR-Remote-System/

    krom toho, ze jsem pouzil jine soucastky, nez ma on :

    senzor pohybu: HC-SR501

    433Mhz RF Transmitter + Receiver: http://www.dx.com/p/433mhz-rf-transmitter-module-receiver-module-link-kit-for-arduino-arm-mcu-wl-green-220194#.WDhmgdThBQJ

    Jeden ochotny clovek mi poradil s kodem pro transmitter :

    #include <VirtualWire.h>

    #define PIN_MOTION 2
    #define PIN_LIGHT 13
    #define PIN_TX 12

    char *message;

    void setup() {
    pinMode(PIN_LIGHT, OUTPUT);
    pinMode(PIN_MOTION, INPUT);

    digitalWrite(PIN_LIGHT, LOW);

    vw_set_ptt_inverted(true);
    vw_set_tx_pin(PIN_TX);
    vw_setup(1200);

    delay(1000);
    }

    void loop(){
    byte input = digitalRead(PIN_MOTION);

    if (input == HIGH){
    digitalWrite(PIN_LIGHT, HIGH);

    message = „1“ ;
    vw_send((uint8_t *)message, strlen(message));
    vw_wait_tx();
    delay(1000);
    }
    else{
    digitalWrite(PIN_LIGHT, LOW);
    }
    }

    ktery se zda, ze funguje – nevim to jiste, jen vim, ze pri detekci pohybu se rozsviti ledka a snad i posila signal (nevim jak overit)

    Dejme tomu, ze odesila.

    Kod pro reciever jsem pouzil ze stranek autora projektu a to tento :

    /*———————————————————————————-
    Motion Activated DSLR Shutter Remote
    Receiver Sketch (433mHz Serial RX)
    Written By: Angelo Casimiro (ASCAS/ TechBuilder)
    Date Written: October 18, 2014

    Pin Configuration:
    – Digital#12 of Arduino to Data Out of RX module
    – Digital#11 of Arduino to IR LED
    ———————————————————————————-*/
    #include <multiCameraIrControl.h>
    #include <VirtualWire.h>

    Canon D5(11);

    void setup()
    {
    vw_set_ptt_inverted(true);vw_set_rx_pin(12);
    vw_setup(4000);vw_rx_start();unsigned int data = 0;
    pinMode(13, OUTPUT);
    pinMode(11, OUTPUT);
    }
    void loop(){

    uint8_t buf[VW_MAX_MESSAGE_LEN];uint8_t buflen = VW_MAX_MESSAGE_LEN;

    if (vw_get_message(buf, &buflen)){
    if(buf[0]==’1′){
    digitalWrite(13,1);
    D5.shutterNow();
    }
    if(buf[0]==’0′){
    digitalWrite(13,0);
    }
    }
    }

    ale transmitter pravdepodobne nic neprijima – nerosvicuje ir ani led na desce.

    Jinak jsem zkousel samotne zapojit transmitter a reciever, zda komunikuji a zda se ze funguji. Jen bylo videt, ze signal je ruseny.

    Proto se Vas tazi, kde muze byt chyba?

    Na zaver musim rict, ze jsem zacatecnik a programovani neni moje silna stranka 🙂

    #9307
    posjirka
    Účastník

    takže:
    – máš rozdílné komunikační rychlosti (v setup() máš jednou vw_setup(4000); podruhé vw_setup(1200);)
    – 433 Mhz je standardní řešení, jen je třeba dávat si pozor na napájení (aby to utáhlo vysílač). Pro vyšší výkon se dává vyšší napětí (tuším až okolo 9-12V) ale je to potřeba podívat se na datasheet tvého řešení.Nejsou všechyn stejné.
    – nevím jak máš řešenou anténu. Její provedení výrazně ovlivňuje chování celého řešení hlavně pro dosah.
    – když chceš něco odladit nech si vypsat na seriový port/monitor co ti vlastně přijímá.

    #9348
    fidos
    Účastník

    Dik za odpoved… upravil jsem rychlosti a funguje to 🙂 Akorat neplni funkci – ir ledka se rosviti, ale nespusti fotak… tak nevim proc

    #9349
    posjirka
    Účastník

    nech si vypsat co ti přijímá . viz exampl na stránkách tvůrce knihovny:
    https://www.pjrc.com/teensy/td_libs_VirtualWire.html

    určitě bych použil více než 1 znak. zrovna „1“ se vcelku blbě hledá v tom co ti bude chodit v návalu rušení.

    #9356
    fidos
    Účastník

    nemuze to bejt ir ledkou, sice sviti, ale neznam presne jeji parametry?

    …pak tady sem nasel kod, ktery by mel fungovat i pro moji zrcadlovku, ale v autorove zapojeni (pouze deska + ir led) :

    Bit of a learning curve but spent the day looking into how to get the Canon 5DMkII and 7D MkII to work.
    With an infrared detector and an Arduino sketch I found that the RC-6 remote from Canon outputs a 500uS burst, a delay of 6940us and then another 500uS burst. I then used a IR Led at 940nm – modified a sketch to send these bursts and lo and behold – it works.
    The RC-6 is used for a number of Canon Dslr’s so should cover a few more models for your library

    class CanonRC6{
    public:
    CanonRC6(int pin);
    void shutterNow();
    private:
    int _pin;
    int _freq;
    };

    CanonRC6::CanonRC6(int pin)
    {
    pinMode(pin, OUTPUT);
    _pin = pin;
    _freq = 33;
    }

    void CanonRC6::shutterNow()
    {
    for(int i=0; i<16; i++) {
    digitalWrite(_pin, HIGH);
    delayMicroseconds(15);
    digitalWrite(_pin, LOW);
    delayMicroseconds(15);
    }
    delayMicroseconds(6940);
    for(int i=0; i<16; i++) {
    digitalWrite(_pin, HIGH);
    delayMicroseconds(15);
    digitalWrite(_pin, LOW);
    delayMicroseconds(15);
    }
    }

    Zkousel se nahrat jeho knihovnu (download viz. jeho blog) a nic se nezmenilo.

    #9368
    posjirka
    Účastník

    to se klidně může stát. IR LED má mimo jiné parametr jako vlnová délka. může být špatně nastavená i nosná frekvence a foťák ji pak nedetekuje. Jak píšeš, že jsi zkoušel ten „přímý“ program arduino- foťák a nefunguje , tak bych to na nesprávnou IR LED i typnul.

    #9369
    posjirka
    Účastník

    už an neumím česky 🙂 … samozřejmě tipnul …

    #9373
    fidos
    Účastník

    tak ledku sem vymenil dokonce primo z ovladace rc-6 nespousti. Tim padem to musi bejt v uprave knihovny multiCameraControl nebo VirtualWire, ale netusim jak to mam upravit

    #9374
    fidos
    Účastník

    tak ledku sem vymenil dokonce primo z ovladace rc-6 a nespousti. Tim padem to musi bejt v uprave knihovny multiCameraControl nebo VirtualWire, ale netusim jak to mam upravit

    #9375
    posjirka
    Účastník

    tak to zapoj jak to měl ten sebastian – z arduina přímo na ir led …

    #9376
    fidos
    Účastník

    jo tak podle jeho zapojeni to funguje, ale na mym projektu, kdyz pripojim ledku na reciever, tak to nefunguje. Jak je to mozny, kdyz spusti ledku vlastne stejne jako u Sebastiana?

    #9385
    posjirka
    Účastník

    napadá mě varianta … zda knihovna virtual Wire nepoužívá stejné časovače/přerušení jako knihovna pro IR/foták…. jak budu mít chvilku zkusím se na to podívat…

    #9440
    fidos
    Účastník

    cau, jak to presne myslis?

    #9462
    posjirka
    Účastník

    tak jsem se konečně dostal no to tvoje řešení.
    knihovny se netlučkou – vždyť to fungovalo v instructable.com , ale zaráží mě 2 věci:
    1- spouštíš vysílač na urovńi HIGH. Ty opravdu připojuješ +5V přímo na pin? to je celkem sebevražda.
    Vždy se dává odpor (1k0) mezi pin a +5V a pak se tlačítkem ten pin přizemní (takže úroveń LOW)
    2 – proč máš pauzu 1000 ms (vysílač) ,po odelslání signálu, když v originále bylo 10ms. Takže mohl ten signál odeslat několikrát a pak byla větší pravdepodobnost, že se chytí.
    JKeslti chceš omezit počet semoutí, tak to nech až u přijímače.

    #9469
    fidos
    Účastník

    Pauzu uz sem zkousel nastavit na 10ms, ale stejny. Vysilac mam zapojeny primo na +5V, proc se tam musi davat odpor? Jinak nerozumim “ a pak se tlačítkem ten pin přizemní “ – dam odpor na +5V a co dal?

Aktuálně je na stránce zobrazeno 15 příspěvků - 1. až 15. (celkem z 29)
  • Pro reakci na toto téma se musíte přihlásit.