×

Obito Uchiha PCB徽章开源设计

消耗积分:0 | 格式:zip | 大小:0.16 MB | 2022-11-08

李伟

分享资料个

描述

嘿大家怎么了!

你们还记得宇智波带土吧?来自火影忍者疾风传!

好吧,我为他做了一个 PCB 徽章。

 
poYBAGNonEGAHZoEABCO_tJ7CHc003.jpg
 
1 / 2

所以这是我的 Obito Uchiha 徽章,它是由 FR4 PCB 板制成的,很酷吧?

宇智波带土一只眼看着写轮眼,另一只眼看着轮回眼

但是在这个 PCB 版本中,Sharingan 被三个蓝色 LED 模仿,它们以追逐顺序不断闪烁,还有一个紫色 LED 模仿 Rinnegan。

但是等等,写轮眼是红色的对吧?

嗯,是的,它的颜色是红色的,但我目前没有红色 LED,所以我们现在就说它是蓝色的。

此外,整个徽章由全能的 Attiny13A 微控制器供电!

序幕

 

所以最近我一直在用电影和动漫制作这些看起来很酷的书呆子徽章!

制作这些徽章的一种简单方法是 3D 打印,但你看,用 PCB 制作这些徽章更方便。

让我来告诉你为什么!

 

徽章形状可以在PCB Cad软件中制作,我们可以在PCB丝印上添加我们角色的图纸,然后在图纸周围放置LED等元件。最后,我们生成 Gerber 数据并将其发送给 PCB 制造商。

该PCB制造商将专业生产徽章,除了拆箱和组装过程外,我们无需做任何事情。

顺便说一句,我这次使用了 PCBWay 服务来制作这个 PCB 徽章!

制作徽章的基础知识

所以你是一个刚刚进入 PCB 设计的新手,但你不知道如何用你当前的 PCB Cad 软件制作这种艺术风格的项目?

好吧,别担心!

让我向您展示如何以几种简单的方式制作此类项目。

  • 现在,为了开始任何徽章 PCB 项目,您首先需要一个电子设置,您将把它放在您的徽章上。您也不能添加这些东西并制作一个完全空的 PCB 徽章,上面只有艺术品,但添加 LED 或徽章会使其更好,因为照明可以改善其整体影响。
pYYBAGLNjnSAIErLAAK_7Y25-t0823.jpg
 

简而言之,添加至少几个 LED 以使您的徽章看起来很酷。

知道了?

  • 接下来在完成原理图后,我们搜索可以添加到 PCB 中的绘图或插图。
  • 在这个我的徽章中,我首先搜索一个黑白图像。

为什么是黑白,为什么不使用彩色图像?

 
 
 
poYBAGNonFOAMJrsAA1y8IE8s3w23.jpeg
 
1 / 4
 

你看,大多数PCB制造商都使用黑白丝印,整个PCB着色是可能的,但它非常昂贵,因为它需要大量的丝印颜色和整个另一个过程,所以这就是大多数PCB制造商没有的原因之一这种多色丝印工艺。

因为它会花费更多,所以我们必须以这样一种方式设计我们的威廉希尔官方网站 板,以便我们可以使用黑白图像并使用黑色或白色来发挥我们的优势。

 
  • 获得图像后,我首先删除其背景并将其设为白色。
  • 接下来,我们将此图像转换为 BMP 图像,因为我的软件仅导入 BMP 格式的徽标,这是导入图像的标准格式,但其他软件包括添加 PNG,因此您可以跳过此转换过程并将图像导入 PCB Cad 软件。(怎么做?在我的OrCAD软件中,我必须先制作一个logo文件,然后将图像添加到这个logo文件中,然后我可以将logo文件导入我的PCB设计中。这个过程很长,你的软件可能可以直接导入图像,所以搜索任何导入的图像选项,或者只是谷歌你如何在你的 PCB cad 软件中做到这一点)
  • 接下来,我们将所有组件放置在徽标周围或徽标上,就像我的情况一样,LED 是这个角色的眼睛,所以我必须将它们放在他的眼睛上。
  • 然后我们连接轨道并做PCB设计过程中所需的一般事情。也就是一一连接轨道。
  • 最后,我们在图像周围勾勒出轮廓,并为身份证带打孔。
  • 然后我们必须导入Gerber数据,我们的PCB制作过程就完成了!
  • 但是在将 PCB 文件发送给制造商之前,请在任何 PCB 渲染软件中打开 Gerber 数据,您的软件已经具有此功能,因此只需查看您的 PCB 在制造后的外观。

在确保一切正常后,我们将其发送到我们喜欢的任何 PCB Mabvate。就我而言,我将 Gerber 数据发送到PCBWay 以获取样本

从 PCBWAY 准备好 PCB

 

因为我是用黑色图像制作这个徽章,所以我为这个项目选择了白色阻焊层和黑色丝印。

我在一周内收到了多氯联苯,多氯联苯和预期的一样好。

 
 
 
 
1 / 2
 

我真的很喜欢白色阻焊层的质量,这也是一项艰巨的工作,因为我在这块板上布置的丝网印刷并不完全对称,但PCBWAY在制造这块 PCB 方面做得非常出色,没有任何错误。

PCBWay 你们摇滚,请查看PCBWay 服务,以更低的成本获得出色的 PCB 服务。

所需材料

poYBAGNonFiAOje3AAfBK_ktjOU196.jpg
 

这些是我在这个构建中使用的东西

  • 阁楼13A
  • 定制威廉希尔官方网站 板
  • 8205S MOSFET IC
  • 10K 电阻器
  • THT 微型 USB
  • 纽扣电池座
  • 紫色 UVC LED
  • 红色 LED(不过我用的是蓝色 LED)

组装过程

pYYBAGLNjoiAKi-EAANPGDmDI_4205.jpg
 

此徽章的组装过程包括四个不同的过程,它们是-

  • 锡膏点胶
  • 拾取和放置过程
  • 热板回流
  • 添加 THT 组件

让我们从第一个过程开始,即焊膏点胶过程。

#1 焊膏点胶

 

这个过程很简单,我们先手动给每个元件的焊盘添加锡膏,锡膏,如果你不知道的话,是微小的锡球和助焊剂的混合物,因为锡球很小,这个混合物的外观和感觉都像糊状物。

我们使用焊膏分配器注射器涂抹焊膏,或者正确的方法是在这里使用我没有的模板。但无论如何,在这之后,我们现在可以继续下一个过程,即为每个焊盘添加组件。

#2拾取和放置过程

 

接下来,我们用ESD镊子仔细挑选所有组件,并将它们一个一个放置在指定的位置。

#3 热板回流工艺

 

然后在完成拾取和放置过程之后,我们小心地提起整个 PCB 并将其放置在热板上。我正在使用几个月前制作的优质旧DIY 电炉。

基本上,在这个热板回流过程中,表面加热到焊膏熔化温度,然后慢慢熔化。几分钟后焊膏完全融化,我们取下PCB并让它冷却片刻。

#4 添加 THT 组件

 

最后,我们将 THT 组件添加到 PCB,它们是 Attiny13A 微控制器、USB 端口、开关和接头引脚。

完成后,我们的徽章就完成了!但它仍然没有做任何事情?

那是因为我们需要向 Attiny13 添加代码。

Attiny13A 编程

这是我在这个项目中使用的代码,它是一个简单的追逐器草图,它可以在追逐器序列中切换每个 Mosfet。(很简单的东西)

int pinsCount=3;                        // declaring the integer variable pinsCount
int pins[] = {0,1,2};          // declaring the array pins[]


void setup() {
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT);
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
                  
}

 
void loop() {
  for (int i=0; i1){    // chasing right
    digitalWrite(pins[i], HIGH);         // switching the LED at index i on
    delay(70);                          // stopping the program for 100 milliseconds
    digitalWrite(pins[i], LOW);          // switching the LED at index i off
  }
  for (int i=pinsCount-1; i>0; i=i-1){   // chasing left (except the outer leds)
    digitalWrite(pins[i], HIGH);         // switching the LED at index i on
    delay(70);                          // stopping the program for 100 milliseconds
    digitalWrite(pins[i], LOW);          // switching the LED at index i off
  }
digitalWrite(3, HIGH);
delay(1000);
digitalWrite(3, LOW);
delay(1000);
  

}

至于刷机过程,我们不能通过任何 USB 直接对 ATTINY13 进行编程,我的意思是有一种方法可以直接从 USB 端口对 Attiny 进行编程,但我没有这样做。

相反,我将使用 ISP 闪存方法,该方法将利用 attiny13A 的 SPI 引脚在其中烧录引导加载程序,然后烧录。

在 Arduino IDE 上安装 Attiny13 Core

在开始刷机过程之前,我们首先需要在 Arduino IDE 中下载并安装 Attiny13 Core 文件。

  • 打开 Arduino IDE。
  • 打开文件 > 首选项菜单项。
  • 在Additional Boards Manager URLs中输入以下 URL
  • 打开工具 > 板 > 板管理器...菜单项。
  • 等待平台索引完成下载。
  • 向下滚动,直到看到MicroCore条目并单击它。
  • 单击安装
  • 安装完成后关闭Boards Manager窗口。

准备 Arduino 作为 ISP 设置

 

AVR 芯片通常是空白的,它们需要设置为与 Arduino IDE 兼容,但要做到这一点,您需要 AVR 程序员来做这件事,例如 USBASP。

有趣的是,您可以通过一个非常简单的步骤使用 Arduino Uno 或 Nano 板制作自己的 AVR 编程器。

  • 将您的 Arduino 板与 com 端口连接并选择以下草图
  • 示例>ArduinoISP将此草图上传到您的开发板上
  • 上传后,进入工具菜单并在程序员部分选择 Arduino 作为 ISP 选项。
  • 现在要闪烁 Attiny13A,我们可以在 Board 部分选择 Attiny13A。

编程过程使用 VCC、GND 和四个数据引脚。三个引脚连接编程微和目标微之间的 MISO、MOSI 和 SCK,来自编程微的第四个引脚连接到目标的复位引脚。

poYBAGLNjsiANRT9AAT3SwDePJs309.jpg
 

以上述方式将 Attiny13 与 Arduino 连接起来。(同样在将 ISP Sketch 上传到您的 Arduino 之后,不要忘记在您的 Arduino 板的 Reset 和 GND 引脚之间添加一个 10uf Cap)

poYBAGLNjsqAet73AABmWn8Y1fE060.png
 

我不会使用 Arduino UNO 和面包板来完成这项工作,而是使用我为闪烁 Attiny 或 Atmega MCU 而制作的 DIY Attiny Programmer。

  • 在上述接线配置中将板连接到 Arduino 作为 ISP 设置
  • 选择正确的端口、正确的编程器(Arduino 作为 ISP),然后点击Burn Bootloader
  • 等待几秒钟,您将完成刻录引导加载程序消息。
  • 现在打开您要上传到这个 Attiny 的草图
  • 转到草图菜单并选择使用程序员上传。
  • 你的 Sketch 会上传到 attiny13 上。

结果

 
 
添加了 ID 卡带作为徽章佩戴
 

正如您在此处看到的,LED 工作良好,而且看起来很酷。

好吧,我目前正在制作另一个 PCB 徽章,我将很快发布。

 


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.obk20.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'Obito Uchiha PCB徽章开源设计',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.obk20.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);