步骤1:设计原理
从框图中可以看出,“大脑”是AVR微控制器,而所有其他部分都由这个“大脑”控制。为了整理我们的想法,让我们一块一块地描述设计:
电源单元:所选设备的电源是LED灯条PSU,能够为系统提供24VDC输入。微控制器,继电器,数字电位器和音频放大器都工作在5V,因此DC-DC降压转换器被添加到设计中。 DC-DC代替线性稳压器的主要原因是功耗和效率不足。假设我们使用具有24V输入和5V输出的经典LM7805。当电流达到显着值时,线性稳压器上以热量形式消散的功率将会很大并且可能会过热,从而将嗡嗡声附加到音频电路:
Pout = Pin + Pdiss,所以在1A我们实现:Pdiss = Pin - Pout = 24 * 1 - 5 * 1 = 19W(耗散功率)。
微控制器:按顺序为了尽可能快地编写代码,我选择了基于AVR的ATMEGA328P,它广泛用于Arduino UNO板。根据设计要求,我们将使用几乎所有的外设支持:中断,定时器,UART,SPI等。由于它是系统中的主要块,因此它与设备中的所有部件互连。
用户界面:设备的前面板包含用户应与之交互的所有部分:
按钮:将IR遥控器与设备配对需要
LCD :设备内部图像的图示
监视器控制:为了使设备能够在PC监视器上切换电源,需要处理很大的电压值。例如,我的三星显示器根本不共享电源配置:一个由220VAC供电,而另一个由其自己的19.8V PSU供电。因此,解决方案是针对每条监控电源线的继电器电路。这些继电器由MCU控制并完全分离,这使得监视器电源传输对每个监视器都是独立的。
灯光控制:我有一个LED灯条,附带24VDC的附加电源,用作系统电源输入。由于需要通过LED灯条传导大电流,其亮度机制包括一个基于MOSFET的限流器电路,该电路工作在有源区的线性区域。
音量控制:此系统基于通过分压器在左声道和右声道上传递音频信号,其中施加的电压通过数字电位器刮水器移动而改变。有两个LM386基本电路,每个输入端都有一个分压器(我们稍后会介绍)。输入和输出是3.5mm立体声插孔。
似乎我们已经涵盖了电路的所有组成部分。让我们继续电气原理图。..。..
第2步:零件和仪器
构建项目所需的一切:
电子元件
通用元件:
电阻器:
6 x 10K
1 x 180R
2 x 100R
1 x 1K
2 x 1M
2 x 10R
电容器:
1 x 68nF
2 x 10uF
4 x 100nF
2 x 50nF
3 x 47uF
其他:
二极管:2 x 1N4007
微调:1 x 10K
BJT:3 x 2N2222A
P-MOSFET:ZVP4424
集成电路:
MCU:1 x ATMEGA328P
音频放大器:2 x LM386
双数字电位器:1 x MCP4261
单数字电位器:1 x X9C104P
DC-DC:1 x BCM25335(可由任何DC-DC 5V友好型设备代替)
运算放大器:1 x LM358
继电器:5V容差双SPDT
外部24V电源
用户界面:
LCD:1 x 1604A
红外传感器:1 x CDS-IR
按钮:1 x SPST
LED:1 x RGB LED(4个触点)
连接器:
接线端子:7 x 2触点TB
板对线连接器:3 x 4触点电缆+外壳连接器
音频:2 x 3.5mm母插孔连接器\
插座PSU:2 x 220VAC电源连接器(公头)
DC插孔:2 x公头DC插孔连接器
LED灯条和外部电源:1 x 4触点板对线组装连接器+电缆
机械组件
3D打印机灯丝 - 任何颜色的PLA +
4毫米直径的螺丝
至少9 x 15厘米原型板
未使用电线的库存
工具
3D打印机(我使用附带玻璃床的Creality Ender 3)
热胶枪
镊子
钳子
切割器
外部24V电源
示波器(可选)
AVR ISP编程器(用于MCU闪烁)
电动螺丝刀
烙铁
函数发生器(可选)
第3步:E lectrical Schematics
原理图分为独立电路,使我们更容易理解其操作:
微控制器单元
这是基于AVR的ATMEGA328P,如上所述。它使用内部振荡器,工作频率为8MHz。 J13是编程器连接器。 AVR世界中有很多程序员,在这个项目中,我使用了来自eBay的ISP Programmer V2.0。 J10是UART TX线,主要用于调试目的。在构建中断处理程序时,有时很高兴知道系统必须从内部告诉我们什么。 D4是RGB LED,由于其低额定电流而直接由MCU驱动。 PD0引脚通过外部上拉连接到SPST型按钮。
红外传感器
本项目中使用的红外传感器是一种通用的三针红外传感器,可在eBay上以非常友好的价格购买。 IR输出信号引脚连接到MCU的中断输入引脚(INT1),
LCD
显示是1604A显示器的简单实现,具有4位数据传输。所有控制/数据引脚都连接到MCU。重要的是要注意,LCD通过两个连接器J17,J18连接到主板上。为了开启/关闭LCD模块,有一个BJT开关,用于LCD的开关接地线。
电源
除LED灯条外的所有内部电路都在5V。如前所述,5V电源是一个简单的DC-DC模块(这里eBay帮我找到了解决方案),将24V转换为5V,没有发热问题,这可能发生在线性稳压器上。电容器C [11..14]用于旁路,并且由于DC-DC电源线上的开关噪声(输入和输出),此设计是必需的。
监控器控制
监控控制电路只是一个继电器开关系统。由于我有两个显示器,一个来自220VAC,第二个来自19.8V,需要不同的实现:每个MCU输出连接到2N2222 BJT,继电器线圈作为负载从5V连接到BJT集电极的引脚。 (不要忘记安装反向二极管以实现适当的电流放电!)。在220VAC,继电器切换LINE和NEUTRAL线路,在19.8V时,继电器仅切换直流电源线 - 因为它有自己的电源,地线共用于两个电路。
音频音量控制
我想使用LM386音频放大器作为分压器的缓冲器,以便仔细传输音频信号。每个通道 - 左和右来自3.5mm音频插孔输入。由于LM386在最小器件配置下实现了标准增益G = 20,因此两个通道都有一个1M欧姆的电阻。通过这种方式,我们可以减少扬声器系统输入通道的总功率:
V(输出 - 最大值)= R(最大值)* V(输入)/(R(最大值)+ 1MOhm )= V(in)* 100K/1.1M。
总增益为:G =(Vout/Vin)* 20 = 20/11~1.9
分压器是一个简单的数字电位器网络,其中抽头将信号传递到LM386缓冲器(U2是IC)。器件为所有外围电路共享SPI,其中每个外围电路仅分开ENABLE线。 MCP4261是一款100K 8位线性数字电位器IC,因此体积增加的每一步都表示为:dR = 100,000/256~390Ohm。
每个LEFT和RIGHT通道的引脚A和B都连接到GND和5V。因此,在底部的游标位置,通过1MOhm电阻MUTING设备的音量将整个音频信号传递给GND。
LED灯条亮度控制:
亮度控制的想法类似于音量控制,但这里我们有一个问题:数字电位器可能只传输幅度不超过5V的信号到GND。因此,我们的想法是在数字电位器分压器之后放置一个简单的运算放大器缓冲器(LM358)。控制电压直接连接到PMOS晶体管。
X9C104P是一个100KOhm的8位数字电位器。我们可以仅根据电流的代数规则获得栅极电压的计算:
V(栅极)= V(抽头)*(1 + R10/R11)= 2V(抽头)~0 - 10V(这足以打开/关闭并控制亮度。
步骤4:创建3D机箱
对于设备机箱,我用过一个FreeCAD v0.18,即使像我这样的新手也是一个很棒的工具。
机箱类型
我想创建一个盒子,其中有一个外壳可以焊接焊接板。前面板包含所有用户界面部件,后面板包含桌面电子设备的所有连接器。这些面板直接插入主壳体,顶盖上有一个4螺钉组件。
尺寸
可能是序列中最重要的一步。需要考虑所有适当的距离和截止区域。如图所示,首先所采取的尺寸在前面板和后面板上:
前面板:LCD,开关,LED和红外传感器的截止区域。所有这些尺寸均来自每个零件的制造商数据表。 (如果您希望使用不同的部件,则需要确保所有切割区域。
后面板:两个用于3.5mm音频插孔的孔,两个220V三线电源连接器,两个用于直流电源的公插孔以及用于LED灯条和电源到设备的附加孔
顶壳:此外壳仅用于将所有部件连接在一起。由于前面板和后面板插入底壳。
底壳:设备的底座。它可以固定面板,电子焊接板和固定在顶盖上的螺钉。
设计零件
创建面板后,我们可以继续进行底壳。建议在每一步后确保完全容纳零件。底壳是一个简单的矩形挤压形状,在壳体边缘附近有对称的口袋(见图4)。
在凹陷步骤之后,需要为盖子附件创建一个4螺钉底座。它们被设计为插入不同半径的原始圆柱体,在XOR操作后可以使用切割圆柱体。
现在我们有一个完整的底壳。为了创建一个合适的盖子,需要在外壳的顶部做一个草图,并创建相同的圆柱点(我只是附加点到钻头,但有可能创建固定直径的孔)。
整个设备外壳完成后,我们可以通过将这些部件组装在一起进行检查。
步骤5:3D打印
最后,我们在这里,并且可以前进到打印。根据我的设计,有可用于此项目的STL文件。这些文件可能存在打印问题,因为没有考虑到容差。可以在切片器应用程序(我使用Ultimaker Cura)中为STL文件调整这些公差。
所描述的部件印在Creality Ender 3上,带有玻璃床。条件与标准条件相差无几,但应考虑到:
喷嘴直径:0.4mm
填充密度:50%
支撑:根本不需要支撑附件
推荐速度:项目的速度为50毫米/秒
一旦打印了外壳部件,就需要在现实生活中检查它们。如果连接外壳部件没有任何问题,我们可以继续进行组装和焊接步骤。
在instructables中STL查看器存在一些问题,所以我建议先下载它:)
第6步:装配和焊接
焊接过程非常严格,但如果我们将序列分成不同的电路,那么我们就可以更轻松地完成它。
MCU电路:应首先使用其母编程连接器进行焊接。在那个阶段,我们实际上可以测试它的操作和连接。
音频电路:第二个。不要忘记在焊接板上安装接线端子。将音频电路的返回路径与数字电路的返回路径隔离是非常重要的 - 尤其是数字电位器IC,因为它们具有噪声特性。
监听电路:与音频电路类似,不要忘记连接终端在I/O端口阻塞。
连接器和UI面板:应该连接的最后一些东西。用户界面面板通过Board-To-Wire连接器连接到焊接板,其中导线直接焊接到外部部件。
焊接过程后,有一个简单的机械序列零件附件。如上所述,需要在外壳上放置4个螺钉(我使用直径为5mm的螺钉)。之后,需要将UI部件和后面板连接器连接到外部世界。首选工具是热胶枪。
检查印刷外壳中的零件是否非常有用。如果一切正常,我们可以继续编程步骤。
第7步:编程
这一步很有趣。由于需要操作各种各样的东西,我们将使用总共5种MCU服务:外部中断,SPI外设,用于记录的UART,用于精确计数的定时器和用于存储IR远程代码的EEPROM。
EEPROM是我们存储数据的必备工具。为了存储IR远程代码,需要执行一系列按下按钮。每个序列系统都会记住与状态无关的代码。无论设备是否供电。
您可以在此步骤的底部找到归档为RAR的整个Atmel Studio 7项目。
编程由AVR ISP Programmer V2,0通过名为ProgISP的简单应用程序完成。这是一个非常友好的应用程序,具有完整的用户界面。只需选择正确的HEX文件并将其下载到MCU即可。
重要事项:在对MCU进行任何编程之前,请确保根据设计要求定义了所有适当的设置。与内部时钟频率一样 - 默认情况下,它的分频器熔丝在出厂设置时有效,因此必须将其编程为逻辑高电平。
步骤8:配对和测试
经过所有艰苦的工作后,我们终于来到了这里:)
In为了正确使用该设备,需要配对序列,因此设备将“记住”将使用的附加IR遥控器。配对的步骤如下:
打开设备,等待主UI显示初始化
第一次按下按钮
在计数器到达零之前,再次按下按钮
根据设备按下您想要具有特定功能的相应键
重启设备,确保它现在响应已定义。
-
遥控
+关注
关注
11文章
285浏览量
57433
发布评论请先 登录
相关推荐
评论