用光固化3d打印机制作电路板的尝试
m24h 2021-6-17原创 电子技术
关键词
光固化干膜曝光电路板

这个水煮鱼一般的天气里 我尝试用光固化3d打印机 对贴在覆铜板上的负性干膜曝光 然后显影腐蚀

之前的考虑的可行性有

  1. 光固化3d打印机的波长在400nm左右 干膜可以使用310-430nm的波长曝光

  2. 光固化3d打印机像素大小折射出来500dpi左右 比一般曝光前打印用的打印机300dp还高(注意许多宣称600dpi甚至1200dpi的打印机 并不一定是有这样的物理像素性能 而是有水分的)

  3. 不需要经过胶片纸张的中间介质 避免了变形等精度问题

步骤有

  1. 随便画了个电路 包括一个USB type-c的接口 一个sop16的芯片 使用的基本线宽是0.25mm 然后用不同的线间隙靠拢 看看可以保证多大间隙

  2. 电路绘制为PDF文件

  3. 使用PS以600dpi打开 转为光栅图像保存

  4. 使用微软免费的3d build从光栅图像 以“轮廓”方式 不进行平滑 转为3d结构 (如果以“高度”方式 会产生一个地板 需要拆分删除)

  5. 设定准确的尺寸(之前将cut线框也绘制了 并且记住了尺寸 在3d build里面cut线框就代表了3d体的最外围 输入记下的尺寸就行)

  6. 输出STL文件 切片 检查cws文件里面的PNG图大概正确 上传到3d打印机

  7. 电路板稍打磨去除氧化层 敷好干膜 贴到3d打印机的曝光屏幕 (这时候应拆下3d打印机的抬升基板)观察着曝光2~3分钟 中断打印 取回电路板

  8. 碳酸钠显影 过硫酸铵腐蚀 氢氧化钠除去剩余干膜

 结果如下图

IMG_20210617_222635.jpg

我的结果是

  1. 这种制版方式可取 比打印后晒灯略为方便 当然大的电路板不太合适 毕竟现在便宜的光固化3d打印机的曝光屏幕都不大 我这个就6寸的 和手机屏幕差不多

  2. 因为简单实验性质 随手取的干膜是有缺陷的 也没有加滴水认真贴 结果有些横纹般的空隙(气泡)部分脱模 并非这种方式的后果

  3. 对于太精细的电路线条而言 也许这种方式还是不足的 由于漏光的倾向(或者干膜的问题 因为感觉显影后 线条比刚曝光差不少 不过总体总是倾向漏光表现的) 0.25mm的敷铜线条表现不错 但是0.2mm的间隙不太够用 以后设计应该使用0.15mm的线条 0.25mm的间隙 图片中粘连的地方都是小于0.2mm间隙的

  4.  其实对比个人经验 我觉得这次实验结果 至少在像素精度上 并不比打印菲林后紫外灯曝光差(同样的干膜下 个人业余条件和材料操作 即使传统打印曝光流程 都无法呈现专业级别的精细线条 如果是涂感光湿膜也许会好一些 但是过程繁琐讲究 我就不想试了 或者大功率专业曝光机可以减少漏光 我也没条件尝试)

  5. 如果是先钻孔后曝光 就有对正位置的问题 这个对于这种方法不太容易 可能需要屏幕上附加定位装置 这就抵消了无需先打印到菲林的便利

  6. 切片时忘记取消“平滑”选项了 有一个“2倍平滑”的影响 但是应该影响不大 下次要注意取消

些许经验 供借鉴

[修改于 6 个月前 - 2021-06-17 23:38:20]

+0.5  科创币    zRed   2021-06-18   支持尝试
来自:电子与无线电 / 电子技术
14
 
7
5个月22天前
1楼

个人感觉用普通油墨上激光雕刻机加工效果可能会好一些吧

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
5个月22天前 修改于 5个月22天前
2楼
引用发表于1楼的内容
个人感觉用普通油墨上激光雕刻机加工效果可能会好一些吧

是先上油墨 然后激光把不需要的油墨除去么

我没有试过 不过个人条件下 激光要对焦精细 烧灼出仅0.05mm光斑 想来应该不容易

我说的这个方法最大好处就是求个方便 软件操作几下 无线上传到光固化打印机 贴干膜 照一会

而且别看照片效果不好 其实东西很小 线条是只有10mil 一般分立元件或者常规dip封装的电路 绝对可以满足要求

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
5个月22天前
3楼
引用m24h发表于2楼的内容
是先上油墨 然后激光把不需要的油墨除去么我没有试过 不过个人条件下 激光要对焦精细 烧灼出仅0.05...

直接上一层油墨,然后用激光打,后面就可以是普通的蚀刻过程了

之前看内存卡数据恢复的视频,过程中要把卡上面阻焊去掉露出线路飞线,这一步用的就是激光雕刻机去阻焊,而且看起来精细程度还蛮高,就感觉应该可行,至于具体有多精细不清楚。。。

(刚才回了一个别的贴子,刚退出就发现自己未读消息突然多了一条,还以为是被系统删帖了😂

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
月下孤狼
5个月21天前
4楼

术业有专攻,目前电路板打样已经非常便宜,自己做的电路板实现双层都很困难。

即使是放在十年前,普通打印机打印菲林或者热转印精度远高于3D打印机,因为我们知道3D打印机擅长的是三维,二维的事情比分辨率还是要普通打印机。

拥有3D打印机还是应该做它更擅长的事情~

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
5个月21天前
5楼
引用月下孤狼发表于4楼的内容
术业有专攻,目前电路板打样已经非常便宜,自己做的电路板实现双层都很困难。即使是放在十年前,普通打印机...

关于术业有专攻 其实我深有体会的

经常想做一些事情 但是没做 就是因此

以至于我几乎没有自己做任何东西 因为现在任何东西几乎都有比个人更好的方法 只需要人民币置换法就可以得到 而且不光省事 而且大多数情况比自己做还便宜

我也大抵变成文科生了 最多的时间 花在出门采风 摄影 学学雕塑 绘画 或者看看文章 感悟人生 最大的感悟恐怕也是“没有必要”这4个字

大多数工具都在闲置 即便有时还会买些零件 但也是觉得“心动”而“收藏” 完全找不到有什么“应用”需要自己实现

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
zengsifu
5个月21天前
6楼

也可以用FDM直接在覆铜板上打印,这样连感光覆铜板都不用了,可以直接用覆铜板→_→

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
5个月21天前
7楼
引用zengsifu发表于6楼的内容
也可以用FDM直接在覆铜板上打印,这样连感光覆铜板都不用了,可以直接用覆铜板→_→

fdm喷嘴0.4mm呢 不够精细的

而且对于电路图转换成光栅容易 转换成运动控制不容易的

当然还有不少其他方法我没试过 比如直接找台UV打印机之类打印到电路板上的 那是我没有这种打印机

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
zengsifu
5个月20天前
8楼
引用m24h发表于7楼的内容
fdm喷嘴0.4mm呢 不够精细的而且对于电路图转换成光栅容易 转换成运动控制不容易的当然还有不少其...

我这差不多鸽了一年多了都没弄,当时买了fdm和0.2的喷嘴。打0.2的线条应该没问题,但是速度可能要慢点,快了的可能间距要加大。不过单层打印速度再慢也快过cnc吧。电路图转运动轨迹很成熟了好吗-_-||,现在很多弄测试电路就是用cnc啊。


引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
21天20时前 修改于 21天20时前
9楼

今晚又做了一次认真和正式的实践

首先是kicad绘制成PDF后 PS以1200dpi打开为光栅图片

然后发现微软的3d build不够精细 对于一般的电路或许够用 但是这次我的电路有点细 仔细看发现方块不够方 圆焊盘不够圆 此外切片出来的精度也有点不太好 因此Python先写了两个程序 用于提取(展开)和生成(压缩).CWS文件中的特殊PNG图片(那是一种把灰度像素按顺序放在BGR(不是RGB大概是因为小端优先的原因)的特殊格式)

做成了bat方便点

XXXXXXXXXXXXXt---

0<0# : ^
''' 
@python %~f0 %* 
@goto :eof
'''

from PIL import Image
import numpy
import sys

if len(sys.argv)<3 :
	print('Expand Compressed image in CWS zipped file')
	print('Usage: python',sys.argv[0],'<image file name> <output file name>')
	print('Example: python',sys.argv[0],'a.png b.bmp')
	exit(1)

img = numpy.array(Image.open(sys.argv[1]).convert('RGB'))
(h,w)=img.shape[0:2]
nw=w*3
print ('Original:', w, 'X', h, '  New:', nw, 'X', h)
img2=numpy.empty([h,nw,3], dtype=img.dtype)
for y in range(h):
	for x in range(w):
		img2[y,x*3,0]=img[y,x,2]
		img2[y,x*3,1]=img[y,x,2]
		img2[y,x*3,2]=img[y,x,2]
		img2[y,x*3+1,0]=img[y,x,1]
		img2[y,x*3+1,1]=img[y,x,1]
		img2[y,x*3+1,2]=img[y,x,1]
		img2[y,x*3+2,0]=img[y,x,0]
		img2[y,x*3+2,1]=img[y,x,0]
		img2[y,x*3+2,2]=img[y,x,0]
Image.fromarray(img2).save(sys.argv[2])
exit(0)

XXXXXXXXXXXXXt---

0<0# : ^
''' 
@python %~f0 %* 
@goto :eof
'''

from PIL import Image
import numpy
import sys

if len(sys.argv)<3 :
	print('Compress normal image to fit CWS zipped file')
	print('Usage: python',sys.argv[0],'<image file name> <output file name>')
	print('Example: python',sys.argv[0],'a.jpg b.png')
	exit(1)

img = numpy.array(Image.open(sys.argv[1]).convert('L'))
(h,w)=img.shape
nw=int((w+2)/3)
print ('Original:', w, 'X', h, '  New:', nw, 'X', h)
img2=numpy.empty([h,nw,3], dtype=img.dtype)
for y in range(h):
	for x in range(nw):
		img2[y,x,2]=img[y,x*3]
		img2[y,x,1]=img[y,x*3+1] if x*3+1<w else 0
		img2[y,x,0]=img[y,x*3+2] if x*3+2<w else 0
		
Image.fromarray(img2).save(sys.argv[2])
exit(0)
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
21天19时前 修改于 21天18时前
10楼

自己生成.CWS文件比较麻烦 可以在已有的文件上修改 用PS生成图片后用XXXXXXXXXXt转换成特殊压缩的PNG图片 替换掉.CWS文件的开头几个PNG图片就可以

至于布线图片应该弄成多少像素 得看3D打印机的精度 值得注意的是打印机官宣的数据不一定够准确 例如实践中我这儿误差有偏大千分之6左右 80mm板子对齐某侧后 另一侧就差了0.5mm 钻孔位置就对不上了

还推荐可以用PS做些修饰 比如做个曲线 扩充或收缩一下线条 容易碰线的局部修整一下之类 

总之自己生成.CWS里面的曝光图可以带来更好的精度和更多的灵活性

此处应该注意3D打印机可能需要镜像

实测可以在干膜上曝光出0.1mm的线条 我也试过0.127mm的线条 但是干膜的附着力不够好 撑不过曝光的显影 这次我主要用0.18mm的线条 实践中发现又偏粗了 也许0.15mm会更合适

IMG_20211116_003313.jpg

上图中圈住的地方是一根0.1mm的线条 撑过了曝光 显影 和腐蚀

此外另一个经验是贴上干膜前用些有机溶剂(用了些DCM)略(非常少和轻微)润湿铜箔 对干膜附着力有提升

定位对版的方法如下图 上PCB曝光前可以看显示出来的影像(注意紫外线不应长时间观看) 如果看不清(好的纯的紫外光源可能看不到)可以用硫酸纸辅助显像 拐尺对好显示出来的cut edge边缘即可 也可以记住靠近拐尺几个焊盘的位置的坐标 来准确地放置PCB板

IMG_20211116_004301.jpg

我的3D打印机是主流的单色屏 这次曝光了60s 发现过了 合适的可能是45s 没有显影前还觉得显影较淡 显影后发现深蓝就是曝光过了 结果就是线条还是有些粘连 需要后期铲掉

有趣的是散热焊盘的地方(比如下图圈住的地方) 虽然显影没有蓝色 但是还是被保护住了 此处间隙0.2mm 而大多数其他0.25-0.3mm的间隙都成功分离 应该减少曝光 或者间隙控制在0.3mm以上

IMG_20211116_005140.jpg

幸好总体还算成功 线条粘连比我期待的要少 基本没有断线的情况 细线条的侧蚀也不严重 线条看起来都比较“线状” 绝大多数孔盖膜没破

IMG_20211116_010029.jpg

此外这次只做了一面 另一面在腐蚀中用封箱带保护了 这也算一个不错的方法 到时候剥去然后用有机溶剂清除就可以了

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
20天19时前
11楼

今晚把另一面线宽改成0.15mm/曝光45s

另人遗憾的是 因为干膜附着力和侧蚀等原因 部分线条有断裂 只能用漆包线补救了 

曝光45s显影看来是OK的 0.15mm线宽则是冒险的 0.18mm线宽应该是充分的 

IMG_20211117_013409.jpg IMG_20211117_012410.jpg

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h作者
17天23时前 修改于 17天22时前
12楼

因为上一次瑕疵太多 而且电路板有些地方最好改一下 所以干脆昨晚又重新制作了一次 有经验后速度快多了 效果也好多了 没有断线 只有一两处有碰线 今晚又把阻焊层也给做了上去 

大的钻孔直径1mm 板子81mm*27.4mm 可以参考 有些线条可能已经只有0.1mm了(设计0.15-0.18mm 但是被侧蚀了)

IMG_20211119_205556.jpg

重新。。。再次总结经验

  1. 最细线如果不是长线可以0.15mm 长线至少0.18mm 线间距应超过0.2mm 并线应间距更大  应超过0.3mm 线和焊盘突起间可以略小 此数据其实已经不错 创立嘉的专业制版好像也需要超过0.12mm的线条 实际上这个很受干膜附着力和侧蚀等方面的影响 千元光固化品0.05mm精度的3D打印机曝光0.12mm线条 显影后 观看未腐蚀的线条 效果已足够胜任 而数千元的打印机目前已有0.03mm精度

  2. PS处理绘制的曝光图 相邻线太近可以手动修改 比如部分地方可以变细一些 部分焊盘即使截去一小边也可以

  3. 上干膜前用洗洁精洗净钻孔锣边后的电路板 大量水冲洗不可残留洗洁精碱性成分 砂纸打磨电路板表面 同时注意不可有尖刺粗边防止损伤光3D打印机屏幕 用水润湿电路板后擦干 贴上干膜 100度左右压4遍

  4. 注意打印机屏幕的厂商分辨率不是投影出来的分辨率 因为屏幕像素上方有玻璃厚度 我这款打印机是集中点光源而不是平行矩阵光源的 因此投射到电路板表面的实际线路比液晶屏处等比略大。。。不知道那种矩阵光源的效果会怎么样

  5. 我这里干膜曝光45s 此数据显然需要根据打印机和经验调整 此时看未显影的线条似乎有些淡 但是是合适的

  6. 宜用温水 1%-2%新配碳酸钠溶液(老溶液中带有以前溶解的干膜可能会更容易泡散干膜) 软毛刷不停刷动 都是为了提高显影速度 速度越快显影效果越好(毛刷和水流类似塔板数放大的效应 及时带走未感光抗不住的干膜  加快未溶解该溶解的干膜与溶液接触 而感光聚合的干膜抗住后不被影响)时间长可能细线条会泡烂 此外水中加入很少量氯化钠 我认为(并无专门对比)离子溶液可以提高干膜附着力和减少溶解脱落的现象

  7. 显影后不可立即腐蚀 应等板子略干 干后干膜附着力更强

  8. 腐蚀也同样宜快不可慢 水温应50度左右 腐蚀剂(我用过硫酸铵)管够 毛刷刷动辅助 越慢越久侧蚀越严重 而侧蚀被掩盖在线条下是看不到的 如果始终有部分腐蚀不去的地方 可能是有透明的干膜残留 不应留恋可以取出 之后手动铲去没腐蚀干净的铜箔 同样我加少量氯化钠保护干膜

  9. 靠近电路板边缘的线条(实在板子太小 留不出保护的空间)我用油漆笔保护了一下

  10. 阻焊油墨不宜上厚 60-80度热风吹了20分钟 是等不到完全干的 热的时候更有粘手的感觉 冷却后差不多就行 可以用干膜之前撕下来保护透明纸盖住 这样曝光时候不会粘住屏幕

  11. 阻焊油墨曝光150s 此时表面上是看不出效果的

  12. 阻焊油墨显影用温水 少量氯化钠 2%碳酸钠 比干膜显影困难 也需要刷动 因为没有丝网 手动涂层不均匀 有些地方涂厚了 显影很困难 我直接拿海绵蘸淡氢氧化钠溶液(之前去干膜用的)直接擦 效果也不错 焊盘很快就被擦出来了

  13. 阻焊油墨弄好一面后可以直接照紫外灯几分钟加固 两面都弄好后 可以从90度到150逐渐升温烘烤半小时(不然不抗洗板水之类的溶剂)

引用
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
RodTech
17天22时前
13楼

"mask-less lithography"


稍微试了一下,现成的打印机有强制硬件dithering,只能人工改为单层长时间曝光。。。。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
虎哥
17天21时前
14楼

居然把这事干成了。虽然PCB现在已经可以白嫖了,但这种尝试还是要赞扬以及鼓励一下。

楼主终于学会了在除了代码之外的表达中使用标点符号“.”和括号,可喜可贺。😂

引用
评论
2
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
所属分类
上级专业
同级专业
m24h
进士 机友
文章
19
回复
434
学术分
0
2020/01/22注册,21 小时前活动

无聊地过着没有意义的日子 偶尔期待一点意思

%7B%22isDisplay%22%3Atrue%7D
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
插入资源
全部
图片
视频
音频
附件
全部
未使用
已使用
正在上传
空空如也~
上传中..{{f.progress}}%
处理中..
上传失败,点击重试
等待中...
{{f.name}}
空空如也~
(视频){{r.oname}}
{{selectedResourcesId.indexOf(r.rid) + 1}}
处理中..
处理失败
插入表情
我的表情
共享表情
Emoji
上传
注意事项
最大尺寸100px,超过会被压缩。为保证效果,建议上传前自行处理。
建议上传自己DIY的表情,严禁上传侵权内容。
点击重试等待上传{{s.progress}}%处理中...已上传
空空如也~
草稿箱
加载中...
此处只插入正文,如果要使用草稿中的其余内容,请点击继续创作。
{{fromNow(d.toc)}}
{{getDraftInfo(d)}}
标题:{{d.t}}
内容:{{d.c}}
继续创作
删除插入插入
{{forum.displayName}}
{{forum.countThreads}}
篇文章,
{{forum.countPosts}}
条回复
{{forum.description || "暂无简介"}}
ID: {{user.uid}}
学术分隐藏
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

支持的图片格式:jpg, jpeg, png
插入公式
分享回复:{{shareId}}
加载中...
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
加入关注取消关注
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
建议修改
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也