gerber文件转pcb的方法
原文链接:硬件之家 | http://www.allchiphome.com/circuit/gerber_to_pcb
将PCB转换为gerber是硬件电路工程师的常用技能,但是如何将Gerber转换成PCB并不是大家都能完美做到。对于初学者来说,只是”知其然而不知其所以然”,如果转换不成功、甚至于转换完成之后的PCB的逻辑连接发生了错误,也只能是一脸茫然,根本无从得知错误的原因。
为什么要使用Gerber?
Gerber,又称光绘文件,是一种标准的文件格式。Gerber由两个重要的组成部分,缺一不可:
- Gerber光绘文件:PCB的每个层都对应一个独立的Gerber文件,用于描述该层中的内容(有点类似于胶片)
- NC Drill钻孔文件:垂直方向上的钻孔,决定了不同层中导线的连接
PCB板厂可以通过Gerber直接生产出最终的PCB。目前常用的格式为RS-274X,大部分板厂也支持最新Gerber X2格式(多了板的层叠信息与属性)。很多工程师喜欢把PCB设计文件直接发给板厂,其实这一“偷懒”的做法是有风险的。因为板厂最终还是需要把PCB文件转换成Gerber才能进行生产,而从PCB到Gerber的这一过程存在很多潜在的问题:
- 由于Gerber精度设置的问题,PCB上连通的网络未必在Gerber上连通
- 由于EDA工具版本的问题,可能板厂打开的PCB文件已经发生了变化
- 由于缺乏沟通,PCB上一些不需要显示的参数也遗留在成品上
总而言之,PCB转成Gerber的这一过程未必是copy不走样,设计师应对这一过程负责。所以一般有经验的老工程师都会亲手把PCB转成Gerber,然后通过CAM350之类的软件,检查一下Gerber是否有问题,然后再送板厂加工。另外,无论您使用Altium、Allegro或者是Expedition,只要转成了Gerber,板厂都可以正确识别。还有一点,从Gerber反向生成PCB是比较困难的,出于安全性的考虑,企业也不愿意把设计源文件直接发给板厂。
以AD为例,生成Gerber文件时,不是一个文件,而是一组文件,包含了PCB中每个层中的信息。下表是AD生成的Gerber文件后缀极其代表的意义。
如何从Gerber生成PCB
先看一个从Gerber生成PCB的简短视频:Gerber生成PCB视频教程
Altium Designer自带了一个类似CAM350的工具,叫Camtastic。从Gerber到PCB的逆向工程,就由Camtastic工具来完成。
第一步:新建一个Cam文档
步骤为:File-New-CAM Doucument
第二步:导入Gerber及NC Drill
- 步骤一:File-Import-Gerber,然后将gerber文件导入步骤一新建的cam文件中;
- 步骤二:File-Import-Drill,然后将钻孔文件导入步骤一新建的cam文件中;
至此,如果顺利,导入步骤基本结束。但是,导入这一步会出现各种兼容性问题。
这是比较关键的一步,如果只导入Gerber,不导入NC Drill,会导致后续无法解压网表。如果有IPC Netlist,也可以一起导入,这样在解压网表时,网表的名称就会与源设计相同,而默认情况下系统会自定义网表的名称。导入完成后,就可以在AD中查看或编辑Gerber文件了:
第三步:检查层的映射关系
点击Tables » Layers打开映射界面,通过上面表格中AD生成的Gerber文件后缀极其代表的意义,来检查gerber导入后对应的pcb各层的关系是否正确。
左侧的Gerber层必须和Type列中的PCB层正确映射。其中信号层的映射尤其重要:顶层/底层分别映射为Top/Bottom;中间信号层映射为Internal;内电层映射为Pos Plane/Neg Plane。除此之外,NC Drill文件也需要正确映射到Drill层。
第四步:层的顺序(Layer Order)调整
检查层映射之后,需要调整信号层的物理顺序,点击Layer » Order菜单访问
在这里,需要定义所有的信号层(包括Top、Bottom、中间信号层及内电层)的物理顺序。这一步也相当关键,如果存在盲、埋孔,这里定义错误的话会直接导致PCB导出的错误。记住,Top层的Physical Order始终是1,其它层的顺序按实际的板层结构依次类推,只有两层板就是Bottom层的Physical Order是2。Physical Order中的数字是不可以重复的。
第五步:提取网表(Extract Net)
如果以上步骤都没有问题的话,就可以通过Gerber和NC Drill反推出PCB中的网表信息。点击Tools » Netlist » Extract菜单得到PCB的网表:
第六步:导出PCB
一切就绪,最后一步是导出PCB。如果缺少Net List或其它信息,Export to PCB的菜单是灰色不能点击的。
第七步:检查和优化导出的PCB文件
但当你仔细查看的话,会发现逆向工程导出的PCB只是Track和Pad的组合体,压根就没有器件(Component)的概念。您还需要通过无数次的Ctrl+C、Ctrl+V才能重新把这些零零碎碎的对象组合成正常的PCBLib。
另外,您可能会发现一些长条的、方形的异形焊盘转成PCB后都变成了圆形…铺铜以及阻焊、助焊的设置也和想象的不一样…
总之,这貌似不是你想要的… 不要奇怪,毕竟逆向工程只是复原PCB的样式和逻辑连接而已,并非是恢复到原始的PCB设计文件。
当然上述过程会出现各种复杂奇怪的问题,但是都是有办法来进行解决的。若有问题咨询或者需要gerber转pcb文件的,欢迎联系与交流(工程师微信:estorm22).