Eagle CadSoft

De Wikijoan
Dreceres ràpides: navegació, cerca

Contingut

Instal.lació

Eagle es pot utilitzar amb la versió lliure. Eagle Light Edition Freeware Version té aquestes limitacions:

Em descarrego la versió per a Linux:

dono permisos d'execució, ho executo, i s'instal.la a /home/joan/eagle. L'executable està a la carpeta bin/, i la documentació a la carpeta doc/: tutorial i guia d'usuari en pdf.

Hi ha un directori per a projectes que han fet els usuaris:

per exemple, androino_2009.zip, que és un clon d'arduino.


Eagle libraries for Arduino

Arduino Eagle Files

The reference designs (Eagle files) for the Arduino Diecimila and Arduino BT are now available under a Creative Commons Attribution Share-Alike license. This is effectively the “source-code” for the boards: both the schematics and PCB layouts in fully editable format. Together with the Eagle Layout Editor (available in a freeware version), it’s all you need to get started making your own custom Arduino hardware.

Download: arduino-diecimila-reference-design.zip, arduino-bt-reference-design.zip

We’ve also posted a document called So you want to make an Arduino? – a guide / policy for making your own hardware. While we hope to see many people creating their own versions of Arduino (and many already are), we’ve tried to set down a few guidelines to help ensure the success of these efforts and the continued growth of the project as whole. Please take a look. We don’t claim, however, to have figured this all out, so consider this policy as a first draft, and post your suggestions and criticisms in the comments.

We hope you have fun with the reference design and we’re looking forward seeing what you all come up with!

Rob Faludi: ATMEL 168

Em descarrego la Arduino AVR Library for EAGLE Layout Editor feta per Rob Faludi (un blog interessant):

copiar la llibreria (Arduino-AVR.lbr) en la carpeta lbr/ i ja està

Kris Barrett

En aquest cas la llibreria (arduino.lbr) és per fer un Arduino Shield, és a dir, que et diu on són els pins-headers per fer un arduino shield compatible.

Aprenentatge

Segueixo el següent tutorial que es pot aconseguir a http://www.cadsoftusa.com/download.htm:

Comentaris:

Recordem que si no arribo al 100% en fer el autoroute he de mirar el layer Unrouted (alguna soldadura que s'haurà de fer a mà). En el paperduino amb hobbyst arribo al 98,5%, i això és perquè hi ha una pista que no la fa bé. Concretament, la que no fa bé és el pin3, TX, que va connectat al pin5 del FTDI.

Nota: un cop he col.locat els elements segons em sembla, gravo el board i faig el autoroute. D'aquesta manera, si no estic content, puc tornar a l'anterior pas (els elements posicionats però sense el routing) obrint el fitxer. Sembla ser (o almenys jo no trobo l'opció), que quan he fet el autoroute no puc desfer fins al pas anterior. Aleshores puc moure algun element (i versionant el fitxer per guardar la versió anterior) i tornar a fer el autoroute, fins que arribo a la solució més òptima.

Per tant, és important guardar el board de la col.locació dels components abans de fer el autoroute. Com es pot modificar l'esquemàtic sense perdre la feina feta en el board? Doncs des del board vaig a Switch to schematic, el modifico, i torno a fer switch to board. Aleshores, si per exemple he afegit un LED, el col.loco en la posició que crec que ha d'anar, i torno a guardar el projecte. Aleshores ja puc fer autoroute (i el gravo amb un altre nom!!).

Per imprimir les pistes de bottom selecciono: (imprimeixo a pdf)

Bottom
Pads
Dimension (treure si no vull que apareixi el contorn)

per imprimir la informació de top selecciono:

Unrouted: important! es veu clarament el que em faltarà soldar
Dimension
tPlace
tNames
(tValues)
Drills (on he de perforar)
Holes (per ficar cargols, no els tinc definits de moment)
Milling (són drills però allargats, com ara els pins d'un jack de wall-mart)
tDocu: és el símbol elèctric. Important en el cas de LEDs o condensadors electrolítics

Per imprimir, en el Print Setup fico:

Ara ja tinc el pdf de les pistes, i ja ho podria imprimir:

Convé imprimir dues vegades, normal i apaisat, per tal de que el negre sigui més negre.

Ara bé, millor passar-ho al GIMP. Des del GIMO, obro el pdf, amb una resolució de 300ppp. Creo un fitxer nou, amb la mateixa dimensió i resolució (opció per defecte). Selecciono les pistes, i ho copio en una capa (que anomeno top1), i en una altra capa (anomeno top2, i roto aquesta capa 90º). Finalment, exporto a PNG. Això té més sentit quan treballo amb dues capes, que en una mateixa transparència tindré quatre imatges (top1, top2, bottom1, bottom2).

A part d'imprimir a pdf o a impressora, també es pot exportar a imatge PNG (File > Export > Image).

En el GIMP puc obrir el pdf (per defecte 100ppp), crear un nou document, i copiar en una capa l'esquema de les pistes, i en una altra capa el mateix però rotat 90º.

Fitxer hobbyist.dru (es crea a la carpeta dru/)

description[de] = <b>EAGLE Design Rules</b>\n<p>\nDie Standard-Design-Rules sind so gewählt, dass sie für \ndie meisten Anwendungen passen. Sollte ihre Platine \nbesondere Anforderungen haben, treffen Sie die erforderlichen\nEinstellungen hier und speichern die Design Rules unter \neinem neuen Namen ab.
description[en] = <b>EAGLE Design Rules</b>\n<p>\nThe default Design Rules have been set to cover\na wide range of applications. Your particular design\nmay have different requirements, so please make the\nnecessary adjustments and save your customized\ndesign rules under a new name.
layerSetup = (1*16)
mtCopper = 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm
mtIsolate = 1.5mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm
mdWireWire = 32mil
mdWirePad = 32mil
mdWireVia = 8mil
mdPadPad = 20mil
mdPadVia = 8mil
mdViaVia = 8mil
mdSmdPad = 8mil
mdSmdVia = 8mil
mdSmdSmd = 8mil
mdViaViaSameLayer = 8mil
mnLayersViaInSmd = 2
mdCopperDimension = 40mil
mdDrill = 8mil
mdSmdStop = 0mil
msWidth = 32mil
msDrill = 32mil
msMicroVia = 9.99mm
msBlindViaRatio = 0.500000
rvPadTop = 0.250000
rvPadInner = 0.250000
rvPadBottom = 0.250000
rvViaOuter = 0.250000
rvViaInner = 0.250000
rvMicroViaOuter = 0.250000
rvMicroViaInner = 0.250000
rlMinPadTop = 24mil
rlMaxPadTop = 40mil
rlMinPadInner = 10mil
rlMaxPadInner = 20mil
rlMinPadBottom = 24mil
rlMaxPadBottom = 40mil
rlMinViaOuter = 24mil
rlMaxViaOuter = 40mil
rlMinViaInner = 8mil
rlMaxViaInner = 20mil
rlMinMicroViaOuter = 4mil
rlMaxMicroViaOuter = 20mil
rlMinMicroViaInner = 4mil
rlMaxMicroViaInner = 20mil
psTop = 1
psBottom = 1
psFirst = 1
psElongationLong = 100
psElongationOffset = 100
mvStopFrame = 1.000000
mvCreamFrame = 0.000000
mlMinStopFrame = 4mil
mlMaxStopFrame = 4mil
mlMinCreamFrame = 0mil
mlMaxCreamFrame = 0mil
mlViaStopLimit = 0mil
srRoundness = 0.000000
srMinRoundness = 0mil
srMaxRoundness = 0mil
slThermalGap = 0.500000
slMinThermalGap = 20mil
slMaxThermalGap = 100mil
slAnnulusIsolate = 20mil
slThermalIsolate = 10mil
slAnnulusRestring = 0
slThermalRestring = 1
slThermalsForVias = 0
checkGrid = 0
checkAngle = 0
checkFont = 1
checkRestrict = 1
useDiameter = 13
maxErrors = 50

Fitxer default.dru:

description[de] = <b>EAGLE Design Rules</b>\n<p>\nDie Standard-Design-Rules sind so gewählt, dass sie für \ndie meisten Anwendungen passen. Sollte ihre Platine \nbesondere Anforderungen haben, treffen Sie die erforderlichen\nEinstellungen hier und speichern die Design Rules unter \neinem neuen Namen ab.
description[en] = <b>EAGLE Design Rules</b>\n<p>\nThe default Design Rules have been set to cover\na wide range of applications. Your particular design\nmay have different requirements, so please make the\nnecessary adjustments and save your customized\ndesign rules under a new name.
layerSetup = (1*16)
mtCopper = 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm
mtIsolate = 1.5mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm
mdWireWire = 8mil
mdWirePad = 8mil
mdWireVia = 8mil
mdPadPad = 8mil
mdPadVia = 8mil
mdViaVia = 8mil
mdSmdPad = 8mil
mdSmdVia = 8mil
mdSmdSmd = 8mil
mdViaViaSameLayer = 8mil
mnLayersViaInSmd = 2
mdCopperDimension = 40mil
mdDrill = 8mil
mdSmdStop = 0mil
msWidth = 10mil
msDrill = 24mil
msMicroVia = 9.99mm
msBlindViaRatio = 0.500000
rvPadTop = 0.250000
rvPadInner = 0.250000
rvPadBottom = 0.250000
rvViaOuter = 0.250000
rvViaInner = 0.250000
rvMicroViaOuter = 0.250000
rvMicroViaInner = 0.250000
rlMinPadTop = 10mil
rlMaxPadTop = 20mil
rlMinPadInner = 10mil
rlMaxPadInner = 20mil
rlMinPadBottom = 10mil
rlMaxPadBottom = 20mil
rlMinViaOuter = 8mil
rlMaxViaOuter = 20mil
rlMinViaInner = 8mil
rlMaxViaInner = 20mil
rlMinMicroViaOuter = 4mil
rlMaxMicroViaOuter = 20mil
rlMinMicroViaInner = 4mil
rlMaxMicroViaInner = 20mil
psTop = -1
psBottom = -1
psFirst = -1
psElongationLong = 100
psElongationOffset = 100
mvStopFrame = 1.000000
mvCreamFrame = 0.000000
mlMinStopFrame = 4mil
mlMaxStopFrame = 4mil
mlMinCreamFrame = 0mil
mlMaxCreamFrame = 0mil
mlViaStopLimit = 0mil
srRoundness = 0.000000
srMinRoundness = 0mil
srMaxRoundness = 0mil
slThermalGap = 0.500000
slMinThermalGap = 20mil
slMaxThermalGap = 100mil
slAnnulusIsolate = 20mil
slThermalIsolate = 10mil
slAnnulusRestring = 0
slThermalRestring = 1
slThermalsForVias = 0
checkGrid = 0
checkAngle = 0
checkFont = 1
checkRestrict = 1
useDiameter = 13
maxErrors = 50

Info de Default (no és el fitxer):

Default
-------------

Layers

Copper
0.035
0.035
Isolation
1.5
Setup
(1*16)

Clearance
tot 8mil

Distance
40mil
8mil

Sizes
10mil
24mil
9.99mm
0.5

Restring
Min: 10mil, 10mil, 10mil, 8mil, 8mil, 4mil, 4mil
%: tot 25
Max: tot 20mil

Shapes
Smds: 0 0 0
pads: as in library, as in library, not special, 100, 100

Supply
20mil 50% 100mil
Isolate: 10mil 20mil

Masks
4mil 100% 4 mil
0mil 0 0mil
Limit 0mil

Misc
check font, check restrict

74LS00N: no apareix Vcc i GND

Quan selecciono un IC com ara el 74LS00N (4 portes NAND) no apareix els pins Vcc i GND. Com es fa?:

S'ha d'apretar el botó Invoke, i aleshores ja puc seleccionar el símbol PWRN que és el Vcc i GND comuns a totes les portes.

Dues pistes (doble capa)

El projecte Interfacing Arduino with the mythic AY-3-8910 és prou complexe com per fer una PCB de dues pistes. És el primer projecte de dues pistes. En el cas dels projectes de doble capa és important definir els holes en les cantonades que em serviran de referència quan faci la insolació.

Per imprimir les pistes de bottom selecciono:

Bottom
Pads
Vias (aquesta és la novetat respecte PCB de una cara)
Dimension (treure si no vull que apareixi el contorn)
Holes

Per imprimir les pistes de top selecciono:

Top (a més, puc ficar text com ara (c)Joanillo 2011 en el top, i així se m'imprimirà.
Pads
Vias (aquesta és la novetat respecte PCB de una cara)
Dimension (treure si no vull que apareixi el contorn)
Holes

per imprimir la informació de components de top selecciono:

Unrouted: important! es veu clarament el que em faltarà soldar -> no tinc res amb dues pistes
Dimension
tPlace
tNames
(tValues)
Holes
Drills (on he de perforar per que entrin els components)
Milling (són drills però allargats, com ara els pins d'un jack de wall-mart)
tDocu: és el símbol elèctric. Important en el cas de LEDs o condensadors electrolítics

Però com que aquesta informació és bastant liada, faig Export > Partlist:

Partlist

Exported from arduino-AY38910_v1_1.brd at 26/04/11 12:37

EAGLE Version 5.9.0 Copyright (c) 1988-2010 CadSoft

Part      Value          Package      Library      Position (inch)       Orientation

7805      7805T          TO220H       linear       (5.2 4.1)             R0
AUDIOJACK KLBR1          KLBR1        con-lumberg  (5.95 2.5)            R270
BOTO                     B3F-10XX     switch-omron (4.75 2.9)            R0
C1        22 pF          C050-024X044 rcl          (4.45 3.55)           R0
C2        22 pF          C050-024X044 rcl          (4.45 3.4)            R0
C3        0.01 uF        C050-024X044 rcl          (4.1 3.55)            R180
C4        100 uF         E3,5-8       rcl          (4.75 3.7)            R0
C5        100 uF         E3,5-8       rcl          (5.65 3.7)            R0
C6        300pF          C025-040X050 rcl          (5.5 0.65)            R0
C7        0.1uF          C025-040X050 rcl          (5.15 0.6)            R270
C8        0.05uF         C025-040X050 rcl          (5.9 1.65)            R90
C9        2uF            B45181B      rcl          (5.35 0.95)           R0
C10       10uF           B45181B      rcl          (5.4 1.25)            R270
C11       250uF          B45181B      rcl          (6.1 1)               R90
C12       120pF          C025-040X050 rcl          (5.15 0.3)            R270
C13       300pF          C025-040X050 rcl          (5.75 0.65)           R0
FTDI                     MA06-1       con-lstb     (4.2 3.75)            R0
IC1       ATMEGA168-PU   DIL28-3      Arduino-AVR  (5.3 2.35)            R270
IC2       LM386N-1       DIL08        linear       (5.75 1.05)           R270
IC3       74ALS00N       DIL14        74xx-us      (4.7 0.9)             R270
JACK                     1X03/90      pinhead      (6.15 3.25)           R270
LEDR                     LED3MM       led          (3.8 3.55)            R0
LEDR1                    LED3MM       led          (5.8 2.1)             R180
PWR                      22-23-2021   con-molex    (6 3.55)              R90
Q1        16MHz          HC18U-V      crystal      (4.75 2.1)            R90
Q2        2MHz           HC18U-V      crystal      (4.2 0.45)            R90
R1        500            0207/10      rcl          (5.85 1.45)           R180
R2        560            0207/10      rcl          (3.8 3.2)             R180
R3        10K            0207/10      rcl          (3.8 3.35)            R0
R4        5K             0207/10      rcl          (5.65 0.4)            R180
R5        1K             0207/10      rcl          (4.45 3.2)            R0
R6        10             0207/10      rcl          (6.15 1.5)            R90
R7        330            0207/10      rcl          (4.75 0.25)           R0
R8        330            0207/10      rcl          (4.75 0.4)            R180
R9        560            0207/10      rcl          (5.8 1.9)             R0
SPK                      1X02/90      pinhead      (6.15 2.95)           R270
U$1       AY38910        DIL40        AY38910      (3.95 2.05)           R270

BatchPCB: comanda de PCB

Es tracta de dissenyar amb Eagle el teu PCB, i enviar el prototip a batchPCB, on te'l fabriquen a un preu competitiu i amb un acabat professional (dues capes,...)

El que s'envia són els fitxers Gerber que produeix el Eagle.

Un exemple de projecte d'Arduino amb el PCB fabricat per BatchPCB és http://www.krisbarrett.com/2008/09/03/make-a-custom-arduino-shield/

Una altra possibilitat és pcbway.com, on he enviat rockola_v4.

crack Professional Edition

CadSoft.Eagle.Professional.v5.9.0.Linux.Incl.Patch.And.Keymaker-AGAiN.rar | 33.5 MB

És el fitxer CadSoft.Eagle.Professional.v5.9.0.Linux.Incl.Patch.And.Keymaker-AGAiN.rar

Descomprimeixo i renombro per eagle_again

descomprimeixo ag-3893a.zip ... ag-3893g.zip

obro la carpeta ag-3893a/, que hi ha AGAiN.rar (que descomprimeixo) i el keygen.exe (que només funciona amb Windows)

He d'instal.lar wine:

sudo apt-get install wine

sense fer res més, sobre la icona del keygen.exe, amb el botó dret clico sobre Abrir con Wine:

Es crea el fitxer License.key

He de ficar AGAiN.r00 (que està a ag-3893b) i els altres (... AGAiN.r05) dins la carpeta ag-3893a. Ara ja puc descomprimir AGAiN.r00. Es crea la carpeta AGAin, és aquí on tinc l'executable del Eagle (eagle-lin-5.9.0.run).

$ cd /home/joan/eagle_again/ag-3893a/AGAiN
$ sudo chmod a+x eagle-lin-5.9.0.run -> però no! no és això!

Descomprimeixo crack.zip i és l'executable eagle. El que he de fer ara és copiar l'executable eagle a /home/joan/eagle-5.9.0/bin, i el keygen.exe també
$ sudo chmod a+x eagle
$ ./eagle

Destination directory: /home/joan/eagle-5.9.0 Use License File

/home/joan/eagle_again/ag-3893a/License.key
iomctwssxd

Creo les carpetes, i ja ho tinc. La instal.lació m'ha quedat a /home/joan/eagle-5.9.0/bin (d'on pengen les carpetes lbr/, cam/,...) (crear un accés directe)

Coses que es poden fer amb la versió professional i que no es poden fer amb la versió free. Doncs moltes. Per exemple:

How to make a custom library part in Eagle CAD tool

Podem crear una nova llibreria, o bé afegir el component a una llibreria existent. File > New > Library. Gravo la llibreria com a joan.lbr

To design a part in eagle you must define a device, package, and symbol. Each aspect has its own set of layers that you must keep straight. Again you are left with two choices. The easy way, in which you copy a similar part and tweak it to match your specifications. This is of course in contrast to making one from scratch. For this instructable we will design one fro…

click on the package icon in your library window. Fico el grid adequat. La regla seria un grip que sigui la meitat de la mesura mínima del meu component (veure datasheet del component)

Si vull copiar un component d'una altra llibreria: copy packagename@libraryname

copy DIL04@ic-package -> i funciona perfectament

i ara sobre aquest package podem modificar la posició dels pads,...

Pas 10. Vull ficar els pads del meu package. Són pads SMD. En la línia de comandes escriure smd, i això és equivalent a clicar el botó smd de l'esquerre. A dalt veig que està seleccionada la capa Top, i m'apareix un drop down amb les dimensions disponibles. La meva dimensió de .55x.55 no hi és. Ho escric en la línia de comandes i ja m'apareix en el drop down. Fer roundness 100%.

Pas 11. Selecciono Wire, i aleshores ja puc seleccionar la capa 21 tPlace. Now draw a 7mm box around all the pads you placed in step 10

Pas 12. Anomenar els pads. Type name in the comand window, and double click on each pad. Mirar el datasheet per saber el nom dels pads.

Pas 13. Add name and value. Name and value parameters are added on separate layers tname and tvalue respectively. Select the text tool or type text in the command window. Select the tName layer, and an appropriate size and place on the top of the drawing. Repeat this process for the value but use the value layer.

step 14,15,16. Building the Symbol

step 17. Naming pins, d'acord al datasheet.

step 18. Make the device. Ara hem d'associar el símbol i el package. Amb el botó Add faig aparèixer el símbol que he creat. A la finestra Package fico new i faig aparèixer el package que he creat. Amb el botó Connect, de forma lògica, connecto pads dels package amb pins del símbol. I ja està, ja el puc utilitzar.assos.

Cas real: llibreria AY-3-8910

el package ja el tinc en la llibreria Microchip, és un DIL40

At this point if you want to copy another package from an alternate library you can use the copy command with the following syntax in the command window. Per tant, en la caixa per executar comandes:

copy packagename@libraryname 

copy DIL40@microchip

i funciona, apareix el DIL40

Step12: Name pads

Fiquem els noms dels pins segons ens diu el data sheet:

Type name in the comand window, and double click on each pad. A dialog box will appear and simply type in the new name.

Step 14: Building the Symbol

Creem el símbol AY38910. El symbol el faig des de 0:

Use the wire tool to draw a box that will represent the symbol on the schematic. By default you will be drawing on the symbol layer. Double check to make sure by looking in the upper left corner after the wire tool is selected. The layer drop down menu should have "94 Symbols" selected.

Once the box is drawn, type "pin" in the command window, and start placing the 32 pins evenly around the box.7

Type name in the command window and double click on the pin to remain

By default the name on the pin and the symbol will show up in the device. This makes for a very cluttered look. Click on the "change" button and select "visable" from the drop down menu, and then select "Pin". Then click on every pin. It will not be obvious what you are doing but trust me the final design will be easier to use.

no ha funcionat fer-ho així: copy PIC18F4455_44QFN@microchip

Step 18: Make the device In this step the association between the symbol and the package is made. Click on the devcie icon, add the name of your device.

In the lower right hand corner click on the new button and select the package. Your package will show up in the upper right pane.

On the left vertical tool bar click on the symbol icon, and place your symbol in the left pane.

Quan acabo de fer totes les connexions desapareix el símbol de l'admiració.

Save i ja està, ja podem utilitzar la llibreria AY38910. Recordem que per utilitzar la llibreria hauré de fer Library > Update All (i potser Use Library i cercar la llibreria Ay38910).

llibreria AY38910: Fitxer:AY38910.lbr.zip

Cas real: relé de Farnell ref 1891661

v1 (amb errors)

el relé que més s'assembla en la llibreria relay és:

library: relay
package: RT-N/O12A5
és el device: RP431012 (RP?31*)

però no s'ajsuta.

OJE-SS-105HM,000 RELÉ, PCB, SPST-NO, 5 V CC, 10A

mirem el datasheet: http://www.farnell.com/datasheets/1717943.pdf

Més o menys els pins tenen aquesta disposició:

*        *    error! s'ha de mirar des de dalt *         *
*          *   el correcte és:                 *       *

Segueixo el tutorial vist anteriorment. La idea eś crear un nou package, un nou symbol, i un nou device. En el nou device importo el package i el símbol (no és evident), i s'ha de connectar/associar els pins del symbol amb els del package. El device, el symbol i el package es diuen RELE_FARNELL.

Truquets per posar els pins en el package:

Corregir els errors

S'ha fet els següents errors, que s'han de corregir:

Nova versió:

Paperduino

Paperduino

Paperduino eagle top.png
Paperduino eagle bottom.png

He aconseguit editar a Eagle el disseny del paperduino. M'ha quedat de la següent manera. Només hi ha una pista que no he aconseguit rutar. És la que va del pin 3 del ATmega168 (TX) al cable FTDI (pin 5).

Millorant el disseny dels PCB...

El primer projecte pràctic per fer un PCB de qualitat és RK4K. De la v2 a la v3 n'he tret unes quantes conclusions (i la primera, és clar, és que no hi hagi errades en l'esqumàtic).

ELECT_29:_RK4K:_Rythm_Kit_for_Kids#esquem.C3.A0tic_Eagle_v3

Experiència amb CNC

En la següent entrada es comenta dels trucs i dificultats alhora de fer un board per fer milling amb una màquina CNC (utilitzant pcb_gcode).

Eagle3D: imatges 3D

Arduino 3D.jpg

BTW, what PCB design software do you use to make those nice looking 3D images of the board? Edited: Never mind... it is Eagle3D. I tried it and it works great!

I use Eagle. The 3D mock-ups come from the Eagle3D ulp (http://www.matwei.de/doku.php?id=en:eagle3d:eagle3d) and POVRay (http://www.povray.org/). It can take some futzing to generate exactly what you're after, but it works. I find it most useful to uncheck "parts" in the Eagle3D dialogue and use it to generate PCB only renderings like these. I know there's a Protel/Altium tool to do the same.

Negative printing support

El film fotoresistiu que tinc és negatiu, i això vol dir que s'ha d'imprimir el negatiu: totes les parts negres seran atacades; i les pistes, que seran de color blanc, no seran atacades.

Hi ha altra gent que vol imprimir imatges negatives des del Eagle:

el millor és fer un script que es posa a la carpeta src/

set palette black;
display none top pads vias;
export image /home/joan/a.tif monochrome 600;

I des del board podem fer file > script, i exportem a una imatge. El valor de 600 es correspon al valor natiu de la impressora (dpi).

set palette black;
display none bottom pads dimension holes;
export image /home/joan/a.tif monochrome 600;

Si queden moltes zones negres (com és normal amb la placa negativa) seria bo fer màscares de blanc per tal de què el etching no doni tanta feina. Això es pot fer editant la imatge resultant (potser es pot fer amb el Eagle). Al GIMP, fer una nova capa i utilitzar la Eina de selecció lliure. Per tancar el llaç n'hi ha prou amb un sol click (no calen dos clicks!!). Aleshores fer omplir amb el color de fons. Si es vol també es poden aconseguir contorns arrodonits. Potser per fer contorns arrodonits el millor és utilitzar l'eina Camins: crea i edita camins.

Impressió. Quan tinc les pistes positives, normalment el que faig és imprimir a pdf des del Eagle. En aquest cas de les pistes negatives, el que tinc és una imatges tif que he modificat amb el GIMP. Es tracta d'imprimir conservant les dimensions i que la impressora i el GIMP no juguin una mala passada. Si recordem, hem generat la imatge a 600 (600 dpi). Quan obro amb el GIMP, si miro Imatge > Mida de la imatge veig que està a 72 dpi i les dimensions em mm són molt grans. Per tant el que he de fer és Imatge > Mida d'impressió i ficar el valor de 600, que és el valor original de la imatge. Si ara vaig a Fitxer > Imprimir, veig que tinc diferentes pestanyes que depenen de la impressora instal.lada. Aquí m'hauré d'assegurar que estic a una resolució de 600, que l'amplada és la correcte, i que si imprimeixo en un DIN A-4 ja es veu que el resultat serà el correcte. Com sempre, s'ha d'imprimir a màxima resolució.

Positiu negatiu.jpg

Llibreries, components que necessito

Els connectors que tenen tornillo ocupen 0,2 (5,04mm), i els puc trobar a les següents llibreries:

L'avantatge principal d'utilitzar un connector d'una sola unitat és que li puc posar un nom, i aleshores queda clar si és 12V, 5V, GND, GPIO1, etc.

Convertir el brd a gerber file per a fabricació (pcbway.com, març 2015)

És bastant evident:

Es comprimeixen tots els fitxers generats en un zip, i es puja a http://www.pcbway.com. La comanda entra en procés de revisió, encara no s'ha de pagar. També a baix de tot de:

Millorant el board: substituir una pista difícil per un pont

Fer un pont.png

En determinades ocasions, quan he de fer passar pistes entremig dels pins d'un xip i queda tenim pistes una mica enrevessades, podem simplificar l'esquema fent un pont. Per fer-ho faig un rip-up de la pista que vull eliminar, i en la capa tPlace uneixo amb una línia (Line) els dos punts.

En el gravat amb àcid no em sortirà, però quan imprimeixo la capa de tPlace per saber on van els components, aquí sí que queda documentat on els punts que he d'unir amb cable. Els ponts serveixen pe això, per simplificar el circuit.

Els ponts sobretot tenen sentit quan vull que una placa sigui d'una sola capa, però si no hi haguessin els ponts potser seria difícil o impossible de fer. Recordar que la disposició de les resistències i d'altres components són de fet ponts.

NOTA: com a conveni, sempre que faci un pont ficaré dos holes en els extrems. Així, quan imprimeixi la màscara del tol layer (amb el layer dels holes activada), quedarà clar on he de fer forats i on hauré de soldar els ponts manualment).

Millorant el board: components que no es poden soldar al top layer

Problemes doble capa.png

Hi ha components que és difícil de soldar a la capa de dalt, perquè tenen parts de plàstic, com ara els pinhead, xips. La regla general, com es comenta a l'enllaç, és que a nivell hobby s'ha d'intentar fer les plaques d'una sola capa, i potser fent el routing a manualment. Si s'opta per un disseny de doble capa, aleshores es pot donar preferència a la bottom layer introduint un cost de 99 a la top layer.

Amb la prova d'un circuit senzill no veia com això funcionava, fins que he vist que el autorouter escollia el optimize 6 com a millor solució, i que per tant era en el optimize 6 on havia de ficar el top layer cost=99. No ha sigut gens evident però al final ha funcionat. Ara ja es podrien soldar aquests pinheads per sota.

Cas real: efectes de llum a la rockola

En el següent enllaç es discuteix els problemes que sorgeixen, solucions i millores en un cas real. Amb les diferents versions es va millorant el projecte.

Adafruit library

Una llibreria interessant amb molts components útils. Per exemple aquí trobem el ADC MCP3008 que necessito per a la recreativa dels dards.

Cas real: corregir errors després de fer la placa

Per fer la placa allò important és ser ordenat, net i fer bones soldadures. Un cop muntat el circuit, si no funciona, s'ha de ser sistemàtic alhora de corregir els errors.

El primer de tot és intentar esbrinar per on pot venir l'errada, i això és possible si es tenen clars els blocs funcionals del circuit. Per exemple, si en el circuit hi ha petita senyal (5V) i gran senyal (12V) separat per relés, funcionen els relés?.

Es poden fer proves de continuïtat i de voltatge. Per fer les proves de continuïtat és important ser sistemàtic, i per això ens ajudem amb el Eagle de la netlist: File > Export > Netlist:

Netlist

Exported from gramola_v9.brd at 08/06/15 14:09

EAGLE Version 6.5.0 Copyright (c) 1988-2013 CadSoft

Net      Part     Pad

N$1      IC2      3
         IC3      15

N$2      C1       +
         IC1      2
         IC1      6
         R1       2

N$3      IC1      3
         IC2      14
         IC5      2
         R1       1
...

Aquí tenim una relació de totes les netlist.

En el board, amb el mode ull podem clicar sobre pads i podem veure ressaltat els pads que es connecten (tota la net). Però si volem ser sistemàtics en la barra d'entrada podem cercar per la netlist que ens interessa, per ex, podem posar N$1, i aleshores veiem ressaltats tots els pads. Amb la llista de la netlist ens assegurem de no descuidar-nos cap netlist. Així, sent sistemàtics, he descobert dos errors a gramola_v9_b. I és que els errors poden venir per una mala soldadura, o perquè m'he descuidat de fer una soldadura. I això és més cert en les plaques de doble cara, on hi ha pistes que poden quedar amagades.

Un altra tema per ajudar a ser eficients i corregir errors és disposar de les probes més adequats per tesejar la continuïtat: pinces de cocodril, suport, etc. Es tracta de ser sistemàtic però ràpid.


creat per Joan Quintana Compte, maig 2010 ... abril 2015

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
IES Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines