Pages: [1] 2   Go Down
Author Topic: Dubbio su dimmer lampadina con TRIAC  (Read 1914 times)
0 Members and 1 Guest are viewing this topic.
Fidenza, Parma
Offline Offline
God Member
*****
Karma: 8
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti, sto felicemente utilizzando una schedina che avevo assemblato con TRIAC e optoisolatori per comandare diverse lampadine.
Per semplicità ho usato degli optoisolatori Zero-Crossing... solo che adesso sorge il problema: se non sbaglio l'opto zero crossing non s'accende e non si spenge finchè non raggiunge lo zero, quindi in questo modo una corrente pulsata sarebbe inefficace per un dimming..
E se io invece facessi "saltare" dei cicli alla lampadina riuscirei  a dimmerarla?
Mi spiego meglio: la 230 fa 50 cicli in un secondo, quindi l'opto s'accende e si spegne 50 volte al secondo, se io lo facessi accendere una volta sì ed una no (solo 25 accensioni) avrei come effetto una lampadina dimmerata al 50% ?

(Certo mi serve sempre un trasformatore per individuare il passaggio dello zero ma in questo modo non dovrei dissaldare gli optoisolatori che sto usando per metterne di NON-ZeroCrossing)


Spero di essere stato comprensibile  smiley-sweat smiley-sweat
« Last Edit: February 07, 2013, 01:54:03 pm by Guglio » Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20193
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

L'opotisolatore zero crossing accende l'uscita solo quando la tensione alteranta passa per il zero (tensione) e se in quel momento é ancore pilotato. Lo spegnimento del triac a optoisolatore spento non funziona tramite l'optoisolatore ma perché nel passaggio del zero (della corrente) il triac si spegne.

Sí puoi far passare delle (semi)onde intere e lasciare pause. Questa tecnica si chiama treno di impulsi. Normalmente viene fatto passare una onda intera per avere una parte positiva e negativa della tensione. È realizzabile facilmente e senza sincronizzazione. basta tener acceso l' optoisolatore per il tempo di 2 semionde (20mS a un alternata di 50Hz)
Questo pilotaggio é molto indicato con riscaldamento, ma meno per lampadine o motori perché potendo solo sceglere pezzi dell'alternata da 20mS potrebbe essere visibile il pilotaggio e fare oscillare o farfallare il motore o lampadina.   

Ciao Uwe
Logged

Fidenza, Parma
Offline Offline
God Member
*****
Karma: 8
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Vado a riprendere il mano il libro di fisica e a dare un occhio alle onde ma ho qualche dubbio...
Dunque lo sketch x provare è questo:
Code:
  delay(T);
  digitalWrite(A5, HIGH);
  delay(T);
   digitalWrite(A5, LOW);
Dove ho provato a variare T per fare un po' di prove...
Se metto T=20 si vede palesemente lo sfarfallio, in questo modo dovrebbe far passare un onda sì ed una no giusto?
Se metto T=10 cioè una semionda sì ed una no non si vedono sfarfallamenti ma varia la luminosità... cioè che ne so dopo 10 secondi sale un po' e dopo magari scende... è data dal fatto che la rete non è perfettamente a 50Hz? (misuro 49.90)  o dal fatto che il delay non è preciso e il digitalwrite è lento?
Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

Fidenza, Parma
Offline Offline
God Member
*****
Karma: 8
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

L'elettronico locale mi ha venduto gli opto come degli zero crossing... in realtà s'è sbagliato!! MOC3021 (http://www.datasheetcatalog.org/datasheet/fairchild/MOC3021-M.pdf) io lo Zero Detector non lo vedo citato... quindi come io alimento l'opto lui non aspetta lo zero ma accende subito giusto?
Quindi mi serve una cosa così:
« Last Edit: February 09, 2013, 09:37:12 am by Guglio » Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20193
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il MOC3041/2/3 é un zero crossing.
Ciao Uwe
Logged

Offline Offline
Edison Member
*
Karma: 38
Posts: 1901
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ma che ci devi fare nello specifico?

Fare un dimmewr con Arduino (o un qualsiasi MCU) è abbastanza semplice. Lo zero crossing serve anche per evitare le correnti di Rush (e tutte le spurie di commutazione) che si hanno utilizzando un normale fotoaccoppiatore, che taglia l'onda "a babbo", quindi non sincronizzato.
Logged

Fidenza, Parma
Offline Offline
God Member
*****
Karma: 8
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Solo che, come ha confermato uwe, il mio optoisolatore non è zerocrossing (moc3021 non 3041) quindi devo fare un circuito di zero crossing...
Tutto ció perchè vorrei utilizzare l'arduino come dimmer
Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

Offline Offline
Edison Member
*
Karma: 38
Posts: 1901
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti servono 100 Hz, quindi una doppia semionda, da cui estrarre un impulso da usare come INTERRUPT:



Una volta agganciato ad un INTERRUPT, devi far partire un contatore che ritarda l'attivazione del TRIAC rispetto al passaggio per lo zero.



Come vedi dalla figura, spostando con un ritardo l'impulso di attivazione del TRIAC, lo attivi ad un dato punto della semionda. Meno semionda c'è, e minore sarà il valore medio, quindi la tensione ai capi di un eventuale carico.

Ramenta che questi sistemi funzionano solo su carichi resistivi come lampadine e/o faretti a 220V. Con lampadine a basso consumo, non funziona, tantomeno su carichi induttivi (ci vorrebbe un circuito rognoso fatto con IGBT in antiparalelo).
« Last Edit: February 10, 2013, 02:26:29 pm by BaBBuino » Logged

Fidenza, Parma
Offline Offline
God Member
*****
Karma: 8
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie mille! Provo e vi faccio sapere!
Scrivo poi in aggiunta a ciò che hai scritto, per i posteri che finiranno  su questa discussione, che il triac si può solo "accendere" e non "spegnere", si disattiva a corrente = 0, cioè quando la sinusoide passa per lo 0...

(Mi sembra di aver detto cosa giusta no?)
Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21625
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@babbuino:
potresti spiegarmi il circuito di cui hai messo lo schema, per piacere?
Non riesco a capirlo.
Inoltre il segnale in uscita, come lo utilizzi?
Logged


Torino
Offline Offline
God Member
*****
Karma: 2
Posts: 753
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
potresti spiegarmi il circuito di cui hai messo lo schema, per piacere?
Non riesco a capirlo.
D1 e D2 servono a trasformare l'alternata in semionde positive che vanno applicate alla base del transistor. Quando la tensione scende sotto i 0,7 volt il transistor si interdice(non conduce) portando alto il suo collettore e viceversa quando supera i 0,7 volt si satura portando basso il suo collettore dando origine ad un'onda quadra sul punto "B".
Il condensatore C1 serve per livellare la tensione da applicare al collettore del transistor ed il diodo D3 serve per non far tornare indietro al punto "A" la tensione livellata dal condensatore.
R1,R2 polarizzano la base e R3 limita la corrente di collettore.
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20193
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie mille! Provo e vi faccio sapere!
Scrivo poi in aggiunta a ciò che hai scritto, per i posteri che finiranno  su questa discussione, che il triac si può solo "accendere" e non "spegnere", si disattiva a corrente = 0, cioè quando la sinusoide passa per lo 0...

(Mi sembra di aver detto cosa giusta no?)
Il triac si spegne quando la corrente va a Zero , non necessariaemnte la tensione.
Ciao Uwe
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 411
Posts: 11987
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

penso che intenda collegarlo ad un pin interrupt di Arduino per gestire poi il pilotaggio del TRIAC, ma non potresti usare direttamente un timer interno come riferimento a 100Hz e duty al 10%, c'è bisogno di tutta sta cosa?
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21625
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@tonid:
grazie della spiegazione.

@michele:
non può funzionare perché manca la sincronizzazione tra il timer e la sinusoide del segnale della rete elettrica.
Logged


Offline Offline
Edison Member
*
Karma: 38
Posts: 1901
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
potresti spiegarmi il circuito di cui hai messo lo schema, per piacere?
Non riesco a capirlo.
D1 e D2 servono a trasformare l'alternata in semionde positive che vanno applicate alla base del transistor. Quando la tensione scende sotto i 0,7 volt il transistor si interdice(non conduce) portando alto il suo collettore e viceversa quando supera i 0,7 volt si satura portando basso il suo collettore dando origine ad un'onda quadra sul punto "B".
Il condensatore C1 serve per livellare la tensione da applicare al collettore del transistor ed il diodo D3 serve per non far tornare indietro al punto "A" la tensione livellata dal condensatore.
R1,R2 polarizzano la base e R3 limita la corrente di collettore.

Bravo! Vedo che gli "Analogici" non sono tutti morti... smiley-grin
Logged

Pages: [1] 2   Go Up
Jump to: