从零设计PCB:用Eagle打造会发光的Instructables机器人徽章
1. 项目概述从零打造一个会发光的Instructables机器人徽章如果你对电子制作感兴趣想亲手设计并制作一块属于自己的、独一无二的电路板那么这个项目就是为你准备的。今天我们要做的不是一块方方正正、枯燥乏味的绿色PCB而是一个可爱的Instructables机器人造型的徽章。它不仅仅是一个电路更是一个可以佩戴的、会眨眼睛的创意作品。整个过程我们将使用在电子爱好者中广受欢迎的Eagle软件从一张图片开始一步步完成电路设计、布局规划最终将设计文件发送给专业的PCB制造商如JLCPCB生产出来再亲手焊接上元器件。无论你是刚拿起电烙铁的新手还是想尝试复杂形状PCB设计的爱好者这个项目都将带你完整走一遍从概念到实物的全流程其中涉及的技巧比如如何将图片转为PCB轮廓、如何处理阻焊层以实现特殊视觉效果都是非常实用的干货。2. 核心思路与设计规划2.1 项目目标与方案选型这个项目的核心目标是制作一个外形为Instructables机器人、功能为双眼LED发光的可佩戴徽章。为了实现这个目标我们需要解决几个关键问题第一如何获得精确的机器人外形轮廓并导入PCB设计软件第二如何在有限且不规则的空间内合理布置一个简单的LED驱动电路第三如何在PCB制造工艺的框架内实现一些特殊的视觉效果比如模拟机器人的金属轮子和螺栓。方案选型上我们决定采用单面布线设计。这意味着所有的电气连接铜走线都放置在PCB的背面Bottom Layer而正面Top Layer则尽可能保持干净只放置丝印层Silkscreen的图案和两个LED灯。这样设计的好处是显而易见的正面可以完整展示机器人精美的丝印图案不会被杂乱的走线破坏背面的走线即使不那么美观也因为被电池盖住而看不见实现了功能与美观的完美分离。电路本身采用最简单的并联设计两个LED各配一个限流电阻共用一枚CR2032纽扣电池供电。这种设计极其稳定对新手友好计算参数也简单。2.2 工具与材料清单详解在动手之前理清所有需要的“弹药”至关重要。这里不仅列出清单更解释为何选择它们。主要材料定制形状PCB这是本项目的核心载体。我们将自己设计并交由JLCPCB这类工厂生产。选择它们是因为对爱好者极其友好低成本5片仅需2美元、快速交付、品质稳定且支持多种颜色我们选黄色来匹配Instructables的主题色。LED1颗5mm红色LED和1颗3mm红色LED。为什么用两种尺寸仔细观察Instructables机器人它的两只眼睛就是一大一小使用不同尺寸的LED是为了高度还原这个特征让作品更具辨识度和趣味性。如果只用一种尺寸虽然电路工作正常但神韵就差了。电阻2颗。具体阻值需要计算。假设我们使用红色的LED其典型正向压降Vf约为1.8V-2.2V我们取2.0V计算。电源是CR2032电池标称电压3V但实际负载下可能在2.8V左右。为了安全且保证LED有合理亮度我们设计LED工作电流If在10mA左右。根据欧姆定律电阻 R (电源电压 - LED压降) / 电流 (2.8V - 2.0V) / 0.01A 80欧姆。最接近的标准阻值是82欧姆或100欧姆。为了保险起见防止电流稍大我们选择100欧姆的电阻。你需要两颗。CR2032电池座选择贴片式或带引脚的均可但必须匹配你PCB上设计的封装。它提供了稳定可靠的电源连接。CR2032纽扣电池为整个电路供电。电阻剪下的引脚或细金属丝用于制作机器人的“天线”。这是一个巧妙的废物利用设计。工具与软件Autodesk Eagle我们使用的PCB设计软件。它功能强大对教育者和爱好者有免费版本并且拥有庞大的元件库社区。虽然Autodesk已宣布转向Fusion 360但Eagle目前仍然可用且教程资源丰富。图像编辑软件如GIMP、Photoshop甚至Windows画图工具。用于预处理机器人图片将其转换为高对比度的黑白位图BMP这是导入Eagle轮廓的前提。电烙铁与焊锡必备焊接工具。对于此类小型贴片/通孔元件建议使用尖头烙铁功率25W-40W为宜配合细径焊锡丝0.6mm-0.8mm。万用表焊接前后检查电路通断、LED极性非常有用是安全操作的保障。黑色油性记号笔非必需但用于涂黑PCB白色丝印轮廓可以 dramatically 提升最终成品的视觉效果让线条更清晰、更有漫画感。3. Eagle软件实战从图片到PCB版图3.1 轮廓导入与板框绘制这是将创意落地的第一步也是最需要耐心的一步。首先你需要一张清晰的Instructables机器人正面图片。用图像软件打开它目标是将其处理成只有纯黑线条和纯白背景的图片。具体操作去除彩色转为灰度然后大幅提高对比度直到机器人的所有轮廓线身体、眼睛、按钮、轮子等都变成坚实的黑色背景是干净的白色。特别注意原作者的图片中移除了天线因为我们计划用实物金属丝 later 来制作。处理完成后将图片另存为BMP格式。为什么是BMP因为Eagle的位图导入功能对这个格式的支持最直接、最可靠。打开Eagle新建一个项目和一个Board文件。关键的步骤来了点击菜单栏File - Import - Bitmap...。在弹出的对话框中选择你刚保存的BMP文件。接下来是最容易出错的一步设置正确的DPI分辨率和尺寸。Eagle需要知道图片中的一个像素对应实际的多大尺寸。你需要根据最终想要的PCB实物大小来反推。例如如果你希望机器人徽章大约5厘米高那么在导入时你就需要调整缩放比例确保预览图中机器人的高度在Eagle的尺寸标尺上大约是50mm。这一步可能需要多次尝试。导入后图片会出现在一个名为“BMP”的单独层上这时它只是一张图片不是可用的线条。注意导入的位图线条可能不够光滑带有锯齿。对于要求极高的轮廓你可能需要在Eagle中用“Polygon”或“Line”工具沿着位图边缘手动描一遍但这需要极高的耐心。对于本项目轻微的锯齿在成品丝印上是可以接受的甚至有种独特的像素风味道。现在我们需要将这些黑色线条转换为PCB的丝印层。全选所有黑色线条使用GROUP命令框选然后点击工具栏的“Change”工具扳手图标在属性窗口中将“Layer”从“BMP”改为“tPlace”。tPlace层就是顶层丝印层工厂会用白色油墨把这个层的图形印刷在PCB正面。右键点击选择“Change: Group”应用更改。这样机器人的轮廓和面部细节就变成了正式的丝印图形。紧接着我们需要定义PCB的物理边界即板框Board Outline。在Eagle中板框在“Dimension”层绘制。选择“Line”工具将工作层切换到“Dimension”然后小心翼翼地沿着机器人轮廓的最外侧画出一个闭合的框线。这个框线以内的区域就是工厂会切割出来的PCB形状。务必确保线条闭合没有缺口。3.2 元件放置与电路连接有了舞台板框现在该安排演员元件了。点击“Add”工具打开元件库。我们需要添加以下元件LED5MM和LED3MM分别用于大眼和小眼。放置时确保它们的位置精确对应机器人图片上的眼睛位置。RESISTOR(0805或1206封装)两个限流电阻。我们将它们放在PCB背面Bottom Layer。BATTCON_CR2032电池座。同样放在背面。放置元件的关键技巧是使用“Smash”命令在命令栏输入smash。选中一个元件如LED执行smash这样你就可以将元件的标识符如“LED1”和数值如“5mm”从元件本体上分离开并自由移动到不遮挡视线的位置让布局更清晰。电路原理很简单电池正极同时连接到两个LED的正极阳极通常是较长的引脚或LED内部较小的电极。每个LED的负极阴极各自连接一个100欧姆电阻的一端两个电阻的另一端连接在一起最后回到电池的负极。这就构成了一个经典的并联电路。现在进行布线。由于我们决定采用单面布线所有导线都将在背面Bottom Layer完成。将当前工作层切换到“Bottom”。使用“Route”工具开始连接元件引脚之间的飞线Airwire。对于这种简单电路你可以手动布线。尽量让走线简洁避免不必要的直角转角处使用45度角或圆弧以减少信号问题虽然对本项目低频电路影响微乎其微但这是好习惯。一个重要的细节是原作者没有使用标准的通孔来焊接电阻而是在背面设计了两个焊盘Pads。这意味着你需要使用“Pad”工具在Bottom层放置两个焊盘来代表电阻的焊接点。这样你可以将直插电阻的引脚剪短后直接焊在这两个焊盘上从而避免了在PCB正面打孔完美保持了正面的美观。3.3 高级视觉效果实现阻焊层与多边形铺铜这是让PCB从“能用”变得“炫酷”的关键步骤充分体现了PCB工艺的灵活性。1. 制作“金属”轮子和螺栓机器人有灰色的金属轮子和身体上的螺栓。在PCB上我们如何模拟金属的灰色答案是利用阻焊层Solder Mask。通常PCB板基材是FR-4玻璃纤维呈浅黄色或绿色。阻焊层是覆盖在铜箔上的一层绿色或其他颜色的油漆用于绝缘和保护走线。凡是没有阻焊层覆盖的地方就会露出下面的铜箔而铜箔经过表面处理如沉金、喷锡后会呈现金属光泽。tStop层就是“顶层阻焊层开窗”的意思在这一层画图形就是告诉工厂“这里不要盖阻焊油墨”。 所以我们用“Polygon”工具在tStop层沿着机器人轮子和螺栓的轮廓画出多边形。这样成品PCB上这些区域就会露出底下的铜面呈现出闪亮的金属灰色完美模拟了钢铁质感。2. 制作天线安装孔机器人头顶有天线。我们计划用剪下的电阻引脚弯曲后焊接。为此我们需要在耳朵位置创建通孔。在Eagle中使用“Via”工具。放置两个过孔并设置其直径与你计划使用的金属丝直径匹配例如0.8mm。过孔默认是连接不同层的但在这个设计中我们只是把它当作一个机械安装孔所以不需要它连接任何电气网络。你可以在放置后右键查看其属性确保它没有连接到任何网络Net。3. 铺铜Polygon Pour以优化制造如果你不进行任何操作工厂会默认将整面铜箔蚀刻掉只留下你画出的导线。这没问题但有时为了增加PCB的机械强度或者出于某些电气考虑在本项目中主要是为了美观和节省蚀刻成本我们会进行铺铜。铺铜就是用铜箔填充大片空白区域。 我们分别在顶层Top和底层Bottom进行铺铜。使用“Polygon”工具在Top层沿着板框Dimension层画一个闭合多边形。画完后它会显示为虚线框。这时在命令栏输入ratsnest命令Eagle就会自动用铜箔填充这个区域并自动避开该层的元件焊盘和走线因为我们的走线都在底层所以顶层铺铜是完整的。对Bottom层重复此操作。这样做之后发送给工厂的Gerber文件中这些区域都是有铜的工厂只会蚀刻掉非铜区域。最终效果是PCB的背景是完整的铜层覆盖了阻焊层看起来更规整有时也能减少板子弯曲。4. 设计检查与文件输出4.1 电气规则检查与设计验证在发送设计去生产之前必须进行严格的检查。Eagle内置了强大的ERC电气规则检查和DRC设计规则检查工具。首先运行ERC (Tools - ERC)。它会检查电路逻辑错误比如未连接的引脚、电源短路等。对于我们这个简单电路主要确认没有“N.C.”未连接的报错以及电源网络电池正负极连接正确。然后运行DRC (Tools - DRC)。这是至关重要的一步它检查你的设计是否符合制造商的生产能力。你需要加载一个设计规则文件。JLCPCB等厂商通常会在其官网提供标准的DRC规则文件.dru格式。下载并加载它。DRC会检查诸如线宽、线距、焊盘尺寸、钻孔大小等是否符合工厂的最小工艺要求。例如JLCPCB的标准线宽/线距是6mil约0.15mm你必须确保你的设计不小于这个值。任何DRC错误都必须修正否则工厂可能会拒收文件或生产出废品。视觉检查同样重要。切换到不同层如Top, Bottom, tPlace, Dimension逐一核对元件位置是否准确特别是LED是否对准眼睛。所有走线是否连接牢固有无断线。tStop层的轮子、螺栓图形是否正确。Dimension层板框是否闭合。过孔天线孔位置是否合适。4.2 生成Gerber与钻孔文件PCB工厂不认识Eagle的.brd文件它们需要一种叫做Gerber的通用格式文件每一层电路信息对应一个Gerber文件还有一个钻孔文件。在Eagle中使用CAM处理器来生成这些文件。点击File - CAM Processor。你需要一个作业Job配置文件来告诉Eagle如何输出各层。Eagle自带一些标准配置但最稳妥的方法是使用PCB制造商提供的专用CAM作业文件。通常你可以在JLCPCB的网站帮助页面找到并下载一个针对Eagle的.cam文件。加载这个文件后CAM处理器会列出所有需要输出的层例如Top Layer (.GTL): 顶层铜箔走线本项目没有但铺铜需要。Bottom Layer (.GBL): 底层铜箔走线我们的核心电路层。Top Solder Mask (.GTS): 顶层阻焊层tStop层的信息在这里面。Bottom Solder Mask (.GBS): 底层阻焊层。Top Silkscreen (.GTO): 顶层丝印层tPlace层的机器人图案。Bottom Silkscreen (.GBO): 底层丝印层。Board Outline (.GML或.GKO): 板框层Dimension层。Drill File (.TXT或.DRL): 钻孔文件包含所有过孔和安装孔的位置和大小。确认所有层都正确勾选后点击“Process Job”。Eagle会在你指定的文件夹生成一系列文件。务必将这些文件全部打包成一个ZIP压缩包这是提交给PCB工厂的标准方式。4.3 提交生产与工艺选择将ZIP文件上传到JLCPCB等PCB打样网站。在订单页面你需要进行一系列选择板子数量通常5片起订价格最划算。板子厚度1.6mm是标准厚度强度足够。铜厚1盎司约35μm是标准选择对于这种小电流电路绰绰有余。阻焊颜色这是体现个性的地方选择黄色来致敬Instructables主题色。当然你也可以选黑色、蓝色、红色等。丝印颜色白色。表面工艺无铅喷锡HASL是最经济实惠的选择。如果你希望焊盘更平整、更适合焊接微小元件可以选择沉金ENIG但价格会贵一些。 对于这个艺术性大于高频电气性能的项目选择最基础的参数即可。确认无误后下单等待几天你设计的机器人PCB就会从工厂寄到你手中。5. 焊接组装与调试实录5.1 焊接前的预处理与准备收到PCB后先别急着焊接进行一番“美容”预处理会让成品效果大不相同。由于我们选择了黄色阻焊和白色丝印机器人的黑色轮廓其实是丝印层的“留白”即没有油墨的地方露出的是黄色阻焊层。为了得到强烈的黑色线条我们可以用一支油性记号笔小心翼翼地沿着所有白色线条的内侧进行描边涂黑。这需要手稳一点但效果立竿见影机器人图案会变得非常醒目。当然保留原始的黄色线条风格也是一种清新的选择。准备好所有元件两个LED一大一小、两个100欧姆电阻、一个CR2032电池座。用万用表的二极管档或电阻档检查一下LED的极性表笔接触LED两脚能点亮的那次红表笔接触的就是正极阳极。用胶带或记号笔做好标记。5.2 分步焊接流程与技巧遵循“先矮后高先里后外”的原则我们先焊接背面的元件。焊接背面元件将PCB翻过来背面朝上。先焊接电池座。在焊盘上上一小点锡然后用镊子夹住电池座对准位置用烙铁加热焊盘和引脚使其固定。再焊接另一个焊点。接着焊接两个电阻。如前所述我们的电阻是焊在背面的两个独立焊盘上。将电阻引脚稍微弯曲对准焊盘先焊接固定一个脚调整位置摆正后再焊接另一个脚。焊接完成后用斜口钳将过长的引脚齐根剪断。实操心得对于这种小焊盘使用尖头烙铁和细焊锡丝0.6mm更容易控制锡量。助焊剂能极大改善焊接流动性如果焊锡丝自带助焊剂芯就更好了。焊接时采用“加热焊盘与引脚 - 送入焊锡 - 移开焊锡丝 - 移开烙铁”的流程整个过程应在2-3秒内完成避免长时间加热损坏焊盘或元件。焊接正面LED将PCB翻回正面。现在焊接两个LED。务必再次确认极性PCB上的丝印层LED符号的圆圈通常有一个扁平边或“”号标记对应LED的负极阴极。将LED的短脚阴极对准这个标记插入。先点焊一个脚固定检查LED是否紧贴板面且位置居中确认无误后再焊接另一个脚。焊接完成后剪掉过长的引脚。制作并安装天线用之前剪下的电阻或LED引脚取两段长度约2-3厘米的直导线。用尖嘴钳在末端约5mm处弯一个90度的小钩这个小钩将用于钩住过孔并从背面焊接增加牢固度。将弯钩端从PCB正面插入头顶的过孔从背面穿出。在背面用烙铁和少量焊锡将其焊牢。然后在正面用尖嘴钳将露出的部分向上弯折成天线形状。你可以发挥创意弯成直线、螺旋形甚至小心形。5.3 功能测试与问题排查所有元件焊接完毕后就是激动人心的测试时刻。装入一颗CR2032电池注意正负极电池上标“”的一面通常朝上对应电池座的正极。预期结果两个红色LED应该同时亮起。如果LED不亮请按以下步骤排查检查电源首先用万用表直流电压档测量电池座两端的电压是否在3V左右电池是否有电检查极性这是最常见的问题。确认电池安装方向正确。确认两个LED的焊接方向正确长脚正极接电池正极方向。确认电阻没有焊错位置或虚焊。检查通路使用万用表的通断档蜂鸣档。从电池正极焊盘开始沿着铜箔走线依次探测到LED正极引脚、LED负极引脚、电阻一端、电阻另一端最后回到电池负极焊盘。整个路径都应该蜂鸣响表示电气连接是通的。检查元件极少数情况下LED或电阻可能损坏。可以单独测试LED用一颗CR2032电池或万用表二极管档直接接触LED两极串联一个1k电阻更安全看是否能点亮。测试电阻用万用表电阻档测量其阻值是否接近100欧姆。常见问题速查表问题现象可能原因解决方案两个LED都不亮1. 电池没电或装反。2. 电源回路存在断路如电池座虚焊。3. 两个LED极性全部焊反。1. 更换电池检查安装方向。2. 用万用表从电池正极到负极逐段检查通路。3. 检查并纠正LED方向。只有一个LED亮1. 不亮的LED焊反或损坏。2. 连接该LED的电阻虚焊或断路。3. 连接到该LED的铜箔走线断裂。1. 检查并纠正该LED极性或更换LED。2. 补焊该电阻两端。3. 用万用表检查该支路通断必要时用导线飞线连接断点。LED非常暗或不稳定1. 电池电量不足。2. 电阻阻值过大如错用了1kΩ。3. 存在虚焊接触电阻大。1. 更换新电池。2. 确认电阻为100Ω左右。3. 重新焊接所有焊点确保光亮圆润。天线松动1. 背面焊接不牢。2. 过孔直径太大。1. 在背面补焊增加锡量。2. 在正面天线根部点一滴速干胶如401胶水加固。当两个红色的眼睛稳定地亮起时你的Instructables机器人徽章就正式被赋予了“生命”。你可以为其背面粘上一个别针或磁铁把它变成一件可以佩戴的个性饰品。这个项目虽然电路简单但它完整地串联了PCB设计的全链路从图像处理、软件绘图、规则检查、文件生成到工厂生产和手工焊接。它证明了即使是最基础的电子知识结合一点创意和耐心也能创造出充满乐趣和成就感的作品。更重要的是你在这个过程中掌握的导入轮廓、处理阻焊层、单面布线等技巧完全可以迁移到未来更复杂的PCB设计项目中。