## 第六章:PCB设计工具的选择 - 从原理图到Gerber文件 任何一个工具都大同小异,基本原理、流程和技能是一致的 ### 6.1 选用原则 * 功能和成本之间进行取舍 * 直观、好用、资料丰富、用户群大 * 比较成熟,风险较低,制板长广泛接受 * 库比较丰富且稳定,可以方便用于多个项目 * 器件管理功能 - 降低元器件管理和采购的成本,养成好的习惯 * 初始使用可以选择 - 有免费版本、全功能试用期、有限制功能免费版 ### 6.2 常用的PCB设计工具 #### 6.2.1 Altium Designer **Altium Designer**:在中国最流行的PCB设计工具,资源非常丰富,已经到了AD19版本,提供一个月的免费全功能试用,目前只有Windows版本,最近几年该公司加大盗版打击力度,很多小企业不得不寻找替代的方案。 {{ :adtool.jpg |}} * 官方网站:https://www.altium.com.cn * 官方软件下载:https://www.altium.com.cn/free-trials * 官方提供的库文件和设计资源下载:https://designcontent.live.altium.com * 本地资源 - 电路城提供了很多网友上传的库文件:https://www.cirmall.com/circuits/categorygroup/EDA库与代码 * 在中国家喻户晓的#1 PCB设计工具 * 曾经的经典 - Protel、Protel 99 SE * 容易破解、盗版帮助了普及,但企业需要缴费使用 #### 6.2.2 OrCAD {{ :orcadpadspro-a203ddeb.png |}} **OrCad**是一款历史很悠久的经典PCB设计工具,可有全功能的免费版本做体验,都是Cadence旗下的工具,应该跟PSpice能够高度整合,也跟Allegro进行了深度整合。 * 官方网站:www.orcad.com * 免费体验下载链接:https://www.orcad.com/free-trial * 跟Arrow的融合 - 免费的基于云服务的CAD设计工具:https://orcad.arrow.com * 名字来源于Oregon + CAD * 集成了仿真(PSpice)和分析工具、CIS(元器件信息系统) * 可以输出HDL格式的Netlist * 支持脚本、支持MarketPlace * 有免费试用版 另外Cadence公司旗下还有一款在中国电子行业非常有名PCB设计工具**Allegro**,由于目前它和OrCad是一家的产品,它们之间进行了深度融合,Allegro的官方网站:https://www.cadence.com/content/cadence-www/global/en_US/home/tools/pcb-design-and-analysis/pcb-layout/allegro-pcb-designer.html #### 6.2.3 PADS **PADS** - 在中国的企业用户很多,属于Mentor Graphics旗下非常专业的PCB设计工具 {{ :padsmentor.png |}} * 官方网站:https://www.pads.com * 参考设计下载:https://www.mentor.com/pcb/reference-designs/#/?_k=vzahth {{ :pads_screen.jpg?800 |}} * 包括PCB Logic、PCB Layout(PowerPCB)、PCB Route * PowerPCB可以对接OrCAD、CAD350、AutoDesk、ProE * 规则驱动下的强大的交互式布局布线功能 * DRC/DFT/DFM校验与分析 * 被很多企业定位为高端CAD软件 * 破解版比较多 **Boardstation**、**Xpedition**、**ViewDraw**也都是Mentor旗下的PCB设计工具,考虑到在中国的用户相对少,在此不在赘述。 #### 6.2.4 Eagle - Easily Applicable Graphical Layout Editor **EAGLE** 是一款可编写脚本的电子设计自动化(EDA)应用程序,具有原理图捕获、印刷电路板(PCB)布局、自动布线和计算机辅助制造(CAM)功能。 EAGLE的名称来自于Easily Applicable Graphical Layout Editor(易于应用的图形布局编辑器)的缩写,由德国的CadSoft Computer GmbH开发。 该公司于2016年被Autodesk Inc.收购。Eagle可以运行在Windows、Mac OS、Linux三种主流平台下。它的收费模式是按月收费,免费版本限制了电路图只能两个页面,PCB只能两层而且尺寸最大为80平方厘米,高校的用户可以免费使用全功能的版本,其实全功能的付费使用也不贵,其库资源非常丰富,被知名的开源硬件提供商Sparkfun、Adafuit、Arduino、Seeed Studio(中国深圳的公司,旗下拥有柴火空间)等采用,在这些公司的网站或Github上都能够下载到Eagle格式的设计源文件及库。 {{ :eaglepcb.png |}} ##### 6.2.4.1 主要功能 EAGLE包含一个原理图编辑器,用于设计电路图, 原理图存储在扩展名为.SCH的文件中,元器件在扩展名为.LBR的设备库中定义。元器件可放置在多张纸上,并通过端口连接在一起。 PCB布局编辑器存储扩展名为.BRD的电路板文件。它允许对原理图进行反向注释,并自动布线以根据原理图中定义的连接自动连接走线。 EAGLE保存了Gerber和PostScript布局文件以及Excellon和Sieb&Meyer钻孔文件,这些是PCB制造厂商接受的标准文件格式,但鉴于EAGLE的小型设计公司和业余爱好者的典型用户群,许多PCB制造商和装配车间也直接接受EAGLE板文件(扩展名为.BRD)以导出优化的生产文件和选择 - 和数据本身。 EAGLE提供了一个多窗口图形用户界面和菜单系统,用于编辑、项目管理以及自定义界面和设计参数。可以通过鼠标、键盘热键或通过在嵌入式命令行输入特定命令来控制系统。多个重复命令可以组合成脚本文件(文件扩展名为.SCR)。还可以使用EAGLE特定的面向对象编程语言(扩展名为.ULP)来探索设计文件。 * 原理图编辑: * SPICE仿真器 - 使用一整套SPICE仿真方法快速测试您的想法并验证电路性能。 * 模块化设计模块 - 在项目之间拖放可重复使用的设计模块,完成同步原理图和PCB电路。 * 电子规则检查 - 通过一整套电子规则检查验证您的原理图设计,以便您的原理图可以保持正常运行。 * 实时设计同步 - 所有更改都会在原理图和布局之间自动保持同步,因此您可以专注于创作过程。 * PCB布局布线 * 推送和推送布线 - 在自适应交互式路由器推动和推动PCB走线时,遵守所有设计规则。 * 直观的对齐工具 - 使用一套完整的对齐工具精确排列和订购PCB设计对象。 * 避障路由 - 在您的设计周围布置复杂的PCB布局和机动,以便轻松跟踪目的地。 * 新的路由引擎 - 快速创建漂亮的PCB布局。 在路线时探索用于环路移除,转弯和通过放置的工具。 * PCB元器件库管理 * 管理的在线库 - 无需图书馆就可以为您的下一个设计做好准备。 查找和放置动态链接到我们不断增长的目录的零件 * 3D PCB模型 - 不要靠运气将电路板安装在机箱中。 精确的3D模型使PCB能够第一次贴合。 * 完整组件 - 开箱即用的组件库包括符号,封装,3D模型和参数。 * 可制造的部件 - 组件库直接链接到制造商,因此您可以避免在最后一分钟争抢找到替代品。 \\ ##### 6.2.4.2 授权使用模式 自EAGLE 8.0.0版以来,有Premium,Standard,Free和Student&educator版本,标准版和高级版每月或每年订阅销售,需要至少每14天进行一次在线重新激活(自9.0版起30天))。 各种可用版本的功能比较: ^版本 |原理图页数|PCB层数|PCB大小 |用户 |成本/月 |成本/年 | ^高级 |999 |16 |无限制|任何人 | 65美元 | 520美元 | ^学生和教学| 999 | 16 | 4m² |只针对学生和教学用| 免费|免费| ^标准|99|4|160cm²| 任何人| 15美元 | 100美元 | ^免费|2|2|80cm² |对于个人、非商业应用|免费|免费| {{ :eaglemodel.png |}}Eagle的收费使用模式 \\ ##### 6.2.4.3 丰富的资源 在网上可以找到大量的针对初学者设计自己PCB的文字和视频教程。 DIY电子网站[SparkFun](http://www.sparkfun.com/)使用EAGLE并发布内部设计的EAGLE文件。 SparkFun Electronics是一家由于Make杂志和其他人所展示的业余爱好者市场而成长的公司,其中许多公司都提供EAGLE元器件库,它们定义了原理图形状、引脚分布和元器件尺寸,以便在PCB布局编辑器中进行正确的布局。 其它受欢迎的库包括[Adafruit](http://adafruit.com/)、[[Arduino]]、[SnapEDA](https://www.snapeda.com)、Dangerous Prototypes、Element14(Farnell的子公司,CadSoft的前所有者)也有一些库可以从他们的网站上获得。 使用ULP将EAGLE .BRD文件转换为与Specctra兼容的设计文件(文件扩展名为.DSN),可以将设计导出与高级外部自动装置一起使用,如KONEKT ELECTRA,Eremex TopoR 或Alfons Wirtz的FreeRouting。为了进一步修改,会话格式的完成设计可以通过.SES到.SCR脚本文件转换器导回到EAGLE。 ##### 6.2.4.4 Eagle的相关资源网址 - [Eagle的官方网站](https://www.autodesk.com/products/eagle) - [Eagle官方的学习中心](https://www.autodesk.com/products/eagle/learning-center),视频教程 - 快速入门、原理图、库、PCB布局布线、符合IPC规范的封装库的构建向导 - [Eagle的在线研讨会](http://eagle.autodesk.com/eagle/events) - [Eagle的官方论坛](https://forums.autodesk.com/t5/eagle-forum/bd-p/3500) ##### 6.2.4.5 Eagle的下载、安装 Eagle软件目前比较成熟的版本是5.0.1,可以从下面的URL链接地址进行免费版本的下载安装: * [[https://www.autodesk.com/eagle-download-win|Windows版本的下载]] * [[https://www.autodesk.com/eagle-download-mac|Mac版本下载]] * [[https://www.autodesk.com/eagle-download-lin|Liunx版本的下载]] ##### 6.2.4.6 库资源及库文件的下载 元器件的库非常重要,创建一个新的元器件的库费时费力,而且容易出错,因此如果有可信的现成的元器件库,对于工程师来讲会是很大的帮助,我们收集整理了几个可以下载库的网站,用户可以放心从这些地方下载。这些库一般都包含了原理图符号库、PCB封装库以及3D模型库三个部分。对于不同的操作系统,库的安装和配置方式可能不同,用户可以阅读Eagle提供的使用说明。这些网站会不断更新他们的库,不断添加原厂新推出来的器件。 * [Sparkfun提供的库](https://github.com/sparkfun/SparkFun-Eagle-Libraries) * [Adafruit提供的库](https://github.com/adafruit/Adafruit-Eagle-Library) * [LittleBit的原理图和PCB资源](https://github.com/littlebitselectronics/eagle-files) * [Seeedstudio的库](https://github.com/Seeed-Studio/OPL_Eagle_Library) 很多器件的库文件(原理图符号、封装、3D模型)都可以从[[http://www.ultralibrarian.com|UltraLibrarian网站]]以及[[http://www.snapeda.com|SnapEDA网站]]上找到并可以下载,利用好这些网站创建的成熟的库文件,可以节省自己创建库的时间,并保证了正确性。 ##### 6.2.4.7 中文教程和资料 在网上找到的中文文章都是2016年前的,使用的Eagle版本是AutoDesk接手之前的,因此界面会有所不同。 - [使用EAGLE画电路板布局图](http://www.i-element.org/eaglepcblayout/) - [全球知名的PCB设计工具 Cadsoft EAGLE](http://www.eeskill.com/article/id/15003) - [EAGLE PCB设计软件介绍](http://www.voidcn.com/article/p-sxwsdcts-py.html) ##### 6.2.4.8 英文版教程 * [SparkFun上的如何安装和配置Eagle?](https://learn.sparkfun.com/tutorials/how-to-install-and-setup-eagle/all) * [Element14上关于Eagle的资源和介绍](https://www.element14.com/community/docs/DOC-69900/l/autodesk-eagle-pcb-design-software) * [Wikipedia上关于Eagle的介绍](https://en.wikipedia.org/wiki/EAGLE_(program)) #### 6.2.5 KiCad {{ :kicadfu.png? |}} KiCad是一种免费、开源的PCB设计工具,它提供了几乎满足任何项目所需的功能。它最初由法国人Jean-Pierre Charras开发,此工具提供了一个用于原理图输入和PCB布局布线的集成化开发环境,在这个工具中还有用于产生BOM、Gerber文件、对PCB及其上元器件进行3D查看的功能。2013年CERN(欧洲核子研究组织)的BE-CO-HT部门开始贡献一些资源支持其成为开源硬件领域与商用的EDA工具相当的工具软件。 KiCad([[http://www.kicad-pcb.org|官网KiCad-pcb.org]],非商业运营的团体的网站用org的比较多)于2015年12月发布了4.0.0版本,是第一个拥有很多由CERN开发者开发的高级工具的版本,CERN也希望通过捐款的方式支持更多的开发者完善这个软件,最新可以稳定使用的版本是5.0.1。 * KiCad是一种全功能的PCB设计工具 * 免费、开源,非常适合中小企业尤其是初学者 * 支持多平台,可在Windows、Mac OS和Linux上运行 * 应用套件包括:原理图绘制Eeschema、PCB布局布线Pcbnew、Gerber文件查看、3D实体模型查看等等 * Python脚本支持电路板和封装库自动化 * 有大量符号、封装和3D模型库可供下载 * 应用和文档已翻译成多种语言 下面的图就是从其官网首页上截取的关于其三大重点功能的介绍 - 原理图绘制、PCB布局布线、3D查看。 {{ :kicadfu.png? |}} KiCad工具套装包括5个重要的部分: * KiCad – 工程管理. * Eeschema – 原理图绘制编辑器. * Pcbnew – PCB布局布线,它包含了3D查看的功能. * GerbView – 查看Gerber文件. * Bitmap2Component – 将图像文件转变成PCB的封装库。 打开KiCad工程管理文件,可以看到下面的菜单,包含了主要的几个功能 - 原理图/原理图库、PCB布局布线/PCB库制作、Gerber查看、图片转换、计算器、以及页面设置功能 {{ :kicadme.png |}} ##### 6.2.5.1 KiCad的相关资源网址 - [KiCad的官方网站](https://www.kicad-pcb.org) - [KiCad在Launchpad的开发者网站](https://launchpad.net/kicad) - [KiCad官方库](https://kicad.github.io) - [KiCad的用户论坛](https://forum.kicad.info) - [KiCad用户群](https://groups.yahoo.com/neo/groups/kicad-users/info) ##### 6.2.5.2 KiCad的下载、安装 KiCad软件目前比较成熟的版本是5.0.1,可以从下面的URL链接地址进行下载安装: * [[http://downloads.kicad-pcb.org/windows/stable/kicad-5.0.1_3-x86_64.exe|64位Windows版本的下载]] * [[http://downloads.kicad-pcb.org/windows/stable/kicad-5.0.1_3-i686.exe|32位Windows版本的下载]] * [[http://downloads.kicad-pcb.org/osx/stable/kicad-unified-5.0.1.dmg|Mac OS下载]] * [[http://kicad-pcb.org/download/ubuntu/|Ubuntu下载及安装说明]] * [[http://kicad-pcb.org/download/debian/|Debian下载及安装说明]] * [[http://kicad-pcb.org/download/|Liunx其它平台的下载]] ##### 6.2.5.3 库资源及库文件的下载 元器件的库非常重要,创建一个新的元器件的库费时费力,而且容易出错,因此如果有可信的现成的元器件库,对于工程师来讲会是很大的帮助,我们收集整理了几个可以下载库的网站,用户可以放心从这些地方下载。这些库一般都包含了原理图符号库、PCB封装库以及3D模型库三个部分。对于不同的操作系统,库的安装和配置方式可能不同,用户可以阅读KiCad提供的使用说明。这些网站会不断更新他们的库,不断添加原厂新推出来的器件。 * [KiCad官方的原理图符号库下载](https://kicad.github.io/symbols) * [KiCad官方的PCB封装库下载](https://kicad.github.io/footprints) * [KiCad官方的3D模型库](https://kicad.github.io/footprints) * [Sparkfun提供的库](https://github.com/sparkfun/SparkFun-KiCad-Libraries) 很多器件的库文件(原理图符号、封装、3D模型)都可以从[[http://www.ultralibrarian.com|UltraLibrarian网站]]以及[[http://www.snapeda.com|SnapEDA网站]]上找到并可以下载,利用好这些网站创建的成熟的库文件,可以节省自己创建库的时间,并保证了正确性。 全球知名的元器件现货分销商Digikey强力支持KiCad,在其官网上提供了很多元器件的KiCad库文件供大家下载,如下是其网站的介绍: * 超过一千个有用的零件,并提供相关封装 * 完全由 Digi-Key AE 构建 * 手工专门构建并通过同行测试,在这里没有自动化 * 与 KiCad 库一样的开源许可 * 创建时带有所有参数和订购信息 在Digikey的中文官网上有[[https://www.digikey.com.cn/zh/resources/design-tools/kicad?utm_source=online&utm_medium=vanity&utm_campaign=kicad|Digikey针对KiCad的资源]],可以点击[[https://github.com/digikey/digikey-kicad-library|Digikey针对KiCad的库文件]]进行下载 ##### 6.2.5.4 KiCad的中文教程 - [[KiCad简介]] - [[KiCad设计流程]] - [[KiCad原理图绘制]] - [[KiCad原理图库构建]] - [[KiCad电路板布局布线]] - [[KiCad封装库构建]] - [CvPcb(中文版)](http://docs.kicad-pcb.org/5.1.0/zh/cvpcb/cvpcb.html) - [GerbView(中文版)](http://docs.kicad-pcb.org/5.1.0/zh/gerbview/gerbview.html) ##### 6.2.5.5 微信公众号的文章 ###### 来自公众号“硬件设计技能”,作者苏老师 * [KiCad介绍](https://mp.weixin.qq.com/s/9tQr_EsnIdZY9IRf173CaQ) * [KiCad设计流程](https://mp.weixin.qq.com/s/5eN4y3nnqG6IQrTJ2zpUWw) * [KiCad原理图设计](https://mp.weixin.qq.com/s/2OMcA3qIYn87nLfpLyx4kw) * [KiCad原理图库的构建](https://mp.weixin.qq.com/s/3YzeIwStvc_92nUrOPDXLw) * [PCB布局布线](https://mp.weixin.qq.com/s/_0oYPljhc7hX7zwum3-7wQ) * [KiCad和Eagle工具可放心使用的库资源](https://mp.weixin.qq.com/s/KOvj9nya37rkrlEdBCQYaw) ###### 来自公众号“KiCad交流学习”,作者刘广 * [KiCad安装教程](https://mp.weixin.qq.com/s/UwoVCeDvJU49SRE64aROrA) * [KiCad5.0快速入门教程(一)--前言](https://mp.weixin.qq.com/s/gRxAdTXGrnWAqsmkG2ktUQ) * [KiCad5.0快速入门教程(二) -- PCB设计流程与环境介绍](https://mp.weixin.qq.com/s/zw68pJYHidYOd_saWxG35g) * [KiCad5.0快速入门(三) -- 创建原理图库](https://mp.weixin.qq.com/s/eyUocbaPS7h1g3RHS7rbEA) * [KiCad5.0快速入门(四)--创建原理图库(续)](https://mp.weixin.qq.com/s/H-mRrfjedzGWIykyo7XyCA) * [KiCad5.0快速入门(五)-- 绘制原理图](https://mp.weixin.qq.com/s/xlHHGrFoMBPBfsr6wVq5iw) * [KiCad5.0快速入门(六)-- 创建PCB封装](https://mp.weixin.qq.com/s/sWKdej357bCD8N0SxxMIZg) * [KiCad5.0快速入门(七)-- 生成BOM和网表](https://mp.weixin.qq.com/s/a3uALl7Z-uwZE_fh__E5RA) * [KiCad5.0快速入门(八)-- PCB布局与布线](https://mp.weixin.qq.com/s/uyrGq4hqfEPkcVTVdAq9YA) * [KiCad5.0快速入门(九)-- 输出制造文件](https://mp.weixin.qq.com/s/wKKUczwdSocLFTrDTTaoSQ) ##### 6.2.5.6 英文版教程 * [Getting Started in KiCad](http://docs.kicad-pcb.org/stable/en/getting_started_in_kicad.html) * [KiCad - Project Manage Window](http://docs.kicad-pcb.org/stable/en/kicad.html) * [Eeschema - Schematic editor and component editor](http://docs.kicad-pcb.org/stable/en/eeschema.html) * [Pcbnew - Circuit board layout editor and footprint editor](http://docs.kicad-pcb.org/stable/en/pcbnew.html) * [PL Editor - Page Layout Editor](http://docs.kicad-pcb.org/stable/en/pl_editor.html) * [在ubuntu上运行KiCad](https://www.allaboutcircuits.com/technical-articles/introduction-to-kicad-on-ubuntu/?utm_source=eetech&utm_medium=eetech-social&utm_campaign=reposts-technical/),此文来自于Allaboutcircuits网站,适应于KiCad的中级用户参考。 #### 6.2.6 在线PCB设计工具 - PCBWeb - 支持多页原理图以及多层布线 - 集成了Digikey的器件信息以及bom管理功能 - SnapEDA - **Scheme-it**,免费在线原理图绘制工具:https://www.digikey.com/schemeit/project/ - 同Arrow合作的基于云服务的**OrCad**版本,但网速好像比较慢:https://orcad.arrow.com #### 6.2.7 参考阅读 - 46款用于PCB设计的工具软件:https://www.pannam.com/blog/best-pcb-design-software-tools/ - 维基百科上EDA工具的详细比较:https://en.wikipedia.org/wiki/Comparison_of_EDA_software #### 6.2.8 元器件库资源 - 库的构成 - 原理图符号Symbol,用于原理图设计 - PCB footprint,用于PCB的布局布线种 - 器件信息,用于对器件的名称、重要参数的描述 - 3D模型,在PCB设计中用于查看其空间的位置 - IBIS模型,模拟器件的接口管脚的参数信息 - 库资源提供商 - Ultralibrarian - 比较有名的做库的平台,同TI、ADI、TE等都有合作,将行业主流的元器件都做了各种CAD工具格式的库,注册账号后可以免费下载:www.ultralibrarian.com - SnapEDA:www.snapeda.com - SamacSys - 英国的一家做元器件库的网上平台,提供了1500万元器件的库文件:https://www.samacsys.com - 电路城(Cirmall)网友上传分享的库文件:https://www.cirmall.com/circuits/categorygroup/EDA库与代码