ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

AD导入DXF/DWG全攻略:版本转换、单位避坑与常见错误排查

AD导入DXF/DWG全攻略:版本转换、单位避坑与常见错误排查 只要画过PCB板子的人基本都遇到过这种场景结构工程师甩过来一个DWG文件说“板框按这个走”你兴冲冲地在Altium Designer里File→Import→DXF/DWG结果要么啥都没显示要么图形跑到坐标几十万的地方去要么尺寸一看多了25.4倍。折腾一下午最后还得低声下气求人转个格式。这个坑我踩了无数回也帮同事擦过无数次屁股。今天干脆把AD导入DXF/DWG的完整流程、版本转换技巧、以及各种翻车现场的排查思路写成一篇保姆级教程。这篇没有什么高深理论全是从实际项目里磨出来的经验适合所有被结构图折磨过的硬件工程师也适合刚接触AD的新手照着操作。1. 为什么DXF/DWG导进AD老是“翻车”先搞懂这几个底层原因先说句实在话AD导入DXF/DWG之所以问题这么多不是AD本身有多烂而是很多人没搞明白它和AutoCAD之间“沟通”的几个关键前提。踩坑之前建议先把下面三个底层原因搞清楚。1.1 DXF和DWG不是一回事导入路径完全不同很多初学者把DXF和DWG当成同一种东西觉得后缀不同而已随便哪个都行。实际上这俩的存储逻辑差别很大。DWG是AutoCAD的原生格式本质上是一个封闭的数据库文件里面包含图形实体、图层、线型、标注样式、块定义等一大堆信息。AD要解析它其实是去读取这个数据库所以对DWG版本非常敏感。高版本DWG引入了一些新的图形实体和数据结构AD版本不够新的话要么直接报错打不开要么打开后丢东西。DXF则不同它是Autodesk为了生态互通而公开的文本交换格式分ASCII和二进制两种。DXF的结构非常透明任何一个软件都可以通过解析文本把它读出来。对AD来说解析DXF的容错率要高得多即使版本新一点只要CAD能保存成DXFAD大概率都能读进去。所以我的第一原则是能要DXF就要DXF对方只给DWG那就想方设法转成DXF或者低版本DWG再导。1.2 AutoCAD版本差一代AD就可能“不认账”这是绝大多数人翻车的第一大原因。AutoCAD从2010年之后差不多每年出一个大版本但DWG文件格式并没有每年都变。真正影响兼容性的是DWG的“内部格式版本号”比如AutoCAD 2000AC1015AutoCAD 2004AC1018AutoCAD 2007AC1021AutoCAD 2010AC1024AutoCAD 2013AC1027AutoCAD 2018AC1032AD各个版本能直接打开的最高DWG版本是有限制的。比如AD 17、AD 18时代对AC1027也就是AutoCAD 2013版本支持得比较稳再高的版本就可能报“File format not supported”或者干脆打不开。到了AD 20之后支持范围会好一些但仍然不建议直接拿AutoCAD 2023、2024保存的原生DWG往AD里怼。这里有个热词检索里反复出现的搜索词allegro如何导入dxf。其实Cadence Allegro导入DXF的思路和AD几乎一样对版本兼容性和单位问题同样敏感。所以如果你以后从AD转到Allegro或者同事用Allegro这篇教程里关于版本转换和单位判断的方法依然适用。1.3 单位错一个选项尺寸直接差25.4倍如果版本没问题、文件也能打开下一个高频翻车点就是单位。AD默认用的是英制单位mil而结构工程师用的几乎都是公制单位mm。导入时如果单位选项没选对最常见的后果就是你觉得框太小了实际是单位识别错误导致比例变了25.4倍。注意这里说的25.4倍不是图形变大了或者变小了而是AD在导入时按照错误的单位换算关系去解释DWG里的坐标值。DWG文件里存的图形本没有单位它只有“数字”单位是在解释的时候赋予的。你用mm去解释和用mil去解释同一个数字结果在幅面上差了25.4倍。后面导入向导里我会专门讲单位怎么选这里先记住一个结论如果结构图是mm的就明确选mm如果对方文件里单位混乱先统一成mm再导。2. 开工前必做的准备版本识别与AutoCAD另存转换导入的成功率一半在导入操作之前就决定了。很多人在拿到文件后不做任何检查就直接导出了问题再回头排查浪费大量时间。建议按下面的流程先做一遍。2.1 不装AutoCAD也能看出DWG/DXF的真实版本如果电脑上没装AutoCAD但想知道文件到底是什么版本不需要求人自己就能查。对于DXF文件用记事本或任意文本编辑器打开在文件头部几行内能看到$ACADVER这后面跟的就是版本信息比如AC1027代表AutoCAD 2013AC1032代表AutoCAD 2018。对于DWG文件因为它是二进制格式不能用记事本直接看但可以用十六进制编辑器打开在文件偏移位置附近搜索AC10开头的字符串。比如看到AC1027就是AutoCAD 2013格式。更省事的办法是直接把DWG文件拖到支持查看的软件里比如某些免费DWG查看器也会显示格式版本。有了这个判断你就能决定是直接导入还是先转换。2.2 AutoCAD里的版本转换操作详细到每一步如果文件版本太高或者你手头只有DWG想转成DXF那就需要AutoCAD出马。这里以AutoCAD 2023界面为例但老版本操作逻辑一样。打开AutoCAD用OPEN命令打开这个高版本DWG文件。然后点左上角“文件”菜单选择“另存为”。在弹出对话框的“文件类型”下拉框里你会看到一长串格式选项。关键的一步在这里选择AutoCAD 2013/LT2013 Drawing (*.dwg)或者AutoCAD 2010/LT2010 Drawing (*.dwg)。如果对方要求更稳直接选AutoCAD 2004/LT2004 Drawing (*.dwg)这个版本格式在几乎所有后出的软件里都能打开是跨软件交换的“黄金格式”。如果想把DWG转成DXF在同一个下拉框里选择AutoCAD 2013/LT2013 DXF (*.dxf)。这里我实测下来ASCII DXF的兼容性最好二进制DXF虽然文件更小但偶尔在AD里会有字体层面的小毛病不建议优先使用。保存时注意文件名不要带中文和特殊字符路径也尽量用纯英文避免AD解析文件路径时出幺蛾子。另外多说一句autocad 2024这类新版本默认保存格式是AC1032所以如果对方用的是2024版本更得要求他另存。很多结构工程师根本不知道下游还有版本兼容这回事你直接让他“另存为2004版DWG”比让他理解AD的限制要快得多。2.3 转换前在CAD里做的三个“瘦身”动作拿到一个结构图直接转换往往不是最优解我建议在转换前做三个清理动作能省掉后面一大半排查问题的时间。第一删除所有无关的标注文字和尺寸线。结构图里各种尺寸标注密密麻麻它们导入到AD后基本都用不上反而会在机械层里堆出一堆空心字框和断线碍眼不说还影响整板美观。第二把图层整明白。在AutoCAD里用LAYER命令打开图层管理器把不需要的图层隐藏或删除只保留外形层、定位孔层、禁布层等关键图层。实在不知道怎么分就让结构工程师把需要的元素全部挪到0层或者一个单独命名的层里。第三炸开所有块对象。结构工程师的图里往往有大量块参照导入AD后这些块有时会变成一坨无法编辑的对象炸开成散线后AD处理起来反而顺畅。这三个动作看起来不起眼但能明显提高导入后的可用性。我在项目里经常看到有人导入后一堆乱七八糟的辅助线其实就是没做这步清理。3. 保姆级实操从新建PCB到结构图完全就位文件准备好之后就是正式的导入操作了。这里以AD 20版本界面为例老版本类似新版本也差不多。整个过程拆成四步每一步我都会说清楚为什么这么操作。3.1 第一步新建PCB并先把单位设置对不要直接从原理图里新建PCB建议先单独新建一个空白的PCB文件把想清楚的事情都定好再考虑往里导。打开AD后执行File→New→PCB新建一个空白PCB。紧接着执行Design→Board Options打开板参数设置面板。在“Unit”下拉框里选择公制单位mm。这一步一定要先做。如果保持默认的mil后面导入时很容易被各种单位换算折磨疯。同时把“Sheet Position”区域里的“X”、“Y”坐标也看一眼默认通常是0保持不动即可。这个坐标决定了图纸空间的原点位置和后面“图形跑到远处”的问题有直接关系。3.2 第二步用Import Wizard把DXF/DWG导进来在空白PCB界面下执行File→Import→DXF/DWG。这时会弹出导入向导下面是我逐项的操作方式和原因。第一步选择文件。选中已经转换好的DXF或DWG文件。这里注意如果你有两个文件最好分开导别指望一次把多个文件叠在一个PCB里。第二步选择单位。这是最关键的一步。在“Unit”下拉框里选择mm。如果文件里确定是英寸才选inch如果拿不准就先用mm导入然后用后面的测量法验证错了再重新导入成本不高。第三步设置比例因子。默认是1:1正常情况下不要动。但如果导入后图形明显过大或过小可以回到这里调整比例。不过我更推荐先确认单位选对了再去动比例因为90%的“比例不对”其实是单位错造成的。第四步图层的映射。导入向导会列出DWG文件里的所有图层你需要在右侧指定这些图层导入后对应到AD的哪个层。结构外形通常映射到Mechanical 1层定位孔映射到Mechanical 1或Keep-Out层。如果你不确定可以全部先放到Mechanical 1导入后再调整。第五步导入位置。向导里会让选择“Location”默认是0点。还有一个“Center the drawing”选项勾选后会把图形放到PCB图纸的中心。我建议第一次导入时勾上方便快速看到图形。后续再手动精确归位。一路点Next到Finish图形就导进来了。3.3 第三步导入后的检查、修正与图层规整图形导进来不等于完事必须立刻做三件事。第一件事测量尺寸。用CtrlM键调出距离测量工具在导入的图形上量一个你已知的尺寸确认数值对不对。比如结构图上标注的长度是100mm你量出来是100mm单位就没问题如果量出来是3.937那说明你把mil当成了mm重新导入并选对单位即可。第二件事看图形位置。如果图形不在你期望的区域全选图形元素快捷键CtrlA能选到PCB图纸中的所有元素执行Edit→Move→Move Selection点任意基准点后手动拖到合适位置。建议把图形左下角移动到坐标(0,0)附近后面做板框、生成Gerber都方便。第三件事图层归属检查。打开右下角Panels面板里的PCB面板在“Layers”标签下检查导入内容所在的层。如果不小心全放到了Top Layer选中所有图形元素后在Properties面板里把层的归属改到Mechanical 1。千万别让结构线条留在Top Layer不然它会被当成电气连线铺铜和DRC都会出问题。3.4 进阶一步把结构图变成能用的板框导入本身不难难的是怎么把CAD图形变成AD认的板框。很多新手卡在实际应用这一步。简单说AD的板框要求是闭合的独立多边形而且线宽要合适。结构工程师给的通常是普通线条不是闭合多段线直接拿来当板框会有缝隙DRC会报“Board Outline”相关错误。我的经验是先不急着用导入的图直接生成板框而是用Tools→Convert→Explode把导入的图再炸一次确保所有元素变成最基础的线条和圆弧然后在Mechanical 1层用Design→Board Shape→Define Board Shape from Selected Objects选中外形线后让AD自动生成板框。如果这一步报错多数原因是线条有重叠或断点可以放大图形仔细检查手动把断点接上。至于定位孔导入后选中圆形对象在Properties面板里把孔的尺寸、类型改成Hole或者Mounting Hole即可。注意孔边缘的线宽如果太细拿去给板厂加工时会识别不了建议把定位孔的Outline宽度统一设置到0.1mm以上。4. 半天找不到问题常见报错与排查实录就算前面每一步都照做了实际项目里还是会有各种突发状况。这里把我在真实项目中遇到的、以及帮别人排查过的高频问题全部整理出来按症状分类方便你直接对照解决。4.1 导入后什么都看不到图层与单位的双重陷阱这是问得最多的问题。导入操作一切正常向导点完界面上干干净净啥都没有。很多人这时就慌了以为导入失败。第一个排查方向是图层显示。导入的图形可能被分配到了机械层而当前PCB的图层显示里机械层被隐藏了。按快捷键L打开图层显示设置把所有层的“Show”勾上再看一眼。很多时候图形其实已经导进来了只是被隐藏了而已。第二个排查方向是单位问题导致的图形微小化。如果单位选错了图形以错误的尺度导入可能在当前视口缩放到看不见。执行CtrlZ撤销导入然后重新用正确的单位导入或者双击鼠标滚轮让视图缩放到整个图纸范围。第三个少有人注意的点如果导入的是DWG里的“视口”对象AD有可能只导入视口边界而没有里面的内容。这个在CAD里把视口对象炸开后再导出DXF就能解决。另外网上搜索词里有个Altium Designer Viewer这个免费浏览器可以查看AD的工程和PCB文件但它只用来查看不能做导入。如果你在这个软件里看DWG是打不开的别用它来做文件预览。4.2 尺寸差25.4倍单位判断错误的经典翻车现场先给你说个真实案例。之前有个同事要从结构那边拿一款外壳的板框结构工程师给的是AutoCAD 2022的原生DWG。同事没转换直接往AD里导。导入后板框看起来形状对他也没细看直接用了。结果打样回来板子比外壳小了一圈一量尺寸全部差25.4倍。最后只能加急重新打样项目延期三天。这个案例不是个例。25.4倍错误太隐蔽了因为图形形状完全一样就是大小不对。如果不认真做尺寸校验很容易漏过去。这里教大家一个最笨但最有效的方法不管对方说单位是啥导入后一定用已知的参考尺寸验证一遍。比如原理图里的板形尺寸、结构图里的标注尺寸、连接器之间的间距随便找两个点量一下和标注对得上就是对的。对不上就重新来过这比任何理论判断都靠谱。4.3 DWG版本过高报错与电脑卡死版本与文件体量问题还有一种高频报错是导入时AD直接提示不支持的DWG版本或者导入过程极慢、内存占用飙升最后卡死。这两个问题可以放在一起说本质都是文件兼容性和文件体量的问题。版本过高可以用前面讲的AutoCAD另存为低版本来解决。但电脑卡死不一定全是版本问题也有可能是DWG文件本身携带了大量垃圾数据比如多余的标注样式、块定义、外部参照xref甚至结构工程师画图的辅助图形。导入这些冗余数据会拖垮AD。处理办法是去AutoCAD里用PURGE命令清理冗余数据再执行AUDIT修复图面错误然后另存为DXF版本。我实测过一个5MB的DWG文件经过这两步清理后变成不到1MB的DXF导入速度快到飞起。如果项目里的确需要频繁导入大型结构图建议把结构图拆分成多个小文件分别导入。我之前做过一个大屏控制板结构图里有上百个定位孔和复杂的异形框线拆成5个文件依次导入每个文件都很快AD没有任何卡顿。4.4 快速排查技巧一个速查表解决大部分导入问题最后把这些经验总结成一个速查表建议收藏。每次在AD导入DXF/DWG遇到问题逐个对照排查基本都能在几分钟内定位到问题。症状首要怀疑原因处理办法导入后什么都没有图层被隐藏或单位导致图形微小按L打开图层显示CtrlZ重导并核对单位尺寸成倍偏差25.4倍单位mm/mil选择错误重新导入并选对单位用CtrlM测量校验提示DWG版本不支持文件版本高于AD解析能力在AutoCAD中另存为2013版或更低版本导入后异常卡顿或崩溃文件体量过大或冗余数据过多用PURGE和AUDIT清理后导出DXF再导入文字变成空心框字体缺失或不兼容在CAD里把文字炸开成线条或用SHX字体转成几何图形飞到很远很远DWG原点与AD图纸原点差异全选图形后移动手动归位到(0,0)附近导入的内容无法选中对象是块或复合实体用Tools→Convert→Explode炸开后重试图形缺口导致板框无法闭环线条被截断或重叠放大检查线条端点手动补齐或修剪重叠这张表看着简单每一条背后都有至少一个真实项目在支撑。尤其是“图形飞到很远”这条很多初学者以为文件坏了其实只是CAD原点和AD默认原点位置差了几十万个单位用编辑→移动拖回来就行。有次我看一个同事对着这个问题折腾了一下午最后我过去全选、移动、五秒钟解决气得多加了半小时班。还有个细节很多从SolidWorks转过来的图纸会有sw转dwg映射文件的需求这种映射文件本质上就是控制图层名称和线型导出的配置文件。如果你拿到的是SolidWorks工程图导出的DWG里面的图框、标注、视图线可能会乱得一塌糊涂。处理方法还是在AutoCAD里做清理把需要的元素重新归到干净图层里再导出DXF给AD用。以上是我在实际项目里关于AD导入DXF/DWG的全部经验。这些年我最大的感受是导入这件事功夫一半在AD里一半在AD外。你花十分钟和结构工程师把版本、单位、图层这三件事确认清楚比在AD里跟图形较劲一小时管用得多。我现在固定的流程就是管结构要DXF或2004版DWG标注全删图形归到单一图层拿到文件先查版本再核对单位导入后立刻测量校验。这套流程走下来导入结构图从没出过岔子。希望这次的保姆级教程能帮你把在AD里折腾结构图的那些破事一次全部终结。
返回列表