Differenze tra le versioni di "HotAirGun"
Riga 86: | Riga 86: | ||
L'uscita del fotoaccoppiatore e' connessa ad un pin del microcontrollore per il pilotaggio dell'interrupt. | L'uscita del fotoaccoppiatore e' connessa ad un pin del microcontrollore per il pilotaggio dell'interrupt. | ||
+ | |||
+ | === Driving del triac === | ||
+ | Il microcontrollore periodicamente ricalcola la potenza necessaria da applicare sulla resistenza tramite l'algoritmo PID. | ||
+ | |||
+ | Lavorando in corrente alternata non basta applicare un segnale PWM, ma bisogna lavorare in sincrono con il segnale sinusuoidale, per questo motivo viene rilevato il passaggio della tensione per lo zero. | ||
+ | |||
+ | Il triac e' un dispositivo che si spegne automaticamente al passaggio della tensione per lo zero, questo implica che va pilotato con un impulso a temporizzazione precisa per essere attivato, ma ha anche due grossi vantaggi: | ||
+ | *il software deve calcolare solamente il tempo da attendere prima di attivarlo | ||
+ | *lo spegnimento automatico ad ogni passaggio per lo zero garantisce che un eventuale problema software al micro causi una alimentazione a massima potenza della resistenza (che avrebbe effetti distruttivi) | ||
=== PCB === | === PCB === |
Versione delle 13:06, 2 lug 2019
Ovvero come rendere un progetto hardware e software completamente open
Questo progetto nasce diverso tempo fa come esperimento personale di Msystem.
Lo scopo era quello di crearsi una stazione di saldatura ad aria calda basandosi su uno schema visto su una rivista di elettronica creando uno strumento utile.
Il progetto e' stato realizzato, pubblicato su github e presentato durante una serata(i dettagli in fondo alla pagina).
La prima versione pero' aveva alcune caratteristiche:
- schemi realizzati con software proprietario
- controllore PIC che all'interno del nostro gruppo e' poco diffuso
Per far evolvere il progetto Msystem ha pensato di riprogettare il tutto in compagnia e utilizzare unicamente software open source.
Versione 2
![]() |
![]() |
![]() | |||
Hot air gun V2 | |||||
![]() |
![]() |
Tutto il progetto e' disponibile a questo indirizzo https://github.com/raspibo/HotAirGun.
Per il progetto abbiamo utilizzato:
- kicad per gli schemi elettrici e pcb
- ide arduino per il microconroller
- freecad per il disegno 3D
I componenti utilizzati sono standard per permettere la replica del progetto anche tra qualche tempo.
Schema elettrico
Lo schema in kicad e' stato diviso su piu' fogli per rendere piu' facile la comprensione dei blocchi.
Sono state prodotte due piastre pcb:
- modulo i2c controller
- modulo potenza e microcontrollore
I2c controller
Questa e' una scheda di interfacciamento tra l'operatore ed il micro arduino e permette tramite encoder, display, led e buzzer di pilotare la stazione ad aria calda.
L'interfacciamento con arduino avviene su bus i2c, per limitare l'uso di pin, per questo e' stato usato un chip mcp23017 i2c port expander che serve a pilotare pin I/O tramite i2c.
Qualche altra info sull'integrato e' disponibile su questa pagina GPIO_aggiuntivi_MCP23x17.
MCP23017 offre 2 port a 8 bit che abbiamo usato per interfacciare il display LCD oltre a un encoder con pulsante, led e buzzer.
L'integrato viene completamente configurato all'avvio da arduino per decidere se i port sono input o output e su alcuni pin in ingresso attivare un interrupt in caso di variazioni di stato per gestire in tempo breve e ottimale l'encoder.
Questa scheda e' configurabile a piacere con poche variazioni, noi abbiamo scelto un interfacciamento con 3 pulsanti, 1 led ed un buzzer.
AC control + Microcontrollore
Il funzionamento di HAG prevede un microcontrollore che regoli continuamente la potenza da erogare sulla resistenza presente all'interno del generatore di aria calda alimentata dai 240 volts di rete in corrente alternata.
Sono quindi da gestire alcune funzionalita' indispensbili (Alta priorita'):
- Verifica della temperatura all'interno del generatore di aria calda tramite termocoppia
- Calcolo della differenza tra temperatura attuale e quella desiderata
- Elaborazione dell'algoritmo PID
- Rilevamento del passaggio della tensione alternata per lo zero.
- Attivazione di un interrupt sul microcontrollore e se necessario attivazione del TRIAC
- Attesa del tempo calcolato dal PID
- Disattivazione del TRIAC
Sono quindi da gestire alcune funzionalita' di interfaccia (Bassa priorita'):
- Interfacciamento con l'utente (gestione display, encoder, pulsanti)
Sono quindi da gestire alcune funzionalita' aggiuntive (Bassa priorita'):
- Debug su seriale
Zero crossing detection
Per rilevare il passaggio per lo zero della tensione di rete viene utilizzato un ponte di diodi direttamente connesso alla tensione di rete.
All'uscita c'e' una resistenza di limitazione di valore elevato per pilotare un fotoaccoppiatore che emette un impulso all'inversione di polarita' della tensione di rete.
L'uscita del fotoaccoppiatore e' connessa ad un pin del microcontrollore per il pilotaggio dell'interrupt.
Driving del triac
Il microcontrollore periodicamente ricalcola la potenza necessaria da applicare sulla resistenza tramite l'algoritmo PID.
Lavorando in corrente alternata non basta applicare un segnale PWM, ma bisogna lavorare in sincrono con il segnale sinusuoidale, per questo motivo viene rilevato il passaggio della tensione per lo zero.
Il triac e' un dispositivo che si spegne automaticamente al passaggio della tensione per lo zero, questo implica che va pilotato con un impulso a temporizzazione precisa per essere attivato, ma ha anche due grossi vantaggi:
- il software deve calcolare solamente il tempo da attendere prima di attivarlo
- lo spegnimento automatico ad ogni passaggio per lo zero garantisce che un eventuale problema software al micro causi una alimentazione a massima potenza della resistenza (che avrebbe effetti distruttivi)
PCB
Il pcb per alcune caratteristiche si potrebbe anche creare con metodi casalinghi, ma essendo in gioco la tensione di rete abbiamo preferito farli produrre ad un servizio di realizzazione industriale che garantisce una finitura con vernice isolante e serigrafie.
Codice
3D
Rispetto alla prima versione di HotAirGun la forma del case e' cambiata a causa del diverso formato del controller I2c.
Inoltre il case e' stato ridisegnato utilizzando Free Cad.
A parte il frontale che ha un layout orientato a questo progetto, il case e' riutilizzabile come contenitore per altri progetti.
Assemblaggio
Istruzioni
Versione 1
Nell'archvio git questa versione si trova sul branch V1 https://github.com/raspibo/HotAirGun/tree/V1
Alcune info sulla prima versione sono state descritte durante la serata di presentazione qui sotto.
Documentazione
Controllo in fase |
Controllo PID |
Schema Elettrico |
Archivio codice
Altro
- Supporto per terza mano
- Rotary Encoders on the i2c bus
- 4-Bit ∆Σ ADC with Easy Drive Input Current Cancellation and I2C Interface per gestire termocoppie K in I2C
- MAX6675ISA+ Sensore di Temperatura IC, Tensione, ± 3°C, 0 °C, +1024 °C, SOIC, 8 Pin
Serata Hot Air Gun - 21 marzo 2017
Il progetto di reingegnerizzazione del progetto è nato da una serata di seguito l'annuncio.
Annuncio
RaspiBO vi propone una serata dedicata al making homemade in ambito elettronico.
La serata sara' dedicata al progetto di una centralina di controllo di un saldatore ad aria calda utilizzabile sia per la saldatura (e dissaldatura) di componenti smd, ma anche per altre operazioni che richiedano una fonte di aria calda a temperatura costante (lavorazione di materie plastiche, asciugatura piccole quantita' di colle e vernici ecc....).
Toccheremo vari aspetti della realizzazione di questo progetto:
- realizzazione dell'hardware
- teoria del controllo PID
- interfacciamento della sonda di temperatura
- realizzazione del contenitore stampato in 3D
Hot Air Gun |
Box |
Quando e dove
L'evento si terrà presso la biblioteca Meridiana in via Gandusio 6 (c/o Circolo Arci Guernelli) a Bologna dalle ore 20:30 ; vedere questa mappa.
Costi - Registrazioni
L'evento è gratuito; è gradita la registrazione su Booking Raspibo
Per pubblicizzare l'iniziativa, potete usare la locandina che trovate qui.
Per qualunque domanda, potete iscrivervi alla mailing list agora o scrivere ad info@raspibo.org