GENERATORE DI ALBE E TRAMONTI

Posted in: Elettronica,Schemi e Progetti |

Salve, si avvicina il Natale, ormai manca meno di un mese ed io mi sono ricordato che qualche anno fa, per un gruppo di amici ho realizzato un generatore di albe e tramonti, utilizzato poi per ottenere questo simpatico effetto nella realizzazione del presepe, ho pensato anche che forse potrebbe interessare a qualcuno di voi, quindi ve lo propongo sperando che sia di vostro gradimento.

Descrizione

Come potete vedere dalla fig.1, il circuito elettrico è molto semplice ed alla portata di tutti. Il cuore del circuito è costituito dall’ormai notissimo 16F84 prodotto dalla Microchip, il cui piedino n° 6 è stato settato da software come ingresso per generare un interrupt.

In altre parole quando la tensione al punto “A” del circuito elettrico passa per lo zero, il diodo leed presente all’interno del fotoaccoppiatore 4N35 ovviamente si spegne, portando all’interdizione il transistore ad esso otticamente collegato, ciò provoca un picco di breve durata come visibile in fig.2, sufficiente ad attivare all’interno del PIC l’esecuzione di una routine di interrupt, che dopo un ritardo prestabilito comanda l’innesco del triac, tramite il DIAC collegato al piedino n° 17 del PIC.

Il ritardo accennatto prima, essendo sincronizzato con il passaggio per lo zero dei semiperiodi dell’onda sinusoidale, determina con estrema precisione la luminosità delle lampade collegate al triac, che varierà tra il massimo ed il minimo d’intensità in un intervallo di tempo che potremo stabilire tramite il contraver collegato al PIC. Tale tempo espresso in minuti sarà circa uguale al doppio del numero impostato sul contraver, e cioè 2; 4; 6; fino a 18 minuti. Ogni qualvolta cambierete impostazione sul contraver, ricordatevi di premere il pulsante di reset P1, col quale comunicheremo al PIC di aggiornarsi col nuovo dato impostato.

In pratica ogni semiperiodo dell’onda sinusoidale è scomposto in 76 divisioni come da grafico in fig.3; se l’innesco del triac e quindi la conduzione inizia alla prima divisione avremo tutta la potenza luminosa. Se la conduzione inizia alla 19° divisione otterremo ¾  della potenza; alla 38°  ½  della potenza; alla 57°  ¼  della potenza e così via.

Va da se che il carico massimo applicabile dipende dal tipo di TRIAC impiegato, munito ovviamente di aletta di raffreddamento, per dissipare meglio il calore generato. In fig.4 potrete consultare il file sorgente ASM, ed in particolare la riga stampata in rosso; se andrete a modificare il numero 83 di tale riga, potrete variare di parecchio in più o in meno la durata del ciclo alba tramonto.

;****************************
; ALBETRAM.ASM
; IT9DPX – FRANCO
;****************************

PROCESSOR    16F84
RADIX                DEC
INCLUDE           “P16F84.INC”

TIMER  EQU 20H
CONT1  EQU 21H
DIRE1  EQU 24H
VELOC  EQU 27H
VELO1  EQU 28H
TEMP   EQU 29H
MOLT   EQU 22H
MOLTI  EQU 23H

__CONFIG     3FF1H

ORG     00H
GOTO    VIA

ORG     04H
;———————————-
INT
MOVWF   TEMP
CLRF    TMR0
DECFSZ  MOLT
GOTO    RITOR
DECF    VELOC,F
MOVF    MOLTI,W  ;moltip.
MOVWF   MOLT
RITOR
BCF     INTCON,1
BSF     INTCON,7
MOVF    TEMP,W
RETFIE
;———————————-
VIA
BSF     STATUS,RP0
MOVLW   64+6
MOVWF   OPTION_REG
MOVLW   11110001B
MOVWF   TRISB
MOVLW   00000000B
MOVWF   TRISA
BCF     STATUS,RP0
BSF     INTCON,4
BSF     INTCON,7
MOVLW   2
MOVWF   CONT1
MOVLW   83    ;CON 83 circa 2 MIN.
MOVWF   VELOC
MOVWF   VELO1
SWAPF   PORTB,W
XORLW   15
BTFSC   STATUS,Z
MOVLW   1
MOVWF   MOLTI
MOVLW   1
MOVWF   DIRE1
CTRL
MOVF    TMR0,W
MOVWF   TIMER
CTRL2
MOVF    TMR0,W
XORWF   TIMER,W
BTFSC   STATUS,Z
GOTO    CTRL2
CTRL3
MOVF    VELOC,W
BTFSC   STATUS,Z
GOTO    CONT123
VERIF123
MOVF    TMR0,W
XORWF   CONT1,W
BTFSC   STATUS,Z
GOTO    BCA0
BSF     PORTA,0
GOTO    CTRL
BCA0
BCF     PORTA,0
GOTO    CTRL
CONT123
MOVF    VELO1,W
MOVWF   VELOC

MOVF    DIRE1,W
BTFSS   STATUS,Z
GOTO    INC1

DECF    CONT1,F
MOVF    CONT1,W
XORLW   4
BTFSS   STATUS,Z
GOTO    VERIF123

INCF    DIRE1,F
GOTO    VERIF123
INC1
INCF    CONT1,F
MOVF    CONT1,W
XORLW   76
BTFSS   STATUS,Z
GOTO    VERIF123
CLRF    DIRE1
GOTO    VERIF123
END

;************FINE****************

Spero di essere stato chiaro ed auguro a tutti buon divertimento e per qualsiasi evenienza non esitate a contattarmi.

Felice Natale a tutti.

IT9DPX – #135  (Francesco M.)

(Articolo visitato: 3.598)

Lascia un Commento!