Eagle 画板-拼板-输出Gerber到SeeedStudio打样过程笔记

2019-07-14 08:34发布

利用业余时间画得板,绝对的用心之作,所感所学以记下.......
【画板及布线过程】
  1. 画板layout首先走信号线,将电源及地隐藏。
  2. 信号线走线不走直角。
  3. 布线能走短线不走远。
  4. 可以边走线边布局。
  5. 一般网格设置成20mil。线宽12mil,密集时可以走10mil(一般厂家都能做到6mil)电源线尽量走宽,24mil,32mil都行,实在不行就走16mil。
  6. 最后覆铜时一定要检查各覆铜面有没有连成一个GND,没有连成一片时务必过孔,而且多打几个过孔。
关于晶振的两条信号线一定要尽量短,粗细要一直,中间尽量不要过孔,晶振下面尽量少走线。条件允许一定要让晶振外壳接地。
  1. 过孔直接选择20mil最好,最小12mil,太小怕厂家做不好。
  2. 滤波电容一定要离芯片近点,以免影响芯片起振。

【拼板——最简单方法(手动拼板)】
  1. 打开第一个PCB文件,此时可以关闭原理图。
  2. 运行 panelize.ulp 用户语言
  3. 执行“group”命令,选择整个PCB。
  4. 执行“Cut”命令,并在图上右击,选择"cut group",最后别忘记单击原点。
  5. 再打开第二个PCB文件,另存。
  6. 运行“panelize.ulp”用户语言。
  7. 再粘帖刚才的第一个图,the end.....
  8. SeeedStudio 要求在拼板的文件用丝印层一条直线分开就行(在tPlace和bPlace层分别画一条直线)。
  9. 【很重要】:板子今天被要求修改,主要原因是没有将两个单独的PCB的外框删除,要求将整个拼板用一个外框框起来,而不是每一个拼板有一个单独的外形框。
【拼板——程序自动拼板】      这个自动拼板方法借鉴一个国外牛人,试了一下,很好很强大,软件用Python实现,貌似也是针对SeeedStudio准备的,,原文请看Panelizing PCBs for Seeed Using Eagle Free / Light
  1. 首先将要拼的板子设计好,并将所有PCB文件转换成Gerber文件。按照SeeedStudio提供的Gerber生成器,最后需要提供给SeeedStudio以下图层文件。

  2. 安装Gerbmerge和专门针对SeeedStudio的补丁文件。Gerbmerge是一个叫Rugged Circuits的家伙开发的,主要用于拼Gerber文件,而补丁文件是专门针对SeeedStudio要求在拼板文件中加一条丝印层直线这一点进行的补充。[以下文字整理自老外]:
    1. 下载安装Gerbmerge(目前最新版为1.8版)并安装,注意,要安装这个软件需先安装Python,本教程以Python 2.7为例。
    2. 再从这个地址下载专门针对SeeedStudio的补丁文件。说是补丁,其实与原版相比就是修改了config.py和gerbmerge.py两个文件。
    3. 所以这一步就是将下载的补丁文件解压并提取出config.py 和gerbmerge.py两文件,并将两文件替换掉"C:PythonLibsite-packages "目录下原先的文件,(为以防出错,你可以将原文件备份副本)。至此,安装完成。
  3. 拼板很简单,所有要做的就是提供Gerber文件,然后,设置一下Gerbmerge软件的配置文件和Gerbmerge文件所需的layout文件。
  4. 配置文件 panel.cfg 书写设置详解:
#设置项目根目录,可以设置成包含所有输入Gerber文件和config文件和输出文件的文件夹(即:将所有的文件放在一个文件夹里面)。
projdir = .
# 设置输出的Gerber文件的前缀
MergeOut = merge2
# 定义CutlineLayers图层,就是定义需要切割辅助线。CutlineLayers will determine where the subboard markings are, which will help in separating them. These are the accentuated lines between the two instances of the board in the image below.
CutLineLayers = *topsilkscreen,*bottomsilkscreen
# OutlineLayers图层主要被补丁文件使用,他定义了哪个图层被用于绘出电路板边框。 OutlineLayers is used by the patched gerbmerge, it defines which layers the entire panel outline will be drawn on. Seeed requires this on all layers.
OutlineLayers = *toplayer,*bottomlayer,*topsilkscreen,*bottomsilkscreen,*topsoldermask,*bottomsoldermask
# 就接下来就是定义拼板的最大尺寸,以inches为单位。如果最后的板子超出这个范围程序将在最后面给出警告。
PanelWidth = 3.93
PanelHeight = 3.93
# 底下被注释的是边距设置选项,如果不设置或者注释掉等于将边距设成无。
#LeftMargin = 0.1
#RightMargin = 0.1
#TopMargin = 0.1
#BottomMargin = 0.1
# 设置两个子板之间的空白。貌似老外说0.0625是最适合手锯切割的间距。
XSpacing = 0.0625
YSpacing = 0.0625
# if you define the merge output files to be in the filename scheme that Seeed requires, you won't have to rename them by hand later.
[MergeOutputFiles]
Prefix = %(mergeout)s
*TopLayer=%(prefix)s.GTL
*BottomLayer=%(prefix)s.GBL
*TopSilkscreen=%(prefix)s.GTO
*BottomSilkscreen=%(prefix)s.GBO
*TopSoldermask=%(prefix)s.GTS
*BottomSoldermask=%(prefix)s.GBS
Drills=%(prefix)s.TXT
BoardOutline=%(prefix)s.bor
ToolList = toollist.%(prefix)s.drl
Placement = placement.%(prefix)s.txt
# Job configuration - for each different sub-board, define a section like follows with the subboard name (used in the layout file) and the gerbers comprising that job.
[SARduino_644]
Prefix=%(projdir)s/SARduino_644
# List all the layers that participate in this job. Required layers are Drills
# and BoardOutline and have no '*' at the beginning. Optional layers have
# names chosen by you and begin with '*'. You should choose consistent layer
# names across all jobs.
*TopLayer=%(prefix)s.GTL
*BottomLayer=%(prefix)s.GBL
*TopSilkscreen=%(prefix)s.GTO
*BottomSilkscreen=%(prefix)s.GBO
*TopSoldermask=%(prefix)s.GTS
*BottomSoldermask=%(prefix)s.GBS
Drills=%(prefix)s.TXT
BoardOutline=%(prefix)s.BOR
     5.拼板布局文件panel.layout书写设置详解:
     6.运行Gerbmerge.py :语法为“ gerbmerge.py panel.cfg panel.layout”。正常的出现一个警告,按照提示输入“y”,就会生成一个最后的Gerber拼板文件,用免费开源的Gerbv检查,提交将所得文件zip打包提交给SeeedStudio就ok了。