磁流体随着音乐起舞 ~
效果:
待补视频
制作:
硬件部分:
- 淘宝买的磁流体
- arduino uno
- L298N
- 电磁铁 8 mm * 20 mm 两个
- 12V 电源一个
组装方法可以看我的这篇文章:
https://blog.csdn.net/longmanandoxford/article/details/117653064
用 L298N 给马达进行 12V 供电 + 调速
按照上文的思路,把 L298N 的两个输出端都启用。
然后输出处接上电磁铁们就行。
程序部分:
// Mag A
int input1 = 4; // 定义uno的pin 5 向 input1 输出
int input2 = 5; // 定义uno的pin 6 向 input2 输出
int enA = 10; // 定义uno的pin 10 向 输出A使能端输出
// Mag B
int input3 = 3;
int input4 = 2;
int enB = 11;
// Mag C
int input5 = 6;
int input6 = 7;
int enC = 9;
void setup() {
pinMode(input1,OUTPUT);
pinMode(input2,OUTPUT);
pinMode(enA,OUTPUT);
pinMode(input3,OUTPUT);
pinMode(input4,OUTPUT);
pinMode(enB,OUTPUT);
pinMode(input5,OUTPUT);
pinMode(input6,OUTPUT);
pinMode(enC,OUTPUT);
}
void loop() {
// Control A
digitalWrite(input1,HIGH); //给高电平
digitalWrite(input2,LOW); //给低电平
analogWrite(enA,255);// turn on A
delay(600);
analogWrite(enA,0);// turn off A
delay(600);
//Control C
digitalWrite(input5,LOW); //给低电平
digitalWrite(input6,HIGH); //给高电平
analogWrite(enC,255);//turn on C
delay(600);
analogWrite(enC,0);//turn off C
//Control C
analogWrite(enA,255);//turn on C
delay(600);
analogWrite(enA,0);//turn off C
}
note:
- 上面的程序是可以同时控制三个电磁铁的,但是实际上只用了 A 和 C
- 关键是等待的时间,需要与节奏吻合
BGM:
截取自:
https://www.youtube.com/watch?v=y_azmK6r-5c&t=2129s
Love yourself more ~Lofi hip hop mix~ beats to relax/study to ~ focus music
的 34:43 ~ 35:20 处。
大概是 “ 咚 咚 大 咚 ”
“ 大 ” 声时磁流体向左扑一下。