0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于计算机控制的音乐圣诞灯的制作

454398 来源:wv 2019-09-20 17:19 次阅读

第1步:零件和材料

基于计算机控制的音乐圣诞灯的制作

如果您是一位精通技术的人,可以使用焊接设备并具有电路的基本知识,那么您会发现这个项目容易实现。另一方面,如果您一生中从未做过任何电气工作,建议您上Google并学习如何焊接或联系电子专家。该Instrutable确实利用了高压电流,因此,在使用此类设备时,建议您格外小心。 *对于此项目可能造成的任何损害或伤害,我不承担任何责任。*

现在我们知道了,继续前进。以下是您需要的零件和材料清单:

-Arduino Duemilanove

- USB电缆

- Windows电脑(最好是笔记本电脑)

-6继电器;额定电压为5v-各种LED-220-OHM LED电阻器-焊接的PCB

》 6个三管齐下的女性商店

- 一个三管齐下的男性商店

- 塑料盒外壳

-胶合板

-热胶和热胶棒

-6普通黑色1N4004二极管

-焊锡和烙铁(已保存)

- 绕线

步骤2:LED指示灯

首先将LED指示灯焊接到PCB板上将它们与我们将要构建的6个通道相关联。

您将需要6个LED来检查您的通道,看它们是否有效。

1。首先,抓住6根红线和1根黑线。从6根线和1根黑线开始连续焊接它们。

2。 6条红色导线连接到LED的正极。

3。焊接LED另一端的6个电阻

4。将黑色电缆焊接到电阻器的两端。

检查下图中的工作情况。确保没有任何草率连接或短路问题。

步骤3:测试LED

如果您急于测试LED以确定连接是否成功,可以通过将引脚线连接到Arduino来实现。如果您希望在继续连接继电器之前测试LED,请按照下图进行操作。

将6个引脚插入Arduino以及地线。

将Arduino连接到计算机并打开Arduino Sketch板软件。

如果一切顺利,则应该看到所有的LED都亮了。

int tree1 = 13;

int tree2 = 12;

int tree3 = 11;

int tree4 = 10;

int tree5 = 9;

int tree6 = 8;

void setup(){

pinMode(tree1,OUTPUT);

pinMode(tree2,OUTPUT );

pinMode(tree3,OUTPUT);

pinMode(tree4,OUTPUT);

pinMode(tree5,OUTPUT);

pinMode(tree6,OUTPUT);

}

void loop(){

digitalWrite(tree1,HIGH);

digitalWrite(tree2,HIGH);

digitalWrite(tree3,HIGH);

digitalWrite(tree4,HIGH);

digitalWrite(tree5 ,HIGH);

digitalWrite(tree6,HIGH);

}

步骤4:连接继电器

如果您只是尝试了步骤3,请断开Arduino与计算机的连接,并断开与Arduino的所有电线。

为避免损坏Arduino和项目的其他部分,请尝试使用电气胶带隔离开路导线。

我们现在要将继电器焊接到电路板的每个通道。这样做时请小心。为这些连接供电时,它们具有高压危险。花一分钟时间看一下继电器的引脚。

在焊接时请仔细观察该图,因为您的继电器可能与所示的有所不同。

步骤5:在包装盒中!

一旦您的继电器全部焊接完毕,就可以将其放入包装箱中了。在做任何事情之前,请确保您没有焊接错误。将PCB板的4个角热粘合到小块胶合板上。将胶合板直接热胶在塑料盒上。

对Arduino进行相同操作。除此之外,我建议您使用螺钉将Arduino固定到一块胶合板上,然后将其热胶粘到塑料盒外壳上。将电线从PCB连接到Arduino。

(唯一的“自由悬挂”电线应该是连接到继电器的“高压”电线。)

步骤6:打包和处理

这是您创造奇迹之前的重要步骤。首先,将所有继电器线连接到每个引脚。将地面连接到您的主电源。换句话说,用电线做一个简单的电路。假装“公三管插头”是您的电源,6“母延长线”是您的“负载”(或灯泡),“开关”是继电器。确保每个继电器连接到单负荷。如果您需要帮助,可以查看下面的图表。

需要注意的一些事项:确保用于连接电路的电线可以承受120v电压。最好检查规格。确保用电工胶带彻底包裹所有电线。在塑料盒上戳孔,并确保电源线伸出。热粘合您可能存在的任何缝隙。

步骤7:包装

一旦所有连接都牢固且安全一切都被录制下来了,该开始表演了!您将需要在室内设置“控制箱”。 (因为您不希望任何人弄乱它)

我建议您将盒子放在车库门旁边的车库中。将主电源插入交流电源插座。

像往常一样放房子的圣诞灯,但是将所有电线插入“控制器”而不是电源插座。

如图所示这是我的整理设计。 (我放了一个音符,说“高压”,让我的家人知道内部电压)。

步骤8:歌曲和准备工作

当然,如果没有音乐,什么是计算机控制的音乐灯?将所有喜欢的MP3歌曲下载到计算机。只要您可以在扬声器上大声播放,就可以了。

好的设置是将笔记本电脑带到车库,将USB连接到Arduino,然后插入一些扬声器。如果您的笔记本电脑上有WiFi连接,您可以在Youtube上搜索Mannheim Steamroller等歌曲“Carol of the Bells - David Foster”,“Deck the Halls”或“God Rest Ye Merry Gentlemen”。 br》最后,对于编程,我们将需要某种设置来运行电灯。您有两个选项:

-选项A:您可以使用计算机键盘手动控制灯光。

-选项B:您可以使用宏录制器手动设置灯光并自动播放。

无论哪种方式,您将需要在计算机上运行以下两个程序才能与Arduino通信

高科技圣诞节1.0版(我自己控制灯光的程序)

Arduino Sketchpad (Arduino的默认编程软件)

请确保您同时拥有上述两个程序。如果没有,请下载它们,解压缩内容并立即运行!

拥有程序后,打开Arduino Sketchpad程序并将该代码上载到Arduino:

int tree1 = 13; int tree2 = 12; int tree3 = 11; int tree4 = 10; int tree5 = 9; int tree6 = 8; intintentByte;//一个将传入的串行数据读入

void setup(){

//初始化串行通信的变量:

Serial.begin(9600);

//将LED引脚初始化为输出:

pinMode(tree1,OUTPUT);

pinMode(tree2,OUTPUT);

pinMode(tree3,OUTPUT);

pinMode(tree4,OUTPUT);

pinMode(tree5,OUTPUT);

pinMode(tree6,OUTPUT);

}

void loop(){

//查看是否有传入的串行数据:

if(Serial.available()》 0){

//读取串行缓冲区中最旧的字节:

incomingByte = Serial.read();

if(incomingByte ==‘q’){

digitalWrite(tree1,HIGH);

延迟(150);

digitalWrite(tree1,LOW);

}

if(incomingByte ==‘w’){

digitalWrite(tree2,HIGH);

delay(150);

digitalWrite(tree2,LOW);

}

if(incomingByte ==‘e’){

digitalWrite(tree3,HIGH);

delay(150);

digitalWrite(tree3,LOW);

}

如果(incomingByte ==‘r’){

digitalWrite(tree4,HIGH);

delay(150);

digitalWrite( tree4,LOW);

}

if(incomi ngByte ==‘t’){

digitalWrite(tree5,HIGH);

delay(150);

digitalWrite(tree5,LOW);

}

if(incomingByte = =‘y’){

digitalWrite(tree6,HIGH);

delay(150);

digitalWrite(tree6,LOW);

}

if(incomingByte ==‘ s’){

digitalWrite(tree1,HIGH);

digitalWrite(tree2,HIGH);

delay(150);

digitalWrite(tree1,LOW);

digitalWrite(tree2,LOW );

}

if(incomingByte ==‘d’){

digitalWrite(tree2,HIGH);

digitalWrite(tree3,HIGH);

delay(150);

digitalWrite(tree2,LOW);

digitalWrite(tree3,LOW);

}

if(incomingByte ==‘f’){

digitalWrite(tree3,HIGH);

digitalWrite(tree4,HIGH);

延迟(150);

digitalWrite(tree3,LOW);

digitalWrite(tree4,LOW);

}

if(incomingByte == ‘g’){

digitalWrite(tree4,HIGH);

digitalWrite(tree5,HIGH);

delay(150);

digitalWrite(tree4,LOW);

digitalWrite(tree5, LOW);

}

如果(incomingByte ==‘h’){

digitalWrite(tree5,HIGH);

digitalWrite(tree6,HI GH);

延迟(150);

digitalWrite(tree5,LOW);

digitalWrite(tree6,LOW);

}

if(incomingByte ==‘u’) {

digitalWrite(tree1,HIGH);

digitalWrite(tree2,HIGH);

digitalWrite(tree5,HIGH);

digitalWrite(tree6,HIGH);

delay(150);

digitalWrite(tree1,LOW);

digitalWrite(tree2,LOW);

digitalWrite(tree5,LOW);

digitalWrite(tree6,LOW);

}

如果(incomingByte ==‘i’){

digitalWrite(tree1,HIGH);

digitalWrite(tree2,HIGH);

digitalWrite(tree4,HIGH);

digitalWrite(tree5,HIGH);

delay(150);

digitalWrite(tree1,LOW);

digitalWrite(tree2,LOW);

digitalWrite(tree4,LOW);

digitalWrite(tree5,LOW);

}

if(incomingByte ==‘j’){

digitalWrite(tree2,HIGH);

digitalWrite(tree3,HIGH);

digitalWrite(tree5,HIGH);

digitalWrite(tree6,HIGH);

delay(150);

digitalWrite(tree2,LOW);

digitalWrite(tree3,LOW);

digitalWrite(tree5,LOW);

digitalWrite( tree6,LOW);

}

if(incomingByte ==‘o’){ digitalWrite(tree5,HIGH);

digitalWrite(tree3,HIGH);

digitalWrite(tree4,HIGH);

delay(150);

digitalWrite(tree5,LOW);

digitalWrite(tree3,LOW);

digitalWrite(tree4,LOW);

}

if(incomingByte ==‘p’){

digitalWrite(tree2,HIGH);

digitalWrite(tree3,HIGH);

digitalWrite(tree4,HIGH);

delay(150);

digitalWrite(tree2,LOW);

digitalWrite(tree3,LOW);

digitalWrite( tree4,LOW);

}

如果(incomingByte ==‘b’){

digitalWrite(tree1,HIGH);

digitalWrite(tree6,HIGH);

delay( 150);

digitalWrite(tree1,LOW);

digitalWrite(tree6,LOW);

}

if(incomingByte ==‘c’){

digitalWrite(tree1, HIGH);

digitalWrite(tree3,HIGH);

delay(150);

digitalWrite(tree1,LOW);

digitalWrite(tree3,LOW);

}

如果( incomingByte ==‘v’){

digitalWrite(tree4,HIGH);

digitalWrite(tree6,HIGH);

delay(150);

digitalWrite(tree4,LOW);

digitalWrite (tree6,LOW);

}

如果(incomingByte ==‘a’){

digitalWrite (tree1,HIGH);

digitalWrite(tree2,HIGH);

digitalWrite(tree3,HIGH);

digitalWrite(tree4,HIGH);

digitalWrite(tree5,HIGH);

digitalWrite (tree6,HIGH);

delay(150);

digitalWrite(tree1,LOW);

digitalWrite(tree2,LOW);

digitalWrite(tree3,LOW);

digitalWrite(tree4 ,LOW);

digitalWrite(tree5,LOW);

digitalWrite(tree6,LOW);

}

}

}

第9步:显示时间!

showtime之前的步骤:

1。将代码上传到Arduino之后,通过USB将Arduino连接到计算机。

2。调高音量和扬声器。打开您要播放的歌曲。

3。启动继电器(主交流电源)。

4。打开名为高科技圣诞节1.0

5的程序。选择“ Arduino的串行端口”。 (如果您不知道端口是什么,请继续选择其他端口,直到您正确为止)

6。点击音乐上的“播放”。

开始按某些键!继续!

下面,我为键盘附上了一张图片,其中的选项卡可控制哪些继电器(指示灯)。

步骤10:自动化和其他构想

如果您是一个懒人,或者只是不喜欢一直控制灯光,则可以下载另一个程序来记录您键入的内容键盘并播放。

这称为“宏程序”。您可以获得类似 Blue Eye Macro 或 Avis Macro 之类的优质程序。

然后,在录制宏后,寻找“循环播放歌曲和宏,以便它们重复播放。

我还没有真正了解它,但是今年圣诞节我在使用Blue Eye Macro时没有任何问题。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led灯
    +关注

    关注

    22

    文章

    1592

    浏览量

    107803
  • Arduino
    +关注

    关注

    187

    文章

    6461

    浏览量

    186571
收藏 人收藏

    评论

    相关推荐

    计算机控制系统实践报告

    计算机控制技术实践报告
    发表于 10-17 13:45 0次下载

    微处理器如何控制计算机系统

    微处理器,作为计算机系统的核心部件,承担着控制整个计算机系统运行的重要任务。它不仅是计算机的运算中心,还是控制中心,负责执行程序指令、处理数
    的头像 发表于 08-22 14:21 435次阅读

    简述计算机的I/O控制方式

    计算机的I/O(输入/输出)控制方式是计算机系统中至关重要的部分,它决定了CPU与外设之间数据交换的方式和效率。随着计算机技术的不断发展,I/O控制
    的头像 发表于 08-20 10:55 634次阅读

    LED圣诞灯电路图 LED圣诞灯的工作原理和特点

    LED圣诞灯作为现代圣诞节装饰的重要组成部分,以其独特的魅力和优势,在全球范围内得到了广泛的应用和喜爱。
    的头像 发表于 07-02 17:15 1036次阅读
    LED<b class='flag-5'>圣诞灯</b>电路图 LED<b class='flag-5'>圣诞灯</b>的工作原理和特点

    计算机控制器的结构和功能

    随着信息技术的迅猛发展,计算机已经深入我们生活的方方面面。而计算机控制器,作为计算机系统的核心部件之一,承担着协调各部件工作、指挥整个计算机按程序运行的重要任务。本文将详细介绍
    的头像 发表于 06-17 15:47 1398次阅读

    工业控制计算机的体系结构是什么

    工业控制计算机是一种专门为工业自动化控制领域设计的计算机系统,具有高性能、高可靠性、实时性、可扩展性等特点。本文将详细介绍工业控制
    的头像 发表于 06-16 11:38 901次阅读

    工业控制计算机的硬件组成有哪些

    工业控制计算机(Industrial Personal Computer,IPC)是一种专门为工业环境设计的计算机系统,具有高可靠性、高稳定性、高实时性等特点。在工业自动化、智能制造等领域中,工业
    的头像 发表于 06-16 11:33 1424次阅读

    工业控制计算机的特点 工业控制计算机的应用领域

    工业控制计算机是一种专门为工业自动化和控制系统设计的计算机。它具有高度的可靠性、稳定性和实时性,能够满足工业生产过程中对控制精度和响应速度的
    的头像 发表于 06-16 11:30 1372次阅读

    工业控制计算机的特点和要求

    工业控制计算机是一种专门设计用于工业环境的计算机系统,它们在自动化、监控和控制工业生产过程中发挥着关键作用。由于工业环境的特殊性,工业控制
    的头像 发表于 06-11 10:48 1051次阅读

    工业控制计算机与普通个人计算机相比有何区别?

    引言 随着科技的不断发展,计算机在各个领域的应用越来越广泛。在众多计算机类型中,工业控制计算机和普通个人计算机是两种常见的
    的头像 发表于 06-11 10:45 849次阅读

    工业计算机与普通计算机的区别

    在信息化和自动化日益发展的今天,计算机已经成为了我们日常生活和工作中不可或缺的工具。然而,在计算机领域中,工业计算机和普通计算机虽然都具备基本的计算
    的头像 发表于 06-06 16:45 1157次阅读

    什么是工业控制计算机?它有哪些特点?

    在工业自动化与智能化不断发展的今天,工业控制计算机(Industrial Personal Computer,简称IPC)作为工业自动化系统的核心部件,发挥着至关重要的作用。本文将对工业控制
    的头像 发表于 06-06 16:34 1251次阅读

    【量子计算机重构未来 | 阅读体验】+ 初识量子计算机

    欣喜收到《量子计算机——重构未来》一书,感谢电子发烧友论坛提供了一个让我了解量子计算机的机会! 自己对电子计算机有点了解,但对量子计算机真是一无所知,只是听说过量子纠缠、超快的运算速
    发表于 03-05 17:37

    微机原理和计算机组成原理的区别

    来看微机原理和计算机组成原理的区别。微机原理是指微型计算机的工作原理,主要包括计算机的基本组成和运行原理,如中央处理器(CPU)、存储器、输入输出设备等,以及它们之间的连接方式和控制
    的头像 发表于 01-14 14:56 3128次阅读

    工业计算机与商用计算机的区别

    与商用计算机的区别。 一、功能和设计 工业计算机通常用于工业控制和自动化系统中,其主要功能是提供数据采集、实时控制和监测等功能。它们通常需要具备高可靠性、稳定性和冗余性,以适应恶劣的工
    的头像 发表于 12-27 10:50 588次阅读