Devi sapere che il TRIAC è un dispositivo "con memoria".
Supponiamo che il TRIAC sia un interruttore comandato dal gate.
Quando gli dai un impulso sul gate l'interruttore si chiude e, nota bene, resta chiuso finché gli scorre corrente attraverso.
Pertanto se, subito dopo lo zero crossing, chiudi l'interruttore dando un impulso sul gate, lui rimarrà chiuso per tutta la prima semionda. Al successivo zero crossing la tensione di rete andrà a zero e, quindi, anche la corrente nel TRIAC che si aprirà. Per farlo chiudere nuovamente servirà un nuovo impulso.
Più l'impulso arriva tardi, dopo lo zero crossing, meno tempo il TRIAC resterà chiuso e quindi la potenza in arrivo alla lampada diminuirà proporzionalmente.
Basta quindi un piccolo impulso al gate per eccitare il TRIAC per tutto il resto della semionda.
E' proprio vero che non si finisce mai di imparare... e poi con dei maestri come voi diventa un piacere...
Ti posto il risultato finale all'oscilloscopio, il canale 1 è il segnale verso il MOC mentre sul canlae 2 l'ormai famoso zero crossing.
L'unico problema è che mi sono accorto di avere in casa solo i MOC3041 che hanno integrato lo zero crossing all'interno, quindi presumo non possono funzionare sul mio circuito.
Non conoscete altre sigle equivalenti al MOC3020 che provo a cercare qualche rimasuglio nascosto in fondo al cassetto?
Altrimenti lo ordino prima di sera, ma ormai sono in dirittura d'arrivo e sono impazziente di vedere il mio circuito funzionare.
ricello9, c'è un altro aspetto non trascurabile ed è la latenza complessiva con la quale il micro è in grado di pilotare il gate del TRIAC. Il micro infatti risponde all'interrupt salvando i registri di stato (se lavori in C lo fa il compilatore, se lavori in assembly lo fai tu a manina, ma qualcuno deve farlo!), poi c'è il codice di gestione del ritardo impostato con il potenziometro (ed il tempo intanto scorre).
Se impieghi un clock sufficientemente veloce (>10MHz) magari con qualche decina di microsecondi riesci a risolvere il tutto. Se riesco faccio delle foto con un circuito che ho sviluppato anni fa (e che usa il trafo)
Correggimi se sbaglio, ma penso che un ritardo di qualche microsecondo sia trascurabile su un ritardo di accensione del gate che arriva anche a una decina di millisecondi.
Sto utilizzando un quarzo a 16Mhz e cerco di rendere le routine dell'interrupt le più snelle possibili.
Il programma è scritto in c.
Grazie a tutti per l'aiuto.

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)

pigreco]=π


, se alimenti a 12V.
è la tensione di alimentazione (12 o 24 V, approssimando)
è la tensione diretta del diodo led interno al fotoaccoppiatore (1.2-1.4V per un LED IR)
è la corrente che vuoi che circoli nel LED (nei fotoaccoppiatori bastano 4-5mA)