«

»

Giu 24

Stampa Articolo

Dolly Photo versione 2 – prima parte

Il progetto Dolly Photo è da sempre uno dei più seguiti dai makers appassionati di fotografia ed ecco il motivo per cui continuo a farlo evolvere, questo è il primo articolo di una serie dedicati al Dolly Photo versione 2

dolly photo versione 2

L’evoluzione Dolly Photo versione 2 è frutto dei test eseguiti da fotografi appassionati e professionisti che mi hanno inviato le loro impressioni.

Le prove e l’utilizzo sul campo del progetto ha evidenziato le nuove funzionalità richieste:

  • aggiungere dei finecorsa per evitare malfunzionamenti agli estrmi;
  • automatizzare del ritorno carrello al punto zero, possibile grazie ai finecorsa;
  • definire i tempi tra un passo ed il successivo in millisecondi e non in secondi come nella versione 1;
  • definire i tempi di ALT, prima e dopo lo scatto, in millisecondi e non in secondi come nella versione 1;
  • incrementare di velocità di impostazione dei parametri Dolly Photo versione 2;

Ciascuna di queste funzionalità è inserita in questa nuova versione, mentre altri numerosi suggerimenti sono in fase di studio e saranno introdotti con una versione successiva.

In questa prima parte ti mostro come costruire ed aggiungere dei finecorsa al tuo Dolly Photo versione 2.

Aggiunta dei finecorsa nel Dolly Photo versione 2

Puoi aggiungere i due finecorsa acquistando i singoli componenti o il kit di espansione per Dolly Photo versione 2.

Per capirci indicherò come finecorsa di START quello posto all’inizio del dolly mentre come finecorsa di END quello posto alla fine della slitta.

Il Dolly Photo versione 2 aggiunge allo sketch il controllo le istruzioni necessarie a fermare il motore passo-passo quando il carrello raggiunge uno dei finecorsa.

L’uso dei finecorsa è utile perchè:

  • eviti sforzi del motore quando esaurisce la corsa;
  • previene le configurazioni errate;
  • permette di definire limiti inferiori di corsa;

Il kit che ti ho suggerito prevede l’utilizzo dei sensori ottici IR GP1A57HRJ00F e della relativa breakout, tuttavia potresti utilizzare come finecorsa anche dei pulsnti a levetta o con i più complessi sensori di prossimità.

Realizzazione dei finecorsa con GP1A57HRJ00F

L’uso di queso componente come finecorsa del Dolly Photo versione 2 è indicato sopratutto se intendi utilizzare il tuo dolly all’aperto ed in presenza di polvere che potrebbe rendere vano l’uso di finecorsa meccanici.

Per usare i finecorsa ottici puoi utilizzare la comoda breakout:

SHARP GP1A57HRJ00F Breakout Board

su cui saldare il GP1A57HRJ00F, la resistenza da 330ohm ed i pin per collegare il finecorsa al dolly:

dolly photo versione 2 gp1a57hrj00f

inoltre la breakout ti permette di fissare più facilmente il finecorsa alla slitta.

Ecco lo schema per collegare i sensori ad arduino, perdina se il disegno non è identico al tipo di sensore, ma non ho trovato nulla di corrispondente:

dolly photo versione 2 gp1a57hrj00f

Realizzazione dei finecorsa meccanci

Il finecorsa meccanico puoi realizzarlo con due interruttori tipo questi:

dolly photo versione 2 sensore meccanico

a cui dovrai saldare delle resistenze e dei cavetti in modo che alla pressione della leva chiudano il contatto come in questo schema:

dolly photo versione 2 schema

In entrambi i casi se stai utilizzando una keypad LCD puoi collegare i terminali dei sensori al connettore A1 ed A2 della keypad LCD:

dolly photo versione 2 collegamenti

avrai già letto che la keypad versione 1.0 e la sua evoluzione la keypad versione 1.1 differiscono per alcune caratteristiche, una di queste è la posizione dei pin di connessione in prossimità di A1-A5:

keypad lcd versione 1.0 vs 1.1

ti invito a fare attenzione a come colleghi i sensori in quanto da tale connessione dipende non solo il corretto funzionamento del Dolly Photo versione 2 ma anche l’incolumità dei tuoi sensori e del tuo progetto.

Scketch di verifica dei finecorsa

Prima di modificare il Dolly con le righe di codice relative alla corretta gestione dei finecorsa i consiglio di testarli e per farlo puoi utilizzare il seguente sketch:

/**********************************************************
 *
 * autore: Mauro Alfieri
 * web:    mauroalfieri.it
 * tw:     @mauroalfieri
 *
/**********************************************************/

#define pinSTART A1
#define pinEND   A2

void setup() {
  Serial.begin( 9600 );

  pinMode( pinSTART,INPUT );
  pinMode( pinEND,INPUT );

  digitalWrite( pinSTART,LOW );
  digitalWrite( pinEND,LOW );

  Serial.println( "Fine Setup" );
}

void loop() {
  int valSTART = analogRead( pinSTART );
  int valEND   = analogRead( pinEND );

  Serial.print( "Valore START: " );
  Serial.print( valSTART );
  Serial.print( " Valore END: " );
  Serial.println( valEND );

  delay( 100 );
}

il cui scopo è visualizzare nel tuo Monitor Seriale sull’arduino IDE i valori letti dal finecorsa START e dal finecorsa END.

Lo sketch è davvero banale sia per le istruzioni che lo compongono sia nell’utilizzo.

Collega i due finecorsa START ed END rispettivamente ai pin A1 ed A2 di Arduino, esegui lo sketch e aprendo il monitor seriale vedrai susseguirsi del testo come il seguente:

Valore START: 1023 Valore END: 1023
Valore START: 1023 Valore END: 1023
Valore START: 1023 Valore END: 1023
Valore START: 1023 Valore END: 1023
Valore START: 1023 Valore END: 1023
Valore START: 1023 Valore END: 1023
Valore START: 1023 Valore END: 1023

interrompendo il fascio di luce del sensore GP1A57HRJ00F o chiudendo il contatto del finecorsa meccanico i valori letti dovranno variare tendendo a zero:

Valore START: 270 Valore END: 310
Valore START: 275 Valore END: 290
Valore START: 273 Valore END: 315
Valore START: 271 Valore END: 299
Valore START: 270 Valore END: 300
Valore START: 265 Valore END: 290

la soglia di passaggio io l’ho fissata a 800 per cui se i tuoi valori sono tutti superiori ad 800 sia a sensore libero sia a sensore premuto o interrotto dovrai modificare la soglia nello sketch definitivo del Dolly Photo versione 2.

Video del Dolly Photo Versione 2

in anteprima ti mostro le nuove funzionalità che alla fine di questa serie di articoli potrai ottenere con il Dolly Photo versione 2:

Buona costruzione.

Permalink link a questo articolo: http://www.mauroalfieri.it/elettronica/dolly-photo-versione-2-prima-parte.html

9 comments

3 pings

Vai al modulo dei commenti

  1. Paolo

    Non smetterò mai di ringraziarti per tutto quello che fai!

  2. Paolo

    Ho un problema quando collego il pulsante e lo premo si riavvia tutto! Cosa sbaglio?

    1. Mauro Alfieri

      Ciao Paolo,
      non ho capito a quale pulsante ti riferisci, forse il pulsante di reset?
      In tal caso il comportamento è corretto, la funzione di questo pulsante è di riavviare l’arduino.

  3. andrea

    Buona sera mauro
    e da molto che ti seguo e spero che non hai abbandonato il progetto dolly photo
    ti scrivo in quanto ho caricato il tuo listato sulla scheda.
    ho controllato tutto quanto ma non mi torna che errore ho fatto .
    a dire il vero i problemi sono 2 .. inserendo il tuo nuovo listato ho dovuto apportare delle leggere modifiche
    perché inizialmente non mi faceva entrare nel menu impostazioni.. ma rimaneva fisso sulla prima voce.

    poi facendo alcune modifiche sono riuscito ad attivarlo.
    ora come modifica ho solo inserito solo per comodità i 2 fine corsa su A3-A4
    mentre il tutto è rimasto li dove si trovava–

    ora la voce del menu avvio è sparito.– nonostante ci sia nel listato.

    i fine corsa non si attivano mai . ho provato a vedere il monitor seriale dall’ide ma da sempre il valore massimo isia da libero che da premuto !!

    inoltre il tasto reset non funziona..

    che dici installo la versione finecorsa FREE?? che era perfetta.

    so che non potrei ma sono disperato è da 4 ore che guardo il codice ma non trovo particolari discrepanze.
    lo incollo qui sotto spero di ricevere una tua risposta.

    ti ringrazio

    [[ codice rimosso in automatico ]]

    1. Mauro Alfieri

      Ciao Andrea,
      innanzitutto, come sai, non è consentito incollare codice nei commenti, è anche scritto come semplice regola in fondo ad ogni articolo.
      Anche volendo non potrei, solo leggendo il codice, riuscire a risalire all’errore senza riprodurre tutto il progetto ed osservare monitor seriale ecc.. e per farlo avrei bisogno dei tuoi componenti, che probabilmente differiscono dal kit in vendita che ho testato prima di rilasciare il codice, per cui non avrei modo di provarlo.

      Date le premesse ti posso suggerire di procedere per gradi, risolvendo prima il problema della lettura errata dei finecorsa, con uno sketch semplice e poi inglobandolo nel codice funzionante.
      Per le altre parti che non funzionano procedi per piccoli step verificandone la causa.

      In merito alle 4 ore .. buon per te .. io spesso trascorro intere settimane sul codice, anche più semplice del dolly, prima di comprendere dove ho sbagliato a scrivere e correggere; solo per la taratura della mia kossel 3d printer ho impiegato 3 settimane per calibrare il piano … non demordere spesso occorre un po di tempo per scrivere bene del codice complesso.

      1. andrea

        buon giorno mauro scusa per (l’azzardo del codice, conoscevo la regola ma ci ho provato comunque^^)
        l’ultimo aggiornamento è che tutto funziona alla grande
        ho risolto il problema dell motore (tene avevo parlato qualche articolo fa) ora gira con un ottima coppia senza fare scatti.

        ed sono riuscito ad inserire ed correggere un paio di righe del listato
        io ho tutti i componenti del kit tranne il motore che era un altro passo passo .
        mancherebbero anche i finecorsa ottici .

        il tutto funziona TRANNE
        che per una piccola cosa..

        ho utilizzato i fine corsa a pulsante (come indicato sopra) sui pulsanti A3 – A4 analogici
        ma purtroppo non mi legge i valori .
        quando inserisco il monitor seriale dal ide.
        leggo solo valori di sstart attorno agli 980 circa e se premo diventano max 1000
        mentre sstop fisso a 1024 circa sia da premuto che non

        ho provato a modificare la variabile di 800 con valori piu inferiori ma nulla e come se non li leggesse..
        i miei dubbi ora sono 2..

        non e che cambiando i pin a1-a2 con a3-a4 devo modificare i valori anche in altre righe oltre che alle righe di definizione?

        oppure non so ho inserito una resistenza di 330 hom ma non sembra li rilevi..

        p.s tempo fa ti avevo inviato degli stl per un case (scocca per contenere tutto quanto che ho disegnato ed realizzato io con cad.

        se vuoi inserirla si tratta di un case da stampare in 3d con gli ingressi ed un alloggiamento per ventola (interno da 40 mm)

        lo trovi qui http://www.thingiverse.com/thing:1777484

        ti ringrazio ciao.

        1. andrea

          Buon giorno.(dimenticavo)
          sono riuscito ad attivare il tasto sstart ..
          l’unico preoblema è questo ..

          ho utilizzato un fine corsa. se vado nel menu sotto la voce RESET AUTOMATICO il tutto funziona se premuto si resetta tornando alla schermata iniziale —

          mentre il tasto sstop non funziona (ho provato a cambiare l’uscita digitale da il pin a4 al pin a1-a2-a5 ma non va
          tornando invece alla schermada dove con il monitor seriale del ide leggo i valori .. al pulsante sstart vedo la differenza
          mentre sul pulsante sstop rimane sempre fissa a 1019 ..
          ho controllato il listato ma non mi sembra che ci siano errori..
          tant’è che ho pensato (pazienza lo utilizzo cosi )
          QUI arriva il vero problema se procedo ad utilizzare il dolly , inserisco le impostazioni e lo metto su avvio .. come lo faccio partire si blocca tornando alle imp. iniziali come se il fine corsa fosse premuto..

          non so proprio cosa sbaglio..
          ti ringrazio in anticipo..
          p.s sto lavorando ancora al design della scatola porta elettronica ..
          ovviamente le uscite ed i jack che ho utilizzato sono soggettivi..

          1. Mauro Alfieri

            Ciao Andrea,
            l’errore sembra nei collegamenti, se non varia il valore vuol dire che è collegato male il finecorsa.
            Se cambi pin per un finecorsa, ad esempio A2, devi modificarlo anche nello sketch.
            I pin A0-A5 non sono digitali ma analogici, leggili con analogRead()

            Se i collegamenti sono sbagliati ti troverai in situazioni strane e incomprensibili, la cosa migliore è comprendere linea per linea il codice e seguire in con il monitor seriale le fasi fino a trovare il componente o il codice che causa il ritorno alle impostazioni.

        2. Mauro Alfieri

          Ciao Andrea,
          hai provato con un semplice sketch che legge su tutti i pin A0-A5 se riesci a leggere il valore dei due finecorsa?
          Grazie per il link al case .. non lo avevo ricevuto in precedenza.

  1. Dolly Photo automatizzare il ritorno carrello - Mauro Alfieri Robotica

    […] « Dolly Photo versione 2 – prima parte […]

  2. Dolly Photo incrementa la velocità di impostazione - Alfieri Mauro

    […] modifiche e implementazioni fatte al Dolly Photo e presentate in questo articolo si concludono con questo articolo in cui trovi come il Dolly Photo incrementa la velocità di […]

  3. MotorShield R3 per Dolly - Mauro Alfieri Genuino Uno R3

    […] dolly photo versione 2 prima parte […]

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Puoi usare i seguenti tag ed attributi HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>