[Risolto] DIMMER 220V comandato direttamente da Arduino da PWD o porta Analogica

Non hai retroazione e percui non sai che resistenza ha il fotoresistenze. Devi mettere 2 di questi fotoaccopiatori fai da te e regolare la corrente dei due LED messi in serie in funzione della resistenza di una delle fotoresistenze. L'altra fotoresistenze la usi per il dimmer.
Ciao Uwe

uwefed , a che serve il feedback se il led lo piloti tù? basta solo avere il datasheet della fotoresistenza e fare qualche prova.

ASPETTATEEEEEEE mi perdo.

Ma vorreste mettere la FOTORESISTENZA al posto del potenziometro sul DIMMER ?

Gironzolando per la rete ho trovato questo pdf http://www.jaycar.com.au/images_uploaded/optocoup.pdf che è uno spiegone sugli optoisolatori, ma non basta usare un moc3020, o equivalente, che poi pare essere un diac optoisolato?

@cgs64 si :slight_smile: e il valore resistivo lo vari pilotando un led in pwm.

@bigjohnson: Grazie BJ, quello è un optoisolatore che conoscevo, relativamente comune (Uso moto i 4N32) ma il problema secondo me non è il fotoaccopiatore, non ho ancora capito bene come (e se) potrebbe essere impiegato il JFET o MOSFET.

OKKEY, vaneggio un po' !
Facile dovrebbe essere uscire dall'arduino con una tensione variabile (vedi l'esempio del "Fade"), amplificarla se fosse necessario per pilotare il MOC3020 (ma credo non serva), all'uscita l'optoisolatore mi restituisce una tensione variabile regolata dall'ingresso, il MOC3020 sembra faccia questo.
Adesso abbiamo in mano una tensione variabile, sicura ed optoisolata che mandiamo al "G" del JFET. Poi attacchiamo "D" e "S" al posto del potenziometro ed è fatta ???? **Bello ** :roll_eyes: MA FUNZIONA COSI ?

@TUTTI:
Dopo la considerazione

  • La maggior parte dei potenziometri utilizzati nei Dimmer classici varia tra 200K e 500K

Qualche domanda

  • Quanto è il range di resistenza regolabile del JFET tra i pin "D" e "S"
  • Si possono far transitare 220V nel JFET (perchè vuoi o non vuoi il 220 al potenziometro ci arriva (uwefed insegna ;))
  • Si può presupporre che il JFET scalderà ma che con una aletta (e magari una ventolina) si possa mantenere sotto controllo senza problemi ?

cgs64 ti dò un'altro link sull'argomento ed in particolare guarda il: Simple voltage controlled dimmer

grandfe, l'idea della fotoresistenza funziona.
bravo

questo elimina la necessita' dello zero crossing.

a questo punto niente piu' zero crossing sui dimmer arduinici, e' da modificare l'ignition del triac, togliere il diac e mettere un elemento piu' lineare come un UJT
se invece la curva del diac non dispiace gia' cosi' va bene.

bravo ancora brain e compklimenti a cgs64 per la testardaggine :slight_smile:

bigjohnson:
Gironzolando per la rete ho trovato questo pdf http://www.jaycar.com.au/images_uploaded/optocoup.pdf che è uno spiegone sugli optoisolatori, ma non basta usare un moc3020, o equivalente, che poi pare essere un diac optoisolato?

L' uscita é un TRIAC optoisolato; un DIAC non lo puoi pilotare
Siamo arrivati a un punto dove eravamo giá nella discussione. Un MOC3020 con un TRIAC non é differente a un SSR con accensione random.

Ciao Uwe

cgs64:
@bigjohnson: Grazie BJ, quello è un optoisolatore che conoscevo, relativamente comune (Uso moto i 4N32) ma il problema secondo me non è il fotoaccopiatore, non ho ancora capito bene come (e se) potrebbe essere impiegato il JFET o MOSFET.

OKKEY, vaneggio un po' !
Facile dovrebbe essere uscire dall'arduino con una tensione variabile (vedi l'esempio del "Fade"), amplificarla se fosse necessario per pilotare il MOC3020 (ma credo non serva), all'uscita l'optoisolatore mi restituisce una tensione variabile regolata dall'ingresso, il MOC3020 sembra faccia questo.
Adesso abbiamo in mano una tensione variabile, sicura ed optoisolata che mandiamo al "G" del JFET. Poi attacchiamo "D" e "S" al posto del potenziometro ed è fatta ???? **Bello **:roll_eyes: MA FUNZIONA COSI ?

Qualche domanda

  • Quanto è il range di resistenza regolabile del JFET tra i pin "D" e "S"
  • Si possono far transitare 220V nel JFET (perchè vuoi o non vuoi il 220 al potenziometro ci arriva (uwefed insegna ;))
  • Si può presupporre che il JFET scalderà ma che con una aletta (e magari una ventolina) si possa mantenere sotto controllo senza problemi ?

IL MOC non va bene perché l' uscita TRIAC non si spegne finche la corrente non diventa zero.

Il JFET, MOSFET o tipo di FET che vuoi usare piloti con una tensione. Mediamente un FET regge 20 V tra GATE e SOUCE. Devi farti un alimentatore che produca meno di 20V. poi un RC e lo metti sul FET. C'é il problema che il FET é polarizzato e percui non puoi usarlo cosí semplicemente.

Stiamo pescando nel torbido. Le proposte sono dette senza criterio. Non mi piace dovervi spiegare cosa perché non puó funzionare.

Ciao Uwe

uwe ti sei perso un pezzo,
siamo arrivati alla fotoresistenza, quindi problema chiuso
la domanda era usare pwm per dimmerare senza zero crossing, la fotoresistenza e' la risposta

OK OK

Non rimane che fare un po' di prove sul campo, mi fido di uwefed (esperienza insegna), ma voglio testare un paio di cose.... Tra qualche giorno Vi faccio sapere, rintraccio un po' di pezzi e poi vediamo $)

Testato:
uwe ti sei perso un pezzo,
siamo arrivati alla fotoresistenza, quindi problema chiuso
la domanda era usare pwm per dimmerare senza zero crossing, la fotoresistenza e' la risposta

Ok, la fotoresistenza é saltata fuori nel Reply #39 ma nel Reply #45 si parla ancora di MOC e JFET.

Attenzione, non tutti le fotoresistenze reggono i 230V alternata. Devi trovarne una che regge 400V
http://it.rs-online.com/web/c/?searchTerm=ldr&sra=oss
Ciao Uwe

eeehmmm, scusate, ma secondo voi usare una cosina così ? VARIATORE DI LUMINOSITA' A SFIORAMENTO - TOUCH LIGHT DIMMER

Se si manda il sensore verso terra non si attiva il dimming ? (in realtà credo voglia un 50Hz)

Questo credo sia fatto con il SLB0587 siemens (solo 100W però)

oppure altri progettini fino a 200W con il TT6061A http://www.circuitstoday.com/touch-dimmer-for-lamps

@UWEFED: La fotoresistenza al posto del potenziometro "non l'avevo presa bene" !!!!
Nessuno mi aveva risposto quindi l'avevo veramente presa sottogamba, invece è un'idea carina, "abbriccicata" ma carina.

Bravo BrainBooster :wink:

Questa dovrebbe andare bene....

NE ORDINO UNA MANCIATA ??? $)

cgs64:
...
Questo credo sia fatto con il SLB0587 siemens (solo 100W però)
...
oppure altri progettini fino a 200W con il TT6061A

Questo sono 2 integrati che regolano la luminositá a secondo della durata che tocchi la placca sensore. Non vedo possibilitá di pilotarli con Arduino.

Ciao Uwe

@UWEFED: Mi domandavo se non ci fosse un altro modo per "attivare" il sensore oltre che con il tocco umano

Comunque vado avanti con la fotoresistenze NORP12 e provo così.

Ciao a tutti e scusate se mi intrometto.
Ma il problema , se ho capito bene , è poter variare l'intensità di una lampada ad incandescenza a 220 Volt AC ?

Se si potrei avere la soluzione , almeno io lo utilizzo e funziona benissimo !!

preparo lo schema ed il codice per arduino e lo posto ?

Ciao

anche io sono interessato...

Stavo per rinunciare all'idea, o alla peggio usare i servi su un dimmer kit degli anni '90.

Se non ricordo male il K8064: DC CONTROLLED DIMMER – Velleman – Wholesaler and developer of electronics proposto da bigjohnson
era stato linkato anche da Banzi sul vecchio forum.

Io in elettronica sono niubbo, ma se sul Velleman c'e tutta quella roba un motivo ci sara...Se non prendo un granchio, su Velleman K8064 DC Controlled Dimmer Kit | Rapid Online lo vendono a 12 sterline (24 euro VAT inclusa), pero` mi pare strano visto che su Amazon non si trova a meno di 40 dollari...

ecco lo schema ( fatto a mano ma in questo momento non ho altro )

ed il codice

int var = 1000  ;
void setup()
{
  attachInterrupt(0, zero_cross_detect, RISING);
  pinMode(10, OUTPUT);
  Serial.begin(9600);

  pinMode ( 3 , INPUT );

}

void zero_cross_detect() {
  
  delayMicroseconds(var);
  digitalWrite(10, HIGH);
  delayMicroseconds(1000);
  digitalWrite(10, LOW);
 
}


void loop()
{
 
  if ( digitalRead(3) == LOW ) {
   
   var = var + 50 ;
   delay ( 10 ) ;
   if ( var == 9000 ) {
     var = 1000;
     
   }

  }
  
}

brevemente provo a commentarlo :

la funzione "attachInterrupt" non fa altro che dire ad arduino che nel momento in cui vede una variazione da negativo a positivo ( RISING ) sul pin 2 ( interrupt 0 ) di andare ad eseguire il codice all'interno del void "zero_cross_detect" , quindi ogni inizio del ciclo dell'onda 220 Vac ;
Questa variazione la creiamo con i 2 optoisolatori 4N25 ( due per ottenere variazioni sulle sinusoidi positive e negative )

A questo punto ci troviamo a definire una variabile ( var ) che "ritarda" il positivo in uscita sul pin10

Sappiamo che un TRIAC , una volta mandato in conduzione , rimano tale fin quando non finisce di circolare la correte tra i 2 terminali ( A1 ed A2 )
Noi lo mandiamo in conduzione dopo il tempo "var" ( 1000 = massima luminosità ; 9000 = minima luminosità ) per togliere subito corrente dopo 1 millisecondo

  delayMicroseconds(var);
  digitalWrite(10, HIGH);
  delayMicroseconds(1000);
  digitalWrite(10, LOW);

ed ecco che abbiamo ricreato il principio di funzionamento del varialuce tradizionale

il codice dentro il void loop serve , con la pressione del pulsate , di variare l'intesità

Da qui in poi tutto a vostra fantasia ....

Spero di essere stato utile