Você está no 3DFinder
Buscamos em Thingiverse, MakerWorld e Printables ao mesmo tempo para te dar o melhor de cada uma.
Descrição
提示切片时间太长了无法过审3mf文件orz
辛苦大家用网盘下载 PC端打开了
俄罗斯方块唱片3mf (0.2mm喷嘴,0.08mm层高):
链接:[https://pan.quark.cn/s/0b1e24ba8278](https://pan.quark.cn/s/0b1e24ba8278)
注:需要用78RPM转速播放,使用45RPM可以播但会是放慢的版本。
本人对切片软件不是特别熟练,大家可以自行多做一些调整,如果有人能优化到能让MakerWorld过审的切片速度的话就帮大忙了!
科幻枸杞视频
原3D Printed Records项目 by Amanda Ghassaei: [https://www.instructables.com/3D-Printed-Record/](https://www.instructables.com/3D-Printed-Record/)
注意事项放在前面说:
这个流程不是特别简明,可能会有不少相关的碎碎念,提前抱歉。
如果想自己生成唱片模型的话,先确认已经下载并且打印了上传好的一些现成模型确认在自己的唱片机上可以播放出可以接受的声音。
PLA材料一般认为比正常的黑胶碟的PVC要软一些,所以大概可以不用太担心对金刚石材质唱针的损耗,但如果是便宜的红宝石唱针就算损耗了也不心疼(?)
然后再到流程,附件已打包
链接:[https://pan.quark.cn/s/b886eb6a7f16](https://pan.quark.cn/s/b886eb6a7f16)
提取码:zLgw
1.安装软件
需要软件 Audition(或Audacity等任何音频处理的DAW都可以);
python 2.7.18 版(是一个比较老的版本,其实可以转换成新版但是我不是很懂应该怎么转换,新版直接用的话会报错)
processing 2.2.1版 (同样是一个老版本)
processing 模型数据包 Modelbuilder v0007a03.zip
先安装所有软件
将Modelbuilder v0007a03.zip 解压出来的modelbuilder文件夹
到processing安装路径的Processing\modes\java\libraries 路径
2. 音频处理
如视频展示的每一段音乐基本只有十几秒,这是个人参数所致,其实可以放下更长的时长,但是更长的时长意味着更大数据量的模型,会增加大量的软件切片时间。十几秒的音频在我的i7-13700k上切片都要花费几十分钟。
在准备音频之前先了解一下3D打印唱片的精度极限在哪,我根据原Instructible上Amanda的文章喂给Gemini让它用同样的方法计算0.4mm、0.2mm的喷嘴能做到的极限音频精度,给出的计算结果是这样的:(Gemini的计算以喷嘴直径为极限,但也有可能极限不在喷嘴而在Z轴层高的极限,这个就需要更多的验证来测试是否如此了,低层高打印实在过于耗时于是暂时没有去验证)

注意这张表格的前提是,唱片的直径是7英寸,也就是能在A1 mini摆放下的比较小巧的尺寸,同时也是视频中使用的尺寸。
如果是P1S / P2S 的256*256 尺寸,则可以放下9.8英寸的唱片,那采样率就会变成如下:

但9.8英寸在我的打印速度下有点过于缓慢了,如果做个更大的孔径转换器的话,可能会导致唱片放不稳,于是我还是选择了7英寸。
如果打印时间非常充裕,也可以依然选择9.8英寸,后续会写在什么地方修改参数。
那首先以7寸唱片为例,按表格能看到,如果你的唱片机支持78RPM的速度的话,你可以在0.2喷嘴下实现3560Hz的最大采样率,这是以唱片最外环直径来算的。
不过市面上大部分稍微好一些的黑胶唱片机其实不支持78RPM(反而是工模低端机支持,很怪),那尽量用0.2mm喷嘴,在45RPM下也有2054Hz的采样率。
那么为了让我们的音频可以最大限度在后面的步骤中保留有效信息,我们首先需要给音频加低通效果器。
根据奈奎斯特定理,我们要给前面算出来的最低采样率除以二得到我们音频能保留的最高高频,也就是低通效果器的数据。
于是首先,先选好你想要的短音频(推荐小于18秒,若需要超过这个时间可以先操作长音频,等后面在processing流程中可以调整如何塞进唱片)
那么7寸唱片,0.2喷嘴,78RPM的情况下,需要给音频加上1780Hz的低通效果器。
如图:(用的是Au自带的参数均衡器的LP,也是低通)

另外,由于Amanda的原项目是基于33.3RPM的大尺寸唱片来制作的,于是还要在低通处理结束后,将音频放慢到原速度33.3/78倍,这样就能在78RPM的机器上正常回放。
在Au中的操作是把时间拉长到234%(78/33.3≈2.34), 使用效果-时间与变调-伸缩与变调
注意勾选锁定伸缩与变调。

如果你是45RPM的机器,那这个伸缩数值就是135%
在伸缩好的音频的头和尾分别加上2s左右的静音,头是为了方便唱针找开头,尾其实不加也行但也是能反应过来及时停止播放以防针头跳起(我也不知道跳起有什么坏处其实)
保存成16bit无抖动的wav. 如图,用全英文的文件名

3. python预处理wav成为txt
接下来到python
打开wavtotext.py, 将这一行
fileName = "your_file_name_here.wav"#file to be imported (change this)
引号内部分改成你保存的wav的文件名
保存后 Run Module
python脚本会把wav文件首先转换成一个txt文件,生成在同一文件夹下。
4. processing 转换TXT为STL
再接下来打开processing
打开RecordGenerator.pde
先把上一步的txt文件放到RecordGenerator.pde同一文件夹下
将这一行
String filename = "your_file_name_here.txt";
引号内改成你生成的txt的文件名。
这里我已经放上了我7寸的模型的数据,你可以在这里修改一些参数来调试生成的模型。
要注意的几个参数是
float diameter = 7; //唱片直径,单位是英寸
float innerHole = 2.92; //中心孔洞直径,单位是英寸。注意我这里写的2.92是孔洞转换器的外直径,若不需要孔洞转换器,请将其改为小孔的尺寸 0.286
float innerRad = 2.6; //最里侧的凹槽半径
float outerRad = 3.43; //最外侧的凹槽半径
如果要修改成更大尺寸的唱片,比如改成9.8寸,那就 float diameter = 9.8
然后outerRad改成4.85(9.8除以二再稍微减掉一点点留给外边缘)
另一个比较关键的参数是
float rateDivisor = 12.4 采样率除数,这里的12.4是因为默认的44100Hz采样率要降低到3560Hz的采样率,要除以12.4。假如你的采样率是更低的2054Hz(45RPM,0.2mm喷嘴),那这个值应该提高到21.5
这个参数尽量按照采样率来往高了调,不要太低,不然模型文件尺寸会变得非常大,切片软件会很吃力。
如果你想存下更长的声音,你应该调整的参数是
float bevel = 1.1;//凹槽斜面的斜度
float grooveWidth = 8;//凹槽的宽度,600dpi下的像素数
如果想存更长的声音就把这两个参数调低,比如bevel=0.8, grooveWidth = 5 之类的
我没有一个计算器去算多少秒应该改成多少参数,只能是processing结束后看凹槽有没有超出内孔。
参数调整完后保存文件,点击Run

顺利的话不一会儿就会出现一个stl模型文件,这就是唱片的模型了!
将这个模型导入切片软件,应该会有个弹窗提示尺寸单位是英寸要不要转换成毫米,确定就行。
然后就是切片里的设置了,本人在3D打印领域刚刚入门,于是不敢给出太多在切片方面的建议,主要就是降速来保持精度吧。如果有人能愿意花时间测试0.06甚至更低的层高,以及手写Gcode打印来反馈的话也不尽感激!
欢迎讨论,不过可能主包没很多时间看回复sorry