Tutorial sull`utilizzo di Orcad Capture vs. PCB editor

Transcript

Tutorial sull`utilizzo di Orcad Capture vs. PCB editor
Tutorial sull’utilizzo di Orcad Capture vs.
PCB editor
L’ambiente Orcad CAPTURE è utilizzato per il progetto di circuiti elettronici e la loro
simulazione. Da CAPTURE è possibile generare la Netlist associata a un circuito, da utilizzare come
ingresso per il PCB Editor, tool per la realizzazione del layout.
Questo tutorial considera come caso di studio il progetto di un oscillatore a ponte di Wien, senza
alcun circuito di stabilizzazione delle oscillazioni.
Lanciare Orcad Capture, quindi: File > New > Project…
Scegliere un nome per il progetto (ad esempio osc_wien).
Utilizzando l’opzione Analog or Mixed A/D, sarà possibile sia simulare il circuito a partire dallo
schematico che generare la Netlist finale per interfacciare Capture al PCB editor. Con il tasto
browse, scegliere dove salvare il progetto (si veda Figura 1).
Figura 1. Nuovo progetto in Capture.
Figura 2 mostra la finestra successiva: dare il comando Create a blank project.
Figura 2. Creazione di un progetto vuoto.
Si aprirà una vista con la Project Manager Window, mostrata anche in Figura 3, per la gestione
degli schematici, che permette di organizzarli in cartelle, gestire le simulazioni, … e una pagina
bianca di schematico nominata PAGE 1 per default. Dalla Project Manager Window si nomina lo
schematico “wien” e la cartella SCHEMATIC1 “CIRCUITOBASE” (si potrà aggiungere una cartella
successiva contenente un altro schematico, eventualmente l’oscillatore con un circuito di
stabilizzazione, o inserire un’altra pagina di schematico sempre nella cartella CIRCUITOBASE…).
Figura 3. Project Manager Window.
Nella pagina dello schematico, per poter inserire i simboli circuitali necessari per le simulazioni, è
necessario preliminarmente selezionare Place > Part (dal menu a tendina oppure esiste nella parte
destra un tasto di scelta rapida, oppure digitando lo shortcut p), quindi Add library (shortcut
Alt+A) e selezionare l’intero contenuto della cartella Pspice. In tal modo, verrà caricata una
quantità notevole di componenti più o meno complessi, di cui solo un numero ridotto servirà per il
progetto dell’oscillatore. Si carichi, inoltre, la libreria dei connettori (Connector.olb), che servirà
per inserire i pin per la connessione dell’oscillatore con l’esterno, nella successiva fase di sbroglio.
Figura 4. Aggiunta delle librerie. Evidenziata Connector.olb.
Si passa a questo punto a disegnare lo schematico. Il circuito base di un oscillatore a ponte
di Wien, dalla teoria, è quello mostrato in Figura 5.
Figura 5. Schematico dell’oscillatore a ponte di Wien.
Per generare una sinusoide con frequenza pari a f0 ≈ 1 kHz, i componenti possono avere i seguenti
valori: C = 1 nF, R = 159.155 kΩ (in questa fase di progetto si è deciso di non approssimare i valori
dei componenti a valori commerciali, passaggio che potrà essere eseguito successivamente),
R1 = 10 kΩ, R2 = 21 kΩ.
Si passa a questo punto a disegnare lo schematico. Occorrono:
-
4 resistenze R dalla libreria Analog;
-
2 condensatori C dalla libreria Analog;
-
1 amplificatore operazionale uA741 dalla libreria Opamp;
Tali componenti saranno poi inseriti anche nel layout. Ai fini della simulazione, occorrono inoltre i
riferimenti di tensione:
-
Riferimento di terra: place ground (shortcut G) > 0/SOURCE.
-
Riferimenti di tensione VDC del valore di ±12 V dalla libreria Source, per l’alimentazione
dell’operazionale.
Ai fini della simulazione non occorre altro.
È fondamentale, per il successivo passaggio al layout, che i componenti inseriti nello schematico
abbiano il “footprint”, ovvero, una vista layout oltre al simbolo. Figura 6 e Figura 7 mostrano che
per l’operazionale scelto è disponibile una vista layout, per cui sarà successivamente possibile
importarlo nel PCB editor, mentre 0/SOURCE ha solo la vista PSpice, cioè, per esso esiste solo un
modello funzionale (sufficiente ai fini della simulazione in Capture).
Figura 6. Simbolo dell’operazionale. Il dettaglio mostra che sono presenti sia il modello funzionale che il footprint.
Figura 7. Per il componente 0/SOURCE è disponibile solo il modello funzionale, per cui potrà essere utilizzato solo per le
simulazioni.
Lo schematico ottenuto è mostrato in Figura 8 (per ruotare i componenti edit > rotate, per
connetterli usare il tasto di scelta rapida “auto connect two points” sulla destra). Si noti anche che
con il tasto di scelta rapida “Place net alias” è stato possibile collegare parti graficamente lontane,
come ad esempio il generatore DC da 12 V, che è collegato all’operazionale attraverso il “net alias”
VCC (non è possibile dare un alias direttamente ad un pin, ma solo al wire).
R3
C2
159.155k
1n
VCC
VEE
VCC
V1
V2
12Vdc
3
U1 7
+
V+
OS2
OUT
R4
159.155k
2
C1
1n
uA741
-
4
OS1
V-
-12Vdc
5
6
Vout
1
0
VEE
0
R2
R1
10k
21k
0
Figura 8. Schematico dell’oscillatore a ponte di Wien.
Prima di andare avanti occorre effettuare un design rules check (DRC) per verificare se sono
state rispettate le regole elettriche. Allo scopo, si torna alla Project Manager Window, si seleziona
lo schematico da sottoporre al DRC (quello che è stato appena disegnato) e si lancia il controllo,
come mostrato in Figura 9. In presenza di off-page connector connections e/o circuiti annidati
gerarchicamente, per effettuare un DRC completo occorre flaggare le relative voci in “Electrical
Rules”, nella schermata del DRC (il circuito descritto in questo tutorial è molto semplice, per cui
non sono presenti viste gerarchiche e connessioni tra più pagine di schematici).
Figura 9. Selezione dello schematico da sottoporre al DRC. In alto, è evidenziato il tasto di scelta rapida per lanciare il controllo.
Il risultato del DRC è il seguente:
I due warning possono essere trascurati perché riguardano gli ingressi non utilizzati
dell’operazionale, che non interessano ai fini della simulazione.
Per la simulazione, selezionare “New simulation profile”, come indicato in Figura 10.
Figura 10. Definizione di una nuova simulazione.
Occorre dare un nome alla simulazione, come mostra la Figura 11.
Figura 11. Scelta del nome della nuova simulazione.
Si vuole effettuare una simulazione nel tempo, per vedere se quella generata dall’oscillatore è
effettivamente una sinusoide. A tal fine, si fissa come tempo massimo per la simulazione 150 ms
con un time step di 10 µs, in Temperature (Sweep) si può fissare una temperatura ambiente di
30° C. Infine, in Options > AutoConverge… si flaggano tutte le grandezze, quindi, Applica e Ok (si
vedano anche Figura 12 e Figura 13).
Figura 12. Definizione della durata della simulazione e della risoluzione per il calcolo.
Figura 13. Definizione della temperatura ambiente per il circuito.
A questo punto si può lanciare la simulazione, con il tasto mostrato in Figura 14.
Figura 14. Dettaglio del tasto di scelta rapida per far girare il simulatore.
A questo punto si aprirà la finestra per la visualizzazione. Con “Trace”, si aggiunge il segnale che si
vuole visualizzare, cioè, l’uscita dell’oscillatore, come indicato in Figura 15.
Figura 15. Selezione del segnale da graficare.
Il risultato è mostrato in Figura 16 e Figura 17. Il segnale generato approssima effettivamente una
sinusoide a frequenza 1 kHz.
Figura 16. Andamento nel tempo del segnale generato, con fase di innesco seguita dal regime.
Figura 17. Dettaglio dell’andamento dell’uscita a regime.
In particolare, Figura 17 mostra una leggera tosatura dell’uscita in corrispondenza dei valori di
picco, prossimi a VCC e VEE, che possono essere eliminati con un circuito di stabilizzazione.
A questo punto si inizia a lavorare per il layout. A tal fine, occorre modificare lo schematico.
Conviene creare una nuova pagina di schematico, wien_lay, per ora nello stesso folder
CIRCUITOBASE, in cui si copia il contenuto dello schematico wien. Vanno eliminati i generatori DC
VCC e VEE che non saranno a bordo della scheda che si vuole realizzare, ma verranno portati
dall’esterno. Proprio per interfacciare la scheda con l’esterno, sarà necessario un connettore da 4
porte. Ad esso andranno collegate le due alimentazioni per l’operazionale, il riferimento 0 V e
l’uscita dell’oscillatore. Pertanto è necessario:
-
eliminare i generatori di tensione DC VCC e VEE,
-
dalla libreria Connector, inserire 4 Header (si noti che non è previsto footprint per tale
componente, per cui, come si vedrà nel corso del tutorial, andrà indicato esplicitamente al
software quale footprint associare al connettore),
-
inserire le due alimentazioni dell’operazionale: Place > Power… > VCC/CAPSYM (uno di essi
sarà rinominato VEE),
-
per il riferimento di terra: Place > Power… > GND/CAPSYM,
-
inserire 2 capacità C_elect, che sono nella libreria Analog (settare massima tensione
operativa del condensatore CMAX = 16 V e il valore della capacità a 10 µF).
Si ottiene lo schematico mostrato in Figura 18. Si noti che il nome di 4 Header è stato modificato in
PINOUT (facendo doppio click sul nome). J1 è il valore, non il nome del componente, per cui non
va modificato! Inoltre, come pro-memoria, è stato inserito del testo vicino ai 4 pin (comando
Place > Text…).
R5
C3
159.155k
1n
VCC
Vout
VCC
3
U2 7
+
V+
OS2
OUT
R8
159.155k
2
C4
1n
uA741
-
4
OS1
V-
C5
10u
16V
5
6
J1
4
3
2
1
Vout
1
C6
10u
16V
VEE
Vout
VCC
GND
VEE
PINOUT
R6
R7
10k
21k
VEE
Figura 18. Schematico modificato al fine di poter generare il layout.
Si selezionano tutti i componenti dello schematico (CTRL+A), quindi Edit > Properties…, quindi la
pagina Parts e la colonna PCB footprint, come mostrato in Figura 19. Adesso i deve indicare a
Capture quali sono i layout (footprint) dei componenti che dovranno essere inseriti nella PCB.
Figura 19. Tabella per l’inserimento dei footprint dei componenti.
Al footprint di tutte le resistenze si può assegnare il valore res400, alla capacità elettrolitica
cap196, alle capacità analogiche cap600, per l’header si può usare jumper4 e per l’operazionale
dip8_3. Si otterranno i valori indicati in Figura 20.
Figura 20. PCB Footprint inseriti.
Come fare se non si conosce il footprint da assegnare ad una parte?
-
Lanciare PCB editor e quindi File > Open…,
-
Selezionare
il
percorso
seguente,
all’interno
della
directory
di
installazione:
Cadence\SPB_16.3\share\pcb\pcb_lib\symbols,
-
Selezionare come tipo di file “All Files (*.*)”,
-
Selezionare in basso l’icona di “preview”, al fine di visualizzare in alto l’anteprima del
footprint. Si può così dedurre che dip8_3 è un footprint adatto per l’operazionale ua741
che ha 7 pin. Analogamente, si può verificare che per il connettore da 4 pin, jumper4 è un
footprint adatto (far riferimento a Figura 21 e Figura 22).
Figura 21. Footprint dip8_3 per l’operazionale.
Figura 22. Footprint jumper4 per il connettore 4 Header.
Ritornando allo schematico in Capture, per rendere effettive le modifiche nel Property
Editor, digitare Apply, quindi salvare la nuova configurazione delle proprietà e chiuderla, come
mostra Figura 23..
Figura 23. Ricordarsi di applicare le modifiche ai PCB footprint con il comando “Apply”.
Un’accortezza sulle capacità elettrolitiche: selezionare la capacità nello schematico, quindi
Edit > Part… Si aprirà la pagina mostrata in Figura 24. Selezionare il pin sinistro della capacità
elettrolitica, quindi Edit properties: sostituire il number P con 1. Analogamente, per il pin destro
sostituire N con 2: in tal modo sono evitati problemi di incompatibilità tra modello funzionale, che
numera i pin P e N, e footprint cap196, che li numera 1 e 2. Fare lo stesso per entrambe le capacità
oppure, quando si chiude la finestra raffigurata, dare il comando Update All.
Figura 24. Aggiornamento pinout per le capacità elettrolitiche.
Diversamente dall’operazionale che ha 7 connessioni esterne, il footprint dip8_3 che gli è stato
associato ha 8 pin. Per non generare errori: Edit > Part, quindi Options > Part properties > New… In
“New Property” inserire come name della proprietà NC (No Connect) e come valore 8, come
mostrato anche in Fugura 25.
Figura 25. Inserimento di una nuova proprietà per gestire il pin eccedente nel footprint dell’opamp.
Inoltre, l’operazionale ha anche due ingressi non connessi. Per evitare errori: Place > No Connect
in corrispondenza di tali ingressi, come mostra Figura 26.
Figura 26. Dichiarazione dell’assenza di connessione per gli ingressi 1 e 5 dell’operazionale.
Bisogna effettuare un nuovo DRC, stavolta, che includa anche le physical rules. Ci sarebbero
degli errori se rientrasse nel check con le physical rules anche lo schematico utilizzato per le
simulazioni, nel quale non sono state apportate le modifiche descritte. Il circuito di cui si vuole
verificare il rispetto delle regole fisiche è relativo alla pagina wien_lay. Per effettuare il controllo
solo su tale circuito:
-
si crei una nuova cartella (nuovo schematico) sotto lo stesso progetto osc_wien, ad
esempio, con nome PHYSCHECK,
-
si copi ed incolli al suo interno il contenuto della pagina wien_lay,
-
cliccando con il tasto destro del mouse sulla nuova cartella PHYSCHECK, si renda principale
la nuova cartella (Make Root),
-
si selezioni la nuova cartella radice in modo da avere una schermata come quella in
Figura 27,
-
si limiti la verifica DRC alla nuova cartella (Check selection attivato, come in Figura 28).
Figura 27. Creazione della nuova cartella root.
-
limitiamo la verifica DRC solo alla nuova cartella (Check selection attivato).
Figura 28. DRC selettivo sulla sola cartella root appena creata.
L’esito del DRC è positivo, cioè, non sono segnalati errori.
Si lasci momentaneamente in stand-by Capture e si apra Orcad PCB editor. Con il comando
File > New > Board (wizard) si può iniziare a creare una PCB “vuota”, destinata ad ospitare i
componenti dell’oscillatore. Come nome si può banalmente scegliere “vuota.brd”. Dare il
comando Ok. Fare riferimento a Figura 29 per maggiore chiarezza.
Figura 29. Creazione di una nuova scheda nell’ambiente Orcad PCB editor.
A questo punto, si apriranno diverse schermate introduttive di PCB editor. Una schermata
importante è quella in cui si specifica la granularità del layout (griglia). Per l’oscillatore che si sta
progettando, si può fissare 100 mils.
Andando avanti, si arriva alla schermata in cui occorre selezionare le spaziature minime delle piste
e la minima distanza tra esse (si veda Figura 30). Tali informazioni sono solitamente fornite dal
fabbricante di PCB. Può capitare che egli fornisca il valore “10/8”, per indicare un’ampiezza
minima per le piste pari a 10 mils e per i gap pari a 8 mils. Se alla fine si intende realizzare la
scheda “a casa” può convenire specificare un valore maggiore, ad esempio, 25 mils, per non
rendere problematica la successiva saldatura. Inoltre, nel campo “Default via padstack” inserire
via26 (in questo progetto non sono presenti via, si desidera realizzare il circuito su un solo layer).
Figura 30. Schermata per la definizione delle distanze minime tra le piste e del loro spessore.
Nella schermata successiva, specificare “rectangular board”.
La schermata ancora successiva permette di specificare le dimensioni della scheda (Figura 31).
Figura 31. Schermata per il dimensionamento della PCB.
Quindi “Finish”, per ottenere la nostra scheda vuota.brd su cui andranno i componenti
dell’oscillatore (Figura 32). Salvare il nuovo file vuota.brd.
Figura 32. Scheda “vuota”, su cui andranno sbrogliati i dispositivi che formano l’oscillatore.
Si torni a Capture. L’informazione che va trasferita al PCB editor è in forma di Netlist. Dalla
project manager window, selezionare tools > create netlist… Spuntare “Create or Update PCB
Editor Board (Netrev)”, selezionare vuota.brd appena creata. Spuntiamo anche il comando “Open
Board in Orcad PCB Editor” (fare riferimento a Figura 33 per dettagli).
Figura 33. Schermata per la generazione della Netlist, che permette di interfacciare Capture e PCB Editor.
La netlist deve essere generata senza errori (Figura 34).
Figura 34. Processo di generazione della Netlist.
Verrà chiesto quale tool aprire per lo sbroglio. Si può selezionare Orcad PCB Editor. Con il
comando Place > Quickplace…, quindi, Place e Ok, si ottiene la scheda vuota con i dispositivi
dell’oscillatore da sbrogliare sul bordo esterno, come mostra Figura 35.
Figura 35. Layout da “sbrogliare”.
Occorre a questo punto effettuare lo “sbroglio”. Un possibile esempio di circuito sbrogliato è
quello proposto in Figura 36.
Figura 36. Possibile layout dell’oscillatore di Wien.
Si noti inoltre che il DRC va aggiornato e il rispetto delle regole è segnalato in verde in
basso a destra (Figura 37). A tal fine: Display > Status… e quindi dare il comando Update DRC.
Figura 37. Estratto dalla schermata del PCB Editor, nella parte in basso a destra, dopo aver aggiornato il DRC.
Si possono inoltre piazzare i fori: Place > Manually…, quindi in Advanced Settings flaggare Library
e in Placement List scegliere un foro di uno spessore desiderato (ad esempio, MTG156, come in
Figura 38).
Figura 38. Inserimento di 4 fori agli angoli della scheda.
Occorre effettuare il routing. Per aumentare l’ampiezza delle piste che portano l’alimentazione e
su cui, pertanto, scorre più corrente: Setup > Constraints > Physical…, nella cartella Net,
selezionare All Layers e modificare i valori presenti, impostati per default a 25 mils. Si può, ad
esempio, portare a 50 mils le piste di alimentazione e a 30 mils le piste dei segnali (in questo caso,
la motivazione per l’aumento della larghezza è rendere più semplice la saldatura), come mostrato
in Figura 39. Quindi Close.
Figura 39. Aumento dell’ampiezza delle piste.
CONSIGLIO: poiché a questo punto è necessario salvare il layout ottenuto, scegliere come
destinazione per il salvataggio il desktop e nominare il file senza usare caratteri speciali. In
generale, la regola vuole che il file sia salvato in percorsi che contengono spazi, altrimenti il PCB
editor non trova il file. Esempio: non è possibile salvare il file in C:\Documents and Settings\, è
invece possibile salvarlo in C:\Documenti; non è possibile nominare il file “ciao mondo.brd”, è però
possibile nominarlo “ciaomondo.brd”. Presumibilmente, questi vincoli derivano dal fatto che
Cadence era stato sviluppato inizialmente per ambiente Unix, dove valgono tali regole.
Occorre passare al routing:
Route > PCB Router > Route Automatic… Selezionare “Use smart router” e, per un progetto
single-layer adatto per una stampa “domestica”, deselezionare il livello “TOP”. Lanciare quindi il
comando Route (si faccia riferimento alla Figura 40). Quello che si ottiene è mostrato in Figura 41.
Figura 40. Selezione delle opzioni nella finestra per l’auto-router
Figura 41. Layout della PCB relativa all’oscillatore a ponte di Wien.
Per smussare gli angoli retti delle piste: Route > Gloss, lasciando come angolo massimo 45°.
Figura 42. Layout della PCB senza angoli retti.
A questo punto, si può cercare di rendere il lavoro di fabbricazione più semplice, andando ad
iterare sul layout ottenuto per distanziare le piste, nelle aree in cui queste sono più fitte.
Per la stampa “domestica”: Display > Color Visibility… quindi, selezionare Off e Apply (dopo aver
dato il comando Apply, sul nostro editor non vedremo più il layout), come mostra Figura 43.
Figura 43. Deselezioni dei colori di tutte le sottoclassi del layout.
Quindi, in Display, si selezioni il bianco come background e Apply (Figura 44).
Figura 44. Comando per rendere bianco lo sfondo del layout.
Board Geometry: assegniamo il colore nero all’outline.
In Stack-Up > Conductor: nello strato in cui stiamo lavorando (bottom), assegnare il colore nero a
pin, via, etch.
Si arriva pertanto al layout mostrato in Figura 45.
Figura 45. Layout per la stampa.
Per la stampa, File > Plot setup…, si lascia scaling factor unitario e si setta a 10 il line weight. A
questo punto è possibile stamparlo (Figura 46).
Figura 46. Opzioni per la stampa del layout di Figura 45.
Per avere traccia dei componenti, Display > Color Visibility… quindi, assegnare il colore nero a:
-
Package geometry > assembly top e silkscreen top;
-
Components: le colonne CmpVale e RefDes.
Il risultato che si ottiene è mostrato in Figura 47.
Figura 47. Layout con traccia dei componenti.