ARTICLE DETAIL

资讯详情

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

Allegro PCB板框定义实战:规则板、异形板与DXF导入全攻略

Allegro PCB板框定义实战:规则板、异形板与DXF导入全攻略 做了这么多年PCB设计我越来越觉得板框定义是整个设计流程里最容易被轻视、却最容易返工的一步。很多工程师在Allegro里画原理图、拉线、铺铜都顺风顺水一到板框定义就翻车规则板画出来闭合不了异形板不知道怎么下笔最麻烦的是DXF导入后尺寸对不上、原点跑到十万八千里光是一个板框就能耗掉半天。这篇文章我就围绕Allegro里的PCB板框定义把从规则板到异形板的绘制思路、DXF导入的完整流程和避坑经验一次性讲透。不管是刚入门的新手还是被板框问题折腾过的老工程师都可以直接当参考省得再踩一遍我踩过的坑。1. 板框定义之前先把这些底摸清楚1.1 板框在Allegro里的真正作用是什么先说一个很多人没意识到的点板框不只是画一个外形框而已。在Allegro这个工具里板框承担了至少五重职责它是布局布线的物理边界。所有器件必须落在板框以内布线也不能超出板框这是规则检查的基础判定依据。它是灌铜的约束边界。铺铜时一般会基于板框生成Route Keepin、Package Keepin如果没有板框铺铜区域根本没法自动生成。它是制造资料的输出依据。出光绘时OutLine层会被用于成型板框画错一毫米做出来的板子就偏一毫米。它是装配和结构设计的基准。结构工程师给你的DXF孔位、外形尺寸都要以板框为基准对位。它是DRC检查的重要参考。Allegro的DRC里很多间距规则都需要板框作为“板上区域”的界定。所以板框定义的准确度直接决定了后续布线、铺铜、出图、制造的质量。很多问题看着像布线规则没设好最后追根溯底是板框定义出了问题。1.2 设计前必须和结构确认的参数清单在动手画之前我强烈建议先把这些参数确认清楚否则画到一半再改是极其痛苦的外形尺寸长、宽、圆弧半径、斜角角度板厚和层叠结构这个虽然不体现在板框层上但会影响禁布区设置公差要求一般外形公差±0.1mm或±0.2mm定位孔、安装孔位置和孔径禁布区安装孔周围、板边附近需要避让的区域拼板方式和工艺边宽度V割、邮票孔还是无工艺边特殊结构半孔、开槽、镂空、异形缺口尤其是异形板结构工程师往往只给你一张DXF或者一张PDF你能不能把这上面每一根线、每一个孔都理解到位直接决定后面板子能不能顺利装配。1.3 单位与精度的正确姿势很多尺寸问题根源是单位没有统一。Allegro支持mil和mm但默认系统是mil。如果结构给你的是毫米你设计时也用mm那没问题。最怕的是图纸里标注是mm但你画线时输入的坐标还是mil坐标系下的数字或者导入DXF时单位选项选错。我的习惯是在File - Setup - User Preferences里把显示单位设为mm显示精度设为2到4位小数。如果是规则板用mm坐标直接输入最直观如果是高频板、射频板很多工程师更习惯用mil因为走线宽度和间距通常以mil为单位。这时候就要特别注意尺寸换算1mm约等于39.37mil换算误差会造成很大的麻烦。操作上打开Allegro设计文件后执行Setup - Design Parameters在Design选项卡里可以设置User Units和Size。建议一开始就定好中途切换单位容易导致数字显示混乱但Allegro内部实际坐标值不会变只是显示方式变了。2. 规则板框的快速绘制从矩形到带倒角、圆角2.1 规则矩形板框绘制用坐标输入精确到点最常见的规则板就是矩形板。在Allegro中画矩形板框有两种途径一是用Add - Line在Options里把Active Class选为Board GeometrySubclass选为Outline线宽建议设0制造时线宽不影响外形然后在命令行用x命令输入坐标逐点绘制。具体操作我贴一下执行Add - Line。在Options面板中Active Class and Subclass选择Board Geometry/Outline。命令窗口输入x 0 0并回车确定起点在原点。继续输入x 80 0画底边。输入x 80 60画右边。输入x 0 60画顶边。输入x 0 0闭合。右键选择Done或按F6完成。这样画出来的outline是四条line首尾相连但注意line与line之间虽然有交点却不一定是“闭合”的。Allegro所说的闭合更多指导致的shape或者一条不中断的连续线段。规则矩形虽然视觉上是闭合的但要生成Route Keepin、铺铜等还需要将line组成一个闭合shape后面我会专门讲。2.2 带倒角和圆角的板框处理技巧很多板子为了装配方便会在四角做倒角或圆角。倒角有两种斜切角Chamfer和圆弧角Fillet。在Allegro中如果矩形已经画好了可以用Manufacture - Drafting - Chamfer和Fillet命令来生成。倒斜角选择Chamfer图标在Options里输入倒角距离例如Chamfer 2表示两边各切2mm或2mil然后依次点击需要倒角的相邻两条line。注意选择方向Allegro会在两条线段之间生成一个斜线段。倒圆角选择Fillet图标在Options里输入圆角半径然后点选相邻两条line会自动生成一段圆弧并替换原来的尖角。不过实际项目中我更推荐在绘制时直接按坐标画例如要画一个左上角有5mm圆弧的异形或规则板可以先确定圆弧的起点和终点用Add - Arc命令画弧或者直接在CAD里处理好再导入。用命令画的圆弧不精确的话后面检查会很麻烦。2.3 规则板框的夹持区、定位孔与安装孔规则板通常需要添加安装孔。安装孔在Allegro里是特殊的封装或通过padstack实现。简单的做法是直接使用库中的Mech Hole如MTG1、MTG2等用Place - Manually放置在板框的指定坐标处。另一种做法是在Board Geometry/Outline上画一个圆作为禁布标识然后在Mechanical层加孔径。但真正制造时板厂更希望钻孔信息在Drill层而不是你自己画的圆圈。所以我会在板框确定后用Place - Manually调出封装库里的机械孔放置再通过Edit - Change把孔封装移动到精确位置。这样处理的好处是钻孔数据能正确导出DRC检查也不会报错。3. 异形板框的设计思路与绘制实操3.1 异形板的类型与设计要点异形板常见的有L形板、U形板、圆弧板、带半孔小板、拼接后的大板、带镂空槽的板等。设计这类板框核心难点是要保证所有线段首尾严格连通并形成闭合区域同时还要避免出现极小间距、尖角、毛刺。处理异形板框我建议的方式是首先在纸上或者CAD里把轮廓画出来把每一段的形状和尺寸标注清楚然后在Allegro里逐段绘制。如果你有DXF结构图优先走导入路线手绘只适合轮廓简单的异形或者你足够熟练。3.2 用LineArc组合绘制异形板框Allegro里画复杂轮廓最核心的命令是Add - Line但它不仅能画直线还能画圆弧。在Options面板里Line Type可以选择Line和Arc或者使用快捷键F3画直线再按右键切换为Arc。举个例子一个L形板框你可以把它的轮廓按照坐标分成若干段用直线和圆弧拼接出来。每一步都用x、y坐标输入精确值避免靠鼠标乱点。绘制时注意画直线时如果不需要精确角度可以开启Orthogonal模式只走水平垂直方向。画圆弧时要理解Allegro的圆弧绘制方式先选择起点Arc的起始端点然后在options里输入Radius、Start angle、End angle或者用三点定圆弧。最常见的操作是选择Line工具在Option面板里把Line Type切成Arc然后先点圆弧起点再点圆弧终点接着点击圆弧上的一点来确定半径和方向。我个人的习惯是异形轮廓上的圆弧尽量由清晰定义的圆心和半径来约束如果单纯靠鼠标点三点很容易出现半径不满足结构要求的情况。更可靠的方案是在DXF中画好所有圆弧再导入。实在需要手绘时可以用圆心半径的方式先在命令行输入一个坐标作为圆心然后用arc画一段保证参数准确。3.3 判断板框是否闭合并生成闭合Shape手绘的异形板框由多条line组成即使视觉上闭环了Allegro的DRC有时仍不认可。最终我们应当将所有板框线段合并成一个闭合的shape。操作如下确保所有轮廓线都在Board Geometry/Outline层。执行Shape - Compose Shape。在Options里设置Active Class and Subclass为Board Geometry/Outline。选择性目标是“board outline lines”在界面中框选所有轮廓线。在Options中把Gap Tolerance设置为合适的值比如0.1mm允许线段端点有微小间隙也能闭合。点击选择所有线后右键DoneAllegro会尝试将这些线组成一个shape并自动删除原来的line取决于选项。如果没有生成shape可能是某处没有闭合或有重叠线需要放大检查用Add - Line补上缺口。这个操作是板框定义里最关键的步骤之一。因为Allegro的Z-Copy、Route Keepin、铺铜都是基于shape来工作的如果你的板框只是line后续你没法直接用它来生成Keepin会很麻烦。3.4 异形板框的简化与检查画完异形板框后我会做一个整体的目视检查Display - 3D是否可以清晰显示Tools - Reports里的Board Outline报告能告诉你板框属性信息。如果需要更精确的检查可以用Dimension命令测量每段长度并和结构图对比。检查重点有几个闭合检查放大每个拐角看有没有小缺口、重合线。过度约束检查是否有多余的线段伸出边界。圆弧方向检查圆弧的弦高是否过大导致实际外形与设计预期不符。最小曲率半径太小的圆弧可能影响板厂成型精度。4. DXF导入板框完整流程与深坑解析4.1 为什么优先选DXF导入对于异形板、含复杂圆弧槽孔、以及带有大量安装孔位的板框手绘的效率太低而且很难保证精度。结构工程师一般都会提供DXF或者DWG结构图这时直接导入就是最高效的方式。在选择文件格式时我的优先级是DXF优先于DWG。原因很简单Allegro对DXF的支持更好兼容性更稳DWG是AutoCAD的原生格式版本差异大导入时可能出现图形丢失。如果结构只有DWG建议让结构工程师在CAD里另存为DXF格式版本存成AutoCAD 2010或更低的DXFAllegro 17.4及以下。版本太高可能无法识别。4.2 导入前的文件处理比你想的更重要很多DXF导入后出问题不是Allegro出了问题而是CAD文件里本身有垃圾。我在导入前会在CAD里做以下清理全选图形统一移动到坐标原点附近比如让板框一角位于0,0。删除所有尺寸标注、文字注释、中心十字、虚线等非实体元素。用CAD的flatten命令把所有Z轴坐标归零防止导入后出现三维偏差。检查所有轮廓线是否在同一个图层中是否闭合。在CAD里用PEDIT合并多段线保证每个封闭区域是整体。尽量把不需要导入的层冻结或删除只保留板框和安装孔等相关层。这步虽然麻烦但能省掉后面99%的坑。4.3 Allegro导入DXF的分步操作在Allegro中打开设计文件执行File - Import - DXF弹出导入对话框然后按以下流程操作选择文件点击X按钮选择.dxf文件。设置DXF文件单位在“DXF file unit”中选择该DXF文件的真实单位。这是最关键的选项。如果CAD图是毫米单位就选mm是英寸就选inch。选错会导致后续所有尺寸变成25.4倍关系。设置设计单位这里你可以把“Design unit”设置为当前设计的单位。建议和DXF文件单位保持一致省得换算。层映射点击“Edit”按钮打开Layer Mapping对话框。Allegro会把DXF的每一层列出来你可以为每一层指定要导入到Allegro的哪个Class/Subclass。通常将结构图中的外形层映射到Board Geometry/Outline将孔位层映射到Drill或Board Geometry如果是放置机械孔。如果不需要的层可以忽略。导入原点和偏移在“Offset”输入框中可以指定dxf的插入原点。如果你在CAD里已经把图形移到原点附近这里用默认0,0即可。点击Import。导入完成后板框的线段就会出现在对应图层中。但此时它们通常是line、arc、text等元素需要进一步处理。4.4 DXF导入后必做的五项处理导入只是一个开始后续处理决定了这个板框能否用于设计。第一用Isolation/查找手段确认导入元素所在图层正确。可以执行Display - Color/Visibility打开Board Geometry子层看看Outline层里有没有线。第二测量尺寸。执行Dimension - Linear Dim或者用Show Measure命令show measure点击板框的两条边对比测量结果和结构图尺寸是否一致。如果不一致立刻检查单位设置。第三清理多余元素。DXF导入后往往带入大量点、短线段、文字、font定义等。可以执行Edit - Delete在Find面板只勾选Lines、Arcs、Text然后框选删除。更高效的方法是用Tools - Purge清理无效元素但要注意不要误删有用的板框线。第四将轮廓线合并成为shape。和手绘板框一样执行Shape - Compose Shape框选所有轮廓线设置Gap Tolerance为0.01~0.1mm生成闭合shape。如果你的DXF中轮廓线本身没有严格闭合Gap Tolerance可以帮你自动弥合微小间隙。但如果间隙太大It wont work. 这时候必须在CAD里先处理好。第五生成Route Keepin和Package Keepin。选择Edit - Z-Copy在Options里选择Copy to Route Keepin/All激活Class为Board Geometry勾选“Outline”作为源点击板框shape即可生成对应的Keepin区域。这一步很多教程会漏但不做的话布线、铺铜会被限制在默认区域以外。4.5 最常见的五个DXF导入问题及解决问题1尺寸放大或缩小了25.4倍这是单位设置错了。解决方案重新导入将DXF Unit设为正确单位或者如果已经导入选中所有图形执行Edit - Move然后右键Scale输入缩放因子0.03937或25.4进行修正。我建议直接重新导入缩放动的图形容易出奇奇怪怪的问题。问题2板框不在原点附近跑到很远的地方CAD原图中的坐标值很大比如几万mm导入后Allegro画面里找不到。解决在导入对话框的Offset中填入负值或者导入后执行Edit - Move在Options里选择“Move selection”然后右键选择“Symbols/Shapes/Clines”右键Enter输入目标坐标0,0把整个图移回原点。问题3板框线是一堆碎线段无法用Compose Shape合并DXF中轮廓不是单一多段线而是无数断开的线段。解决在CAD中用PEDIT合并然后再导入。如果已经导入只能手动放大补线或者用多条line组成多个shape再使用Shape-Merge Shapes合并。问题4圆弧变成了多边形锯齿状有些CAD导出DXF时把圆弧离散成多段线。虽然Allegro导入后是“arc”实体的话不会这样但如果结构文件本身是polyline拟合的圆弧看起来就是锯齿。这时只能建议结构工程师尽量保留圆弧实体或者接受这种近似。问题5导入后某些图层消失或附着到错误层这是层映射没设置好。在导入对话框重新点击“Edit”确认每一层的映射目标如果你希望所有结构线都导入到Outline层可以把其他层都映射到Board Geometry/Outline但要注意这可能会混入不需要的图形。4.6 一个完整的DXF导入实例复盘我之前做过一个射频项目结构给的DXF外形是一个“L形圆形缺口4个安装孔”的复杂板框。第一次导入的时候我没有清理CAD文件直接把全部层都导进来结果Allegro里满屏都是标注文字、中心线、还有各种莫名其妙的小圆点。我花了半小时清理后来学乖了。正确处理方式先用AutoCAD打开将所有图形选中用MOVE移动到原点用PURGE清理未定义项用FLATTEN将Z轴归零然后删除尺寸标注、文字、隐藏层只保留外形轮廓层和安装孔层另存为AutoCAD 2010 DXF。在Allegro导入时DXF unit选mm设计单位选mm层映射将外形层映射到Board Geometry/Outline孔层映射到Mechanical层。导入后测量板长和PDF标注完全一致。然后Compose Shape生成板框shapeZ-Copy生成Keepin继续后续设计。整个过程半小时就搞定之前手绘估计要一下午。5. 板框定义后的实战扩展工艺边、安装孔与制造检查5.1 别把工艺边画进板框里关于工艺边很多新手会直接把工艺边并入Outboard轮廓里画成一个更大的板框。这样做不是绝对不可以但我更推荐单独管理。工艺边是拼板时为了SMT过炉而留下的辅助边常规做法是设计板框只包含成品板外形工艺边通过拼板文件或者单独的Layer来表示。如果你在板框里直接包含工艺边那出GERBER时还得手动处理很麻烦。如果你必须要在单个PCB文件中表示工艺边可以新建一条线在Board Geometry/Outline的子层下如Outline_1或者用Manufacturing/Outline_1来画工艺边并加上文字标注。但在最终光绘输出时制造层只输出真正的OutLine层这样才不会影响板厂加工。5.2 安装孔、定位孔与Mark点的定义安装孔一般用Mech Hole符号放置在Allegro中库里有专门的非电气孔。如果你收到的DXF中只有孔径没有焊盘你也可以自行创建padstack并定义成机械孔封装再放置在板框对应坐标。Mark点是SMT贴片时用于定位的光学点通常放在板对角位置尺寸一般为1.0mm铜箔加3.0mm阻焊开窗。在板框定义完成后我会在Board Geometry/Outline或者Surface层放置Mark点图形。注意Mark点不能离板边太近一般要求离板边大于3~5mm如果板子太小放不下可以放在工艺边上。5.3 利用板框快速完成拼板设计在打样或生产阶段经常需要多拼板。Allegro中有专门的模块复用和拼板功能但最简单的做法是画好单个板的板框和所有层之后在CAM如CAM350、Genesis中拼板。如果你非要在Allegro里拼可以先把整个设计导出为sub-drawing再复制多份用板框轮廓位置对齐。个人建议拼板这种活交给板厂或者CAM工具处理。在Allegro里做过多的拼板定义反而会增加文件复杂度且容易在工艺边上搞错。你只需要把单板板框做得准确无误拼板图由板厂按你的V割要求制作即可。6. 板框相关高频问题与我的习惯做法6.1 高频问题速查表问题现象优先检查项解决方案画完矩形板框Route Keepin无法生成板框是否为闭合shape使用Shape - Compose Shape转为shapeDXF导入后尺寸变了DXF unit和Design unit是否设置正确重新导入修正单位导入后看不到板框图层映射错误或图形离原点太远检查层映射用Move移至原点异形板部分线段无法选中线被锁定或在不同层Edit - Properties检查层切换Compose Shape失败有未闭合或重叠放大检查修改线段圆弧边缘有锯齿DXF中圆弧并非ARC实体请用CAD重新导出真圆弧导入后出现大量文字标注CAD未清理删除文字层或Edit - Delete删除6.2 我的几条板框实操心得第一永远在板框层上画板框不要画在别的层。无论如何板框只应放在Board Geometry/Outline千万不要扔在Etch Top之类的地方否则后患无穷。第二养成用坐标画线的习惯而不是鼠标乱点。哪怕画一条直线你也要确保终点坐标是对的。这样后续修改时可以很轻松地用Edit - Move或Ripup调整。第三板框是形状决定成败的东西在完成之后一定要把当前视图放大到画板的四个角和所有异形拐角处逐一看是否存在断点、交叉、重叠。第四从DXF导入的板框我永远不会直接使用它生成的shape而不做检查。即便结构图看起来再准确也要用measure工具抽查至少3个关键尺寸。第五如果你需要频繁处理板框建议学一点Allegro Skill编程或者利用系统自带的脚本录制功能把导入DXF、Compose Shape、Z-Copy这些操作录制下来减少重复劳动。做PCB设计这么多年板框定的时间越长后面返工越多。很多工程师把精力都放在布线、铺铜、信号完整性上却忘了板框是这一切的基础。每次我在项目启动会上都会花15分钟跟结构工程师确认板框细节再用合理的方式导入或绘制这为我省下了无数个加班的夜晚。你如果也被板框问题困扰希望这篇内容能实实在在帮你少走一些弯路。
返回列表