▍1. 把乐谱转化成gcode,从而让3D打印机唱歌
3D 打印机唱歌的原理是控制某轴运动的速度,使步进电机不同的频率运转。我先学习了如何写 gcode(http://reprap.org/wiki/G-code/zh_cn),又试写了一段 g代码使 3D 打印机以不同 F 值(相当于进给速度)运转,录音后用 Adobe Audition分析,得出了声音频率与 F 值之间的关系。我又找到了一首简单的歌曲《数鸭子》,查表得每个音符的频率,再用 Excel 算出每个音符的 F 值,手动写出 g 代码,运行效果不错。接下来就是批量化生产了。我用 Java 写了一个自动生成 gcode 的程序,只要将简谱以规定的格式输入,它就会转化成 gcode,后者直接在 3D 打印机中运行。我找来浙江大学校歌的简谱(很遗憾,没有前奏),进行一些格式处理后输入转化程序,果然生成的 gcode 使 3D 打印机放出了悠扬的歌声。