Link alla parte 1 –> Link alla parte 2 –> Link alla parte 3

Una volta compresa l’importanza e il funzionamento di concetti quali la Critical Focus Zone e una sommaria panoramica tra driver e motori passo passo, possiamo iniziare a dare uno sguardo alla circuiteria.

Potete trovare nel PDF trovato al primo articolo tutto quanto serve per costruire il progetto di R.Brown oppure potrete acquistare direttamente il PCB stampabile seguendo i link inseriti all’interno di quella dispensa. Se queste sono le condizioni in cui vuoi operare semplificandoti la vita, questo articolo lo puoi saltare a piè pari.

Diversamente, se veramente sei interessato ad entrare nel merito di come funziona la “mia” versione adattata alle mie esigenze, iniziamo a parlarne un pò.

LE MIE ESIGENZE

Quando ho iniziato a costruire il sistema, mi sono fissato alcune esigenze prima di operare con il disegno dello schema

  1. Che controller utilizzare: nel mio progetto ho utilizzato un arduino Nano cinese, si trovano senza coronavirus su ebay e costano piu o meno un paio d’euro a pezzo. Con 20 euro ve ne comprate 10, arrivano in un mese e hanno i pettini da saldare. Consiglio vivamente di utilizzare versioni con i pettini già saldati, semplifica ulteriorimente il lavoro. Caratteristica Negativa di cui tenere conto: sono cinesi e costano poco. Questo si traduce in componentistica non sempre all’altezza e questo si può osservare soprattutto sul regolatore di tensione posto nella parte inferiore del controller. Quel regolatore di tensione ha lo scopo di trasformare la tensione in entrata (da 5 a 14V) in una standard 5V lasciandoci cosi la libertà di poter avere a monte piu sistemi di alimentazione. Ma da prove empiriche e per esperienza ho notato che quel regolatore se alimentato oltre gli 8V iniziano a scaldare e durano poco lasciandoci a piedi. Motivo per il quale nella mia circuiteria ho previsto un regolatore di tensione che abbassasse la 12V in entrata da batteria/alimentatore in una piu consona 7V per consentire un’alimentazione piu soft ad arduino e l’ho ottenuta utilizzando il regolatore LM 7807 che si trova a circa 1,50 euro in commercio.
  2. Con che tensione alimentare il tutto: inutile dire…12V. Ma con una precisazione…di solito noi astrofili prendiamo la 12V o da trasformatori (se abbiamo la 220 a disposizione con un generatore o riprendendo da casa) oppure la prendiamo dalle batterie, spesso batterie da auto. Queste batterie hanno però una curva di tensione da quando son cariche fino al putno di scarica, passando quindi da 13.4V se pienamente cariche fino a 11.8 quando iniziano ad essere scariche. Ricordandoci che stiamo sempre parlando di economica circuiteria cinese all’interno del nostro bel sistema di focheggiatura, ho trovato indispensabile inserire un regolatore di tensione che abbia lo scopo di stabilizzare il range di tensioni in entrata (da 11.8 a 13.4) in una piu stabile 12V. Questo compito lo faccio assolvere da un regolatore di tensione LM7812. La stessa tensione andrà poi ad alimentare il driver motori e il motore stesso.
  3. Come far comunicare arduino con l’esterno: Per comunicare con l’esterno ho utilizzato due protocolli. Il protocollo bluetooth tramite il modulo Hc-05 dal costo di circa 6 euro, che mi evita cablaggi ulteriori attorno al telescopio ed il protocollo USB che serve principalmente per le programmazioni e come sistema di backup comunicativo

Quindi stiamo parlando di un controller per focheggiatore che comunica via bluetooth e che verrà poi chiuso in una scatola. Siccome ci sono piu elementi in serie che devono funzionare (regolatori di tensione, arduino nano, scheda Bluetooth, driver motore e motore stesso) in caso di guasto come posso risalire velocemente all’origine del problema?

IL SISTEMA DIAGNOSTICO A LED

Per risponderee alla domanda posta a termine del paragrafo precedente, ho inserito 5 led di diagnostica. 2 led erano già previsti dal progetto, gli altri 3 li ho inseriti io. In dettaglio

  1. LED DI STATO ROSSO PER ALIM.12V: Questo led si attiva non appena arriva la tensione al primo regolatore ed è posto lungo le linee di circuito che portano la 12V al driver motori e conseguentemente al motore. Se questo led non si accende, significa che non funziona nulla pertanto il problema può essere dovuto o all’alimentazione utilizzata (cavo rotto ipotesi) o al regolatore saltato.
  2. LED DI STATO ROSSO PER ALIM.5V: questo Led si alimenta all’accensione del controller arduino. Questo led indiriettamente mi comunica sia il buon funzionamento del regolatore da 7V posto all’interno, sia dell’alimentazione interna ad arduino con conseguente accensione. Viene presa direttamente dai pin 5V di arduino pertanto se questo LED non dovesse accendersi, o è saltato arduino o è saltato il regolatore da 7V
  3. LED DI STATO ROSSO PER BLUETOOTH questo led, di colore ovviamente BLU come si vede dall’immagine sopra, si attiva solo quando la connessione tra dispositivo esterno (computer o cellulare) e controller ha esito positivo. Qualora ad esempio dovessi subire un mancato movimento del focheggiatore, posso valutare immediatamente se il sistema è connesso o se si è disconnesso per qualche problematica. Mi permette quindi di diagnosticare immediatamente se sono connesso e pertanto sia il buon funzionamento del modulo Bluetooth HT-05 sia la buona configurazione del mio computer.
  4. LED DI MOVIMENTO DEL MOTORE: sonodue LED BIANCHI che si trovano ai bordi del controller e servono ad indicare la ricezione del comando di movimento. In un verso se ne accende uno e nel verso contrario si accende quello adiacente. Qualora ad esempio non dovessero accendersi, evidentemente il comando di movimento non è corretto o viene mal interpretato. Se invece si accendono ma non si muove ilmotore, allora il problema è da ricercarsi o nel motore stesso oppure in una errata piedinatura dei cablaggi oppure si è cotto il driver.

In questo modo, abbiamo sotto occhio tutta la diagnostica necessaria per capire l’origine di un problema, che sia questo a monte dell’alimentazione, relativo ad arduino o relativo ad uno dei suoi moduli

ALCUNE ACCORTEZZE SUI REGOLATORI

Prima di andare a vedere in dettaglio la costruzione della circuiteria e presentare cosi il file stampabile, una parolina breve la spendo sui regolatori, in quanto per ogni regolatore ho inserito dei comuni condensatori in modo da poter filtrare la tensione in entrata. Questa accortezza che potrebbe anche essere un pò eccessiva dal momento che di norma alimentiamo tutto o con batteria o con alimentatori switching, trova la sua efficacia nel regalare un pò di tranquillità qualora si utilizzi un generatore,. notoriamente afflitto da spyke di tensione anche piuttosto importanti. La circuiteria utilizzata è la stessa per entrambi i regolatori ed è piu o meno questa (presa da internet, la mia è leggermente modificata ma serve solo per spiegare)

Image result for LM7812  capacitor scheme
Immagine di repertorio.

IL DISEGNO

Questa brutta opera di arte moderna è stata disegnata con Fritzing. Al di là della complessità visiva è tutto abbastanza semplice..si parte dall’alto a sinistra, e si seguono le piste. Si trovano quindi i due regolatori in alto con i loro condensatori, dopodichè scendendo sul lato sinistro ci sono il LED rosso di stato con un condensatore che fa da filtro per alimentare il driver dei motiri. Tutta la piedinatura necessaria per il bluetooth è costituita da quei 6 pin centrali alla scheda (dove c’è il pin rosso per intenderci) e sono relativi alle funzioni di TX, RX, ALIMENTAZIONE + E -, LED DI STATO, mentre la fila di 8 pin adiacenti ad arduino e quella di altrettanti 8 pin posta dalla parte opposta sono gli alloggiamenti del driver. I quattro piedini in basso sono quelli dell’alimentazione motore. Al centro verso destra troviamo ARDUINO Nano mentre sulla sinistra i due led relativi al movimento motori Vediamolo Meglio:

Parte inerente alla circuiteria di aliemtanzione. A sinistra l’alimentazione principale, poi verso destra troviamo LM7812 E LM7807 IL PIN DEL + è il primo sulla Sinistra

Proseguendo la linea dei 12V troviamo il led di stato 12V e il condensatore filtro per l’alimentazione motori

Questa è la piedinatura per il driver motori. A sinistra i pin da collegare ad arduino, a destra quelli di pilotaggio del motore

Immagine relativa ad arduino, Si osservano sotto ad arduino due resistenze e due fori da ponticellare. Queste resistenze sono installate proprio sotto ad arduino che dovrà essere montato sul pcb con una zoccolatura a pettine per alzare un pò il controller. NB. Stessa cosa per il driver motori a Sinistra troviamo gli altri due led di stato per il movimento motore

Infine la parte centrale della board. Su tutti questi pin vanno installati dei pettini Maschi in modo da poterli cablare facilmente. La serie superiore serve per eventuale sensore di temperatura (io non l’ho messo, l’ho disegnato ma non installato) mentre i pin sotto sono relativi al modulo bluetooth. Sul sesto PIN c’è il led di stato del bluetooth.

IL PCB STAMPABILE

Ecco quindi il pcb stampabile tramite bromografo, che poi andrà forato e su cui si potranno istallare i componenti.

Metto a disposizione anche il PDF da stampare su acetato per la successiva impressione di basetta presensibilizzata tramite bromografo

CONCLUSIONI

Riconosco che spiegare in un articolo una circuiteria Home made non sia semplice, perchè ovviamente non essendo un tecnico non ho quella forma mentis che mi possa permettere di costruire un progetto tenendo presente tutta l'”etica” progettuale che di norma un elettrotecnico conosce. Ritengo tuttavia concreta la possibilità di stampare questo circuito che è testato e funzionante e approcciando un pò alla volta il controller Arduino con le sue regole, può essere relativamente semplice costruirsi questo PCB. Ad ogni modo, come da precedente constatazione, qualora si ritenga complicato e non comprensibile il lavoro svolto è possibile acquitsare un pcb già pronto tramite i link inseriti nelle dispense di R.Brown.

Infine, il “lavoro” completo si presenta in questo modo:

Su cui, una volta installati i particolari avremo questa configurazione:

Per domande e curiosità potete scrivere commenti all’articolo

Grazie a tutti

Cieli Sereni,

Fabio Mortari

Link alla parte I – Introduzione

Link alla parte II – La Critical Focus Zone

Dopo aver visto un pò l’introduzione di questo splendido progetto di R.Brown ed aver affrontato alcuni aspetti relativi alla Critical Focus Zone e alla risoluzione dei motori, abbiamo compreso come sia necessario (per lavorare in maniera precisa) ottenere un buon accoppiamento tra focheggiatore e motore.

In questo articolo ci spostiamo un pò piu in “la” andando quindi a vedere un altro accoppiamento opportuno da valutare, che è quello tra motore e driver di pilotaggio.

Ebbene si, non solo dobbiamo tenere presente delle caratteristiche meccaniche del sistema, ma dovremmo porre un pò in valutazione anche le caratteristiche di pilotaggio del motore dal momento che questo avviene tramite una schedina contenente un chip, comunemente chiamato DRIVER o DRIVER MOTORI.

I MOTORI PASSO PASSO

Ho scelto di spendere due parole sula tecnologia dei motori passo passo perchè in questi anni di passione ci siamo tutti resi conto come questa tipologia di motori rappresenti da almeno un ventennio la soluzione preferita per tutti gli organi di movimento di precisione, che siano quelli di una montatura, di un focheggiatore, di un rotatore di campo e in alcuni (rarissimi) casi anche di una ruota portafiltri (sebbene queste ultime di solito hanno sensori magnetici di posizione o ottici)

Da quando è stato inventato arduino e tutta la miriade di controllori ad esso associati, sicuramente si è sviluppato in larghissima scala anche il contesto hobbystico di questa tipologia di dispositivi e di motori, portando cosi questa bellissima tecnologia a portata di qualsiasi casalinga di Voghera che voglia controllare con passi numerici determinati meccanismi e che abbia bisogno di sapere precisamente a che punto si trovi uno scorrimento di un organo di rotazione senza dover ricorrere all’encoder seppur quest’ultimo rimane a tutt’oggi l’unico vero sistema di controllo preciso di rotazione. Se pensiamo ad esempio alle stampanti 3D, abbiamo il quadro completo di come siano sfruttabili questi aggeggi..

Il funzionamento di un motore passo passo (o stepper) è relativamente semplice e si può identificare nello schema seguente ma con un’attenzione particolare…non è l’unico schema possibile, è solo quello piu elementare. Di motori passo passo (o stepper) ne son state costruite milioni di versioni con diverse logiche di funzionamento seppur il ragionamento base è sempre lo stesso.

Quello che vediamo sopra, è il tipico funzionamento di un motore passo passo. Ed è piuttosto semplice intuirne il funzionamento seppur possiamo spiegarne in modo elementarissimo la logica di funzionamento…in parole povere, prendendo a riferimento uno degli innumerevoli testi che si trovano online:

Date queste premesse, si immagini di fornire tensione al conduttore A, collegando B a massa e lasciando scollegate le fasi C eD: a causa della magnetizzazione delle espansioni polari connesse alle fasi A e B il magnete permanente del rotore ruoterà, orientandosi in modo da allineare le proprie espansioni polari Nord e Sud nella direzione A-­‐‑B, come mostrato in figura.Se successivamente si toglie tensione alla fase A e la si commuta alla fase C in modo da alimentare il percorso di corrente da C a D, il rotore ruoterà in senso orario di un quarto di giro allineandosi lungo la direzione C-­‐‑D. Per provocare un ulteriore avanzamento sifornirà tensione alla fase B, poi alla D e così via, provocando una continua rotazione dell’asse del motore.La sequenza degli impulsi elettrici da fornire è quella evidenziata in figura(corrispondente a due giri del motore), dove le varie sequenze sono sincronizzate da un clock, il cui periodo determina ovviamente la frequenza di ripetizione degli impulsi, e quindi la velocità di rotazione del motore

Altro aspetto interessante dei motori passo passo è la loro capacità di mantenere la posizione quando sono alimentati, bloccandosi in un determinato punto fino a che non avviene appunto un cambio di stato sulle bobine che ne consenta il movimento.

Risultato immagini per stepper gif

Da qui comprendiamo bene che

a) c’è una sequenza ben precisa con cui fornire alimentazione alle bobine

b) Se io fornissi corrente al motore come ad un normale motore elettrico senza costruirmi un’elettronica di controllo, il motore non si muoverebbe

c) tornando all’immagine di cui sopra, esiste un “clock” con cui alternare le varie fasi, ed agendo su questo clock io determino la velocità con cui ruoterà il mio motore, se ruoterà avanti o indietro e sfruttando determinate peculiarità del clock, posso avere anche passi intermedi aumentando cosi il numero di passi per rotazione (funzione denomianta HALF STEP ovvero Mezzo Passo)

Bene, chi è deputato a fare questo?

IL DRIVER MOTORI E IL CONTROLLER

ESATTAMENTE! Il driver motori. insieme al controller…Ogni volta che sentiamo parlare di motore passo passo, non ci si dovrebbe riferire solo al motore in sè ma a tutta l’elettronica che ne gestisce il movimento e quindi per ogni motore c’è il driver che ne gestisce frequenze, rotazione, alimentazioni e la corrente di alimentazione al motore.

Il driver motori è costituito generalmente da uno o piu Chip saldati su un PCB il quale contiene tutta quella serie di resistenze, diodi di protezione, led etc.etc. che ne permettono il regolare funzionamento. Essendo questo deputato a fornire appunto anche la corrente in transito verso il motore, ha un problemino: se il motore va molto sotto sforzo, il driver scalda. E se scalda troppo, frigge. E se frigge, ciao rotazione perchè chiaramente il motore senza il corretto driver non può funzionare.

Il driver in buona sostanza potremmo associarlo da una serie di interruttori (4) che si aprono e chiudono in maniera consequenziale in base al proprio clock interno e la cui attivazione di un ciclo di sequenza avviene tramite l’ingresso di un segnale di corrente in un determinato piede del chip. Leggendo segnale elettrico in ingresso su quel pin, fa partire la sequenza di On/Off per ogni uscita verso al motore (4 nel nostro caso). Quindi, se arduino , ipotesi, apre il pin XY a cui è collegata l’entrate del chip apposita, il driver lo riconosce e attiva il primo interruttore alla cui uscita è collegato il cavo n.1 del motore, in un altro dei 4 cavi ci sarà il polo negativo e questo stato di cose genererà il primo movimento del motore e quindi il primo passo. Nella sequenza successiva, sarà il cavo n.2 ad essere deputato al ruolo di fornire corrente, e il corrispettivo cavetto diventerà il polo negativo, ripetendo il ciclo per un altro passo, come abbiamo visto in precedenza.

Per citare esempi che facciano vedere un pò le schede di controllo dei motori passo passo, quello che allego qua sotto è un esempio del driver motori di una Heq5 costituito da due chip per asse

Risultato immagini per neq6 motor driver

Mentre questa ad esempio è la motor board di un LX 200

Risultato immagini per vixen motor board

Per capire ancora meglio, penso si aopportuno affidarsi anche ad uno schema generico di funzionamento di un driver motori, in dettaglio questo che sarà il driver di cui ci occuperemo durante la costruzione. In Dettaglio il DRV8825, un driver piuttosto performante, minuscolo, che fornisce tutte le opzioni che ci servono e consente il transito di 0,4 ampere per ogni ciclo…ed è veramente tanto, considerando l’alimentazione a 12V a cui collegeremo la Vmot. Il costo di un driverino del genere si attesta intorno alle 3,5 euro, si trovano a piu e si trovano a meno, ma grosso modo tutti viaggiano intorno a ste cifre.

DRV8825 SCHEMA

Come possiamo vedere, abbiamo un pò di pin sul lato sinistro, che andranno collegati ad arduino. Mentre i pin sul lato destro andranno collegati al motore. In dettaglio, partendo dalla sinistra

LATO ARDUINO

a) ENABLE: Questo pin se alimentato (o quando alimentato) consente l’abilitazione o la disabilitazione del driver. E’ utile qualora si voglia, ad esempio, togliere corrente al motore quando questo è a riposo anche se è preferibile gestirlo non spegnendo l’elettronica (come in questo caso) ma mettendola a riposo, con il pin Sleep che vediamo successivamente

b) da M0 a M2 . Questi pin, consentono una gestione dei passi. Alimentati in certe combinazioni, consentono la divisione dei passi in 1/2, 1/4, 1/8 etc. Praticamente la gestione di questi pin consente di combinare le uscite verso il motore in modo tale da causare una rotazione piu small per passo. Ad esempio potremmo passare da 200 passi giro a 400 passi giro o a 800 passi giro, agendo elettricamente su questi pin. Personalmente, lo sconsiglio perchè io sono un pò antico e preferisco dotarmi di un bel motore ridotto e lasciare il full step. L’half step ha come contropartita quella di diminuire sensibilmente la coppia del motore che opporrà meno resistenza al movimento quando fermo e contestualmente avrà meno spunto quando dovrà iniziare la rotazione per spostarsi verso il fuoco.

c) Reset: non in uso

d) Sleep: fa quello che avevamo anticipato al punto a). In dettaglio…siccome i motori passo passo quando alimentati continuano a mantenere uno stato di blocco, questo pin permette (quando alimentato) di mettere in stand by il driver e di togliere corrente al motore. Questo può essere utile ad esempio se non si vuole che il motore scaldi troppo, perchè anche qualora il motore sia fermo ma l’elettronica di controllo sia attiva, il motore continuerà a scaldarsi pur non muovendosi. Siccome stiamo parlando però di un sistema di focheggiatura su cui ci mettiamo del peso, è consigliabile non gestire funzioni di sleep affinchè il motore rimanga in uno stato di blocco assoluto. Sviluppando la comprensione di questo concetto (cioè di NON disattivare il motore) ed affiancandolo ad un motore con riduttore che a sua volta ha una coppia molto molto alta, ecco dove troviamo la possibiltià di avere un sistema di focheggiatura che sposti fortissimi carichi e che mantenga il fuoco anche in posizioni piu complesse

e) STEP: Questo è il pin che farà partire la sequenza. Quando questo pin rileverà un segnale elettrico consentirà la partenza di un ciclo di movimento. Piu impulsi arriveranno a questo pin e piu il ciclo andrà avanti. Supponiamo che i lmotore si trovi a 5000 passi debba andare a 6.000 passi, arduino conterà per 1000 volte l’apertura del pin che porterà per 1000 volte un impulso di entrata al driver, il quale per 1000 volte completerà il ciclo di rotazione.

f) DIR: questo è il pin piu banale…se non alimentato, consentirà una sequenza di alimentazione verso i 4 fili del motore in una direzione sequenziale, mentre se alimentato invertirà la sequenza.

LATO MOTORE

Visto cosa succede in entrata al driver, adesso è il momento di osservare cosa avviene in uscita dal chip

a) Vmot: Questa è l’alimentazione che arriverà al motore, può viaggiare su questo driver dagli 8 volt ai 45 volt. Ma a noi serve la 12V, e quindi qua dovrà essere collegata la 12V in entrata dal nostro controller Ascom che a questo punto, come potremo intuire, non avrà piu una sola tensione all’interno ma 2: la prima è la 5Volt fornita da Arduino, la seconda è la 12V fornita al motore e al driver (ebben si, questo segnale alimenta anche il driver). In realtà nel progetto come l’ho fatto io ho modificato un pò anche questo aspetto, nel mio controller girano ben 3 voltaggi: 12 Volt, 8 Volt e 5 Volt, poi nei prossimi tutorial vediamo perchè ho adottato questa soluzione

b) GND: qua bisogna prestare attenzione…questo Ground rappresenta il polo NEGATIVO deI segnali del motore, quindi non è da confondere con il GND che troviamo in fondo alla scheda che ha un’altro scopo. In parole povere, questo ground è quello diretto al motore, è quel polo negativo che causerà la chiusura del circuito della tensione in transito verso il motore e che viene fornita attraverso i 4 pin che andiamo a spiegare ora

c) B2, B1, A1, A2: Eccoli qua i pin a cui collegare i nostri motori. Qua bisogna prestare un pò di attenzione perchè andranno collegati in maniera corretta altrimenti il motore non girerà, farà rumore, scalderà e in taluni casi potrà portare a fusione il driver a causa di un cortocircuito!! In dettaglio basterà affidarsi alla scheda tecnica del motore dove solitamente viene specificata (per questo motivo consiglio di dotarsi si motori nuovi e non di quelli trovati sotto al cuscino di zia..)

Come si vede chiaramente…avremo...A e /A del motore che saranno A1 e A2 sul driver mentre B e /b del motore saranno B1 e B2 del driver.

Collegato in questo modo, avremo mantenuto la corretta piedinatura delle bobine del motore al nostro driver.

d) Fault;: non in uso

e) GND: ecco questo GROUND è piuttosto importante, perchè qua andrà collegata la Ground di Arduino. Siccome, come stiamo intuendo, tutto il pilotaggio si svolge tramite segnali elettrici, dovremo avre un ground comune tra arduino e il driver altrimenti il segnale in entrata dai pin posti lato arduino andranno a scaricarsi su una GND non corretta non consentendo cosi la chiusura del circuito tra Arduino e il Driver Motori e la risultante sarà che non ci sarà corrente in transito tra arduino e il driver.

CONCLUSIONE

In conclusione, adesso penso che si stiano facendo un pò piu chiare le cose. I driver motori presenti sul mercato sono una miriade, io personalmente mi trovo molto bene con questo, siglato appunto DRV8825. Questo fornisce 0,4 ampere al motore che sono ben sufficienti allo scopo, costa poco, ha una grande versatilità e consente di operare in tutte le condizioni necessarie costituendo cosi un particolare piuttosto importante e ben costruito di questo progetto. Unica raccomandazione che fornisco è di considerare il montaggio di un dissipatore sul driver perchè scalda, ma di solito viene fornito col driver stesso.

Raccomandazione: si tratta di componentistica cinese, il che significa che non tutti i prodotti siano buoni alla stessa maniera. Compratene piu di uno e potrete sostituire qualora un driver non funzioni e ad ogni modo è sempre bene averne qualcuno in piu per scongiurare il blocco del progetto a causa di errori di montaggio.

Nel prossimo articolo, inizieremo a parlare di schemi elettrici e di costruzione.

Stay Tuned

Fabio Mortari

LINK ALLA PARTE N.1

Dopo aver introdotto un pò l’argomento di questo focheggiatore, entriamo un pò nel dettaglio dei requisiti fondamentali che sono utili prima di procedere. In particolare, si parla un pò di questa fatidica CFZ, Critical Focus Zone.

La critical focus zone è la zona critica di fuoco e rappresenta in buona sostanza un range espresso in micron entro cui cade la perfetta messa a fuoco di un sistema ottico.

E’ importantissimo, prima di procedere alla costruzione di un sistema del genere, sapere perfettamente qualche dato elementare, in modo da permetterci di produrre con efficacia dei ragionamenti matematici volti a ottenere una focheggiatura potenzialmente perfetta. I parametri che ci servirà sapere sono i seguenti:

  1. A quanti centimetri di scorrimento del canotto corrisponde un giro completo di manopola del focheggiatore.

Questo dipenderà ovviamente da che lato del focheggiatore verrà montato il motore e con quale organo di trasmissione.., se utilizzeremo ad esempio una cinghia sul riduttore del focheggiatore allora non dovremo preoccuparci troppo di questo aspetto. Diversamente se invece volessimo trasmettere la rotazione tra motore e focheggiatore utilizzando l’albero del focheggiatore stesso collegato al motore attraverso un giiunto, ecco che dovremo inserire la corretta valutazione di movimento.

Risultato immagini per focuser

Considerando (per motivazioni personali) assolutamente da evitare l’utilizzo dell’alberino che si può osservare estraendo la manopola del riduttore, è bene considerare l’utilizzo dell’albero principale non ridotto, che si trova nella manopola dal lato opposto. Questo per due motivi sostanziali…il primo è che la manopola (generalmente dorata) che troviamo dal lato riduttore, è una manopola “pesata”, fornisce cioè una sorta di bilanciamento al piccolo asse del riduttore (provare per credere..toglietela e sentirete grattare tutto e girare in modo piuttosto increspato e “grattoso”) , secondo perchè l’alberino del riduttore lo ritengo davvero minuscolo e se dobbiamo spostare grandi carichi (ruota, ccd, cablaggi) a mio avviso può piegarsi molto facilmente soprattutto se non abbiamo a disposizione dei kit appositi. Quindi, considerando l’idea di risparmiarci due soldi, ritengo la scelta piu vantaggiosa o quella che vede la cinghia, come sistema di trasmissione o quella che vede la connessione dell’albero piu grande al motore tramite giunto.

Bene, affrontato velocemente questo aspetto, andiamo a misurare di quanti centimetri si muove il canotto del focheggiatore facendo compiere alla manopola non ridotta un giro completo di rotazione. Si prende un calibro, si fissano i due punti di “start” e di “end” del movimento di rotazione e si misura quanti centimetri s’è spostato. Semplice..una volta stabilito questo valore, andiamo al punto due:

2. Di quanti passi giro è costituita una rotazione completa dell’asse del motore che vorremo montare:.

questo lo troviamo in tutte le schede tecniche dei motori passo passo. Cito alcuni esempi in tabella:

Queste tre soluzioni, molto diverse tra loro, possono andare bene ciascuna per delle specifiche condizioni di utilizzo, Come vediamo si va dai 200 passi giro fino agli oltre 5.300 passi giro dello stesso motore ma con riduttore, per finire con l’ultimo che ha appena 64 passi giro.

Cosa ne deduciamo? Che ovviamente cambia la risoluzione del movimento...facciamo un esempio pratico.

Supponiamo che un giro di manopola non ridotta faccia scorrere il canotto di 2 centimetri ok? Bene, nelle tre soluzioni avremmo che

a) utilizzando il Nema 17 senza riduttore, ogni passo giro sposterebbe il canotto del focheggiatore di: (/200) = 0,01 cm pari a 10 micron.

b) Utilizzando ilNema 17 CON riduttore, ogni passo giro sposterebbe il canotto del focheggiatore di (2/5300 cc.a) = 0,37 micron

c) Utilizzando l’ultimo della lista, ogni passo giro sposterebbe il canotto del focheggiatore di: (2/64) = 32 micron.

3. Determinare la Critical Focus Zone

A questo punto dovremo determinare la nostra zona critica del fuoco e per farlo potremo utilizzare il calcolatore che trovate a margine di questo articolo. Facciamo un esempio con una tabella dove inserisco qualche setup a cui ho espresso il calcolo e metto come utilizzo un sensore MORAVIAN G2 8300 in ogni setup:

4. Determinare se la potenziale accoppiata motore/focheggiatore consente una risoluzione sufficiente

Arrivati qua, rimane l’ultimo aspetto da valutare e cioè: dobbiamo capire se stiamo mettendo il motore giusto nel nostro sistema.

Per farlo, la regola suggerita dal costruttore (R.Brown) suggerisce che dobbiamo rientrare nella CFZ per almeno 10 steps!

Andiamo quindi a creare una tabellina esplicativa su un setup…dove abbiamo NEWTON 250 F/4,9, e una rotazione di manopola sposta il canotto di 2 CM, come visto in precedenza. Avremo che:

In Conclusione

Per concludere, è opportuno effettuare valutazioni di circostanza sul proprio sistema prima di scegliere il motore adatto per il proprio focheggiatore.

Ovviamente, qualcuno eccepirà che ci sono poi alcuni driver di pilotaggio dei motori che supportano l’Half Step, ma anticipo che personalmente non amo questo tipo di soluzione dal momento che l’Half Step comunque ha dei riscontri negativi in quanto a coppia del sistema. Ma di questo ne parleremo nel prossimo articolo.

Vi lascio con la tabellina con cui calcolare la Critical Focus Zone del vostro sistema. Di norma, potete fare il calcolo utilizzando come lunghezza d’onda il verde.

Ma vi faccio osservare una cosa…noterete che variando la lunghezza d’onda, varierà la CFZ del sistema. Sarà per questo che esistono gli apocromatici e che i filtri realmente parafocali non verranno mai costruiti? Ai posteri l’ardua sentenza.

Cieli Sereni

Fabio Mortari

Critical Focus Zone

Lunghezza D’onda
Lunghezza D’onda
Focal Ratio
Pixel size del sensore (in microns)
Binning utilizzato
 
Zona Critica del fuoco
CCD Focus Zone

Da diversi anni c’è online un progetto per un focheggiatore ASCOM piuttosto interessante, che molti di voi avranno già conosciuto e qualcuno sicuramente avrà già costruito. Il progetto è di R. Brown, un bravissimo e disponibilissimo autocostruttore (perdonate, non ho idea di che lavoro faccia) che ad un certo punto ha creato un sistema piuttosto valido e anzichè vendere il progetto, ha tenuto fede al principio base che ancora rende la passione astrofotografica qualcosa di inclusivo: l’ha reso disponibile gratuitamente.

Nota: Il Tutorial che sto scrivendo è ormai piuttosto obsoleto perchè il progetto è in continua evoluzione, motivo per il quale io mi limito a spiegare come l’ho fatto, ma questo intervento non può essere nè esaustivo nè del tutto completo. Questo aspetto non è dovuto ovviamente a mie restrizioni nello spiegare, quanto piiuttosto alla vastità del progetto. Ad ogni modo, essendo questo un blog, è possibile poi commentare i vari articoli e chiedere approfondimenti, in modo da poter collaborare per trovare le soluzioni migliori.

IL PROGETTO COMPLETO PUOI TROVARLO AL SEGUENTE

LINK

L’aspetto interessante è che il progetto OPEN abbraccia un pò tutte le esigenze, quindi ritengo che R.Brown abbia fatto un lavoro piuttosto completo. Ovviamente, si tratta di un sistema di motorizzazione autocostruito e a mio avviso piuttosto efficace, ma si pone su un piano diverso rispetto a prodotti in commercio e non è questa una sede opportuna su cui fare valutazioni di circostanza, che non avrebbero senso.

Strizzando l’occhio da tempo a questo progettino, circa un anno fa ho deciso di affrontarne la costruzione..sono già un felice possessore di un sistema di motorizzazione Moonlite su un telescopio apocromatico e quindi una piccola parte delle difficoltà di comprensione sul funzionamento del sistema già le avevo superate e trovo abbastanza opportuno avere un pò le idee chiare prima di parlare di autofocus, altrimenti il rischio di trovarsi in braghe di tela con un sistema di difficile diagnostica (un malfunzionamento potrebbe essere dato da impostazioni/interpretazioni/mancata conoscenza del sistema etc.) è piuttosto elevato. Pertanto, consiglio personale poi ognuno si muove come meglio crede, è quello di avere almeno testato altri sistemi di focheggiatura automatica giusto per avere la garanzia di saper individuare eventuali problematiche annesse al “nostro” sistema autocostruito.

Il progetto completo si trova al seguente LINK e consiglierei di dare una bella lettura al PDF di istruzioni prima di procedere..e andiamo al sodo

E’ DIFFICILE DA COSTRUIRE?

Come ogni progetto di autocostruzione, la risposta è fortemente dipendente da una serie di fattori. Ad esempio, se sai saldare a stagno e ti districhi con un pò di meccanica, non è particolarmente difficile anzi probabilmente l’avrai già costruito e con un discreto successo. Diversamente se hai problemi a saldare, se in genere tutti i tuoi progetti vengono dei “pastrocchi”, si può migliorare sicuramente ma qualche piccola difficoltà si trova. Quindi posso dire che di norma non è difficile farselo da soli, poste però come condizioni un pò di esercizio nelle saldature e un pochettino di dedizione alla meccanica.

Nota: nel mentre in cui stendo questi articoli, è uscita anche una versione SOLDERLESS, cioè senza saldature. Navigare al seguente LINK

Per fornire un’idea, io non sono una persona particolarmente dedita alla precisione nelle lavorazioni, spesso le mie saldature non vengono particolarmente belle da vedere, ma nell’insieme riesco a portare a termine un progetto, districandomi un pò nelle difficoltà leggendo tanto e sperimentando. Questo mi ha aiutato non poco a concludere il progettino che adesso è funzionante sul mio Newton 250mm f/4.9.

COME METTERE INSIEME “I PEZZI”?

Il tutto si basa sostanzialmente su una scheda di appoggio dei componenti, o PCB, su cui vanno poi saldate tutte le parti (Arduino, resistenze, ponticelli etc.etc.). Il PCB può essere acquistato in numero minimo di 3 (almeno cosi era qualche tempo fa) e ha un costo anche irrisorio, mi pare si aggiri intorno alle 25 euro per tre schede da cui nasceranno poi tre sistemi di focheggiatura.

Ovviamente, siccome stiamo parlando di autocostruzione, io ho provveduto a farmi da solo il mio schema seguendo ovviamente le indicazioni di progetto. Ho fatto alcune piccole modifiche per adattarlo alle mie esigenze, sviluppando il tutto con il software FRITZING e stampandomi il circuito con il bromografo.

Se non sai cos’è un bromografo, puoi leggere un tutorial che avevo fatto tempo fa per costruirsene uno e che trovo strumento piuttosto indispensabile per sviluppare propri progetti di elettronica ANCHE legati alla nostra passione. AUTOCOSTRUIRSI UN BROMOGRAFO

DA DOVE INIZIARE?

Rivolgendomi ai meno smanettoni, per risparmiare qualcosa ed evitare di comprare componenti col rischio che rimangano in un cassetto, la cosa migliore da fare è partire ovviamente dalla scheda precostruita (troverete i link dove acquistarle nei vari pdf) e “vestire” quella. I componenti elettronici a corredo hanno costi che viaggiano intorno a qualche decina d’euro e una volta fatto bene il controller il resto è piuttosto semplice fatti salvi alcuni punti a cui prestare attenzione.

Gli aspetti di cui tenere conto prima di iniziare il progetto sono questi

a) Leggere tutto il contenuto della cartella!!! LINK — IL progetto è in continua evoluzione e rimanere aggiornati è importante almeno durante le fasi costruttive.

b) Effettuare il calcolo della CFZ (Critical Focus Zone) – Questo servirà a comprendere in dettaglio entro quanti passi giro far ricadere la possibilità della messa a fuoco. Detta in parole povere, se il fuoco si trovasse in un range di 10 micron e la risoluzione del nostro motore è di 1 micron per step, allora avremmo ottime possibilità di ottenere un fuoco perfetto. Viceversa, se il fuoco si trovasse in un range di 5 micron e la risoluzione del nostro sistema è di 7 micron per passo, allora non otterremo un buon fuoco. Questi calcoli li potete fare tramite un software che si trova all’interno delle cartelle di progetto. Dovrete misurare di quanti millimetri si sposta il focheggiatore in seguito ad un giro di manopola, dopodichè dovre rapportare questa misura alla lunghezza focale e all’apertura.

c) Decidere il tipo di motore e il driver di pilotaggio utilizzare : Il motore è mosso da un driver, praticamente possiamo definirla come una schedina che ha delle peculiarità: ad esempio fornisce una corrente max al motore, ha una velocità massima, ha un’elettronica interna piu o meno complessa, può essere a 5 Volt o a 12 Volt etc.etc. L’accoppiata motore/driver va valutata in seguito ad una serie di considerazioni: il peso da muovere (ad esempio se si collega una webcam , una reflex, un moderno cmos, o un sensore mono con Ruota portafiltri esterna. Sono casi molto diversi tra loro e richiedono valutazioni diverse. Ad esempio una Canon eos 450D pesa poco piu di mezzo chilo, se ci mettiamo il correttore arriveremo max a 1 kg a star larghi… mentre una Moravian g2-8300 pesa piu di 1 kg, con ruota portafiltri esterna andiamo a 2 kg coi filtri e correttore di coma supereremo i 2,5 kg e quindi cambiano totalmetne il tipo di motore da utilizzare e le potenze in gioco. Oltre a questo, dobbiamo ottenere un’ottima precisioine in fuznione della CFZ e qua entra in gioco proprio la caratteristica del motore.

Esempio noioso: lampante assurdo e volutamente surreale: supponiamo di avere una CFZ di 5 micron, cioè il nostro fuoco ricade in 5 micron ok? Bene, una rotazione completa di manopola è pari a 2 centimetri, ergo 2000 micron. Se il mio motore compie una rotazione completa in 200 passi,, significa che ogni passo mi muove il fuoco di circa 10 Micron. Questo non è ok, perchè un singolo passo motore sposta il canotto del focheggiatore di un valore che va oltre alla zona di fuoco (in 5 mic ron ricade il mio fuoco, ma la risoluzione massima del motore è 10 micron!). Tra l’altro, il range di passi entro cui “azzeccare” il fuoco deve essere almeno pari a 10 passi giro, questo per garantirsi una buona risoluzione e limitare un pò gli effetti negativi di un backlash. Se però, ad esempio, io monto un motore con riduttore che mi porta la rotazione completa a 5000 passi per giro, ecco che ogni passo mi sposterebbe il fuoco di 0,4 micron. Moltiplicato per 10 passi giro arrivo a 4 micron, raggiungendo cosi una larghissima tolleranza nel movimento, cioè anche avessi un backlash, questo verrebbe recuperato ENTRO la zona di fuoco.

Altri aspetti legati al riduttore del motore, sono maggiore coppia disponibile e maggior resistenza a movimenti indesiderati dovuti al peso. Non è poco!

D) Decidere il tipo di alimentazione da fornire: ci sono un paio di possibilità, da 5V tramite USB o a 12V. Non mi dilungo tanto, io sono andato diretto a 12V senza nemmeno pensarci troppo, ma il perchè è presto detto. Usb fornisce 0,5 ampere a a 5 Volt, totale watt = 2,5. Utilizzando invece una circuiteria a 12V e montando un driver motore spefico (che vedremo dopo) vengono forniti 0,4 ampere. Totale watt: 4,8..quasi il doppio. Altro aspetto, nella versione a 5Volt via USB, i lmezzo ampere è diviso tra alimentazione arduino, alimentazione scheda motori, alimentazione motore, led e ammenicoli vari..ergo: impensabile che si abbia una coppia sufficiente e se messo tutto sotto carico non è escluso che si frigga la porta usb sul pc. Quindi, a mio parere, se si decide di autocostruirsi anche la board tantovale pensare tutto a 12V con alimentazion esterna.

e) Come comunicare col pc: anche qua ci sono diverse versioni, io ho scelto quella via BLUETOOTH. E’ la piu comoda, un cavo in meno, meno tiro, il bluetooth se configurato bene si collega immediatamente, non è necessaria una velocità di comunicazione particolarmente alta per questo tipo di dispositivo (semplici dati testuali). Quello che può essere comodo è PREVEDERE comunque una comuniciatività via USB amche se si è scelto di adottare l’interfaccia bluetooth..pertanto nella versione che presenterò prevede appunto comunicatività bluetooth ma con integrazione di una porta usb necessaria per programmazione del sistema e come sistema di backup nel caso dovesse non funzionare il modulo bluetooth (capitato una volta ma per un errore mio)

f) Quale versione scegliere: ho provato a costruirne due, uno piu massiccio con schermo LCD, pulsantiera, led etc….e uno molto piu small, che comunica appunto via bluetooth, senza schermo LCD, esenza pulsanti. Inutile dire quale sia la piu comoda. La puslantiera, purtroppo, consente di ruotare il motore di solo uno step per pressione del pusante e quindi diventa praticamente inutile. Inoltre lo schermo LCD non serve assolutamente a nulla se non ad aumentare le luci parassite. Ho costruito quindi una versione con led di stato per indicare la connettività bluetooth e la presenza della 12V ai motori e l’accensione regolare di arduino..ma anche questi, sono piuttosto luminosi e presto li maschererò con del nastro adesivo.

ASPETTI CRITICI

g) Come trasmettere il movimento: la trasmissione del motivmento tra motore e focheggiatore può essere a cinghia o a giunto. Questo rappresenta uno degli aspetti critici del sistema, perchè se si decide di optare per il giunto sicuramente bisogna affrontare due problemi. Il primo è relativo all’assialità tra albero del focheggiatore e albero del motore. Devono essere allineati bene e questo dipenderà esclusivamente dal sistema di collegamento del motore al focheggiatore. Se non ci si riesce a garantire questo, bisogna poi optare su giunti flessibili ma hanno dei giochi pazzeschi e si annulla un pò la possibilità di ripetere il fuoco in automatico con successo da una sessione all’altra, troppe variabili (tra cui anche temperatura e carichi). Diverso se si vuole operare sempre con fuoco in modalità motorizzata ma cliccando manualmente sul software di focheggiatura..in questo caso non sussistono problemi.

h) Come collegare il tutto al fochegiattore: anche questo è un aspetto piuttosto critico. Bisogna avere inventiva e un pò di capacità meccanica e creativa. Personalmente ho adottato una soluzione che fin’ora sta funzionando degnamente ma non è eccelsa. Ho praticamente stampato in 3d un sistema di staffe che vengono poi connesse al focheggiatore trmaite la vite di blocco che è posta sotto. Non è un sistema eccezionale, qualche gioco lo introduce e per forza di cose mi obbliga ad utilizzare un giunto di tramsissione flessibile a causa dell’allineamento non preciso tra gli alberi del motore e del focheggiatore..ma per ora va bene cosi, sono nell’atttesa di trovare una soluzione ancora piu vincente.

CONCLUSIONI E SCOPO DI QUESTO LAVORO

Concludendo questa prima parte legata all’autocostruzione di un focheggiatore Ascom, posso dire che oltre che essere divertente è piuttosto risparmioso a patto però di sapere sempre cosa si sta facendo. In generale, senza errori dovuti a inesperienze e avendo le idee ben chiare, il costo di un sistema del genere si aggira appena intonro alle 80 euro compreso il motore NEMA 17 PG 27 che è uno dei piu tosti!

Lo scopo di questo lavoro è semplicemente presentare uno dei progetti possbili, che possa essere di stimolo a qualcuno per addentrarsi dentro a questa avventura autocostruttiva piuttosto interessante e che permette di entrare nel dettaglio di molti aspetti legati alla robotizzazione e automazione di un sistema. Detta in parole povere, fa scuola. Dentro a un progetto di questo tipo si trova informatica, meccanica, elettronica, ottica e creatività…pertanto, a patto di non avere fretta nel costruire, è qualcosa di sicuramente vantaggioso anche per l’esperienza diretta di un astrofilo.

In ultima analisi, il progetto che porterò avanti su questo blog è volto a spiegare la versione da me scelta e che funziona da piu di un anno in pianta stabile sul mio newton senza mai avere problemi di sorta (se non legati appunto al giunto..), in dettaglio

Sistema di focheggiatura ASCOM con LED di stato, alimentato a 12V, comunicazione tramite Bluetooth su una schedina autocostruita con BROMOGRAFO <<-. LINK ALL’ARTICOLO, e la cui circuiteria è stata da me ridisegnata sulla base di alcune accortezze. La versione di arduino utilizzata è la NANO acquistata in un negozio cinese a circa 2 euro.

Nei prossimi giorni iniziamo a lavorare.

Cieli sereni

Fabio Mortari

Eccoci dunque arrivati alla fase conclusiva di questa parte di spiegazioni, con il rilascio del PCB.

Il PCB che ho creato lo potete vedere di seguito:

SCARICATE IL PDF DA QUESTO LINK!

Su questa board creata, se ne possono dire mille, si poteva fare oggettivamente meglio, non è bella da vedere  Considerate che io non sono in grado ad oggi di stampare su due facce le schede presensibilizzate ma solo su una, imparerò presto spero ma al momento preferisco cose “pratiche” e piu comode, anche se meno valide dal punto di vista dell’eleganza di progettazione.Inoltre come spesso capita, quando trovi “la quadra” e tutto funziona, non ci si pone poi il problema di farlo “meglio” semplicemente si adempie allo scopo e  finita li. La board vi garantisco che funziona.

Inoltre, considerate questo un lavoro che ho prodotto senza avere chissà quali basi di elettronica quindi consideratela sempre una “beta” e se avete consigli per migliorare, non aspetto altro. Lo scopo di tutto questo è darvi uno spunto, non fare il figo quindi, il progetto è di tutta la ormai numerosa comunità che segue questo blog.

COME STAMPARE E PREPARARE IL PCB

Il PCB l’ho creato per la stampa tramite bromografo. Si prende un foglio “lucido” e una stampante laser. Si stampa tenendo bene in mente che dovrà essere stampato a dimensione originale (alcune versioni di Adobe propongonodi default una stampa a pieno foglio).

A quel punto si prepara, come detto in precedenza, il materiale “chimico”, ricordandoci che

a) la soda caustica va versata piu o meno in queste dosi: un cucchiaio da minestra in 0.75 lt di acqua – e si deve far sciogliere bene

b) tenersi sempre una vaschetta d’acqua di rubinetto per il risciacquo

c) scaldare il cloruro ferrico a bagnomaria se si lavora in ambienti molto freddi.

Nota: la stampa va messa sul bromografo con la parte in cui è depositato il toner voltata verso l’alto (ergo, verso la superficie della piastra presensibilizzata che andrà incisa)

Ricordatevi poi di far scaldare un pò i neon del bromografo prima di iniziare la procedura, questo vi eviterà grane dovute allo sfarfallio dei neon a freddo.

Il PCB creato, una volta sciolto il rame in eccesso son il cloruro ferrico, andrà poi forato. Per forarlo

Vediamo ora nel dettaglio le varie parti del PCB, con una immagine che vi servirà da specchietto per installare correttamente tutti i componenti:

 

Nota: le due piazzole con scritto PWM vanno collegate insieme da un ponticello.

E per finire la lista delle corrispondenze tra sigle e componenti

[pdf-embedder url=”https://www.osservatorio-hypatia.it/wp-content/uploads/2017/02/Fritzing-Bill-of-Materials-3.pdf” title=”Fritzing Bill of Materials”]

 

Bene, fatto questo il tutorial è quasi finito. E’ probabile che in futuro ci sia un intervento da parte del mio carissimo amico Michele per parlarci del metodo di trasmissione del freddo che ha utilizzato per la sua Reflex.

Se volete scaricare il materiale in download, ho preparato una cartella con dentro tutto il necessario.

SCARICA CARTELLA COMPLETA

Per quel che riguarda ciò che è di mia competenza, invece, scriverò a breve un’appendice a questo tutorial proprio per osservare la creazione della board insieme, corredata di documentazione fotografica. A presto!

Pronti per lo sketch?

Arrivati a questo punto, dal momento che abbiamo tutta la circuiteria impostata, iniziamo a mettere mano al codice.

Non spiegherò come collegare arduino al pc, installare librerie etc.etc., tutte cose che le trovate in giro nel net e fanno parte dell’ABC di questo dispostivo.

Partiamo dalle Librerie: le librerie che ci servono sono 3:

  • Quella dello Schermo LCD 12c che potete scaricare a  questo LINK
  • Quella del Termistore NTC che potete scaricare a questo LINK

Scaricate ed installate queste librerie possiamo iniziare, richiamando tutte le librerie che ci necessitano

LA LOGICA CON CUI HO CREATO IL FIRMWARE

Il firmware è creato in questo modo, lo spiego testualmente ma poi troverete ulteriori righe di testo all’interno del codice.

Partiamo dallo stato iniziale. Si accende il dispositivo, e viene immediatamente rilevata la temperatura. Inquesta fase ci si trova in modalità Manual (quindi “Manual” scritto sull’LCD e LED spento), con la potenza erogata pari a 0% Questo si rende necessario per evitare di accendere e far schizzare la peltier a palla.

Bene, la peltier viene gestita in PWM tramite il comando MAP che definisce una rimappatura dei valori.  Il PWM consente valori da 0 a 255, mentre le percentuali vanno da 0 a 99. Col comando MAP si riesce a rimappare proporzionalmente i due valori, in moco che se, esempio, io inserisco 10% di utilizzo, il Pin3 scrive un valore pari a 25, e via di seguito

I pulsanti invece vengono gestiti con un contatore che scrive un valore temporaneo quando viene letto un cambio di stato sui pin a cui sono collegati. In questo modo si va a creare un contatore che permette di integrare o diminuire i valori (esempio Settare la temperatura o la potenza erogata), aumentando o diminuendo ad ogni pressione il valore memorizzato nel contatore. Questa routine avviene per tutti e tre i bottoni, dove i pulsanti UP & DOWN aumentano o diminuiscono i valori di Temperatura (se AutoModo ON) o potenza (se AutomodoOFF), mentre il terzo pulsante chiamato AUTOMODO consente di utilizzare la proprietà dello Switch Case.

Infatti proprio tramite Switch CAse ho creato due blocchi di istruzioni differenti, dove :

 CASO ZERO (Manual Mode):

  1. prevede la lettura della temperatura ma non ha influenza sul funzioamento,
  2. scrive su LCD “Manual” 
  3. pulsanti vanno ad integrare o diminuire la potenza erogata per step di 25%

CASO UNO (AutoMode)

  1. Prevede la lettura della temperatura e ne fa una comparazione con la variabile Set Temp impostata
  2. Scrive su LCD “Auto”
  3. I pulsanti vanno ad integrare o diminuire la temperatura settata in un range da +25 a -20 °C
  4. Vengono effettuate operazioni condizionali dal risultato della differenza tra temperatura settata e temperatura letta. In questo modo, esempio se io setto -10°C e la temperatura letta è 5°C, la peltier lavorerà al massimo (99%). A mano a mano che la temperatura letta si avvicinerà alla tempreatura settata (supponiamo letti -9, impostati -10) allora inizierà a scendere la potenza erogata fino a stabilizzare, dopo una decina di minuti, la temperatura.

 

Ok, trovavo opportuna questa spiegazione. Ecco il codice, completo di righe di commento. A margine, troverete il file .ino da scaricare per provare il vostro controller. Fatto questo, inizieremo a costruirne uno insieme passo dopo passo.

// carico le librerie necessarie
#include <LiquidCrystal_I2C.h>

#include <LiquidCrystal_I2C.h>
#include <Thermistor.h>
 #include <Wire.h>
LiquidCrystal_I2C lcd(0x27,16,2); 

/* ---------------------------------MYKOOLER
Un progetto di Michele Lavino
Written by Fabio Mortari

Inizio spiegando come dovrebbe girare.
 *  Prima di tutto, abbiamo lo stato iniziale del programma
 *  dove
 *  a) la peltier ? a 0
 *  b) la funzione MODE ? su MANUAL
 *  dopodich? se proseguo su MANUAL la peltier si attiver? solo 
 *  ed esclusivamente cliccando su UP.
 *  Diversamente, posso andare su AUTO, e il software entrer? in un altro
 *  caso - case switch.
 *  Quindi la struttura dovrebbe essere questa: due blocchi Switch
 *  case 1 Manual e case 2 Auto, dove MANUAL contiene tutte le informazioni
 *  inerenti ai ,)bottoni, mentre il 2 Auto contiene tutte le istruzioni per l'automatismo
 *  Questo porta ovviamente a dover dichiarare prima tutte le variabili
 *  che verranno dichiarate Inoltre bisogna impostare i pin
 *  Per far questo, i pin che metterei sono i seguenti
 *  a) pin 3 - pilotaggio della peltier via Mosfet
 *  b) pin 4 - Pulsante UP
 *  c) pin 5 - pulsante Down
 *  d) pin 6 - Led di stato Manual/Auto 
 *  e) pin Analog (0) - sensore di temperatura
 *  Dopo aver dichiarato queste, ho bisogno di andare a impostare le variabili di stato. Essendo che la temperatura ? la prima cosa che vogliamo leggere
 *  inizio col definire la variabile di temperatura */
Thermistor senstemp(0);
//int senstemp = A0; // questo ? la dichiaraione del pin associato a Senstemp che andr? associata ad analogread(0), cio? il risultato della lettura si chiamer? val_Adc
float temperatura = 0; // questo ? il "contenitore" del risoltato di conversione tra Volt e Temperatura
 /* ok. Fatto questo inizio a definire anche dove andremo a leggere o scrivere i valori sui pin, quindi assegniamo un nome ai pin */

 const int plt = 3;
 float difftemp = 0; //difftemp è la differenza tra temperatura e settemp e mi serve per il ciclo while dell'automode

/* dichiaro le variabili e le costanti per i bottoni up e down */

 const int buttonUp = 5;
 const int buttonDown = 4;
 const int AutoMode = 6; //nel pin 6 colleghiamo il pulsante di Auto ON e OFF
 const int AutoLed = 7; // questo ? il led Auto OnOff


 /* bene. Abbiamo quindi definito il pin della peltier, i pin dei bottoni up e down, il pin dell'pulsante AuotMode e infine il pin dell'Autoled
 Adesso ? il momento di iniziare a definire alcune variabili di inizio. Abbiamo detto che la peltier deve essere spenta quindi iniziamo da quella*/
 int power = 0; //definisco a quanto deve stare all'avvio il valore di power. Occhio perch? ancora non gli ho assegnato in realt? il funzionamento...lo faremo in seguito
 int peltier_level = map(power, 0, 99, 0, 255); //peltier level ? la variabile che gestir? il mosfet da 0 a 255. Questo perch? in pratica il pwm ? a 8 bit che sono 255 livelli
 /* ora, fatto questo andiamo a inserire le variabili al pulsante AUTOMODE Questo pulsante se azionato in case 1, accende il led e inizia le istruzioni di AUTO, diversamente spegne il Led e inizia le istruzioni di MANUAL 
    */
    int StatoAutoMode = 0; //in questo modo, l'automode va su manual all'avvio. Quindi ricordiamoci che Automode = 0 va in manual
    int LastStatoAutoMode = 0; //ultimo stato del pulsante, appunto non premuto al momento dell'avvio quindi restituisce 0
    int CountAutoMode = 0; //conteggio del bottone
    
/* fatto questo vado a definire anche le variabili di conteggio per i pulsanti Up & Down, perch? poi ci torneranno utili  */
int countUpDown = 0; //il conteggiatore UP E DOWN
int lastcountUpDown = 0; //riporter? l'ultimo stato di up e down
int statoUp = 0; // stato del pulsante UP, inizialmente non premuto
int statoDown = 0; //stato del pulsante DOWN, inizialmente non premuto


/* ************ DA QUI INIZIANO LE VARIABILI PER LA GESTIONE DEL VALORE DI RIFERIMENTO - script byhttp://forum.arduino.cc/index.php?topic=215295.0!! */
byte button1=0;
byte oldbutton1=0;
byte button2=0;
byte oldbutton2=0;
int settemp = 20;
byte button3=0;
byte oldbutton3=0;
byte button4=0;
byte oldbutton4=0;
int setpower = 0;
int convertipotenza;


/* ****** FINE DELLE VARIABILI PER LE IMPOSTAZIONI DELLE TEMPERATURE DI RIFERIMENTO *****/

/* andiamo adesso a sviluppare il setup, cio? a definire i pin entrata e uscita, avviare la lettura seriale etc. */
void setup() {
lcd.init();

lcd.backlight();
lcd.setCursor(4,0);
  lcd.print("Mykooler");

  lcd.setCursor(4,1);
  lcd.print("Vers.1.2");
  
  delay (2000);
  lcd.clear();

  lcd.print("Proj:M.Lavino");
  lcd.setCursor(0,1);
  lcd.print("Dev:F.Mortari");
  
  delay (2000);
  lcd.clear();
Serial.begin(9600);
  /* SETUP TEMPERATURA */
  temperatura = senstemp.getTemp(); //diciamo che Val_Adc dovr? ospitare i dati letti dal pin analogico (0) per la temp.
  /* SETUP AUTOMODE */
  pinMode (AutoMode, INPUT); //stabilitamo che il pin del pulsante automoed deve attendersi un segnale di input
  pinMode (AutoLed, OUTPUT); //stabiliamo che il pin del pulsante autoled deve fornire corrente per il led
  /* SETUP PULSANTI UP E DOWN */
  pinMode (buttonUp, INPUT); //stabiliamo che il pin del pulsante UP ? un input e quindi arduino dovr? attendersi un segnale in entrata
  pinMode (buttonDown, INPUT); //stabiliamo che il pin del pulsante DDOWN ? un input e quindi arduino dovr? attendersi un segnale in entrata
  /* SETUP PARTE PELTIER */
  pinMode (plt, OUTPUT); // siccome la peltier viene comandata da un mosfet che varia il suo stato in base al segnale in entrata, il pin peltier dovr? fornire corrente.
  
  }
/* adesso andiamo nei blocchi di istruzioni. La prima cosa che vorrei fare ? attendere che qualcuno pigi sul pulsante AUOTMODE e creare i CASE con i blocchi di codice. */

void loop(){
  // verifico se Myke ha premuto il pulsante
  if (digitalRead(AutoMode))
  {delay(50); //circuito di attesa di 15ms dopodich? vado a modificare lo stato del bottone autoMode che avevo gi? dichiarato
  if (LastStatoAutoMode == 0) LastStatoAutoMode = 1; //se l'ultimo stato bottone ? = 0, lo fai diventare 1)
  else LastStatoAutoMode = 0;
  if ( CountAutoMode <= 0 ) CountAutoMode = CountAutoMode +1;
  else CountAutoMode = 0;}
  
/* inizio a dichiarare i due casi: automode On e automode Off */
switch (CountAutoMode)

		/* NOTA...DA QUI INIZIA IL CASE 1 - DEFINITO AUTOMODE) */
	{/*default:
		digitalWrite (AutoLed, LOW);
		lcd.print("MODE CHOOSE");
                delay(1000);
                lcd.clear();
		break;*/
	case 1:
		digitalWrite (AutoLed, HIGH);
			/* DA qui iniziano le variabili per i pulsanti up e down rispettivamente ai pin 4 e 5 */
		delay (50);
/* inizio codice di aumento della variabile settemp */
// ciclo di controllo del pulsante che incrementa il valore settemp
		button1 = digitalRead(buttonUp);
		  if ((button1 != oldbutton1) && (oldbutton1 == LOW)) //il pulsante e' appena stato premuto
		  {
		    delay(50);		//debounce
		   // oldbutton1 = button1; 	//porta oldbutton1 = button1 (previene cicli ripetitivi)
		    settemp++;
		  if (settemp > 50) {settemp = 0;}
					}
				if ((button1 != oldbutton1) && (oldbutton1 == HIGH)) 	//il pulsante e' appena stato rilasciato
	{
		delay(50);		//debounce, non indispensabile se e' presente una rete RC
		oldbutton1 = button1; 	//porta oldbutton1 = button1 (previene cicli ripetitivi)
		
	}
//ciclo di controllo del pulsante che decrementa
		button2 = digitalRead(buttonDown); //legge lo stato del pulsante 2
			if ((button2 != oldbutton2) && (oldbutton2 == LOW)) // il pulsante e' appena stato premuto
			{
			delay(50);		//debounce
		        //oldbutton2 = button2; 	//porta oldbutton2 = button2 (previene cicli ripetitivi)
		        settemp--;
			if (settemp <-25) {settemp = 0;}
			}
	if ((button2 != oldbutton2) && (oldbutton2 == HIGH))	//il pulsante e' appena stato rilasciato
	{
		delay(50);		//debounce
		oldbutton2 = button2; 	//porta oldbutton2 = button2 (previene cicli ripetitivi)
		}	
	
/* inizio codice peltier */

{
//if(Serial.available() > 0)
temperatura = senstemp.getTemp();
difftemp = temperatura - settemp;

//option = Serial.read();
if (difftemp > 0.7)
power = 99 ;

else if ((difftemp < 0.69) && (difftemp >0.3))
power = 75;

else if ((difftemp <0.29) && (difftemp >0))
power = 50;

else if ((difftemp <0) && (difftemp >-1))
power = 15;

else if (difftemp <-1) 
power = 0;



if(power > 99) power = 99;
if(power < 0) power = 0;

peltier_level = map(power, 0, 99, 0, 255);
}

 Serial.print("Power=");
Serial.print(power);
Serial.print(" Temperatura=");
Serial.print(temperatura);
Serial.print("difftemp");
Serial.println (difftemp);
lcd.print ("T=:");
lcd.print (temperatura);
lcd.print (" C");
lcd.setCursor(0,1);
  lcd.print("Pwr:");
  lcd.print (power);
  lcd.print (" %");
  lcd.setCursor(12,0);
  lcd.print ("Auto");
   lcd.setCursor(9,1);
   lcd.print ("Set.T");
   lcd.setCursor(13,1);
   lcd.print(settemp);
   analogWrite(plt, peltier_level);
   delay(200);
   lcd.clear();
   
break;

/* NOTA...DA QUI INIZIA IL CASE 1 - DEFINITO MANUAL) */
default :
temperatura = senstemp.getTemp();
digitalWrite (AutoLed, LOW);
//lcd.print ("MANUAL MODE"); 

{
//if(Serial.available() > 0)

/* *** DA QUI INCOMINCIANO LE CONDIZIONI PER PWR MANUAL *** */

	delay (50);
/* inizio codice di aumento della variabile settemp */
// ciclo di controllo del pulsante che incrementa il valore settemp
		button3 = digitalRead(buttonUp);
		  if ((button3 != oldbutton3) && (oldbutton3 == LOW)) //il pulsante e' appena stato premuto
		  {
		    delay(50);		//debounce
		    oldbutton3 = button3; 	//porta oldbutton1 = button1 (previene cicli ripetitivi)
		    setpower++;
		  if (setpower > 4) {setpower = 4;}
					}
				if ((button3 != oldbutton3) && (oldbutton3 == HIGH)) 	//il pulsante e' appena stato rilasciato
	{
		delay(50);		//debounce, non indispensabile se e' presente una rete RC
		oldbutton3 = button3; 	//porta oldbutton1 = button1 (previene cicli ripetitivi)
		
	}
//ciclo di controllo del pulsante che decrementa
		button4 = digitalRead(buttonDown); //legge lo stato del pulsante 2
			if ((button4 != oldbutton4) && (oldbutton4 == LOW)) // il pulsante e' appena stato premuto
			{
			delay(50);		//debounce
		        oldbutton4 = button4; 	//porta oldbutton2 = button2 (previene cicli ripetitivi)
		        setpower--;
			if (setpower <0) {setpower = 0;}
			}
	if ((button4 != oldbutton4) && (oldbutton4 == HIGH))	//il pulsante e' appena stato rilasciato
	{
		delay(50);		//debounce
		oldbutton4 = button4; 	//porta oldbutton2 = button2 (previene cicli ripetitivi)
		}	
	
/* inizio codice peltier */
if (setpower == (0))
power = 0;

else if (setpower == (1))
power = 25;
else if (setpower == (2))
power = 50;
if (setpower == 3)
power = 75;
if (setpower == 4)
power = 99;

//power = setpower;


if(power > 99) power = 99;
if(power < 0) power = 0;

peltier_level = map(power, 0, 99, 0, 255);
}
lcd.setCursor(0,0);
lcd.print ("Manual");
lcd.setCursor(9,0);
lcd.print ("T:");
lcd.print (temperatura);
lcd.setCursor(0,1);
  lcd.print("Pwr:");
  lcd.print (power);
  lcd.print ("%");
  lcd.setCursor(9,1);
  
   lcd.print ("SetP=");
	lcd.print (setpower);
Serial.print(setpower);
Serial.print("-");
Serial.println(power);

  
analogWrite(plt, peltier_level); //Write this new value out to the port
delay(200);
lcd.clear();


break;
/*

lcd.print (temperatura);
lcd.print ("C");
lcd.setCursor(0,1);
  lcd.print("Pwr:");
  lcd.print (power);
  lcd.print (" %");
  lcd.setCursor(10,0);
  lcd.print ("Manual");
   lcd.setCursor(12,1);
   lcd.print ("Set.P");
Serial.print("Automode");
Serial.println (": Automode Off");

/* NOTA...DA QUI INIZIA IL CASE 1 - DEFINITO MANUAL) */


}

  
  
  
  
  

}

 

LINK DOWNLOAD FIRMWARE ARDUINO

 

Pronti a stampare il PCB che rilascerò al prossimo intervento? Ne costruiremo uno insieme, per cui dotatevi del seguente materiale:

  1. tester
  2. bromografo, cloruro ferrico, soda caustica
  3. trapano con punta da 0,8mm
  4. saldatore, stagno, succhiastagno
  5. cavetteria varia
  6. buona pazienza.

Ebbene si, prima di cimentarci nella costruzione vera e propria ho pensato che fosse propedeutico farlo “a pezzi”, in modo da poterlo riportare su una breadboard e costruirselo piano piano senza dover saldare o perdere componenti.

Se non avete BreadBoard potete acquistarla qua LINK e vi converrà anche comprarvi un kit di cavetti dupont e ponticelli. Vi conviene prenderli sia Femmina Femmina – LINK che Maschio Maschio – Link

Andiamo a iniziare. Ho scritto tutto in un unico lungo articolo, onde evitare di spezzettare troppo il discorso. In questo modo vi basterà consultare questa pagina per poter creare la vostra base sperimentale e avere tutto l’esploso del progetto in unica soluzione…puff puff..pant pant.

ALIMENTAZIONE

Il circuito è progettato per essere alimentato con una comune 12V da una batteria d’auto, essendo considerato uno strumento “da campo”

Ho previsto un led per “segnalarci” che il circuito è alimentato, al cui “capo” vi è installata una resistenza da 470 ohm. Inoltre è presente un interruttore ON OFF, come si vede dal circuito che vi allego e che potete già iniziare a riprodurre su breadboard di progettazione

Molto semplicemente, abbiamo in entrata direttamente da Batteria, la 12V. Il collegamento prevede un interruttore a una via. Dopodichè partono tre pieste

a) una per alimentare il led a cui va collegata una resistenza da 470 Ohm che si accenderà quando si agisce sull’interruttore di ON

B) una pista andrà ad alimentare Arduino nel pin VIN.

c) una terza pista andrà invece ad alimentare il circuito da cui otterremo la 5V come nella prossima immagine.

Fatelo, usate un tester per verificare le tensioni in circolazione,  provatelo un attimo e proseguiamo.

CIRCUITO 5V

Abbiamo detto all’inizio di questa serie di articoli che il dispositivo può alimentare anche apparecchiature a 5V, purchè non superino 1,5 ampere giusto? Bene…avevo due strade per fornire la 5V. La prima era prenderla direttamente da arduino e togliermi il problema di creare il circuito. La seconda invece era ottenerla partendo dai 12V e trasformandola. Ho scelto la seconda strada, piu complicata, per poter garantire almeno 1,5 ampere di assorbimento, in quanto arduino non raggiunge tale corrente. Certo, 1,5 ampere non sono un’enormità, ma nemmeno pochi se pensiamo che potremmo alimentarci un caricabatterie USB per cellulari. Se comunque vogliamo avere ancora piu ampere, basta prendere altre versioni del LM7805 che arrivano fino a 2 ampere e qualcosina in piu (vi rimando alla ricerca in rete). E’ raccomandabile inserire un dissipatore, da acquistare insieme all’integrato, che trovate nelle pagine che vi ho segnalato nell’articolo “La lista della spesa”.

Bene, iniziamo. Questo è il circuito:

Vediamolo in dettaglio…presa la 12V, il primo componente che incontriamo è un condensatore elettrolitico da 10uf. Questi condensatori hanno una polarità quindi collegateli nel verso giusto (dovete osservare il piede piu lungo che sarebbe il + oppure la banda laterale che indica il )

La linea del positivo prosegue il suo cammino e trova il cercamico 104 (questi non hanno polarità) e arriva al primo piedino dell LM7805.

Collegare l’integrato è semplice:

  1. Il primo piedino va collegato al positivo +12v
  2. il secondo piedino va collegato al –
  3. dal terzo piedino avremo la +5v

Un uscita dal terzo piedino si replicherà la configurazione dei condensatori come nel passaggio precedente, dove l’elettrolitico stavolta sarà da 1uf e non 10uf. Prelevate dai capi la +5v e collegateci un’uscita (può essere USB o un plug o quello che volete voi)

Questa circuiteria ci fornirà anche alimentazione per lo schermo LCD, per le pulsantiere, per il sensore di temperatura. In questo modo non stresseremo  arduino.

Usate un tester per osservare che venga fornita correttamente la 5V.

LO SCHERMO LCD

Come abbiamo visto nella lista della spesa, lo schermo LCD previsto è quello Seriale, quindi con 4 pin di collegamento. La configurazione è semplicissima, basta osservare la parte dietro dell’adattatore seriale posto sul LCD e si intuisce già:

Dove

  1. GND  è Ground
  2. VCC è +5V (e la prendiamo dal circuito che abbiamo creato)
  3. SDA va al pin A4
  4. SCL va al pin A5

Nota: anche se posso prelevare la +5v dal circuito, qualsiasi componente deve essere collegato al GND DI ARDUINO altrimenti ovviamente non funziona

Vediamolo in schema:

Ora colleghiamo il sensore NTC di Temperatura

IL SENSORE DI TEMPERATURA NTC

Il sensore di temperatura NTC o “Termistore” è un componente che varia la sua resistenza al variare della temperatura. Ve ne sono di diverse forme e modelli ma uno degli aspetti piu interssanti è che ne vengono prodotti di ogni forma e dimensione e questo fa al caso nostro perchè nella versione FLAT per PC è veramente sottile e si può inserire ovunque.

Ve ne sono di due tipi:

  1. Tipo “A” che all’aumentare della temperatura aumenta la resistenza
  2. Tipo “B” che all’aumentare della temperatura diminuisce la resistEnza

A noi servono quelli del tipo A, che sono quelli comuni. Normalmente se sono del tipo “B” viene indicato nella descrizione del prodotto. Comunque sia provatelo con un tester, è la cosa piu semplice.

La logica di funzionamento è molto semplice, si tratta di effettuare una lettura della tensione su un pin analogico e rapportare poi questa alla temperatura, lo vedremo nello schetch. Ricordatevi sempre che la +5V possiamo prenderla dal circuito che abbiamo creato, mentre la GND va collegata ad Arduino con una resistenza da 10Kohm. Il pin analogico utilizzato per la letttura è A0

PWM E ALIMENTAZIONE PELTIER

Arriviamo ora al punto piu complesso del sistema, o meglio quello che mi ha dato piu problemi.

Logica di funzionamento:  La faccio breve: applicando una tensione sul Gate di un transistor N-Enhancement, posso permettere il passaggio di corrente tra Gate e Source. Trovate un bell’approfondimento a questo LINK cosi mi evito di scrivere mille cose ed evito anche di affrontare argomenti di cui non sono padrone al 100% per poterli correttamente spiegare (il sito è proprietario anche dell’immagine inserita qua sopra).

L’importante è che questo componente sia un Logic Level. Io sono riuscito a trovare il componente dentro un vecchio alimentatore per PC raccattato d’urgenza in un negozio a Forte dei Marmi un sabato pomeriggio, quando purtroppo s’è bruciato il componente che avevo inserito in precedenza che era sbagliato. Ma ve ne sono altri, oltre a quello da me citato nella “lista della spesa” che vanno bene..sono indicati sempre al link appena citato

In parole povere, applicando un’onda quadra al gate del transistor, i Source e il Drain si chiuderanno lasciando passare corrente. Se questo avviene ad una frequenza di 488hz…cito..”e la commutazione è piuttosto frequente (qualche KHz) a causa della presenza di un induttore la corrente media è sostanzialmente costante e proporzionale al duty cycle del segnale sulla base del MOS.” Quindi tradotto in soldoni, posso ottenere un passaggio di tensione in scala da 0 a 12V a seconda di quanto è frequente il mio Duty Cicle.

Du Balle… Vediamo.

Ricordate che va inserita una resistenza da 10K0hm sul Ground (sempre collegato ad arduino), la 12V è presa direttamente dalla batteria e che il pin utilizzato per lanciare onde spaziali pwm è il pin D3.

E’ opportuno anche prelevare la 12V per la ventola che dovrà sempre essere in funzione e non gestita via PWM, in modo da poter garantire la corretta dissipazione del calore generato dalla superficie calda della cella di peltier. Questa verrà collegata insieme alla peltier tramite il cavo che costruiremo su porta COM, come spiegato nella “Lista della Spesa” alla apposita voce. Ovviamente la ventola dovrà essere 12V. Si veda l’immagine successiva per osservare la presenza della voce “ventola”. Nello schema è rappresentata da un PLUG perchè non ho trovato il corrispettivo simbolo.

 

I BOTTONI E IL LED DI STATO

Arriviamo infine alla conclusione di questa fase di progettazione su breadboard con questo semplice passaggio. Avremo 3 bottoni con queste funzioni

  • Pulsante di UP: il suo funzionamento è legato al pulsante di Automode. Se siamo n modalità manuale, questo pulsante aumenta la potenza erogata, su base percentuale. Se invece siamo in modalità Automatica, questo pulsante aumenta la temperatura selezionata
  • Pulsante di DOWN: il suo funzionamento è legato al pulsante di Automode. Se siamo n modalità manuale, questo pulsante diminuisce la potenza erogata, su base percentuale. Se invece siamo in modalità Automatica, questo pulsante diminuisce la temperatura selezionata
  • Pulsante di AUTOMODE ON OFF: stabilisce il funzionamento dei pulsanti di cui sopra.
  • LED DI STATO: quando siamo in modalità Automode ON si accende, quando siamo in modalità Auotmode OFF, si spegne.

Il collegamento dei bottoni è il classico che si vede i ogni schema di Arduino….abbiamo la 5V su un capo del pulsante, GND di arduino sull’altro capo con resistenza da 10 K0hm, e sempre sullo stesso viene collegato il PIN che dovrà effettuare la lettura.

Per il led valgono le stesse condizioni, salvo che la 5V non è presa esternamente ma viene fornita dal PIN di Arduino.

I pin utilizzati sono

  • D4 = UP
  • D5 = DOWN
  • D6 = AUTOMODE
  • D7 = LED

 

 

Nota: se volete dotare il dispositivo di uscite ausiliarie 12V basta stendere due cavi a partire dall’interruttore e collegare un plug.

Direi che ci siamo. Ora non vi rimane che stendere questo circuito, nel prossimo articolo  iniziamo a vederne lo schetck da inserire.

Buon Lavoro e chiedete se non è chiaro o segnalate se trovate incongruenze.

 

Bene. Come anticipato nella parte 1, adesso diamo un’occhio alla lista della spesa.

Per replicare il progetto “Controller per Peltier” ci serve il seguente materiale:

N.1 Switch ON/OFF da pannello a una via

Acquisto

N.2 Led (colore a piacere)

 

N. 1 Arduino Nano

Scelgo la versione NANO per questioni sia di costi che di comodità

Sono molto piccoli, costano pochissimo (si trovano a 2 euro su ebay o poco piu ed hanno

lo stesso funzionamento e piedinatura di quelli originali)

Acquisto

 

N.1 LM 7805

Questo integrato serve per fornire la 5V in uscita  e volendo anche per alimentare Arduino (io alla fine lo alimento con la 12V che va bene uguale) o per alimentare lo schermo LCD. E’ utile, nel caso si voglia inserire ulteriori opzioni sulle ventole di raffreddamento (alcune girano a 5V) oppure se si volesse collegare un hub USB considerando però che LM7805 di cui fornisco link NON FORNISCE piu di 1,5 Ampere. SE ne trovano anche piu performanti, l’importante è che sia sempre LM7805.

Acquisto

N.2 Condensatori Ceramici 104
N.2 Condensatori Elettrolitici da 1 uf e 10 uf
N.1 schermo LCD con interfaccia seriale

L’interfaccia seriale di un LCD è un dispositivo che permette di ricevere segnali da un canale Bus. Questo significa ad esempio che anzichè utilizzare tutti i piedini dell’LCD e connetterli ad Arduino con notevole dispendio di pin, l’LCD esce con 4 soli pin  (+,-,SDA,SCL).  Sda e SCL sono i canali di comunicazione e vanno impostati OBBLIGATORIAMENTE sui pin A4 e A5 di Arduino, gli unici in grado di trasmettere come Bus. Quindi tolti il + e il -, i pin che si utilizzano con questa configurazione seriale sono solo 2. Mica male eh?

Acquisto

N.3 Pulsanti da pannello, due neri e uno rosso

Questi sono ovviamente i pulsanti per l’Automode e l’inserimento dei valori di temperatura o Potenza da erogare. E’ importante che siano da pannello perchè vanno inseriti nel coperchio.

Acquisto

N.1 Sensore NTC da 10Kohm FLAT.

Si tratta di sensori NTC comunemente usati per monitorare le temperature dei processori. E’ stato scelto questo in quanto molto molto sottili e particolarmente sensibili. Il costo è accessibile, se ne trovano a partire da 2 euro (cercati pochi giorni fa). Questi sensori è possibile posizionarli praticamente ovunque soprattutto inserirli in fessure, plastiche, tra due superfici adiacenti etc.etc.

Acquisto

N.1 Mosfet Logico N-Channel sigla CEP603/AL

Questo è uno dei componenti piu importanti perchè è da qui che verrà data continuità al circuito da 12V di alimentazione alla peltier tramite l’utilizzo in modalità ON/OFF del transistor che avviene per impulsi di 5V generati dai pin di Arduino. In pratica, il mosfet rilevando i 5V dal pin, chiuderà il circuito e lascerà passare la 12V alla peltier. Il segnale dal pin di arduino però non arriverà in maniera continuativa, ma ad impulsi in onda quadra (ad una frequenza  intorno ai 488 Hz ) pertanto causerà rapide chiusure del circuito limitando cosi la reale corrente erogata. Vedremo meglio poi..l’importante è che il transistor sia logico.

NOTA: vanno benissimo anche quelli indicati al seguente LINK di cui consiglio la lettura approfondita! Quello che ho inserito qua l’ho trovato su un vecchio alimentatore da PC e non è detto che sia di facile reperibilità

Acquisto

N.1 Conneettore Femmina da pannello 3.5 mm(quelli per cuffie) + il Maschio

Questi ci serviranno per connettere il sensore di temperatura NTC che quindi sarà scollegabile dal controller.

Acquisto

N.1 Porta Com completa (Maschio e Femmina da pannello)

Ho scelto questa soluzione per alimentare la ventola e la peltier. In questo modo viene del tutto evitata la possibiltà di invertire cavi (se saldato con la piedinatura giusta). La Com si può isnerire solo in un verso, e quindi non sarà possibile invertire i collegamenti tra piu  e meno. In buona sostanza si tratterà di costruire poi un “polipo” che culmini in una porta com, ma con un polipo solo si alimenta tutto il sistema di raffreddamento.

Acquisto

N.2 Connettori a vite da PCB a due Vie

Soluzione opzionale e rapida per connettere i cavi di alimentazione durante le fasi di test. Io mi ci trovo bene e li inserisco sempre, ma se volete potete evitarvi questa spesa (circa 0.5 a connettore) e saldare i cavi direttamente sulla board.

Acquisto

N.3 Connettori da 2.5 mm da pannello

Anche questi possono essere opzionali, dipende da voi come volete collegare le alimentazioni ausiliarie in uscita e l’alimentazione in entrata. Io uso questi perchè sono quelli che vanno per la maggiore e si trovano su molti dispositivi (tipo Eq6, CCD, alimentatori tramite accendisigari etc.etc.)

Acquisto

N.4 Stripline Femmina da PCB

Meglio usarle. In questo modo si può “zoccolare” arduino e rimuoverlo molto semplicemente qualora si voglia rifare la scheda da zero a causa di errori o integrazioni nella circuiteria. Io sono solito operare in questo modo…

Acquisto

N.1 Basetta presensibilizzata da 10×16

Questa dipende poi dal metodo che utilizzate per stampare i circuiti. SE usate il BROMOGRAFO allora ci vogliono quelle presensibilizzate. Sennò va bene qualsiasi piastra ramata o preforata o quel che volete….

Acquisto

N.1 Contenitore da 15x20x6 o giu di li

Prendete le misure…non è che devo dirvi tutto io eh.

N.5 resistenze dei seguenti valori:

N.3 da 10 Kohm per i pin dei pulsanti

N.1 da 10 Kohm per il pin del sensore NTC

N.1 da 10 Kohm per il pin del PWM

N.1 da 470 ohm per il led di alimentazione

N.1 da 100ohm per il led indicatore di Automode

Ovviamente a tutto questo vanno aggiunti: la peltier (per questo progetto, obbligatoria a 12V), il dissipatore, la ventola.

Bene.

Come materiale “di consumo” vi servirà poi guaina termorestringente, fili vari da 1mm di diametro, stagno, saldatore, cloruro ferrico per sciogliere la basetta e tutto quanto necessario per lavorare comodi. Detto questo, con tutta quella roba, il progetto “si fa”.

Tutto quello indicato qua è normalmente e facilmente reperibile online, inutile dire che il consiglio è quello di fare un ordine unico da un fornitore di elettronica in modo da limitare le spese ma a conti fatti con meno di 40 euro dovreste starci comodamente dentro.

Alla prossima vediamo di iniziare a muovere i primi passi nel progetto con la spiegazione del PCB, mentre voi penserete a procurarvi il materiale.

A presto!

 

 

Buttiamola lì, con una Peltier 😆 

Nell’estate del 2016 insieme ad un mio grande amico abbiamo affrontato insieme un progetto homemade per raffreddare una reflex. Lui ha gestito tutta la parte meccanica di trasmissione del freddo (e non parlerò di questo nel tutorial perchè fa parte di un contesto che non ho dovutamente approfondito, ma lascio a lui lo spazio nel caso abbia intenzione di scrivere) mentre io ho gestito la parte elettronica.

Ne è scaturito un progetto interessante, niente di particolarmente complesso, che voglio rendere libero in tutte le sue parti. Il perchè è presto detto…io non essendo un esperto di questa materia ma un semplice smanettone, ritengo che mettere online un progetto significhi anche dare la possibilità ad altri di completarlo, migliorarlo, espanderlo, etc.etc. Motivo per il quale io non solo mi limiterò a spiegare l’insieme e vederne la costruzione nel dettaglio, ma fornirò anche i codici sorgenti del firmware che ho scritto, il PCB da stampare, i file originali creati con Fritzing (software di progettazione semplicissimo) e i datasheet di alcuni componenti in modo che chiunque possa provarlo a casa, costruirselo, migliorarlo.

Certo, se avete intenzione di migliorarlo o riuscite a trovare soluzioni piu efficaci, chiedo semplicemente di darmene comunicazione in modo da rendere disponibile ad altri il progressivo miglioramento rendendo cosi tutto questo un bel lavoro “di insieme”.

Rimane inteso che, anche se è odioso dirlo, dovete sapere ciò che fate e io non sono responsabile per qualsiasi danno derivante da errori nel progetto o incuria di costruzion eetc.etc. Insomma..fatelo con la testa e il cervello attivo.

Bene iniziamo.

OBIETTIVO  DEL PROGETTO

Il progetto che ho sviluppato permette di:

a) Fornire alimentazione alla Peltier

b) Termostatare una reflex

c) Porsi come controller per un CCD raffreddato  non termostatato (esempio, la Orion G3 che ha una peltier a delta T fisso e renderlo a delta T variabile e gestibile (con il quale è anche possibile farsi una libreria di dark!)

d) Fornire 12V esterna per utilizzi ausiliari di apparecchi elettronici da 12V (ad esempio il CCD che volete termostatare cosi con un solo apparecchio alimentate sia peltier che CCD)

e) Fornire 5V in esterna per utilizzi ausiliari di apparecchi elettronici da 5V (esempio, potete inserire una presa USB per ricaricarvi il cellulare) oppure alimentare un Hub USB

f) Consentire una doppia modalità di funzionamento:

  1. Manuale: permette di gestire manualmente la potenza da erogare alla peltier e sviluppato su base percentuale (10%, 20% etc.)
  2. Automatica: permette di impostare una temperatura voluta e controllare quindi la potenza erogata alla peltier modulandola in base al raggiungimento della stessa, per step

g) controllare, ovviamente, lo stato di funzionamento del sistema a colpo d’occhio, sia con indicatore LED per il tipo di modalità utilizzato, sia tramite uno schermo LCD che riporta i valori

h) Consentire un risparmio sulla batteria, che in questo modo non dovrà fornire costantemente la massima potenza alla peltier ma appunto modulare i consumi, diminuendoli nell’arco dell’intera sessione.

Finisco questa prima parte di spiegazione con un video esemplificativo, forse piu chiaro di mille parole

 

Pronti a Incominciare? Alla prossima con la lista della spesa!

 

 

GOOOOOOOD MORNING AMATEUR ASTRONOMERS! 😆 

Dunque dunque, è vero ho un pò abbandonato questo piccolo spazio di condivisione…periodo difficilotto, un pò di cambiamenti un pò di sfighe etc.etc. ma direi di essere tornato pronto a riaffrontare l’attività “redazionale” e quindi partiamo pure.

Prima di tutto vorrei salutare con un abbraccio caloroso il mio amico Giantantonio Dolfin, è stato presente qua sul blog tempo addietro e mi ha scritto spesso in privato per avere mie notizie. Grazie Gianantonio! Inoltre vorrei ringraziare quelle persone che mi hanno incitato a tornare a scrivere su questa piattaforma che quindi torna ad essere “popolata” dall’Astrofilo Neofita per Eccellenza 😆

Allora, partiamo belli dritti che ci sono alcune novità….in questo periodo ne ho approfittato per iniziare a costruire piccoli progetti di elettronica. Niente di particolarmente complesso ma semplici gadget che possono essere di aiuto. Ho pensato cosi di rendere disponibili, via via che andrò avanti con le realizzazioni, tutto il materiale che creo.

Per seguire bene e rendere fruibile almeno per le sperimentazioni il materiale, però, si rende necessario mettersi in condizione di lavorare agevolmente, motivo per il quale riprendo questa fase spiegando cos’è il bromografo e perchè ne spiego la costruzione.

IL BROMOGRAFO

Per spiegare cos’è il bromografo non c’è bisogno di dilungarsi troppo, basta andare su Wikipedia e prendersi la definzione, che riporto.

Il bromografo è uno strumento utilizzato per la fotoincisione in fotografia, in serigrafia, nella stampa offset e in elettronica. Il suo nome deriva dall’uso che se ne faceva in fotografia, dove i negativi usati per la duplicazione erano realizzati in bromuro d’argento.

Il bromografo viene oggi utilizzato, specialmente in ambiti hobbistici, per la fotoincisione di circuiti stampati (PCB). Sostanzialmente simile al gemello usato in fotografia, questa variante utilizza solitamente delle lampade a radiazione ultravioletta per impressionare una basetta ramata appositamente presensibilizzata. La basetta ramata impressionata deve poi essere incisa in un bagno specifico (solitamente cloruro di ferro -FeCl3-), cioè trattata per eliminare il rame in eccesso.

Bene, riassumo. In buona sostanza se io compro delle basette presensibilizzate (se ne trovano, tranquilli..in tutti i negozi di elettronica oppure online) e utilizzo un bromografo a lampade ultraviolette, utilizzando un bagno di Soda Caustica e successivamente un bagno di Cloruro Ferrico, posso stamparmi un circuito come se fosse quasi un prodotto professionale. Tipo questo, che ho stampato recentemente:

LA TECNICA

La tecnica di stampa con bromografo è particolarmente semplice. In buona sostanza funziona cosi:

si preparino: una basetta presensibilizzata (ha una pellicola di copertura dalla luce verso la parte ramata),  una soluzione di acqua con soda caustica (circa un cucchiaio da minestra in 0.75 lt), si predisponga una bacinella con acqua del rubinetto, si predisponga un’ulteriore bacinella con del Cloruro Ferrico (si trova nei negozi di elettronica)

Fase a): si stampa uno schema PCB (circuito elettrico) su un foglio di acetato – il tipico “lucido” –  (meglio se con stampa laser e acetati prodotti per questo tipo di stampanti)

Fase b) Si adagia leggiadro e con fare artistico il foglio  sul bromografo, con il lato di stampa (riconoscibile dalla presenza di toner) verso l’alto (dove andrà appoggiata la  basetta).

Fase c) Si spoglia la basetta della sua pellicola protettiva (fatelo a luci spente, mi raccomando..è sensibile alla luce), si accende il bromografo per il tempo necessario (spiego poi come trovarlo).

Fase d) Fatto questo, si spegne il bromografo e con guanti da massaia in gomma si porta la basetta nelle terme di Soda Caustica. Occhio a quel che fate però eh…la si lascia a bagno, agitandola un pò, circa 40 secondi o il tempo necessario affinchè venga rimossa la patina di fotoresist

Fase e) Si sciacqua nella bacinella di acqua di rubinetto all’uopo preparata…e la si asciuga con un panno

Fase f), Si mette la basetta a bagno nel cloruro ferrico, con guanti di lattice. Attenzione che il cloruro sporca irrimediabilmente i vestiti e le mani fino a nuova costruzione cellulare ed è anche abbastanza tossico…occhio a quel che fate e leggete sempre le istruzioni. Tenete in movimento la basetta con le mani inguantate affinchè venga eroso il rame

Fase G) Basetta Finita. Questa.

OK, COSTRUIAMONE UNO…

Bene anche se siamo astrofili, è sempre bene avere a disposizione qualche curioso strumento, se non altro perchè potrebbe venir comodo in futuro qualora si voglia autocostruire qualche bel dispositivo elettronico.

Costruire un bromografo è semplicissimo, in buona sostanza ci vogliono due cose

a) un kit lampade al neon UV – quelli per abbronzarsi per intenderci

b) un contenitore per A che abbia una finestra e un vetro sul suo lato piu alto.

Ordine e pulizia…

il punto A), cioè il kit, lo si può trovare ad una trentina di euro al seguente link su Ebay al costo ad oggi pari a 35, euro circa. Io ho acquistato questo e va molto bene, però probabilmente acquistando i prezzi separati in giro si riesce a trovare a meno. Poco male, grosso modo la spesa principale è comunque intorno ai 30/40 euro e si ha un kit già pronto.

il punto b): il contenitore. Normalmente in tanti hanno usato con successo un vecchio scanner in disuso, di quelli proprio antichi e belli spessi. Considerate che la distanza tra la superficie di appoggio dellabasetta (il vetro) e il fondo deve essere almeno di 8/12 cm altrimenti si rischia di avvicinarsi troppo al vetro col problema di non avere una radiazione uniforme su tutta la basetta.

Ho provato personalmente a cercare scanner adatti…nel pattume, in cantina e ovunque ma non ho trovato quello che facesse al caso mio, ho trovato solo quelli di ultima generazione che sono parecchio sottili pertanto ho deciso di costruirmi un contenitore adatto “home made”. Ricordiamoci che io sono neofita anche nei lavoretti manuali quindi i progetti sono sempre molto banali ed essenziali e a volte anche poco curati…abbiate pietà di me.

…IN LEGNO

Il materiale che ho scelto è Legno.

Gli attrezzi necessari sono i seguenti:

a) un seghetto alternativo

b) un seghetto da traforo

c) vernice per il pretrattamento (chiedete al falegname)

d) vernice per verniciatura DI COLORE NERO e acquaragia

e) qualche cacciavite, viti autofilettanti, colla vinavil

Il materiale invece è il seguente

a) una verga di legno (va bene qualsiasi) pre tagliata. (o se volete potete tagliarla voi col seghetto alternativo). Se andate nei brico center ve lo tagliano loro. Ne servono 4 pezzi. Le misure fatele in base alla lunghezza del vostro kit e dei vostri neon considerando che all’interno devono essere compresi anche il trasformatore e ci deve essere un minimo di spazio per i cablaggi. Importante è l’altezza della sagoma, che appunto deve stare tra i 10 e 12 cm!

b) due bei fogli di compensato, qualsiasi spessore ma meglio se da 1 cm in modo che il contenitore abbia sostanza.

c) una bella cornice in formato A4, ne ho trovate in centri commerciali da 2,5 euro…a noi serve il vetro.

d) un foglio A4 di carta d’alluminio per forno.

Ok, rimediato il tutto cominciamo..è molto semplice

LA COSTRUZIONE

Allora avrete già capito dai…si prendono i 4 pezzi di legno pre tagliati (o tagliati col seghetto alternativo) e si incollano insieme. Poi si prende il seghetto da traforo e si taglia il compensato per creare il fondo. Si mettono insieme con viti autofilettanti e colla Piu o meno verrà fuori qualcosa di analogo. Da notare che ho lasciato il codice a barre con l’etichetta perchè non avevo voglia di toglierlo 😆

Bene, fatta la scatola è il momento di verniciarla con il fondo, in modo da proteggere il legno. Datene due mani se lo tenete in cantina perchè l’umidità potrebbe dargli fastidio (da notare che continua a vedersi l’etichetta con il codice a barre 😆  )

Ottimo. Lasciate asciugare e potete iniziare  a stendere la vernice nera. Con questa, si da una mano, si lascia asciugare..si carteggia,  e si da la seconda mano.

Bene, fatto questo, potete iniziare a costruire il coperchio. Sempre in compensato, fate le opportune misure per creare una finestra che sia un pochino piu piccola di un A4. Basta semplicemente mezzo centimetro in meno per lato, considerate che le basette che si stampano solitamente sono di un 10×16 per le piu grosse e difficilmente arriverete a coprire tutta la superficie. Questa finestra che creerete servirà per attacare il vetro con silicone e quindi ci serve che sia piu piccola rispetto al vetro in modo da avere superfici di incollaggio.

Bene! Dai che abbiamo fatto..prendete il vetro, lo incollate accertandovi che sia incollato nella parte che starà sotto (verso l’interno della scatola per intenderci). Per questo potete usare del volgare silicone di quelli che si trovano nelle peggiori tette di caracas.

Bene, prima di chiudere la scatola,  si può stendere l’impianto elettrico (quindi..trasformatore, fili, portaneon (mettete viti autofilettanti e non colla per favore!) e via… non v’è molto da spiegare sono 4 fili!!! ..unica cosa a cui dovete stare attenti: PRIMA DI STENDERE L’IMPIANTO, METTERE LA CARTA STAGNOLA SUL FONDO. Serve…perchè deve riflettere quanta piu luce verso l’alto! Inoltre state attenti durante la posa  che i neon vengano posizionati tutti a distanza equa e non troppo ravvicinati tra di loro. E che siano ovviamente DRITTI. DRITTI OK?

Bene…fatto questo, forate un lato corto del vostro bromografo per farvi passare il filo della 220, installate appunto trasformatore, cablaggi e neon e chiudete.

Il vostro bromografo è pronto.

Ora vediamo alcuni consigli di utilizzo. Vi va? 😆

APPENDICE – CONSIGLI

  • Evitate di insistere con lo sguardo sul bromografo mentre è acceso. Non perchè è un timidone, ma perchè vi sparaflasha le cornee
  • Non esponete troppo le basette..ma nemmeno troppo poco. Io ho trovato un giusto compromesso sugli 80 secondi. Prendetevi il rischio di spendere qualche soldino per far le prove di esposizione
  • Occhio alla soda caustica: non è molto concentrata per l’utilizzo che ne facciamo e quindi innocua, ma stiamo trattando un materiale comunque pericolosissimo allo stato brado. Leggete sulla confezione le precauzioni del caso e informatevi…
  • Il cloruro ferrico funziona meglio se riscaldato…io lo scaldo a bagnomaria con un fornelletto da campeggio, un pentolino con acqua e un vasetto di vetro in cui è versato il cloruro. Evitate il contatto con qualsiasi materiale ferroso (corrode di brutto) rame etc. Anche con vestiti e pelle…non è un acido fortunatamente, è un sale..ma stateci attenti
  • Smaltite il materiale di scarto nei centri specializzati.
  • Non muovete la basetta una volta che iniziata la procedura di sparaflashamento, o meglio di fotoincisione.
  • Pulite sempre il vetro prima di fotoincidere le basette
  • Se tenete il bromografo in cantina, in inverno prende molto freddo..preriscaldatelo prima dell’uso con delle accessioni di qualche minuto in modo che non vi siano sfarfallamenti che rovinano il processo di fotoincisione (sti benedetti neon…)
  • Ricordate che questo strumento ve lo potrete ritrovare (e godere) per tutti i lavori di replica delle schede elettroniche che trovate in giro, non solo per la passione astrofila ma anche per qualsiasi dispositivo elettronico di vostra invenzione o reperito online.
  • Prima di operare, informatevi bene anche su altri siti che hanno anche altri tutorial. Siate informati a 360 gradi.
  • E’ una goduria TOTALE! Potete crearvi tutti i dispositivi elettronici homemade di cui trovate i PCB in giro. Waaaaa….

Buon Divertimento e alla prossima!