45
Indice Pagina 1 Indice Introduzione ................................................................................................................. 3 Capitolo 1 ..................................................................................................................... 5 Motori stepper e tecniche PWM ................................................................................ 5 1.1 Generalità ........................................................................................................... 5 1.2 Il principio di funzionamento .............................................................................. 6 1.3 La struttura elettromeccanica ............................................................................. 6 1.4 I cambi di velocità ............................................................................................... 7 1.5 La regolazione PWM della corrente ................................................................... 9 1.6 Il pilotaggio dei motori stepper ........................................................................ 10 1.7 Il problema della massima velocità di rotazione .............................................. 12 Capitolo 2 ................................................................................................................... 14 Descrizione dell'unità di potenza ............................................................................. 14 2.1 Generalità sul motore NSK ............................................................................... 14 2.2 Descrizione generale......................................................................................... 14 Control stage ............................................................................................................ 15 PWM stage ............................................................................................................... 16 Power stage .............................................................................................................. 18 Capitolo 3 ................................................................................................................... 19 Realizzazione del prototipo sperimentale ............................................................... 19 3.1 Descrizione del layout circuitale ...................................................................... 19 3.2 Fotoincisione dei circuiti stampati ................................................................... 20

Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Embed Size (px)

Citation preview

Page 1: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Indice

Pagina 1

Indice

Introduzione.................................................................................................................3

Capitolo 1.....................................................................................................................5

Motor i stepper e tecniche PWM ................................................................................5

1.1 Generalità ...........................................................................................................5

1.2 Il principio di funzionamento..............................................................................6

1.3 La struttura elettromeccanica.............................................................................6

1.4 I cambi di velocità...............................................................................................7

1.5 La regolazione PWM della corrente...................................................................9

1.6 Il pilotaggio dei motori stepper ........................................................................10

1.7 Il problema della massima velocità di rotazione..............................................12

Capitolo 2...................................................................................................................14

Descr izione dell' unità di potenza.............................................................................14

2.1 Generalità sul motore NSK...............................................................................14

2.2 Descrizione generale.........................................................................................14

Control stage............................................................................................................15

PWM stage...............................................................................................................16

Power stage..............................................................................................................18

Capitolo 3...................................................................................................................19

Realizzazione del prototipo sper imentale...............................................................19

3.1 Descrizione del layout circuitale......................................................................19

3.2 Fotoincisione dei circuiti stampati ...................................................................20

Page 2: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Indice

Pagina 2

Principi di base.....................................................................................................22Esposizione ai raggi UV .......................................................................................23Realizzazione del bromografo..............................................................................23Sviluppo................................................................................................................25Incisione................................................................................................................26Foratura.................................................................................................................26

Capitolo 4...................................................................................................................27

Pilotaggio dell'unità di potenza................................................................................27

4.1 Creazione del diagramma di flusso con Simulink ............................................27

4.2 Utilizzo di ControlDesk.....................................................................................29

Capitolo 5...................................................................................................................30

Verifica sper imentale del prototipo.........................................................................30

5.1 Fase preliminare...............................................................................................30

5.2 Prove sperimentali ............................................................................................31

Conclusioni .................................................................................................................34

Appendice 1.................................................................................................................35

Interfacciamento del DSP.........................................................................................35

Introduzione.............................................................................................................35

Indirizzamento del DSP...........................................................................................35

Generazione del diagramma di flusso in Simulink..................................................37

Trasferimento dell’esperimento a ControlDesk ......................................................37

Gestione dell 'esperimento in ControlDesk..............................................................38

Appendice 2.................................................................................................................40

Interfacciamento del TDS220 tramite Matlab 6.1 .................................................40

Page 3: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Introduzione

Pagina 3

Introduzione

Nell 'ambito delle applicazioni robotiche, spesso sono richieste unità di potenza capacidi poter pilotare diversi tipi di motori. In questo lavoro di tesi, è stata realizzataun'unità di potenza a basso costo, in grado di pilotare con prestazioni soddisfacentidue tipi di motori: il motore a riluttanza variabile e il motore a corrente continua.Facendo riferimento alla figura 1, si è fatto uso di una scheda di processamentodigitale (DSP) e del software concesso in dotazione, per gestire l'unità di potenza. Daun semplice personal computer viene generato il segnale di riferimento che, tramite ilDSP giunge all 'ingresso di riferimento del controllore hardware. Successivamenteattraverso l'utilizzo di sensori ad effetto Hall viene misurata la corrente che scorreall 'interno delle fasi del motore. Questa misura è utilizzata per il controllo inretroazione della corrente. La misura della corrente, insieme alla misura dellaposizione angolare fornita da eventuali sensori di tipo encoder montati sul motorestesso, possono inoltre essere inviati al DSP per essere elaborati dal PC nell 'ambito dileggi di controllo più sofisticate.

Questa tesi costituisce un resoconto sulla realizzazione dell 'unità di potenzarappresentata dal blocco tratteggiato in figura 1.

Figura 1

ControlloHardware

DSPDS1102

Motore

Sensore

Encoder

ControlloSoftware

irif

Figura 0

i

Unità di Potenza

θ

Page 4: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Introduzione

Pagina 4

Nel capitolo 1 si affronta un discorso generale sui motori stepper, i loro pregi, idifetti, il principio di funzionamento e la loro struttura elettromeccanica. Inoltre siforniscono cenni sulla tecnica di regolazione PWM della corrente. Nel capitolo 2sono riportate le generali tà del motore a riluttanza variabile utili zzato in questo lavorodi tesi, e si fornisce una descrizione generale dei tre stadi fondamentali in cui è statadivisa l'unità di potenza realizzata. In maniera più dettagliata nel capitolo 3, dopo unadescrizione del layout circuitale con cui sono state realizzate le due schede principalidell'unità di potenza, sono riportati e commentati i passi elementari che caratterizzanola tecnica di fotoincisione dei circuiti stampati. Dopo la descrizione del prototipo, nelcapitolo 4 viene descritta la fase di pilotaggio, a partire dal diagramma di flussorealizzato con Simulink, (che ha permesso di generare i segnali di riferimento perpilotare il motore) fino alla descrizione dell'interfaccia grafica realizzata con ilpacchetto software ControlDesk. Nell 'ultimo capitolo sono descritte le provesperimentali effettuate su un motore a riluttanza variabile disponibile presso il nostrolaboratorio di robotica. Infine, nell’appendice 1 sono descritti i passi necessari pereffettuare l’ interfacciamento del DSP con il PC; mentre nell’appendice 2 sonodescritte le modalità per l’ interfacciamento dell ’oscilloscopio TDS 220 con il PC.

Page 5: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 5

Capitolo 1

Motor i stepper e tecniche PWM1.1 Generalità

I motori passo-passo, spesso chiamati anche step o stepper, sono caratterizzati nelpanorama dei motori elettrici da una serie di particolarità che ne fanno la scelta(quasi) ideale per tutte quelle applicazioni che richiedono precisione nellospostamento angolare e nella velocità di rotazione, quali la robotica ed iservomeccanismi in genere.

I vantaggi dei motori passo-passo sono principalmente i seguenti:

• E' possibile realizzare azionamenti di precisione controllati da computer incatena aperta, cioè senza utilizzare sensori di posizione o di velocità. Sonoquindi util izzabili con relativa semplicità e senza richiedere particolare potenzadi calcolo.

• Godono di un'elevata robustezza meccanica ed elettrica: infatti non esistonocontatti elettrici striscianti e, se necessario, possono essere realizzati anche inesecuzione completamente stagna.

• E' facile far compiere all'albero piccole rotazioni angolari arbitrarie in ambeduei versi e bloccarlo in una determinata posizione.

• La velocità di rotazione può essere molto bassa anche senza l'uso di riduttorimeccanici.

Oltre ai vantaggi citati, questi motori hanno anche degli svantaggi di cui i principalisono i seguenti:

• Richiedono una logica circuitale di pilotaggio.

Page 6: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 6

• Sono caratterizzati da un funzionamento “a scatti” e con forti vibrazioni,soprattutto ai bassi regimi e se vengono adottate tecniche di pilotaggio tropposemplici.

• Hanno un costo elevato, relativamente ad altri tipi di motori con analogheprestazioni.

• Possono garantire velocità di rotazione piuttosto limitate.

1.2 I l pr incipio di funzionamento

I motori passo-passo sono motori che, a differenza dei classici motori elettrici, hannoun’architettura capace di mantenere fermo l'albero in una posizione di equilibrio: sealimentati si li mitano infatti a bloccarsi in una ben precisa posizione angolare sottol’azione di una coppia.Solo indirettamente è possibile ottenerne la rotazione: occorre inviare al motore unaserie di impulsi di corrente, secondo un'opportuna sequenza, in modo tale da farspostare, per scatti successivi, la posizione angolare di equilibrio.

1.3 La struttura elett romeccanica

I motori passo-passo si dividono tradizionalmente in tre grandi gruppi: motori amagnete permanente, motori ibridi e motori a riluttanza variabile. Un motore ariluttanza variabile è costituito da un rotore in ferro dolce e da uno statore; in figura 2è riportato un esemplare non particolarmente recente ma in cui si vede chiaramentela struttura.

Figura 2

Page 7: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 7

Con riferimento alla figura 2 il rotore appare come un insieme di ruote dentateaff iancate e solidali all'albero. Il numero di denti è variabile a seconda delledimensioni del motore. Inoltre, sul rotore non sono presenti fili elettrici: non ènecessaria alcuna connessione elettrica tra la parte in movimento e quella fissa.

Lo statore appare come il classico insieme di avvolgimenti ed il circuito magnetico ècostituito da 4 o, più frequentemente, 8 espansioni polari (in genere due per ognifase) da come si nota in figura 2. All'interno dello statore sono presenti piccoli dentiche si affacciano esattamente su quell i del rotore. In particolare, sono esattamenteaffacciati al rotore solo il gruppo di denti appartenenti ad una fase; i denti relativi allealtre fasi sono sfasati rispettivamente di 1/4, 1/2 e 3/4 del passo dei denti. Avvoltiintorno ai poli magnetici dello statore si trovano i fil i che, quando percorsi dacorrente, generano il campo magnetico.

1.4 I cambi di velocità

Il motore passo-passo soffre di diversi problemi nel momento in cui viene effettuatoun cambio di velocità, a causa del suo principio di funzionamento che lo rende similead un motore sincrono.Tutti i dispositivi meccanici, a causa dell'inerzia, non possono subire accelerazionitroppo brusche. Un classico motore elettrico, reagisce alla richiesta di improvvisoaumento di velocità, con un momentaneo aumento dell 'assorbimento di corrente edun graduale e relativamente lento aumento di velocità. Al contrario, nel momento incui cambia bruscamente la frequenza in ingresso al dispositivo di pilotaggio delmotore passo-passo, lo stepper tenta di adeguarsi (quasi) istantaneamente alla nuovavelocità: se la coppia disponibile è sufficiente, vi è una brusca accelerazione,praticamente istantanea; se la coppia non basta a vincere l'inerzia e gli attriti,semplicemente il motore si ferma e, senza un intervento esterno, non è più in grado diripartire: si dice che il motore "ha perso il passo".Questo comportamento deriva dal fatto che la velocità del motore è rigidamentecontrollata dall'elettronica e che la corrente assorbita è fissa e praticamenteindipendente dalla coppia meccanica resistente.Una simile reazione vi è anche nel caso di applicazione di un’ improvvisa coppiaresistente al motore già in moto. Un motore DC, per esempio, rallenta per adeguarsialla nuova situazione ed eventualmente aumenta l'assorbimento di corrente. Unostepper invece non può rallentare: se la coppia resistente è relativamente piccola, lavelocità rimane costante; se la coppia è troppo grande, il motore perde il passo e siferma.Questo comportamento è descritto dal grafico in figura 3, rappresentante il l egame tracoppia e velocità.

Page 8: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 8

Figura 3

• Un curva identifica l'area, disegnata in grigio chiaro, entro cui il motore puòsubire cambi di velocità e inversioni di marcia senza precauzioni particolari: èsufficiente cambiare la frequenza con cui sono applicate le correnti alle fasi. Essaè in genere indicata come curva di pull-in

• La zona indicata in grigio scuro, chiamata slew-range, può essere attraversata soloa condizione di evitare bruschi cambiamenti di velocità. Il cambiamento difrequenza deve quindi essere continuo e tanto più lento quanto più ci si allontanadalla curva di pull-in.

• La curva di pull-out indica la massima coppia resistente che può essere applicataal motore in rotazione ad una data velocità costante senza causare il blocco. Essarappresenta le massime prestazioni del motore.

Il grafico in figura 3 dipende non solo dalla struttura elettromeccanica del motore maanche dai dispositivi meccanici ad esso collegati (un aumento del momento di inerziadel carico causa un restringimento dell 'area di pull-in) e dal tipo di pilotaggio (unamigliore gestione delle correnti estende entrambe le curve, soprattutto alle velocitàpiù elevate).Per i dispositivi commerciali , la documentazione relativa a tali curve non è sempredisponibile, ma la conoscenza di queste caratteristiche dinamiche può servire comeriferimento nel progetto del software di controllo del motore: per esempio èopportuno portare gradualmente il motore a regime con un riferimento a rampa, alfine di portarlo a velocità più elevate.In applicazioni critiche, è possibile utili zzare un sensore di velocità per riconoscerel'eventuale blocco del motore, ma spesso si preferisce ignorare il problema ed,eventualmente, abbondare un poco nel dimensionamento del motore.

Page 9: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 9

1.5 La regolazione PWM della corrente

La regolazione Pulse Width Modulation (PWM) della corrente è il metodo utilizzatoper la costruzione dell ’unità di potenza realizzata in questo lavoro di tesi, in base allemigliori caratteristiche sia a livello di prestazioni che di consumo energetico.L'idea su cui si basa la tecnica PWM è quella del cosiddetto “Voltage chopping” . Amezzo di un semiponte di transistor configurati come interruttori, l’avvolgimento delmotore viene alimentato solo durante una frazione percentuale del tempo totale. In talmodo, a causa dell’ induttanza intrinseca dell ’avvolgimento, la corrente si porta (dopoun inevitabile transitorio) ad un valore di regime che viene mantenuto a meno dipiccole oscillazioni residue provocate dalla natura pulsante dell ’alimentazione, e chesono tanto più piccole quanto più alta è la frequenza del pilotaggio PWM.

Figura 4

In figura 4 è riportato l'andamento delle correnti nel caso in cui si desideri avere unrettangolo di corrente nella fase. La curva in nero rappresenta il comportamentoideale, la curva in grigio chiaro rappresenta l'andamento della corrente quando ilpilotaggio è lineare, tramite un semplice transistor (con alimentazione adeguata alraggiungimento della corrente desiderata), la curva in grigio scuro rappresenta lacorrente con la regolazione PWM (con una tensione di alimentazione tre voltemaggiore), la curva tratteggiata rappresenta l'andamento della corrente nel caso in cuinon fosse spento il transistor al raggiungimento della corrente nominale (ovviamentetale corrente sarebbe eccessiva e distruttiva per il motore e il transistor).Si noti come con il pilotaggio PWM il tempo di salita della corrente è molto piùbreve rispetto agli altri metodi sopra citati (in quanto è maggiore la tensione dialimentazione).

Osservazione:In questo capitolo, l'induttanza dell 'avvolgimento è stata considerata costante. Inrealtà l'induttanza dell ’avvolgimento di motori stepper varia in maniera sostanziale

Page 10: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 10

sia in funzione della corrente sia, soprattutto, in funzione della posizione angolaredell'albero. Naturalmente il ragionamento di base non cambia, ma occorre tenerepresente questo fatto qualora si vogliano fare misure accurate dei parametri elettricidi un motore a riposo, misure poi evidentemente non sufficienti a descrivereadeguatamente i comportamenti osservati durante il movimento.

1.6 I l pilotaggio dei motor i stepper

Esistono vari metodi per pilotare i motori stepper, uno di questi è quellorappresentato in figura 5, denominato “ponte ad H” .

Figura 5

Il ponte ad H è composto generalmente da quattro MOSFet montati come in figura 4,e quattro diodi necessari per il ricircolo della corrente residua nell’ induttanza delmotore durante la fase di interdizione. Per far passare corrente nella fase devonoessere attivate contemporaneamente coppie di transistor in diagonale (M18 ed M17per il passaggio della corrente in un verso, M19 ed M16 per il passaggio nell'altroverso).Occorre evitare nel modo più assoluto la contemporanea conduzione di due transistorsullo stesso lato (per esempio M18 e M16), poiché si creerebbe un cortocircuito conpossibile distruzione dei transistor o dell'alimentatore.Tornando al discorso della corrente residua, quando si pilotano carichi induttivi èsempre necessario inserire nel circuito il cosiddetto "diodo di ricircolo", pena larepentina distruzione del transistor di potenza a causa delle tensioni elevate generatedal motore. Ciò succede perché ciascun avvolgimento del motore passo-passo èsostanzialmente un induttore, cioè un oggetto che tende a mantenere costante lacorrente che in esso scorre. Quando un transistor si apre, la corrente istantaneamente

Page 11: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 11

dovrebbe andare a zero; l'induttore tende però ad impedire questa repentinadiminuzione e per fare questo tende a far salire la tensione sul collettore deltransistor. Infatti se prendiamo in esame la formula matematica che lega la tensione,rispetto alle variazioni di corrente, che avvengono all ’ interno di un induttore, si ha:

dt

tdiLtV )()( =

Con riferimento alla figura 5, assumiamo che M19 e M16 siano in conduzione. In talcaso, l’ induttanza è alimentata a tensione costante e la sua corrente si portaesponenzialmente ad un valore di regime. Qualora uno dei transistor venga aperto(cosa che accade nel funzionamento PWM), in assenza di diodi di ricircolo, siimporrebbe una repentina riduzione di corrente che in base all’equazione soprariportata, provoca pericolosi picchi di tensioneLa tensione arriva facilmente a picchi di centinaia di volt, che possono danneggiare itransistor stessi. Tali picchi sono spesso chiamati "tensione di fly-back".Per evitare questo fenomeno distruttivo, in genere, viene inserito in parallelo allabobina del motore un diodo che fornisce alla corrente una via alternativa a quella deltransistor nel momento in cui questo si apre.

Figura 6

Il catodo va connesso alla tensione di alimentazione per mantenere il diodo ininterdizione durante la fase di conduzione del transistor. Nello schema di figura 6 èrappresentato l’andamento della corrente: a sinistra si considera la situazione in cui iltransistor è in conduzione (la corrente attraversa l'avvolgimento del motore ed iltransistor; nel diodo non passa corrente in quanto esso è polarizzato inversamente). Adestra invece si considera l'andamento della corrente subito dopo l'apertura deltransistor: la stessa corrente che prima attraversava il transistor ora passa nel diodo.Quest’ultima situazione si esaurisce abbastanza rapidamente, non appena l’energiaimmagazzinata nell’ induttore sia stata dissipata sulle parti resistive del circuito.

Page 12: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 12

I diodi da util izzare devono avere due caratteristiche fondamentali:• Essere veloci, essere cioè in grado di passare in poco tempo dalla condizione di

interdizione a quella di conduzione e viceversa. In genere sono richiesti tempi diintervento dell'ordine dei 100 ns o anche meno. Per questo motivo non sono adatti,per esempio i comuni 1N4001: troppo lenti.

• Essere in grado di gestire picchi di corrente elevati, in quanto al momento dellospegnimento, tutta la corrente del motore passa nei diodi, ed in genere si tratta dialcuni Ampere. Per questo motivo non sono adatti per esempio i comuni 1N4148,che sopportano correnti dell 'ordine dei 100 mA.

In genere, utilizzando un ponte ad H (ma anche in altre configurazioni), viene usato ildiodo del substrato sempre presente tra collettore ed emettitore del transistor (o tradrain e source per i MOS). Questa scelta deve essere valutata con grande attenzionein quanto molto spesso tale diodo è troppo lento e quindi ineff icace. Se occorreprogettare il ponte ad H, è importante verificare questa caratteristica sui fogli tecnicidegli switch scelti (quando questa possibilità è prevista, essa è in genere riportataesplicitamente).Un problema legato all 'uso dei diodi di ricircolo deriva dal fatto che la corrente cheattraversa i diodi "ritorna" verso la sorgente di alimentazione, causando a volte unaumento anche considerevole della tensione. In genere l'alimentazione è costituita daun ponte seguito da un condensatore di filtro: è opportuno che tale condensatore,generosamente dimensionato, abbia una tensione di lavoro almeno doppia di quellafornita dal ponte. In genere non è consigliabile usare, neppure per prova, alimentatoristabilizzati, troppo facili da distruggere in questo modo, anche quando protetti.

1.7 I l problema della massima velocità di rotazione

Come già accennato, ciascun avvolgimento è sostanzialmente equivalente dal puntodi vista elettrico ad un induttore in serie ad un resistore.In un motore passo-passo in rotazione, la corrente deve passare continuamente da unvalore nullo al valore nominale; se il motore deve ruotare velocemente, questecommutazioni devono ovviamente essere rapide. Purtroppo la velocità dicommutazione è limitata dalla costante di tempo (indicata dalla lettera τ) del circuitoR-L costituito dall 'avvolgimento stesso.Un induttore tende a mantenere costante la corrente che scorre in esso. Applicandouna tensione a gradino ad un induttore la corrente aumenta secondo una curvaesponenziale il cui andamento dipende dalla costante di tempo:

a

a

R

L=τ

Page 13: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 1 I motori stepper

Pagina 13

dove La è l'induttanza (in Henry) ed Ra la resistenza (in Ohm) equivalentedell'avvolgimento. In genere non è possibile agire su La per diminuire tale tempo inquanto esso dipende dai parametri costruttivi del motore.Come per tutti i motori elettrici, la coppia meccanica disponibile è proporzionale allacorrente che attraversa gli avvolgimenti. Questo significa che durante la caricadell'induttore che costituisce una fase, non tutta la coppia nominale del motore èsubito disponibile. Inoltre, quando la corrente deve andare a zero, in realtà essadecresce lentamente, e analogamente anche il campo elettromagnetico della fase nonva repentinamente a zero tentando di "frenare" il motore.

Esistono diverse tecniche per ridurre il tempo di commutazione e quindi aumentare lavelocità di rotazione, una tra queste è l'aumento della resistenza internadell'avvolgimento.Osservando la relazione sopra riportata si vede come, per diminuire la τ, bastiaumentare la Ra: la resistenza da utili zzare nella formula del tempo di carica è quelladell'avvolgimento sommata ad una eventuale resistenza esterna da porre in serieall 'avvolgimento stesso.Nel caso in cui venga aggiunta in serie all'avvolgimento una resistenza esterna, iltempo di carica dipende da:

exta

a

RR

L

+=τ

tempo evidentemente minore.Bisogna però fare delle considerazioni: per ottenere la stessa corrente sia nel caso diassenza che di presenza della resistenza esterna, si dovranno avere tensioni dialimentazione diverse. Ad esempio, se si intende usare una Rext pari alla Ra, bisognaraddoppiare la tensione di alimentazione, raddoppiando quindi la potenza elettrica dafornire. La potenza in eccesso viene dissipata come calore nella resistenza esterna chedeve quindi essere opportunamente dimensionata.È da notare anche che nel caso in cui sia presente la Rext, la resistenza stessa provvedeanche alla dissipazione della potenza accumulata nella fase durante il pilotaggioPWM, rendendo più rapido il passaggio allo stato off .

Figura 7

Page 14: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 2 Descrizione dell 'unità di potenza

Pagina 14

Capitolo 2

Descr izione dell' unità di potenza2.1 Generalità sul motore NSK

Prima di passare alla descrizione di com'è stata realizzata l'unita di potenza, bisognaconoscere le caratteristiche tecniche del motore a riluttanza variabile utilizzato: il motoreè l'YS3040GN501 della NSK. Questo motore ha lo statore costituito da tre fasi, ognunacon sei espansioni polari, arrivando così ad un totale di diciotto espansioni polari. Ogniespansione è composta da 8 denti, per un totale di 144.Il rotore invece, ha sulla sua circonferenza esterna un totale di 150 denti, aventi lo stessopasso di quelli presenti sullo statore. In questo modo, sono esattamente affacciati alrotore solo il gruppo di denti appartenenti alle espansioni polari di una singola fase; glialtri gruppi sono sfasati rispettivamente di 1/3 e 2/3 del passo dei denti.Inoltre, per come è strutturato il motore, per il numero di poli presenti all'interno di essoe per la tecnica di pilotaggio utilizzata (vedi Capitolo 4), non possono esserci problemi diblocco dovuti alla perdita di passo, come descritto nel capitolo precedente; bensì ilmotore può rimanere fermo soltanto se la coppia disponibile non riesce a vincere l'inerziadel rotore stesso.

2.2 Descrizione generale

L’unità di potenza realizzata, che permette il funzionamento del motore, è suddivisaprincipalmente in tre parti:

• La prima (Control stage) è quella dedicata al controllo di corrente dove entrano isegnali di riferimento e le misure di corrente, provenienti dai sensori.

• La seconda (PWM Stage) è quella dedicata alla generazione del pilotaggio PWM.

Page 15: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 2 Descrizione dell 'unità di potenza

Pagina 15

• La terza (Power stage) è quella dedicata all ’alta potenza, da cui si prelevano i cavi dipotenza da connettere al motore.

Tutto ciò è rappresentato nello schema a blocchi di figura 8.

Figura 8

Come si può notare in figura 8, c’è un altro stadio non citato tra i precedenti, che è quelloper la generazione del trigger (Trigger generator), necessario al PWM per creare ilsegnale modulante a 25KHz. Inoltre, sono forniti in uscita anche i segnali di misura dellacorrente che scorre in ogni fase, provenienti da sensori ad effetto Hall .

Control stage

Più in dettaglio, la parte di controllo è costituita da:

• Un circuito, realizzato tramite un LM317, che genera un segnale di +5 volt (tarabile),utilizzato dai successivi operazionali . Questo è necessario perché i sensori ad effettoHall generano un segnale in tensione proporzionale alla corrente che scorre al lorointerno. Questo segnale è compreso tra 0 e +10 volt, ma le misure vengono riferitetutte a +5 volt; infatti, il sensore associa questo valore intermedio al passaggio nullodi corrente. Per ogni Ampere, che scorre nella fase, l’uscita del sensore cresce odecresce di un volt.

• Tre operazionali (LF353), uno per ogni fase, che effettuano la differenza (riferita a +5volt) tra, il segnale di riferimento da inseguire e quello generato dai sensori ad effettoHall .

Page 16: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 2 Descrizione dell 'unità di potenza

Pagina 16

• Tre operazionali che permettono di effettuare il controllo di tipo proporzionale (P),essendo stati montati come ampli ficatori invertenti.

• Tre operazionali utili zzati per effettuare il controllo di tipo integrativo (I), e quindimontati in configurazione di integratori.

• Tre operazionali utili zzati per effettuare il controllo di tipo derivativo (D), quindimontati in configurazione di derivatori.

• Infine, tre operazionali 1 utilizzati per effettuare, ognuno, la somma dei tre segnaliprovenienti dallo stadio di controllo proporzionale (P), da quello integrativo (I) e daquello derivativo (D), per realizzare un unico controllore, uno per ogni fase, di tipoPID.

All ’ interno dell ’unità di controllo sono stati montati tre jumpers per ogni fase, utilizzatiper l’attivazione o disattivazione di ogni singolo stadio P, I o D, collegati ognuno ad undiodo led che si accende quando il relativo stadio è attivo. Questo permette di sceglierese util izzare solo un controllo di tipo proporzionale P, oppure di tipo proporzionaleintegrativo PI, proporzionale derivativo PD, o un controllo completo di tipo PIDproporzionale integrativo derivativo.

PWM stage

Lo stadio del circuito che genera il segnale PWM è composto da:

• Tre circuiti, uno per ogni fase, costituiti ognuno da un saturatore ed un buffer. Ilcircuito di saturazione serve ad evitare che il segnale proveniente dal controlloresuperi gli 8.2V e scenda al disotto di 1.8V, mentre il buffer, ottenuto utilizzando unoperazionale configurato in maniera opportuna, serve a disaccoppiare lo stadio PWMdallo stadio di controllo.

• Un circuito realizzato con un NE555, che genera il segnale di trigger a 25Khz,utilizzato dagli altri NE555 per generare il segnale PWM.

• Tre NE555, ognuno configurato in maniera da generare un’onda quadra con la stessafrequenza del trigger, ma avente duty-cycle proporzionale al segnale provenientedall’unità di controllo. Per fare in modo che il segnale PWM sia generato in manieralineare, bisogna rendere lineare l’andamento del segnale di “ threshold”corrispondente alla carica di un condensatore. Ciò è stato ottenuto tramite un circuitogeneratore di corrente costante realizzato con un transistor BC557.

In Figura 9 si può notare come viene generato il segnale di output (PWM) infunzione del segnale di controllo.

1 Gli operazionali utili zzati effettuano tutte le operazioni riferendosi, come già detto in precedenza, ad una massa di segnalecorrispondente ai +5V generati dall’LM317.

Page 17: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 2 Descrizione dell 'unità di potenza

Pagina 17

Figura 9

• Un 74HC14 util izzato per la generazione del ritardo della fase B rispetto alla fase A,nel caso in cui si voglia utilizzare l'unita di potenza per azionare un motore a correntecontinua. Questo ritardo è generato perché, come si nota in figura 10, per farfunzionare il motore DC, vengono esclusi i due diodi di ricircolo presenti sul pontedella fase A, ed al posto di questi vengono collegati, tramite altri due diodi, iMOSFet della fase B, ottenendo cosi un ponte a quattro MOSFet.

Figura 10

Se non ci fosse il generatore di ritardo, durante il passaggio dalla fase A alla fase B(o viceversa), potrebbe esserci un breve intervallo di conduzione contemporanea deiMOSFet delle due fasi, dovuto al piccolo ritardo di spegnimento dei MOSFetprecedentemente in conduzione. Ciò provocherebbe un violento passaggio dicorrente verso massa, provocando la rottura certa dei MOSFet. Il generatore diritardo, consente l’entrata in conduzione dei MOSFet della fase B, solo dopo la totaledisattivazione di quelli della fase A, tenendo conto dell'eventuale ritardo dispegnimento.

Page 18: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 2 Descrizione dell 'unità di potenza

Pagina 18

Power stage

La parte ad alta potenza è costituita da:

• Tre ponti ad H, costituiti ognuno da due MOSFet a canale N per il pilotaggio delponte e due diodi di ricircolo che, quando M1 ed M2 sono entrambi aperti,permettono alla corrente residua contenuta nell'induttanza di tornare verso il circuitodi alimentazione (Ea) per permettere la scarica dell'induttanza stessa.

La configurazione del ponte sopra descritto e rappresentato in figura 11, permette unagestione di tipo hard-chopping, in cui la corrente inizia a scorrere sul carico L soloper valori di duty-cycle superiori al 50%.

Figura 11

• Tre sensori ad effetto Hall , uno per ogni ponte, che generano segnali proporzionalialla corrente che scorre all ’ interno di ogni fase. Tale misura di corrente è necessariaper il controllo in corrente che è stato adottato in questa unità di potenza.

• Tre integrati IR2113, ognuno utilizzato per il pilotaggio dei due MOSFet contenuti inogni ponte.

• Tre operazionali , utilizzati per bufferizzare i tre segnali provenienti dai sensori dicorrente.

Page 19: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 19

Capitolo 3

Realizzazione del prototiposperimentale3.1 Descrizione del layout circuitale

L’unita di potenza descritta nel capitolo precedente, è stata realizzata costruendo dueschede, una per i circuiti a bassa tensione ed una per i circuiti ad alta tensione.

Figura 12

La scheda di bassa tensione, rappresentata in figura 12, è stata divisa in quattro quadrantifondamentali:

• In alto si trovano i tre controllori PID: uno per ogni fase.

Page 20: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 20

• In basso, a sinistra c'è il generatore di trigger ed i tre saturatori+buffer del segnale diingresso al PWM generator.

• In basso, al centro ci sono i tre PWM generator, che generano il segnale che gestiscela scheda ad alta tensione.

• In basso, a destra c'è il generatore di ritardo necessario per il funzionamento delmotore DC.

La scheda ad alta tensione, rappresentata in figura 13, invece, è costituita dai tre pontiche alimentano le tre fasi, ed ogni ponte è costituito da:• Il relativo sensore ad effetto Hall che rileva l’andamento della corrente nella fase.• L’ integrato IR2113 per gestire i MOSFet del ponte.• L’ampli ficatore operazionale per la realizzazione del buffer sulla misura di corrente.

Figura 13

3.2 Fotoincisione dei circuiti stampati

Le due schede sono state realizzate in due passi, il primo costituito dalla realizzazionedel master del circuito stampato, il secondo costituito dall ’ incisione del circuito stessosulle basette ramate.Per la realizzazione del master di ogni scheda si è fatto uso del programma OrCAD.Inizialmente è stato creato, per ogni circuito da realizzare, uno schema elettricoutilizzando l'applicazione Capture CIS. Successivamente, tramite Layout Plus, si èpassati alla realizzazione della basetta vera e propria. Quest’applicazione, facendo usodello schema elettrico costruito in precedenza, è in grado di realizzare un masterautonomamente, posizionando prima i componenti e poi tracciando le piste in manieraopportuna, facendo loro percorrere a la via più breve per effettuare il collegamento tra uncomponente ed un altro. I nuovi master (o maschere) rappresentati in figura 14 e figura

Page 21: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 21

15 vengono poi utilizzati per la realizzazione delle basette finali . Per incidere il mastersulle basette ramate si è utilizzata la tecnica della fotoincisione.

Figura 14

Page 22: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 22

Figura 15

Pr incipi di base

La fotoincisione di un circuito stampato necessita innanzitutto di una basetta ramata sullaquale sia stato applicato uno strato di photoresist: un materiale fotosensibile in grado di

Page 23: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 23

mutare le proprie caratteristiche chimiche in seguito ad un’esposizione alla luceultravioletta (UV). In sostanza, il photoresist ha la funzione di realizzare uno stratoprotettivo per il rame della basetta durante l'attacco chimico per l'asportazione delmetallo in eccesso; mantenendo tale strato protettivo solo laddove dovranno esistere lepiste, queste verranno conservate, ottenendo in tal modo il l ayout desiderato. Per ottenerela rimozione del photoresist solamente in corrispondenza delle aree nelle quali il rame varimosso, si applica una maschera (opaca in determinate aree) sulla basetta, e si espone lasuperficie, così protetta, alle radiazioni UV. A questo proposito risulta necessarioeffettuare una distinzione: esistono in commercio basette presensibili zzate conphotoresist positivo e basette presensibil izzate con photoresist negativo. Nel primo casovanno esposte alla luce solo le aree nelle quali il rame andrà rimosso, nel secondo caso,viceversa. Generalmente si utilizzano basette con photoresist positivo come quelle usateda noi; la maschera da realizzare deve allora essere opaca, (o meglio non trasparente) incorrispondenza delle piste e trasparente in corrispondenza delle aree nelle quali il rameva rimosso.

Esposizione ai raggi UV

L'esposizione della basetta alle radiazioni UV è stata effettuata tramite un bromografo.Questo apparecchio, dotato di particolari lampade a raggi ultravioletti (UV), è in grado diinnescare la trasformazione chimica del photoresist.

Realizzazione del bromografo.

Il bromografo util izzato è stato costruito utilizzando come base di partenza un vecchioscanner HP. Il primo passo è stato quello di svuotare totalmente l’ interno dello scanner,lasciando solo la scheda di alimentazione che è stata sfruttata per alimentare l’unità ditemporizzazione.Successivamente nel suo interno è stato installato:

• Un circuito di temporizzazione realizzato tramite un NE555.• Tre lampade UV-C, con i rispettivi circuiti di alimentazione composti ognuno da un

trasformatore e da uno starter.

Il circuito di temporizzazione è stato realizzato secondo lo schema rappresentato infigura 16.

A riposo, il circuito si trova con l’uscita Q dell'IC1 a livello basso di 0V, cosìcche Q2non sia polarizzato, ed il relé non sia eccitato. Con Q dell'IC1 a 0V, sarà basso ancheil pin 7 (DIS) e pertanto C5 rimane scarico. Il contatto NA è collegato al pulsanteesterno di innesco. Se tale contatto NA permane aperto, Q1 è interdetto e pertanto iltrigger (TR) rimane a livello alto attraverso la R4 da 22k.

Non appena il contatto NA si chiude, anche per un breve istante, attraverso D8, C3,R5 e D3 arriva un impulso positivo alla base di Q1 che va in saturazione portando il

Page 24: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 24

pin di trigger (TR) di IC1 al l ivello basso così da far commutare l'uscita Q dell 'NE555a livello alto.

Figura 16

Page 25: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 25

In queste condizioni si polarizza Q1, si eccita il relé RL1 e il transistor Q5 (collegatotramite il diodo D6 e la resistenza R7 all 'uscita dell'NE555) si innesca, tenendo alivello basso il punto di connessione tra C3 e R5. In questo modo, il segnale di triggerè mantenuto alto durante tutto il ciclo di temporizzazione, bloccando eventuali altriimpulsi positivi dovuti all’eventuale azionamento del pulsante NA, che potrebbero farripartire il ti mer. Nel frattempo, il pin 7 dell 'IC1 (open collector) si apre e lasciacaricare C7 attraverso il potenziometro R2. Quando C7, (e quindi il pin 6 dell 'IC1)raggiunge circa i 2/3 dell’alimentazione (che corrisponde a +12V) è terminato il ciclodi temporizzazione e l'uscita dell ’NE555 torna a livello basso togliendo eccitazione alrelé RL1.

In base alla descrizione appena effettuata, il tempo di eccitazione del relétemporizzazione dipende dalla resistenza selezionata tramite la regolazione deltrimmer. Quando il trimmer (che è posizionato sul fronte anteriore del bromografo),viene ruotato completamente verso sinistra, si ha un tempo minimo di 0,1 secondicirca. Ruotando invece il trimmer completamente nel verso opposto, si ottiene latemporizzazione massima di circa 2 minuti e mezzo. Il tempo di esposizione utilizzatoper la realizzazione delle schede è di circa 2 minuti e 10 secondi.

Sviluppo

Dopo l’esposizione della scheda fotosensibile tramite bromografo, si passa alla fase dellosviluppo della basetta, per rimuovere il photoresist laddove si desideri ottenerel'asportazione del rame. Nel caso di photoresist positivo sarà quello esposto alla luce adessere asportato, nel caso di photoresist negativo, viceversa. La soluzione di sviluppo ècostituita da idrossido di sodio (NaOH), noto anche come soda caustica, disciolto inacqua distillata in una quantità di 8 grammi/lit ro. La basetta viene immersa nellasoluzione mediante, ad esempio pinze di plastica; è importante non graffiarne lasuperficie. Se il photoresist è stato esposto correttamente, dopo alcuni secondidall’ immersione si nota un oscuramento delle parti non esposte e contemporaneamente sicomincia a vedere dissolversi il photoresist esposto. Per assicurare uno sviluppouniforme si deve agitare la basetta o il recipiente; se la basetta è a doppia faccia bisognaevitare, per ovvi motivi, di appoggiarla sul fondo. Periodicamente, diciamo ogni 30secondi /1 minuto, si estrae la basetta dalla vaschetta, si lava abbondantemente con acquaed infine la si esamina. Lo sviluppo è completo quando il rame che deve essere asportatoappare lucente, senza opacità causate da eventuale photoresist residuo, e il disegno dellepiste risulta ben visibile. In aggiunta, deve essere possibile sentire al tatto lo scalinodovuto al photoresist che protegge le parti in rame da preservare. Questa operazionerichiede di solito 5-6 minuti. Se lo sviluppo non è completo la basetta va immersanuovamente. Occorre prestare attenzione a non esagerare con lo sviluppo; infatti se siinsiste troppo, anche una parte del photoresist non esposto potrebbe essere rimossa. Sitenga presente che, se il photoresist da rimuovere non è stato disciolto completamente,ma ne rimane solo qualche sottile strato in alcuni punti, esso sarà poi rimosso dallasoluzione di cloruro ferrino per l’asportazione del rame. Se dopo dieci minuti diimmersione nella soluzione le piste ancora non appaiono, o appaiono con pochissimo

Page 26: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 3 Realizzazione del prototipo sperimentale

Pagina 26

contrasto rispetto al resto, significa che l'esposizione è stata insufficiente, e seppure siapossibile tentare con uno sviluppo prolungato della basetta, è consigliabile utilizzarneun'altra.

Incisione

Eseguito lo sviluppo, si esamini la basetta per assicurarsi che non vi siano vistosi graff isul photoresist; in caso contrario è consigliabile ritoccare le piste in tali punti conl'apposita penna per circuiti stampati onde evitare interruzioni nelle tracce in rame.La basetta quindi va immersa nella soluzione di cloruro ferrico, anche in questo caso adesempio con pinze di plastica, per un tempo variabile tra qualche minuto e qualchedecina di minuti. Il tempo di immersione in acido dipende principalmente dal grado diutilizzo del l iquido e dalla temperatura dello stesso. Come per lo sviluppo, anche inquesta fase si deve fare attenzione a garantire un’erosione uniforme sull 'intera superficie,pertanto è opportuno agitare periodicamente la soluzione e muovere la basetta; questovale maggiormente per le basette a doppia faccia che per ovvi motivi non vanno adagiatesul fondo, bensì tenute sospese in qualche modo. La basetta va estratta periodicamenteper controllare il grado di avanzamento del processo. Appena tutto il rame in eccesso èstato rimosso basta sciacquare la basetta con acqua. Se invece si nota che, anche dopoun’ immersione prolungata, in alcuni punti il rame non è stato rimosso, questo puòsignificare che il photoresist non è stato rimosso completamente; si può provare allora,con molta delicatezza, ad eseguire questa operazione con qualche utensile, ad esempioun cacciavite, facendo però attenzione a non graffiare anche il photoresist che deveproteggere le piste.Ad operazione ultimata è possibile rimuovere il photoresist con alcool o acetone, oppurecon carta abrasiva molto fine (grana 500 o maggiore), sebbene il photoresist siageneralmente saldabile e, di fatto, può proteggere le piste dalla loro lieve e naturaleossidazione.

Foratura

A questo punto la basetta è quasi pronta: resta solamente da eseguire l'operazione diforatura. I fori possono essere effettuati con un trapano a colonna, util izzando una puntada 1mm di diametro per i fori dove vanno montati i componenti di piccola potenza(resistenze, condensatori, zoccoletti per integrati ecc..) ed una da 1,2 mm di diametro peri fori dove vanno montati i componenti di alta potenza (relé, MOSFet, diodi, ecc..). Nelnostro caso è stato utilizzato un trapano a colonna disponibile presso il laboratorio diRobotica.

Page 27: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 4 Pilotaggio dell ’unità di potenza

Pagina 27

Capitolo 4

Pilotaggio dell' unità di potenza4.1 Creazione del diagramma di flusso con Simulink

Il pilotaggio dell 'unità di potenza è stato realizzato interfacciando quest'ultima ad unPC, utilizzando come hardware una scheda DSP DS1102 della dSpace e comesoftware il pacchetto applicativo Simulink di Matlab ed il programma ControlDeskdella dSpace.Tramite Simulink è stato creato il diagramma di flusso rappresentato in figura 17,utilizzato per la prova generale dell ’unità di potenza.

Figura 17

Page 28: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 4 Pilotaggio dell ’unità di potenza

Pagina 28

Il diagramma nella parte alta serve a trasmettere i segnali di riferimento suiconvertitori digitale/analogico (DAC) del DSP, mentre quello in basso è servito per laricezione dei dati dai convertitori analogico/digitale (ADC) del DSP.Nel primo diagramma sono presenti tre generatori di onda quadra (Pulse Generator).Questi generano, ognuno, un’onda con valore di Duty-cycle del 33.3% del periodototale. Essendo quest'ultimo pari a 33.3 mill isecondi, il Duty-cycle avrà una durata di11.1 mill isecondi. Rispetto al primo generatore, il secondo ha gli stessi parametri delprimo, tranne il tempo di ritardo, infatti il segnale viene generato con 11.1milli secondi di ritardo. La stessa cosa avviene per il terzo generatore, ritardato di 22.2milli secondi. Le tre ampiezze dei segnali, che hanno valore unitario, vengono tuttemoltiplicate per il guadagno costante 0.4 (questo guadagno servirà poi nell’ interfacciagrafica di ControlDesk per far variare l’ampiezza del segnale di riferimento durante ilfunzionamento in Real-time) e sommate ad un valore costante 0.5. L’ultima costanteè necessaria perché l’unità di potenza fa passare corrente nelle fasi, solo con segnalidi riferimento maggiori di 5 volt.Le due costanti sono state ricavate tenendo presente che il DAC, su ogni canale diuscita, genera un segnale che varia tra 0 e 10 volt. Tale uscita corrisponde al segnaleinviato al DAC nel diagramma Simulink a meno di un fattore 10. Quindi sommandola costante 0.5, ad ogni singolo segnale, (che ha un ampiezza massima pari a 0.4) iningresso ad ogni canale del DAC si ottiene un segnale tra 0.1 e 0.9, che corrispondein uscita ad una tensione che varia tra 1 e 9V. Le tre tensioni in uscita dal DAC delDSP sono connesse ai riferimenti di tensione della scheda logica dell 'unità di potenza.

Figura 18

Page 29: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 4 Pilotaggio dell ’unità di potenza

Pagina 29

In figura 18 sono rappresentati, ad esempio, i segnali relativi al pilotaggio pulsantedel motore. Si osservi che i segnali sono sfasati di 60 gradi rispetto ad un periodo diazionamento pari a 33.3 mS.Questo sfasamento è necessario perché, per permettere al motore di girare, bisognaattivare in sequenza una fase per volta come già discusso nel capitolo 1.Il diagramma in basso in figura 17 è utilizzato per l'acquisizione dei tre segnali ,generati dai sensori ad effetto Hall, connessi ai tre ingressi dell'ADC presenti sulDSP. Poiché gli ingressi del DSP sono scalati di un fattore 10, le uscite ADC nelblocco Simulink sono moltiplicate per un fattore 10 per ricostruire l'ampiezzaoriginale. In questo modo vengono generate tre variabil i, da utilizzare nelControlDesk, per graficare l'andamento della corrente in ogni fase (vedi figura 19).

4.2 Util izzo di ControlDesk

Tramite il programma ControlDesk, è stata realizzata2 l'interfaccia grafica per ilpilotaggio del motore. Come mostrato in figura 19, l'interfaccia è composta da:• Uno slider, che permette di far variare l'ampiezza del segnale di riferimento che

arriva su ogni fase modificando, come accennato in precedenza, la costante divalore 0.4 presente nel diagramma Simulink.

• Un display, che consente di visualizzare la misura esatta dell 'ampiezza del segnaledi riferimento.

• Tre grafici, che rappresentano, l'andamento nel tempo del segnale proveniente daisensori ad effetto Hall e quindi, in maniera indiretta, l'andamento della correnteche scorre in ogni fase.

Figura 19

2 Fare riferimento all'APPENDICE 1

Page 30: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 5 Verifica sperimentale del prototipo

Pagina 30

Capitolo 5

Ver ifica sperimentale del prototipo5.1 Fase preliminare

Prima di effettuare le prove è stato necessario realizzare un cavo per connettere l'unitàdi potenza con la scheda DSP installata sul PC. Questo è costituito da un connettore a62 poli 3 che permette la connessione al DSP, ed un connettore a 25 poli che permettela connessione aull 'unità di potenza. La piedinatura di connessione presente sulconnettore a 25 poli è rappresentata in tabella 1.

Tabella 1

NOME PIN TIPOADC1 6 INPUTADC2 7 INPUTADC3 8 INPUTADC4 9 INPUTAnalog GND 15Analog GND 16Analog GND 17Digital GND 18DAC1 1 OUTPUTDAC2 2 OUTPUTDAC3 3 OUTPUTDAC4 14 OUTPUTNC 4-5-9..13-19..25

Una volta effettuata la connessione del bus interno che collega le due schededell'unità di potenza con il DSP, ed i vari collegamenti per alimentare il circuito, si èpotuto procedere nell'effettuazione delle prove sperimentali .

3 Per la piedinatura di connessione del DSP DS1102, si è fatto riferimento al manuale Floating-Point ControllerBoard della dSPACE.

Page 31: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 5 Verifica sperimentale del prototipo

Pagina 31

5.2 Prove sperimentali

Le prove sono state effettuate sul motore YS3040GN501 della NSK rappresentato infigura 20. Come già detto nel capitolo 2, l'unità di potenza può gestire anche motoriDC come quello in figura 21 (un ESA 35). Entrambi i motori sono disponibili pressoil l aboratorio di robotica dell’università di Roma Tor Vrgata.

Figura 20

Figura 21

Inizialmente, è stato fornito il segnale di riferimento generato dal diagramma diSimulink già citato nel capitolo 4. Analizzando la fase A, sono stati acquisiti

Page 32: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 5 Verifica sperimentale del prototipo

Pagina 32

dall'oscilloscopio4 (e successivamente graficati), l'andamento del riferimento,l'andamento del segnale di controllo e l'andamento della corrente che scorre in ognifase (vedi figura 22). I primi due vettori prima di essere graficati sono stati fil trati conun filtro di media aritmetica centrata implementato in Matlab in una funzionedenominata mac.m, mentre il terzo vettore è stato filtrato con un filtro dinamico.

Figura 22

Bisogna notare come l'andamento della corrente della fase, salga molto lentamente alvalore nominale quando il segnale di riferimento è a livello alto e scenda in similmodo quando il riferimento torna a livello basso. Questo tempo necessario allacorrente per arrivare al suo valore nominale, come accennato nel capitolo 1 limita lavelocità massima che può raggiungere il motore. Nel caso in questione la velocitàmassima di rotazione, non supera 1 giro ogni 5 sec. Inoltre il motore, gira con unandamento prevalentemente a scatti. Ciò è stato attenuato utilizzando come segnale diriferimento un sin6(x) (vedi figura 23), che porta ad una rotazione meno discontinua.

4 Fare riferimento all'appendice 2.

Page 33: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Capitolo 5 Verifica sperimentale del prototipo

Pagina 33

Figura 23

In questo caso, però, la velocità di rotazione del motore si è ulteriormente ridotta acausa della sovrapposizione parziale dei segnali di riferimento. Questasovrapposizione fa sì che la fase successiva venga attivata prima che quellaprecedente sia stata disattivata. Quest'ultima quindi richiamando il rotore si comportada freno rallentando notevolmente la velocità di rotazione.Si osservi che per ottenere controlli a coppia costante bisogna aff rontare (e risolvere)un diff icile problema di controllo non-lineare legato alla struttura del motore. In ognicaso, l'unità di potenza realizzata costituisce un elemento essenziale per l'attuazionedi qualsiasi strategia di pilotaggio, dalle più semplici (come quelle in figura 22 e 23)a quelle più sofisticate che saranno argomenti futuri di studio.

Page 34: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Conclusioni

Pagina 34

Conclusioni

Il lavoro svolto si è articolato in tre punti fondamentali:

• In una fase preliminare sono stati studiati i principi fisici di funzionamento, leproblematiche e le tecniche di pilotaggio dei motori stepper.

• In seguito si è passati alla progettazione ed alla realizzazione dell'unità di potenza,e del relativo bromografo che ha permesso di realizzarla senza ricorrere allatecnica meno accurata del classico pennarello per circuiti stampati.

• Infine, dopo la realizzazione del prototipo e la taratura dei singoli stadi, sono stateeffettuate le prove sperimentali , che hanno dimostrato la robustezza e l’aff idabilitàdell'unità di potenza, realizzata con componenti elettronici a basso costo.

Page 35: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 1 Interfacciamento del DSP

Pagina 35

Appendice 1

Inter facciamento del DSPIntroduzione

L’ interfacciamento dell’unità di potenza con il computer è stato effettuato tramite ilDSP DS 1102 della dSPACE. Questo dispositivo è dotato di un pacchetto softwarechiamato ControlDesk che permette di interfacciare la scheda con il computer e di farinteragire i dati anche con il pacchetto software di calcolo numerico Matlabinstallando, all’ interno di quest’ultimo, una libreria con adeguate istruzioni per lagestione del DSP. Sono stati inoltre installati nuovi componenti anche all’ internodelle librerie di Simulink (un pacchetto simulativo con interfaccia utente a blocchiche lavora in associazione con Matlab), come per esempio l’ADC (convertitoreanalogico digitale) e il DAC (convertitore digitale analogico).Questi nuovi componenti, se utilizzati all’ interno di un diagramma di flusso diSimulink, interagiscono direttamente con i dispositivi corrispondenti presenti sullascheda del DSP attraverso un programma associato al DSP, denominato ControlDesk.

Indir izzamento del DSP

Il primo passo da effettuare, dopo l’ installazione della scheda DS 1102 all ’ interno delcomputer, è l’ indirizzamento della nuova periferica.Come default, l’ indirizzo base è 0300H (00110000B) ma nel caso in esame laperiferica entrava in conflitto con altre periferiche presenti sul PC, e per questomotivo è stata reindirizzata al nuovo indirizzo 0310H (00110001B).Per effettuare il reindirizzamento bisogna:

• Configurare gli switch che sono presenti sulla scheda DSP, utili zzando lastessa configurazione che si imposterà in seguito sulla Register Board.

• Avviare ControlDesk, dal Menù bar selezionare View e quindi Navigator ,appare così la finestra di navigazione nel caso non fosse attiva (vedi figura24).

Page 36: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 1 Interfacciamento del DSP

Pagina 36

Figura 24

• Dalla nuova finestra, in basso, selezionare Hardware. Dal Menu barselezionare Hardware, quindi Initialization e poi Register .

Si apre così una nuova finestra, rappresentata in figura 25, chiamata Register Board.

Figura 25

• Nella Register Board selezionare, tramite il comando Type, il tipo di schedainstallata (in questo caso la DS1102 DSP Controller Board).

• Per modificare l’ indirizzo base, basta muovere gli switch che vanno da 1 a 8sapendo che 0 = on, 1 = off e come gia accennato la configurazione degliswitch deve essere la stessa impostata sulla scheda DSP.

Se il nuovo indirizzo non entra in conflitto con altre periferiche, selezionando il tastoRegister la scheda verrà installata correttamente.

Page 37: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 1 Interfacciamento del DSP

Pagina 37

Generazione del diagramma di flusso in Simulink

L’ interfaccia tra il computer e la scheda DSP può essere effettuata:• Utilizzando solo il programma ControlDesk (in questo lavoro di tesi non si è

approfondito questo aspetto).• Oppure utilizzando Simulink e ControlDesk simultaneamente.

Tramite Simulink si crea un diagramma che genera i segnali di riferimento che vannoall ’unità logica di controllo dell’unità di potenza. Per trasmettere i segnali all ’unità sifa uso dei componenti DAC presenti all’ interno delle librerie di Simulink che, comedetto in precedenza, sono stati inseriti durante l’ installazione di ControlDesk.Da qui bisogna generare i files che permettono a ControlDesk di gestire i parametriricavati dalla simulazione, effettuata tramite Simulink, i quali hanno lo stesso nomeche è stato dato al file contenente il diagramma di flusso di Simulink, ma diversaestensione (in particolare, .OBJ e .TRC).

• Una volta creato il diagramma di flusso, dal Menù Bar di Simulink selezionareTools quindi RTW Options e si apre una nuova finestra per impostare iparametri della simulazione.

• Selezionando Solver tramite Type selezionare Fixed-step e tramite Fixed stepsize inserire il passo di campionamento, fatto ciò selezionare Apply e chiuderela finestra.

Ora il sistema è pronto per la creazione dei Files.• Selezionando nuovamente Tools cliccare su RTW Build, verranno così

compilati e generati i files necessari a far interagire ControlDesk con il DSP.

Trasferimento dell ’esperimento a ControlDesk

Tramite il comando RTW Build di Simulink, il DSP si avvia in maniera automaticamettendo subito in funzione il dispositivo/i connesso/i alle sue porte.Una volta generati i files tramite il precedente comando, si lancia il programmaControlDesk, e si pre-impostano i parametri per creare un nuovo esperimento che, inconclusione, sarà l’ interfaccia grafica da utilizzare per la gestione del DSP.

• Utilizzando l’Hardware Navigator bisogna aprire l’object file, che essendostato creato con Simulink, si trova all’ interno della cartella Work di Matlab.

Per aprire il file basta trascinarlo sopra alla scritta ds 1102 (vedi figura 26).Selezionando View, e successivamente ToolWindow, appare una nuova finestra.All ’ interno di essa selezionare Model, ed in questo modo, sulla destra appariranno levariabili che sono state utilizzate da Simulink durante la simulazione. Tali variabilisono riconfigurabil i da control desk, rendendo così possibile una gestione versatile

Page 38: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 1 Interfacciamento del DSP

Pagina 38

dell’esperimento. In particolare, le variabili possono essere collegate ad elementigrafici, quali indicatori cartesiani, barre di scorrimento e simili , così creando un veroe proprio pannello di interfacciamento tra utente e DSP.

Figura 26

Gestione dell' esperimento in ControlDeskPer gestire l'esperimento da ControlDesk, bisogna innanzitutto creare un esperimento.

• Per creare un nuovo esperimento dal Menu Bar selezionare File, quindi NewExper iment nel ControlDesk.

Di seguito va creato il foglio di lavoro dove andranno posizionati gli elementi graficiche verranno utili zzati per la gestione del DSP. Per creare il foglio bisogna:

• Selezionare File dal Menu Bar, poi New e successivamente Layout. Vengonocosì aperte due nuove finestre, una chiamata Layout ed un’altra InstrumentSelector come rappresentato in figura 27.

Per creare uno strumento all’ interno del Layout bisogna:

• Cliccare sul gruppo di strumenti contenente lo strumento che si interessa creare(es. Data Acquisition).

• All ’ interno di Instrument Selector fare doppio click sull ’ icona dello strumentoda creare (es. Plotter), e nella finestra Layout disegnare un rettangolo delladimensione desiderata, usando il mouse.

• Viene così creato lo strumento all’ interno del Layout. Il contorno rosso sulnuovo strumento indica che ancora non esiste una connessione valida con una

Page 39: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 1 Interfacciamento del DSP

Pagina 39

variabile, ossia lo strumento non è ancora collegato a nessun elementodell’esperimento.

• Per generare un collegamento con il nuovo strumento, bisogna prendere unavariabile dall’ interno del Variable Browser, e trascinarla sopra lo strumentocreato.

Figura 27

Una volta inseriti tutti gli strumenti desiderati, dal Menù Bar selezionare File e quindiSave, per salvare il nuovo Layout. Nell’ Instrument Navigator , in basso, selezionareExper iment e andare sul nome dell ’esperimento in oggetto (che è stato creato inprecedenza). Cliccando il tasto destro del mouse, selezionare Add All Opened Filesper aggiungere il Layout con i suoi strumenti all ’ interno dell’esperimento. Seguiti iprecedenti passi, dal Menu Bar selezionare Instrumentation e successivamenteAnimation mode per far si che l’esperimento cominci a gestire i dati in Real Time.

Page 40: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 2 Interfacciamento del TDS220 tramite Matlab 6.1

Pagina 40

Appendice 2

Inter facciamento del TDS220tramite Matlab 6.1

L’acquisizione dei dati dall’oscilloscopio Tektronix TDS_220, è stata effettuatatramite Matlab 6.1, util izzando la libreria che permette di interfacciare la porta serialeRS232 con Matlab.Il cavo utili zzato per il collegamento tra l’oscilloscopio ed il PC deve essere di tiponull-modem, la cui piedinatura è riportata in tabella 2.

Tabella 2

NOMEN° PIN SERIALE

OSC.N° PIN SERIALE PC Tipo di segnale

Ricezione dati(RxD, Rceive data)

3 2 Per PC input

Per OSC outputTrasmissione dati(TxD, Trasmit data)

2 3 Per PC output Per OSC input

Terminale dati pronto(DTR, Data terminal ready)

4 4 Per PC output Per OSC input

Massa del segnale(GND)

5 5

Set dati pronto(DSR, Data set ready)

6 6 Per PC input

Per OSC outputRichiesta di invio(RTS, Request to send)

8 7 Per PC output Per OSC input

Libero per trasmettere(CTS, Clear to send)

7 8 Per PC input

Per OSC output

I principali comandi Matlab che hanno permesso di gestire la porta sono:

• Serial( )• Fopen( )

Page 41: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 2 Interfacciamento del TDS220 tramite Matlab 6.1

Pagina 41

• Fprintf( )• Fscanf( )• Fclose( )• Delete( )

1. Tramite il comando serial( ) si imposta la porta seriale (COM) da utilizzareper il trasferimento dei dati. Una volta indicata la porta da util izzare vengonomodificati i parametri (se necessario) per la trasmissione dei dati. In questo caso èstato impostato il BaudRate a 9600b/sec, il Timeout a 30 sec. e l’ InputBuffersize a500000.

Il timeout è il tempo massimo in cui la porta rimane abilitata alla trasmissione oricezione dei dati, ossia se viene inviato un comando dalla seriale al dispositivo adessa connesso, il tempo massimo di attesa di risposta non deve superare il tempoindicato nella variabile timeout, che come default è 10 s, ma nel caso in esame è statoportato a 30 s. Nel caso venga superato questo tempo, Matlab invia un messaggiod’errore al prompt.L’ InputBuffersize rappresenta la grandezza del buffer dove vengono immagazzinati idati durante l’acquisizione dal dispositivo connesso alla porta.2. Tramite fopen( ) viene aperta la comunicazione con la porta scelta in

precedenza.3. Tramite fprintf( ) si iniziano ad inviare i comandi al dispositivo connesso

sulla porta.4. Con fscanf( ) si ricevono i dati dal dispositivo dopo che gli è stata inviata una

richiesta.5. Con i comandi fclose( ) e delete( ) si chiude la comunicazione con la

porta.

Dopo questa breve introduzione possiamo passare alla spiegazione dettagliata dellafunzione oscilloscopio.m che è riportata nelle ultime pagine dell ’appendice 2.

Alla funzione viene passato un solo parametro (d) che può essere 1 o 2. Taleparametro corrisponde al canale dell’oscilloscopio da cui si desidera acquisire i dati.La funzione restituisce due vettori contenuti, rispettivamente, nelle variabili volt,tempi.Le prime quattro istruzioni abil itano la porta seriale COM1, impostando i parametriper la comunicazione con l’oscilloscopio.Dopo aver aperto la comunicazione con la porta seriale si iniziano ad inviare leistruzioni5 necessarie per acquisire i dati dal TDS220. Ogni istruzione è contenuta traapici, all ’ interno della riga di comando fprinf( ) .Esempio in fprintf(s,'ACQuire:STATE OFF') , l’ istruzioneACQuire:STATE OFF blocca l’ immagine presente sullo schermo del TDS220, per

5 Per le istruzioni utilizzate per la comunicazione con l’oscilloscopio, si è fatto riferimento al Programmer Manualdella Tektronix serieTDS200 disponibile su internet sul sito della Tektronix.

Page 42: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 2 Interfacciamento del TDS220 tramite Matlab 6.1

Pagina 42

permettere successivamente di acquisire i dati della misura effettuatadall’oscilloscopio.Dopo aver acquisito i dati dallo strumento, il primo passo da effettuare è laconversione in numero della stringa contenuta nella variabile source. Talevariabile contiene i dati inviati dall ’oscilloscopio al PC, ovvero contiene le misure,non in scala, effettuate campionando l’onda presente sullo schermodell’oscilloscopio. Il campionamento è effettuato con un passo di 250 campioni/Div equindi con un totale di 2500 campioni, ed i campioni sono separati da virgole.La conversione da stringa in numero è effettuata nel primo ciclo FOR, usando lavariabile app che contiene i valori risultanti dalla conversione.I 2500 valori di tensione acquisiti, come già detto, non sono in scala, infatti sonoventisei volte più grandi rispetto alla scala (Volt/div) impostata sull’oscilloscopio.Per riportare la misura al suo valore effettivo bisogna, prima acquisire il valore dellascala che si sta utilizzando sull’oscilloscopio, (questo è effettuato tramite la riga dicomando fprintf (s,'WFMPre : WFID?') e il primo ciclo WHILE) . Ilvalore è memorizzato nella variabile Yunit e, nel secondo ciclo FOR, vieneassegnata la variabile Volt contenete i 2500 valori di tensione in scala.La stessa cosa viene effettuata per il vettore dei tempi. Per l’acquisizione del valoredella scala dei tempi impostata sull’oscilloscopio, viene utilizzato il secondo cicloWHILE e nel secondo ciclo FOR viene assegnata la variabile in scala tempi .

Osservazione:• Poiché le misure vengono riferite agli assi cartesiani presenti sullo schermo

dell’oscilloscopio è opportuno, prima di collegare le sonde, tarare conaccuratezza lo zero dell ’oscilloscopio.

• Prima di acquisire i dati dall ’oscil loscopio bisogna controllare che i parametridella porta seriale RS232 presente su di esso, coincidano con i parametri dellaporta seriale del PC. Per effettuare questa verifica basta premere il tasto util itàpresente sul pannello frontale dell’oscilloscopio, selezionare opzioni ed infineimpostazioni della por ta RS232.

È stato implementato un esempio che utilizza la funzione oscilloscopio.m,denominato acquisizione.m, che permette di acquisire tre misure,memorizzando successivamente i vettori in un file chiamato exp1.mat.Quest'ultimo file viene utilizzato dal file grafico.m per graficare le tre misureacquisite. All'interno del file grafico.m viene utilizzata una funzionedenominata mac.m che permette di ''filtrare'' il segnale. La funzioneacquisizione.m è stata utilizzata per generare le figure 22 e, 23 riportate nelcapitolo 5.

Listato della funzione Oscilloscopio.m

function [volt,tempi,Xunit,Yunit]=oscilloscopio(d);s = serial('COM1');

Page 43: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 2 Interfacciamento del TDS220 tramite Matlab 6.1

Pagina 43

s.InputBuffersize = 500000;s.BaudRate =9600;s.timeout=30;fopen(s);fprintf(s,'ACQuire:STATE OFF')fprintf(s,'DATa : INIT')

switch d case d==1 | d==3 fprintf(s,'DATa:SOUrce CH1'); case d==2 fprintf(s,'DATa:SOUrce CH2');end;fprintf(s,'DATa:ENCdg ASCIi')fprintf(s,'DATa:WIDth 1')fprintf(s,'DATa:STARt 1')fprintf(s,'DATa:STOP 2500')fprintf(s,'DATa?')source=fscanf(s)fprintf(s,'CURVe : block')fprintf(s,'CURVe?')fprintf(s,'ACQuire:STATE ON')source=fscanf(s);j=1;k=1;clear app;for i=1:size(source,2) if source(i)==',' app(j)=str2num(stringa); j=j+1; k=0; clear stringa; else stringa(k)=source(i); endk=k+1;endfprintf(s,'WFMPre:WFID?')dati=fscanf(s);v=0;z=1;i=0;clear str;while i~=size(dati,2) i=i+1; if v==3 & dati(i)~=',' & dati(i)~='s' str(z)=dati(i); z=z+1; elseif v==4 i=size(dati,2); end if (dati(i)==',')|(dati(i)=='s') v=v+1; endendXunit=str2num(str);

v=0;z=1;i=0;clear str;while i~=size(dati,2) i=i+1; if v==2 & dati(i)~=',' & dati(i)~='V' str(z)=dati(i);

Page 44: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 2 Interfacciamento del TDS220 tramite Matlab 6.1

Pagina 44

z=z+1; elseif v==3 i=size(dati,2); end if (dati(i)==',')|(dati(i)=='V') v=v+1; endendYunit=str2num(str);

for i=1:2499 % Tramite questo ciclo For vengono tempi(i)=i*Xunit/250 -5*Xunit; % riscalati i dati acquisiti volt(i)=app(i)*Yunit/26; % coerentemente con le impostazioniend % dell'oscilloscopio al % momento dell'acquisizione.fclose(s);

delete(s);clear s;

Listato del file acquisizione.mclear all:

for l = 1:3, disp('Digitare il numero del canale da cui acquisire le misure'); d=input('CH? :'); while (d~=1) & (d~=2) disp('Il canale richiesto non è presente digitare 1 o 2'); d=input('CH? :'); end switch l case 1, [volt1,tempi1]=oscilloscopio(d); case 2, [volt2,tempi2]=oscilloscopio(d); case 3, [volt3,tempi3]=oscilloscopio(d); endendsave exp1;

Listato del file Grafico.mload exp1 v1m=mac(volt1',10); v2m=mac(volt2',10); v3m=mac(volt3',10);figure(1);subplot(3,1,1); plot(tempi1,v1m)subplot(3,1,2); plot(tempi2,v2m)subplot(3,1,3); plot(tempi3,v3m)

Listato della funzione mac.mfunction yout=mac(u,n)

temp=[u; u(length(u))*ones(n,1)];y=zeros(size(temp));

for c=1:n,

Page 45: Indice - Ingegneria dell'Automazione - Roma Tor Vergata ...robot2.disp.uniroma2.it/~zack/tesisti/LepriAndrea/triennale/tesi.pdf · laboratorio di robotica. Infine, ... contatti elettrici

Appendice 2 Interfacciamento del TDS220 tramite Matlab 6.1

Pagina 45

temp = [temp(1); temp(1:length(temp)-1)]; y=y + temp;end

y=y/n;

yout = y((n-1)/2+2:length(u)+(n-1)/2+1);

%plot(u,'b');%hold on;%plot(yout,'r');%hold off;