上周有个做硬件的朋友给我发来一个工程,说客户要求交一份Altium Designer格式的源文件,但整个项目是用嘉立创EDA画的,板子已经快定稿了,改起来要命。他问我有没有办法把嘉立创的PCB封装和3D模型整体导入AD,最好连模型都别丢,因为客户要做结构干涉检查。我听完就明白他的处境,这事在中小型硬件公司和创客团队里太常见了:方案验证阶段图快用嘉立创EDA,交付阶段被客户或生产端要求出AD工程,又或者公司内部统一用AD,但手头的元件库来源恰恰是嘉立创最有优势。这篇文章就把我多次处理这类需求的实际流程、踩过的坑和最终沉淀下来的方法完整摊开讲,适合正在被“库格式不通”卡住的朋友参考。
需要先搞清楚一件事:大多数人嘴上说“把PCB转成AD”,实际要的无非是两个东西——封装能正常显示、3D模型能贴上去不飞掉。至于原理图、网络、布线规则这些东西,标准流程也能带过去,但保存度取决于版本和操作细节。下面我会按完整流程一步步走,从导出的官方通道讲起,到3D模型绑定、常见翻车点、最后落地成一套可持续更新的封装库维护方法。
1. 谁会把嘉立创的封装搬进AD?先看这些真实场景
先别急着点菜单找按钮,把需求场景理清楚比什么都重要。我经手的这类需求基本能分成三种:
第一种是交付强制用AD格式。客户、代工厂或者合作方指定要AD工程,甚至连版本号都有要求。项目本身是在嘉立创EDA上完成的,这时候需要做的是“整个工程导出”,原理图、PCB、封装、网络、规则尽量完整迁移。
第二种是公司规范统一用AD。公司有统一的封装库管理要求,所有项目必须从公司库出图,但研发阶段大家习惯先在嘉立创EDA上快速验证元件选型。这时候不需要整工程迁移,只缺封装和3D模型,需要做的是“从嘉立创抓取元件库资料,灌进AD的封装库里”。
第三种是结构验证需要3D模型。很多项目做装配干涉检查要用STEP模型做整机仿真,而记住一个关键事实:嘉立创在元件3D模型方面的积累比绝大多数自建库都强——大量料号在立创商城页面上直接提供配套的STEP模型,省去手动建模的功夫。
这三种场景对应的工作流不一样,不要混着做。第一种以导出官方工程为主,第二种以库文件和封装器操作为主,第三种以获取STEP模型并在AD里绑定3D Body为主。接下来第二部分先讲官方导出通道,这是最直接的路径,也是理解整套转换逻辑的基础。
2. 官方出口:从嘉立创EDA导出AD工程文件
嘉立创EDA分为标准版和专业版,很多人在这一步被卡住,就是因为拿标准版反复尝试导出却不完整,最终没意识到专业版的导出能力才算齐全。
2.1 专业版与标准版的导出差异
嘉立创EDA专业版(pro.eda.cn)在设计上就考虑了跨平台导出需求,在“文件 - 导出”菜单里直接提供Altium Designer格式的导出选项。标准版虽然也能做基本导出,但对3D模型的支持很有限,导出的库文件经常缺STEP模型或者器件位号信息不完整。
我个人的建议是:只要涉及到需要交付给AD的活,一律用专业版。专业版和标准版对普通用户都免费,账号互通,元件库也基本相同,不存在从标准版迁移到专业版的门槛问题。而且专业版还能直接打开标准版工程,所以不存在“原来的工程作废”的顾虑。
还有个小技巧:如果手头的源工程是标准版格式,先用标准版打开,另存为专业版工程,再在专业版里做导出。这个顺序顺手且靠谱,能省掉很多手动修补时间。
2.2 导出操作和目录结构解读
在专业版里打开PCB文件后,按以下路径操作:“文件 - 导出 - Altium Designer”。导出时会弹出一个选项面板,核心选项包括:是否包含原理图、PCB、集成库(IntLib),以及是否导出3D模型文件。
我建议第一次做完整导出时把能勾的都勾上,后续根据需要再精简,原因是完整导出后你能清楚看到每类文件的保存效果,再决定砍掉哪些不影响交付的部分。导出完成后,输出目录里通常会出现如下核心文件:
xxx.PcbDoc:AD格式的PCB源文件,可以双击直接用AD打开。xxx.SchDoc:AD格式的原理图文件。xxx.IntLib:集成库文件,里面打包了原理图符号、PCB封装和3D模型引用关系。3D Models文件夹:一堆STEP或Parasolid格式的模型文件,对应板子上各封装的3D实体。- 若干
.PcbLib和.SchLib:独立库文件,方便你之后维护迁移。
我在第一次导出后习惯做一件事:用AD新建一个空工程,把PcbDoc和SchDoc手动添加进去,再用3D视图快速看一眼板子,确认铜皮、丝印、器件位置和3D模型都在。这个10分钟的动作能提前暴露大部分问题,不要等到要交文件时才开AD。
2.3 导出前要做的检查清单
导出不是打开就在一瞬间完成的,前置检查决定后续补坑成本。清单如下:
- 检查元件是否都有完整封装。嘉立创EDA工程里如果有少数元件用的是“简易封装”(比如纯2D线条或占位图形),导出后AD里会变成只有焊盘没有体模型的空壳,会影响3D干涉检查。
- 检查器件位号是否统一。AD对位号的依赖比重很高,位号缺失或重复会直接影响BOM导出和装配图。
- 检查铺铜和规则是否完整。导出AD后,板框、铺铜边界、间距规则这类信息大体能保留,但保险起见,打开后跑一遍DRC很有必要。
- 检查3D预览确实能显示。在嘉立创EDA专业版里按快捷键进3D预览,如果某些封装本身就没有3D模型,那导出到AD也一样没有,这个料号就得单独去补STEP模型。
- 确认工程里没有异常网络,比如未连接的飞线或者孤立铺铜,以免导入AD后报一堆错误影响心情。
我对导出环节的总体评价是:整体完成度高,有心做就能拿到比较像样的AD工程。真正的麻烦在下一步,也就是3D模型与封装的绑定关系处理。
3. 3D模型不是“会飞”——获取和绑定全流程
如果说PCB封装导入是常规操作,那3D模型就是最容易出幺蛾子的环节。很多人导入后发现元器件在3D视图里“悬在半空”“沉到板子底下”“大了一圈”,或者干脆完全透明不可见。这些问题的根源就一个:封装原点、STEP模型原点和坐标单位三者没对齐。先把这个问题吃透,后面全通。
3.1 四条获取STEP模型的途径
获取3D模型不只有一种方式,不同场景用不同途径,效率差别很大。
途径一:随工程导出自动带出。这是最省事的方式。前面提到了在导出AD工程时勾选包含3D模型的选项,导出文件夹里的3D Models目录就是这块板子所有封装的STEP模型集合。AD在打开PcbDoc时会按引用关系自动关联这些文件,3D视图里直接能看到完整装配。这条路径适合整体项目迁移场景。
途径二:从立创商城元件详情页下载。拿到元件页面,在资料区域找“EDA模型”或“3D模型”下载入口,选择Altium Designer格式或STEP格式下载。前者通常是一个包含原理图符号、PCB封装和3D模型的压缩包,后者就是独立的STEP文件。这条适合单颗料补模型。
途径三:从嘉立创EDA封装编辑器手动导出。在专业版里打开封装库文件,进入封装编辑界面,选中已有3D Body,用“导出3D模型”功能生成STEP文件。这个方法对批量处理也很友好,适合那些有封装但没有官方商城模型的国产料。
途径四:官方“3D模型下载器”小工具。嘉立创提供过一款独立的3D模型批量下载器,针对立创商城的料号批量拉取STEP模型,适合的生产环境是:有一份BOM表,对应上百个料号,每个都要补3D模型。把料号列表喂进去,工具会把模型按料号文件名下载整理好,后续在AD里建立封装与模型的映射关系即可。
四条途径各有适用边界,我平时最常见的做法是:工程内已带出的直接用,缺失的走商城下载,商城没有的用封装编辑器导出,最后用批量下载器补齐剩余尾巴。
3.2 在AD中给封装添加3D模型的标准操作
拿到STEP文件之后,在AD里给单个元件或整个封装库加3D模型,操作路径并不复杂。以给PCB板上某个元件补模型为例:
在PCB编辑界面双击目标器件打开属性面板,找到“3D Models”区域,点击添加按钮,选择“Generic STEP Model”。在弹出的文件选择框中选中对应的.step文件,AD会自动解析模型的尺寸、单位和基准坐标。
解析完成之后,可以看到模型中包含若干3D Body。关键动作来了:检查模型的原点位置是否与封装的坐标原点对齐。大多数情况下第一次导入的原点都会偏,需要在属性面板中手动调整X、Y、Z三个方向的偏移值,让模型在3D视图里“贴”到焊盘区域。
如果模型本身比较大,比如继电器、接插件、铝电解电容,还要检查缩放比例是不是1:1。AD里的默认单位是mil,而STEP模型通常以mm为单位,单位混乱是比例失真的高频原因。在“Board Options”里把单位切到mm再导入,会显著降低这类问题。
3.3 原点、比例、方向三个参数决定模型是否“贴片”
处理3D模型时我习惯按“先原点、再比例、后方向”的顺序来调参,顺序反了容易陷入反复试错循环。
- 原点对齐:决定模型的“脚下”和焊盘面是否重合。先把板子切到3D视图,选中模型,观察模型底部是否触碰板面。如果悬空,把Z轴偏移往上调(注意标准库模型原点在元件本体引脚底部),如果沉入板内,把Z轴往下调整。
- 比例校验:拿出该料号的规格书,对照实物尺寸的标称值,用AD的测量工具量一下模型的长宽高。长度偏差超过5%就说明单位或比例有问题,需要检查STEP导入参数。
- 方向校正:模型导入后的朝向和封装丝印方向不一致时,通过旋转X、Y、Z的角度参数调正。比如电解电容的极性标记要和丝印正极方向一致,否则装配时整片板子方向错乱。
为了减少后期反复调整,我在做整板3D检查时习惯汇总一张表,记录每个出问题的封装名称、所需要的偏移值和旋转角。这张表同时也是之后批量处理的依据,可省去手工逐个微调的烦恼。
4. 导入后最容易翻车的四个点
按照官方通道导入的标准流程走,会出现一些非常典型的翻车场景。第一次操作的朋友经常以为是导出坏了,其实多数情况下是AD端的参数和设置不对。
4.1 焊盘与丝印异常
导入AD后偶尔会发现个别封装焊盘尺寸不对,或者丝印线宽明显超出预期。第一反应不要怀疑封装源文件,先查AD的单位设置——经常是工程是mm、而封装编辑器默认显示mil,同一数值在不同单位下视觉尺寸差很多。
处理方式:把PCB的单位切到公制mm,重新导入封装库,或者直接框选原封装删除后重新打开库中的源封装。我没有发现嘉立创封装本身会丢焊盘的案例,几乎所有“焊盘不见了”的反馈排查下来都指向单位或层显示设置问题。
丝印异常还有一个来源是嘉立创EDA里的丝印线宽较大,导出后AD端默认线宽阈值不一致导致部分线条被隐藏。选中丝印层,在属性里把线宽调整为合适值即可,不必重导。
4.2 3D模型错位、悬浮与翻转
这部分最折磨人。一个封装明明在嘉立创EDA里3D显示得好好的,到了AD就变成“横躺”或者“朝天”。原因在于两个软件对模型坐标系的定义差异:嘉立创EDA习惯使用Y轴向上的左手系,而AD里PCB通常使用Z轴向上、X/Y在板面的右手系,转换过程中如果系统没有自动调整法线方向,模型就会翻转90度。
遇到模型横躺或上下颠倒,别急着改模型,先在3D Body属性面板里试旋转。绕X轴转90度、绕Y轴转90度、绕Z轴转180度这几个组合基本能覆盖绝大多数方向问题。如果旋转能解决,说明只是坐标系映射问题,不用重新下载模型。
悬浮和沉底基本是原点偏移问题。对于插件器件,我认为最稳的对齐参照是“器件本体底面贴板面的高度等于焊盘厚度加上丝印厚度”这种经验不必死扣,实际操作直接对比3D视图微调Z轴偏移到视觉贴合即可。
4.3 网络与规则丢失
导出后的PcbDoc打开时,AD可能弹出“缺少规则”或“网络缺失”之类的提示。核对两个重点:一是原工程中是否存在“自定义规则”,比如针对特定网络的布线宽度、间距约束,这类规则在转换后偶尔会丢失,需要手动补建;二是飞线是否显示正常,如果网络连接大量丢失,优先检查原理图和PCB的链接关系,通常需要重新同步。
这里我没有更好的自动化解法,唯一务实的建议是:导入后立刻跑一遍全面的DRC(Design Rule Check),以检查结果为准逐项修正。DRC报错清单比肉眼扫视靠谱得多。
4.4 库路径失效
AD和嘉立创EDA的库引用机制完全不同。AD的集成库一旦引用了外部模型文件,路径断裂会导致模型“消失”。最常见的情况是:PcbDoc能打开,但3D视图里看不到任何模型,元件全部变成扁平色块。
解决方式分两步:第一,检查PcbDoc所在目录下的模型文件夹是否随同移动,建议把工程文件和3D Models文件夹放在同一级目录,不要分开放。第二,在AD里重新指定库路径,集成库的模型引用路径设置好后,批量刷新即可恢复显示。
我见过有的人为了省事直接把STEP文件路径指到下载缓存目录,结果清理垃圾后整个工程3D模型全灭。正确的做法是把所有模型拷贝到工程目录下的固定文件夹,用相对路径引用。
5. 把一次导入变成可持续的封装库维护
解决了单次转换之后,长期更重要的命题是:如何不让这次导入变成一次性消耗品。如果你的项目已经进入稳定迭代期,我的建议是把从嘉立创得到的封装和3D模型体系化,沉淀成自己的AD封装库。
5.1 先整理封装源,再建立AD集成库
不要直接把导出的PcbLib拿来当公司库用。导出的库文件里有大量临时属性、重复规则和不规范命名,直接使用短期看不出问题,时间长了会因为封装命名混乱导致选错料。
我推荐的做法是:在AD里新建集成库项目,把导出的PcbLib和SchLib添加进去,逐个整理封装名称、添加元件参数(料号、厂商、封装说明)、补全3D模型的相对路径引用,最后编译成IntLib入库。这套流程第一次做完大约需要几个小时,但后续每次新增料号只需重复一小段操作,都属于不会返工的积累。
5.2 批量替换现有PCB上的封装
如果已有的AD工程里大量封装是旧版或不带3D模型的,可以通过全局替换操作将旧封装批量替换为带STEP模型的新封装。在AD PCB编辑器中打开“Tools - Update From Libraries”,选择目标封装库,勾选替换范围,系统会自动匹配封装名称进行批量替换。
替换后最需要注意的是重新检查那些“同封装不同焊盘”的特殊元件,比如某些接插件虽然封装引脚排列一致,但焊盘孔径有版本差异。批量替换往往会把这种差异无情摊平,所以替换之前先把这部分例外清单拉出来,手动排除。
5.3 增量同步与版本管理
嘉立创的元件库更新速度很快,新料号、新封装、新版3D模型几乎每天都在增加。我自己习惯了每月末抽出半小时做一次增量同步:在立创商城按“本月新增”筛选,把新增且常用的料号模型下载进本地封装库,更新IntLib,并同步到内部库服务器。
这里有个容易忽视的点:抓取模型时注意区分“替代料”和“原厂正料”。嘉立创商城上有些料号是代换料,外形尺寸和原厂有细微差别,直接替换可能导致装配干涉。所以在入库时要在封装描述里把料号原始信息写清楚,避免后面误用。
5.4 多板同时用库的管理思路
很多硬件项目从单板变成多板时,封装库的维护复杂度会陡增。薄膜如A板、B板、C板共用一批封装,但不同板的拼版方向和3D装配位置不同。这种场景下我更倾向于把封装库拆成“逻辑库”和“物理库”两套管理:逻辑库只管封装和模型本身,物理库里按板卡分别维护各自的坐标与旋转映射关系。
对应到AD操作上,也就是不要把3D Body的偏移和旋转写死在库文件里,而是在各PCB实例中通过实例化调整。这样修改库文件不会导致其他板的模型错位,安全性提升不少。
这个思路尤其适用于那些需要不断调整结构配合的消费类产品项目,前期宁可多花一点时间在库规划上,也不要等到结构模具都开了才发现3D模型方向和装配完全对不上。
另外再分享一个我自己的习惯:拿到任何STEP模型,第一件事用专业3D查看器快速打开,确认坐标原点和尺寸比例,然后才往AD里放。这比直接在AD里反复调参数节省太多时间。
关于嘉立创封装导入AD这件事,最后的成熟做法其实并不复杂:官方导出打底、3D模型按需补齐、导入后严格DRC检查、最后沉淀成自己的库体系。整个过程在第一个项目上会有明显学习成本,但只要完整走完一遍,后面再做类似项目基本就是半小时内的事。尤其3D模型这块,嘉立创的模型资源确实好用,配合AD的三维检查能大幅降低结构干涉风险,值得花时间建立一套规范流程。