第1篇:用arduino控制曲别针电动机
第2篇:非接触式开关的制作与控制
第3篇:自制电磁执行器的制作方法
我们推出了一项新计划,即通过使用了arduino的简单制作来学习电子制作的原理和基础知识。此次为我们分享的嘉宾是伊藤尚未先生,他活跃于媒体艺术领域,并且在书籍领域以讲解“更深层次的原理”而闻名。第4篇我们将用arduino来控制rgb led灯。
目录
前言
闪光灯动画
用arduino控制电机
控制三色led
享受千变万化的动画
1. 前言
大家好!我是伊藤尚未。
这次我想尝试制作一个可以称之为动画的原理和鼻祖的“走马盘”。“走马盘”也被称为“诡盘(phenakistiscope)”,不过相比之下“走马盘(zoetrope)”这个词对于喜欢电子制作的人来说可能更熟悉。无论哪种,都是在具有某种主题的转盘上设置一些狭缝,当人通过狭缝观看时,狭缝便起到快门的作用,转盘旋转时让人感觉像在看动画。
这是1830年代在欧洲发明的视觉玩具,有平面的、立体的、镜像的和另设快门的,产品形式多样。类似于翻书动画,也可以说是当今影视技术的鼻祖。
如果尝试以电子作品的形式展现出来的话,就需要通过使led等光源闪烁来使人看到的瞬间连续起来。通过将led灯控制为连续闪光灯并使绘有连续图画的转盘旋转起来,即可表现出动画的效果。这也是因为白色led的发明,加之电路配置变得更简单了,才让我们能够享受其中的制作乐趣。
虽然在书籍和网络上已经有多种多样的制作介绍,但我突发奇想,如果不仅仅用白色led闪烁,而是用rgb闪烁的方式,应该会有更丰富的表现吧,所以我决定制作出来,并介绍给大家。
2. 闪光灯动画
我通常在工作室等进行电子制作,但最近,用简单的电路使led闪烁的制作,以及将其灯光照射到绘有图画的转盘上形成动画的项目多起来了。
这种装置通常采用由晶体管、电阻器和电容器组成的简单振荡电路,不过在这次的作品中,我让闪烁速度也成为可调的了。
很遗憾的是,不知道是视频中的帧率问题还是什么原因,效果没有很好地拍摄出来。从视频中可以看到,转盘的转速会逐渐变慢并最终停止,动画的速度也随之变化。
3. 用arduino控制电机
我希望它一直以相同的速度旋转,所以我决定制作一个用电机驱动的装置。电机使用的是“万宝至”公司生产的“fa-130ra”。
从包装上看,正常转速是6500rpm,感觉这个速度有点太快了,所以我决定通过控制让转速慢一些。
我做了一个支架用来将转盘的轴固定在上方,用皮带轮将电机的旋转传递给转盘,并使用arduino的模拟输出来控制电机的旋转速度。
我使用了rohm的晶体管“2sd1866”进行驱动。
完整的作品样子如下:
由于电机在开始转动时需要一定的动力,因此很难从一开始就减速,所以我先让电机转起来,然后再使之低速转动。为此,我做了一个可以用手旋转进行调节的半可调电阻器旋钮装置,这样就可以手动控制转速了。
使用arduino进行模拟输入,以控制电机。电路图如下:
使用电机控制用的晶体管“2sd1866”进行驱动,并由一节干电池提供1.5v电压。将这些部件组装在面包板上之后的示意图如下:
草图如下。其机制是通过a0引脚将半可调电阻器的值模拟输入,并通过引脚9经由20kω的电阻器驱动连接到晶体管集电极的电机。
int value01 = 0;void setup() {serial.begin(9600);pinmode(9, output);}void loop() {int value01 = analogread(a0);serial.println(value01);analogwrite(9, value01 / 4);}
当我实际尝试使其转动起来时,转盘竟然能够以很低的速度旋转。当我用前面用过的闪光灯照射转盘时,它表现如下:
4. 控制三色led
现在,为了提高亮度,我打算增加led的数量。此外,为了制作出最初想象中的rgb led,我分别采用了5个红色、绿色和蓝色的led。
为了让arduino控制这些led,我决定也用晶体管“2sd1866”来驱动。
电路图如下:
每个晶体管由arduino的引脚11、引脚12和引脚13驱动,红色对应引脚13,绿色对应引脚12,蓝色对应引脚11。外部电源为3节干电池,4.5v。我把它们焊接到了万用板上并接线。电路板接线图如下:
为了便于照亮安装在电机底座上的转盘,我将该led板安装在倾斜的底座上,另外还在电机底座上安装了arduino和面包板等部件。由于led的光线不够均匀,所以我为led安装了扩散罩。
从电机底座的后面看,样子如下:
将其与arduino连接。首先,为了让所有的led同时闪烁,在前面提到的电机控制部分基础上,草图中又增加了部分内容:
int value01 = 0;void setup() {pinmode(13, output);pinmode(12, output);pinmode(11, output);serial.begin(9600);pinmode(9, output);}void loop() {int value01 = analogread(a0);serial.println(value01);analogwrite(9, value01 / 4);digitalwrite(13, high);digitalwrite(12, high);digitalwrite(11, high);delay(1);digitalwrite(13, low);digitalwrite(12, low);digitalwrite(11, low);delay(49);}
当前设置为点亮0.001秒,熄灭0.049秒,每秒闪烁20次。由于rgb同时闪烁,光的三原色合在一起发出白色的光,所以动画看起来像之前的闪光灯动画。
5. 享受千变万化的动画
下面,我们让rgb错开时间亮起。除了全部亮起形成白色光之外,还可以通过错开时间让红色、绿色和蓝色led分别亮起,来使转盘上的图形显示不同的颜色。草图如下:
int value01 = 0; void setup() { pinmode(13, output); pinmode(12, output); pinmode(11, output); serial.begin(9600); pinmode(9, output);} void loop() { int value01 = analogread(a0); serial.println(value01); analogwrite(9, value01 / 4); digitalwrite(13, high); digitalwrite(12, high); digitalwrite(11, high); delay(1); digitalwrite(13, low); digitalwrite(12, low); digitalwrite(11, low); delay(13); digitalwrite(13, high); delay(1); digitalwrite(13, low); delay(11); digitalwrite(12, high); delay(1); digitalwrite(12, low); delay(11); digitalwrite(11, high); delay(1); digitalwrite(11, low); delay(11); }
这样,虽然没有改变整体的周期,但看起来像红色、绿色、蓝色的人在白色人中间奔跑。
如果用来表演,还可以增加更多表达方式。可以分别混合颜色,还可以让它们一会儿出现一会儿消失,是不是很有趣?
这让我想起当我还是个学生的时候,在节目中创造各种模式演出的乐趣。如今,当我确定某个创意“可行”的时候,在考虑把创意做成作品时倾向于直接进入完成期了。这种现象也称为“搁置”(笑)。
最后,把电路图合在一起,整个电路图如上图所示。1.5v电源用于电机,4.5v电源用于led,当然arduino也连接了usb。另外,我还进行了焊接并使用了面包板。
如您所见,这次的电子作品制作中使用了各种手法,不过我更希望大家也来挑战一下!
本系列连载一览
第1篇:用arduino控制曲别针电动机
第2篇:非接触式开关的制作与控制
第3篇:自制电磁执行器的制作方法
第4篇:享受控制rgb led灯的乐趣(本章)
第5篇:用arduino控制伺服电机来演奏乐器!
清溢光电在南海丹灶建设高端半导体掩膜版生产基地
常见的锐捷光模块型号大全
全球晶圆代工产能不足将持续到2022年之后
建设虚拟变电站,可有效减小电网投资成本?
提高通信距离的措施
Arduino:享受控制RGB LED灯的乐趣
赛默飞Helios 5 EXL晶片双束透射电子显微镜通过自动化样品制备加快产品量产时间
盛瑟传感功能的简单概述
走出家庭影院组建误区 享受高清生活
Atmel推出高集成度闪存微控制器改善阻抗匹配并降低功耗50
笔记本电池损耗修复方法
微软将放弃HealthVault应用程序
基于单片机对FPGA进行编程配置
蔚来汽车Q3销售额2.425亿美元,营收同比增长25%
GB T 6219-1998 半导体器件 分立器件 第8部分 场效应晶体管 第一篇 1GHz、5W以下的单栅场效应晶体管
换热站的变频调速控制系统
单面与双面的内存条有什么区别
夏普致力高创能太阳能电池研发力做环保先锋
基于Cyclone IV系列FPGA实现X射线采集传输系统的设计
欧菲光成功研制出 0.3mm 超薄 VC 均热板,5W 散热功率