总结
这是我七年级软电路课程学生参与的一个项目。该项目的灵感来源于斯科特・彼得曼http://www.imaginarymarchingband.com。
它使用了 Spikenzielabs 公司的 Serial-MIDI 转换器,由马克·德默斯http://spikenzielabs.com/SpikenzieLabs/Serial_MIDI.html,还有 GarageBand 和 Arduino 。
他们的想法是以自己头部的形状来制作导电材料。第一版作品使用了Kinect设备,并结合了凯尔·麦克唐纳开发的KinectToSTL软件。https://github.com/kylemcdonald/Makerbot/tree/master/KinectToStl)。第二次迭代使用了Autodesk的123D Catch软件。打印出头部模型后,我们使用The Complete Sculptor's Resilpom 2材料(www.SCULPT.com)制作了硅胶模具。学生们还尝试了加入盐、导电面团、水和冰块的果冻材料。
操作指南
串行至MIDI转换器可将计算机的串行端口与MIDI软件及硬件相连接。借助该设备,你可以让Arduino向苹果公司的GarageBand发送MIDI消息。
-
下载 Spikenzielab.com 的串行-MIDI 转换器,并将其解压缩。
-
请将midibus库下载并安装至文档:processing:libraries文件夹中。http://smallbutdigital.com/themidibus.php)
-
打开苹果公司的音频 MIDI 设置应用程序。
-
选择“窗口”>“显示 MIDI 窗口”
-
双击 IAC 驱动程序图标
-
设备已上线
-
您可以关闭“音频 MIDI 设置”应用程序了。
- 打开 Arduino 1.0 或更高版本。
请上传以下程序,以测试您的串行-MIDI连接:
//
//
//
SpikenzieLabs.com
//
//
非常简单的串行转 MIDI 演示程序
//
//
//
// 作者:马克·德默斯
// 2009年5月
// 版本:0.1
//
// 描述:
// 演示示例代码,用于演奏从第四八度中的中央C音符开始,到第五八度中的B音符,再返回的音符序列。
//
//
// 连接:
// 1. 将 Arduino 的 USB 数据线插入您的计算机。
//
//
// 使用方法:
// 1. 安装并设置 SpikenzieLabs 公司的串行 MIDI 转换器
// 2. 打开、编译并将此草图上传至你的 Arduino 开发板。
// 3. 在后台运行串行 MIDI 转换器。
// 4. 启动你的音乐软件,比如 Garage Band 或 Ableton Live,选择一个软件乐器,然后聆听音乐。
//
//
// 法律声明:
// 本代码按现有状态提供,不提供任何形式的担保或保证。您有责任自行判断其适用性及安全性。
请确认这段代码是否适合您的应用程序使用。
//
整数变量 note 的值被初始化为 0。
void setup()
{
Serial.begin(57600); // 串口转MIDI转换器串口的默认传输速度
}
void loop() {
for(int note=60; note<=83; note++) // 音符逐渐升高
{
MIDI_TX(144,note,127); // 音符开启
延迟100毫秒;
』
for(int note=82; note>=61; note--) // 降音演奏
{
MIDI_TX(144,note,127); // 音符开启
延迟250毫秒;
』
』
void MIDI_TX(unsigned char MESSAGE, unsigned char PITCH, unsigned char VELOCITY) {
Serial.write(消息);
Serial.write(PITCH);
Serial.write(VELOCITY);
}
-
若想启动 SM,请依次进入应用程序>macOS>源代码>Serial_MIDI_Converter_V2D.pde。打开该文件后,系统会提示您创建一个文件夹。请照做,然后运行该草图程序。
- 选择Arduino正在使用的串行端口。我的Arduino使用的是A端口。
这一串行端口将用于串行发送和接收。你的微控制器串行端口必须设置为 57600 bps,数据格式为 8N1。(尽管 MIDI 数据以 31250 bps 的速率传输,但串行端口被设定为更高的波特率,以最大限度地减少任何延迟时间。)
-
选择57600。这是E的选择。
-
选择一个 MIDI 输入端口。
这些是将通过串行端口发送出去的 MIDI 数据的来源。这可能会让人有些困惑,如果你正在使用音频软件,那么这将是软件的 MIDI 输出端口!如果你使用的是外部控制器,比如键盘,那么这将是该设备的 MIDI 输入端口。这就是 A 。 -
选择一个 MIDI 输出端口。
每当音序器 - 系统监视器
15. 打开 GarageBand 应用程序
-
选择钢琴
- 导航至“偏好设置”,然后打开“MIDI/音频”选项。
选择系统设置
18. 点击“编辑钢琴”,然后选择“数字基础”模式。
-
这一次,请关闭并重新打开 GarageBand。下次你无需再进行偏好设置了。
- 听你的 Arduino 创作出美妙的音乐吧!
/////////////////////////////////////////////////////////////////////////////////////
我的学生们先是用光敏电阻(LDR)进行了实验,随后又尝试了CapSense库的相关功能。http://www.arduino.cc/playground/Main/CapSense)你可以查看他们的修改后的代码。
所需零件:
阿尔杜伊诺
异地恋
680千欧电阻器
铝箔纸
其他一些导电材料包括:裸露的导电涂料、水、果冻、冰块等。
模型来源
