Riattivatore Di Contatore Enel

19
  Misure Elettroniche Progetto finale - 8/07/11 Riattivatore per contatore ENEL Relatori: Letterio Mondo, Francesco Wanderlingh, Francesco Curreri

Transcript of Riattivatore Di Contatore Enel

Page 1: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 1/19

Misure ElettronicheProgetto finale - 8/07/11

Riattivatore per contatore ENEL

Relatori: Letterio Mondo, Francesco Wanderlingh, Francesco Curreri

Page 2: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 2/19

Introduzione al progetto

Nel nostro progetto abbiamo sviluppato un dispositivo che riattiva il contatoreEnel esterno dopo che questo viene disattivato a causa di un sovraccarico.Consiste in pratica di un servomotore posto sopra il contatore che ne risolleval’interruttore tramite una cordicella.

Il dispositivo in condizioni di riposo resta costantemente in sleep, nonassorbendo quindi corrente. Nel momento in cui l’interruttore del contatore siabbassa, tira la cordicella, la quale chiude un microswitch a levetta. Questoevento attiva il circuito che, dopo un certo tempo, tira in alto la corda e quindicon se l’interruttore del contatore. Il tempo entro cui far partire il dispositivoviene scelto dall’utente fra un minimo di 10 secondi e un massimo di 120. Inquesto lasso di tempo si ha così la possibilità di spegnere eventualmentel’“apparecchio” che sta causando il sovraccarico con conseguente disattivazionedel contatore. Dopo la prima riattivazione parte un timer di 2 minuti: se entrotale tempo si arriva ad un terzo sgancio, il dispositivo rimane in standby (Safety

Stop) e deve essere riavviato manualmente. Questo perché nel caso in cui cifossero più di due stacchi consecutivi, il problema non è un semplicesovraccarico ma qualcosa di più serio per il quale sarebbe meglio lasciare ilcontatore staccato.

Il riattivatore installato Panoramica dell’interno del box

Page 3: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 3/19

Schematizzazione della riattivazione

Quando il contatore “scatta”, la cordicella entra in tensione e lo switch SW1segnala al circuito di controllo l’evento; a questo punto entra in funzione ilservocontrollo che inizia girare fino a riportare, tramite la cordicella, in

posizione ON la leva del contatore. Lo switch SW2 segnala che il servomotore ètornato nella posizione originaria e che il contatore è nuovamente in funzione.

Istruzioni veloci per la programmazione

- Accendere il dispositivo- Tenere premuto il tastino esterno e attendere lo spegnimento dei LED- Spenti i LED, ogni successiva pressione del tasto incrementa il tempo di

riattivazione di 10 secondi (1 click 10 secondi, 2 click 20 secondi, …, 12click 120 secondi). Ogni pressione è confermata dall’accensione del LEDverde.[superati i 12 click, si ritorna nuovamente a 10 secondi]

- Raggiunto il tempo desiderato, attendere 5 secondi per confermarlo esalvarlo: in conferma il LED verde lampeggerà tante volte quanto è statopremuto il tasto.

- Terminata la programmazione, il micro va in sleep.

LED Rosso

LED Verde

Tastino

Page 4: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 4/19

Funzionamento del circuito

A sovrintendere le funzioni del dispositivo, è stato usato un microcontrollore U2(Atmel ATTiny45). Il circuito è alimentato da due batterie da 9 V disposte inserie. Il regolatore U1 (78L05) ricava dall’alimentazione 5 volt stabilizzati inmodo da alimentare correttamente il microcontrollore. Il diodo D1 protegge

dall’inversione di polarità. Mentre i condensatori C1, C2, C3 e C4, livellano latensione prima e dopo il regolatore e ne filtrano i disturbi. Il servomotore ècomandato in PWM dall’uscita PB0 per mezzo di T3 (Transistor DarlingtonBC517). Il diodo D4 e il condensatore C5 proteggono dagli impulsi dovuti alfunzionamento del motore elettrico. All’ingresso PB1 è collegato l’ SW2 che sichiude nel momento in cui il rotore del servomotore ha raggiunto la posizione diriposo. A PB4 e PB5 sono collegati i due LED (verde e rosso) che guidanol’utente durante l’impostazione del tempo entro cui fare riattivare il contatore eche indicano i vari stati di funzionamento del dispositivo.T1 e T2 servono a tenere l’alimentazione isolata dal resto del circuito quando ildispositivo è in sleep, in modo che il regolatore non assorba alcuna correntequando non è in funzione (così da prolungare la durata delle batterie).Quando viene chiuso SW1 dalla cordicella tirata dall’interruttore, T2 (BC547)entra in conduzione (la sua base si polarizza positivamente) mandando a suavolta in conduzione T1 (BC557), che è un PNP, la cui base si polarizzanegativamente. Quindi la corrente arriva al regolatore e quindi al micro.Il micro porta a livello alto la linea PB3, in modo che il circuito sia ancoraalimentato dopo che SW1 si apre nel momento in cui la leva viene rialzata.Il partitore formato da R5 ed R6 indica alla linea PB2 lo stato dell’ SW1: se ilmicro legge un livello alto, allora SW1 è chiuso; se legge un livello basso alloraè aperto. I diodi D2 e D3 impediscono che i comandi che attivano il circuito,

cioè l’ SW1 e l’uscita del micro, si influenzino reciprocamente.Gli switch esterni SW1EXT e SW2EXT sono messi in parallelo rispettivamentead SW1 ed SW2 e sono usati dall’utente per la programmazione del tempo diriattivazione del contatore. Essi infatti sono disposti in maniera tale da esserepremuti contemporaneamente alla pressione del tastino esterno, poiché èattraverso questa combinazione che il microcontrollore entra in modalità diprogrammazione.

Page 5: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 5/19

Elenco componenti R1: 10 KΩR2, R3: 4,7 KΩR4, R6: 10 KΩR5: 1 KΩR7: 470 ΩR8: 470 ΩR9: 4,7 KΩR10: 47KΩ

C1: 220 µF 25VL ElettroliticoC2, C3, C5: 100 nFMultistratoC4: 100 µF 16VL ElettroliticoU1: 78L05U2: AT Tiny45D1, D2, D3: 1N4007D4: 1N4148

LD1: Led Rosso 3mmLD2: Led Verde 3mmT1: BC557T2: BC547T3: BC517SW1, SW2: Microswitch

a levettaSW EXT: Microswitch atastino

Schema Circuitale

PCB Foto del Circuito

Page 6: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 6/19

Alcune Foto

Il circuito stampato

Vista a ¾ di rotore e switch

Vista superiore del sistema di attaccodegli switch

Vista superiore di tutto il riattivatore

Page 7: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 7/19

Il servomotore e la modulazione PWM

Un motore in corrente continua di potenza medio/piccola è costituito da unacarcassa all'interno della quale è presente un campo magnetico generato, neimotori più piccoli, da magneti permanenti. Tali magneti (statore) hanno al lorointerno una parte meccanica che può solo ruotare (rotore) con degli

avvolgimenti fissati su di esso. I magneti dunque generano un campo fisso cheinteragendo con quello variabile generato dagli avvolgimenti presenti sul rotore,fanno ruotare quest’ultimo (Fig.1). In particolare il nostro motore (Fig.2) ècostituito, oltre che dal motore in se, anche da un motoriduttore chediminuendo la velocità di rotazione consente di guadagnarne in potenza (Ncm).

Figura1: Interno motore Figura2:Esterno servomotore adoperato

Per pilotare il nostro motore abbiamo scelto una modulazione PWM (non

invertente) poiché ci ha consentito un buon controllo sulla velocità del motoretramite la sola variazione del duty-cycle attraverso i registri delmicrocontrollore (OCR).

Figura 3: PWM nel micro (ATtiny45)

motoriduttore

Page 8: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 8/19

Figura 4: Definizione di duty cycle

Un segnale PWM (Pulse Width Modulation ovvero modulazione a variazionedella larghezza d'impulso) è un'onda quadra di durata variabile che permette dicontrollare l'assorbimento (la potenza assorbita) di un carico elettrico (nelnostro caso il motore DC), variando (modulando) la durata dell’onda quadra. Lamodulazione è caratterizzata dunque da una frequenza di funzionamento (fissa)e da un duty cycle (variabile); come si deduce dalla Fig.1, il duty cycle è ilrapporto tra il tempo in cui l'onda assume valore alto e il periodo T (l'inverso

della frequenza: T=1/f). Ne segue che un duty cycle del 50% corrisponde adun'onda quadra che assume valore alto per il 50% del tempo, un duty cycledell'80% corrisponde ad un'onda quadra che assume valore alto per l'80% deltempo e basso per il restante 20%.

Per quanto riguarda il funzionamento all’interno del nostro circuito ilservomotore è comandato in PWM con un duty cycle del 90% l’uscita PB0 delmicro per mezzo del Darlington che consente il guadagno di corrente necessariola buon funzionamento degli avvolgimenti interni del motore. Notare il diodo difree-wheeling per la protezione dagli impulsi dovuti al funzionamento del

motore elettrico, e il condensatore di filtro C5, posti proprio vicino ai terminalidi uscita cui va collegato il servomotore. La scelta del servomotore per questoprogetto non è stata semplice: da un calcolo preliminare è stato valutato incirca 70 Ncm la coppia necessaria per sollevare l’interruttore del contatore;inoltre data la necessità di un movimento lento e preciso era necessario unservomotore di buona qualità. È stato quindi scelto un motoriduttore dellaMicromotors con coppia massima di ben 100 Ncm e un notevole rapporto diriduzione.

Page 9: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 9/19

Il microcontrollore

L’intero sistema è gestito da un microcontrollore Atmel della serie tiny,l’ATtiny45.Questo piccolo ma performante micro contiene al suo interno tutte le periferichenecessarie alla nostra applicazione. Vengono di seguito elencate alcune sue

caratteristiche:

• memoria programma di tipo FLASH di 4KB• memoria dati SRAM di 256B• memoria non volatile EEPROM di 256B• 32 registri general purpose• 2 timer/counter a 8 bit con prescaler separati e uscite PWM• 4 canali ADC a 10 bit• 6 pin di I/O digitale generali• oscillatore interno calibrato fino a 8 MHz• modalità di funzionamento a basso consumo• diverse sorgenti di Interrupt

In particolare notiamo la presenza di un’uscita PWM indipendente e gestitadall’interrupt interna Timer/Counter0: configurando opportunamente alcuniregistri è possibile pilotare il motore DC in maniera semplice ed immediata.L’oscillatore interno calibrato ci permette di evitare l’utilizzo di quarzi esterni,che avrebbero richiesto più spazio e occupato due pin del micro. Nella EEPROMviene salvato il tempo di attesa impostato dall’utente.I 6 pin di I/O (aiooooohhh!) vengono utilizzati per gestire le varie funzioni delsistema: vengono tutti configurati come I/O digitali generali tranne PB0, che è

l’uscita del segnale PWM.

PB1 e PB2 sono configurati come ingressi, e collegati rispettivamente a SW2 (ilmicroswitch a levetta che controlla quando il motore raggiunge la posizione diriposo) e SW1 (il microswitch che invece è premuto quando scatta l’interruttoredel contatore).

Page 10: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 10/19

PB3, PB4 e PB5 sono invece utilizzati come uscite: il primo serve a collegarel’alimentazione al sistema, mentre attraverso gli altri due vengono gestiti i leddi stato.

All’accensione (cioè quando viene premuto SW1 dal contatore che si sgancia odall’utente attraverso il tastino esterno) vengono inizializzate tutte le linee di

I/O, i timer e si preleva dalla memoria EEPROM il tempo di attesa memorizzato.Si noti che Timer0 è usato per generare l’uscita PWM, mentre il Timer1 generauna routine di interrupt ogni 31ms circa. Tale routine ha il compito di gestiretutte le temporizzazioni necessarie: i tempi di accensione dei led, il periodo diattivazione del motore e gli intervalli di tempo necessari alle varie modalità difunzionamento.Subito dopo l’accensione i due led rimangono accesi per un secondo, durante ilquale si stabilizza l’alimentazione.

A questo punto il micro stabilisce la modalità di funzionamento tra:

• la modalità di programmazione del tempo di attesa (PMode)• la modalità di attivazione del motore (AMode)

Se è premuto il tastino esterno (SW1+SW2) si entra in PMode, altrimenti siesegue l’AMode.

Nel primo caso (Pmode) il led rosso rimane acceso, mentre quello verde sispegne. L’utente selezionerà il tempo da memorizzare attraverso il tastinoposizionato nella parte anteriore del dispositivo (come detto prima collegato aSW1 e SW2). Premendolo il tempo aumenterà a passi di 10 secondi e il led

verde darà conferma visiva della pressione. Il tempo massimo memorizzabile èdi 120 secondi. Arrivato a questo limite, se si continua a premere, il microripartirà a contare il tempo da 10 secondi. Il superamento del tempo limite èconfermato dallo spegnimento del led rosso e dall’accensione del led verde per0,5 secondi. Per salvare il tempo in memoria è sufficiente non premere il tastoper 5 secondi. Trascorso questo periodo il micro darà conferma del salvataggiofacendo lampeggiare il led verde tante volte quante sono le decine di secondiimpostate. A questo punto esce dalla PMode disattivando l’alimentazione(modalità sleep).

In AMode invece il micro controlla per prima cosa che non siano state effettuatepiù di due attivazioni in due minuti, attraverso un registro che ne tiene traccia.In quel caso il firmware entrerà in “Safety Stop”: vengono disattivate tutte lefunzioni e il led rosso lampeggerà con un periodo di 5 secondi. L’utente dovràresettare manualmente il circuito togliendo l’alimentazione attraversol’interruttore generale.In caso contrario, prima di attivare il motore, il micro attende per il tempodeciso dall’utente. Durante questa attesa il led rosso è spento, mentre quello

Page 11: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 11/19

verde lampeggia con un periodo di 2 secondi. Trascorso tale tempo, il motoreviene alimentato. Mentre il motore è acceso il led verde lampeggeràvelocemente. Il motore verrà alimentato finché, girando, non colpisce l’SW2.Questo invierà uno zero logico al micro che “capisce” che il motore ha fatto ungiro completo avendo così riattivato il contatore. Per ritornare alla posizione diriposo, il motore verrà alimentato per un altro secondo e poi disattivato. A

questo punto il micro attenderà 2 minuti (tempo di standby), durante i quali illed verde lampeggerà ogni 5 secondi. Se il contatore dell’Enel non si disattiveràun’altra volta in questi 2 minuti, il micro andrà in sleep disattivandol’alimentazione e il circuito sarà pronto per una nuova sessione di lavoro.Altrimenti il firmware tornerà all’inizio dell’Amode eseguendo una secondariattivazione.Si noti che tra un’attivazione e l’altra, all’interno della stessa sessione, il tempodi standby trascorso viene salvato dal micro e ripristinato alla fine della secondaattivazione.Qui di seguito la visulizzazione schematica del programma attraverso unflowchart.

Page 12: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 12/19

FLOWCHART RiattCont_CMW.asm

SW2

ON?(pressed by

user)

Power stabilization

NOYES

SW1 is pressed:

the circuit is powered

I/O InitializationCLEAR Counting and Control Registers

Timer Setting(1sec)

Led_G=ONLed_R=ON

Delay 1sec

AModePMode

Page 13: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 13/19

SW1 ON?(still pressed)

NO

NO

YES

NO

YES

NO

YES

(timer is

running)

NO

PMode

Micro connects the POWER

TEMPO1 ClearNBLINK Clear

SW1

ON?(pressed by

user)

5 sec

are passed?

YES

Timer StoppedLED_G=ON

TEMPO1

=120?

TEMPO1=10NBLINK=1

Led_R=OFF

Delay 0.5sec

NBLINK++

TEMPO1+10

Timer Setting(5sec)

Led_G=OFFLed_R=ON

SW1 ON?(still pressed)

Timer Restart

LED_R=ON

Timer Stopped

Store TEMPO1

in EEPROM

Led_G= “Blinks

NBLINK times”@1Hz

SLEEP

YES

Page 14: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 14/19

SW2

ON?(pressed by

screw)

YES

TEMPO1elapsed?

(timer is

running)

NO

YES

NO

NO

AMode

Led_G=OFF

Led_R=OFF

N_ATT++ (number of activations)

STOP PWM

LITTLE MOTOR STEP

(to reach idle position)

[email protected]

Timer Setting(TEMPO1)

Load and Run TCONT2

[email protected]

Stop and Store TCONT2(TCONT2 counts 2min from 1st boot)

(at 1st boot TCONT2 is 0)

Micro connects the POWER

YES N_ATT

≥3?SAFETY STOP!

Led_G=Blink@5Hz

START PWM

NO

YES

(timer is

running)

NO

TCONT2has reached

2 min?

SW1

ON?

YES

SLEEP

[email protected](endless state till the

circuit is manually

switched off)

Page 15: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 15/19

Page 16: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 16/19

Page 17: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 17/19

Page 18: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 18/19

Page 19: Riattivatore Di Contatore Enel

5/9/2018 Riattivatore Di Contatore Enel - slidepdf.com

http://slidepdf.com/reader/full/riattivatore-di-contatore-enel 19/19