版本协议

GPL 3.0

标签
标准版
#第七届立创电赛#基于ESP32的智能音箱

创建时间:1年前

视频

  • QQ空间视频_202207160016391657901799047.mp4

  • QQ空间视频_202207160015461657901746253.mp4

描述

<h3 style="line-height: 1.8;">* 1、项目功能介绍</h3> <hr> <p style="line-height: 1.8;">家里的功放不是智能的,每次想听歌的时候都得自己手动打开,很麻烦;还有一个小度音箱,听歌很方便,功能也很强大,唯一不足的是音箱效果一般,而且是单声道的。因此,突然有了制作了一个智能音箱的想法,集成功放和离线语音控制的音乐播放电路,既能播放MP3也能播放手机蓝牙歌曲,还能控制家里的红外遥控的电器、播报室内的温湿度,还能控制音乐节奏灯,听歌的时候更有感觉。</p> <p style="line-height: 1.8;">电路采用上下两层板设计,下层功放板,上层主控板,功放带两个15W的全频喇叭,外置一个音乐节奏灯和红外发射和温湿度模块电路。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;">主要功能:</p> <p style="line-height: 1.8;">1.语音红外遥控,控制空调、风扇、电视机顶盒等设备;</p> <p style="line-height: 1.8;">2.采集室内温湿度,语音播报;</p> <p style="line-height: 1.8;">3.语音控制功放电源、功放静音;</p> <p style="line-height: 1.8;">4.语音控制MP3模块,播放、暂停、停止、上一曲、下一曲、切换播放模式、切换音效、改变音量等;</p> <p style="line-height: 1.8;">5.语音控制蓝牙模块,打开关闭蓝牙、播放、暂停、上一曲、下一曲、音乐声音+、音乐声音-;</p> <p style="line-height: 1.8;">6.音频输出自动切换、手动切换;</p> <p style="line-height: 1.8;">7.语音控制音乐节奏灯电源、灯光模式等功能;</p> <p style="line-height: 1.8;">8.接入blinker,手机远程控制以上所有功能;</p> <p style="line-height: 1.8;">9.其它功能后续再慢慢加。</p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/ilGLJGEYDZlBmQ1iNQeeiB1UU06NQl9evLxefgS9.jpeg" alt="" width="751" height="563"></p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/IXdvWoJmEEO4iIZqV4CXZ3g9VvfgObtYLmyW6rGk.jpeg" alt="" width="328" height="711">APP用的点灯,还有空调控制的按钮还没加上去,实际程序里已经写了,一共26个按键,2个滑动条,一个图表,感觉这个界面放不下,只能舍弃一些功能。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">注:主题不限,可以是解决生活/工作中的某个问题、为某个人群/场景设计的方案、毕业设计/课程设计/DIY项目/纯属炫酷项目等。主要讲一下自己通过什么手段解决了什么问题。</span></p> <p style="line-height: 1.8;"> </p> <h3 style="line-height: 1.8;">*2、项目属性</h3> <hr> <p style="line-height: 1.8;">第一版的设计还存在很多问题,主要是本人水平有限,程序也写的很烂,都是借鉴网上其他大佬的,东平西凑的。不过最终还是实现了预期的功能,后期再慢慢改进吧;</p> <p style="line-height: 1.8;">实际使用中会有个问题,如果音乐声太大,语音很难被识别,这时可以使用手机来控制。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">注:请说明项目是否首次公开;项目是否为原创;项目是否曾经在其他比赛中获奖,若有获奖则叙述获奖详情;项目是否在学校参加过答辩。</span></p> <p style="line-height: 1.8;"> </p> <h3 style="line-height: 1.8;">* 3、开源协议</h3> <hr> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">请输入内容…</span></p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">注:利他即利己,请认真阅读下述内容。</span></p> <ol style="line-height: 1.8;"> <li style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">拥抱开源,赋予项目无限价值。建议项目核心功能开源80%以上;</span></li> <li style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">若某一部分功能不可替代且删掉之后项目无法解决对应的问题,则这一部分实现的功能就是项目的核心功能;比如设计了一台电子负载且设计了一款上位机软件监控功率变化,则电子负载为核心功能,上位机软件为辅助功能;比如电子负载中使用了一款隔离485模块与上位机通信,则此485模块实现的通讯功能为辅助功能;</span></li> <li style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">项目应选择适合自己的<span style="text-decoration: underline;"><a href="/posts/98fdb2accd754af7b51990790db3b47a" target="_blank">开源协议</a></span>,若项目引用其他开源项目,应注明来源并遵循原作者的开源协议规定;原创项目推荐使用GPL3.0开源协议;</span></li> <li style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">直接引用开源项目的原电路或原代码实现的功能不可作为自己项目的核心功能、使用市场上通用模块直接实现的功能不可作为自己项目的核心功能。</span></li> </ol> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><strong><span style="color: #0093e6;">请在竞赛阶段填写 ↓</span></strong></p> <p style="line-height: 1.8;"> </p> <h3 style="line-height: 1.8;">*4、硬件部分</h3> <hr> <p style="line-height: 1.8;">主控板:主要包含ESP32S、MP3音乐模块、M18蓝牙音频模块、VCT1离线语音模块。MP3音乐模块和M18蓝牙音频模块的音频连接CD4052BM多路复用芯片,公共输出端通过音频插头或者连线接到功放板的内部音频输入接口。通过控制CD4052BM的A B引脚的高低电平来输出MP3音乐模块或者M18蓝牙音频模块的音频。</p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/tHSQtf6vzfnIcTp9CdnMaNdfSH7vKK2buxf0kM3a.jpeg" alt="" width="826" height="620"></p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/Es8ls2vp3h6ZopnY8ybImdSKBw4hxN6fcHxo142Q.png"></p> <p style="line-height: 1.8;">电源部分采用LM2596S-5.0,输入电压18V,输出5V,输出电流最大可达3A(也许有人会问为什么不用LDO,因为输出电流不够,而且发热比较严重),使用DC-DC有个问题,对音频电路会产生影响,解决办法只能是多加滤波电容。一开始设计的时候考虑不周,滤波做的不够。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/LHGN4n0b6nFrhCA4qYmve262rI4enR0Xyo2UEbba.png"></p> <p style="line-height: 1.8;">VCT1离线语音模块的PWM4 和PWM5输出高低电平用来控制功放的电源和静音。语音命令通过模块的串口1和ESP32通信,麦克风直接焊在板子上,模块使用一个8欧姆2瓦的喇叭用来语音播报。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/cqNGTfCX5CJoZ7DAxmqkGaPlGXo7YBZ3uEW6wOMO.png"></p> <p style="line-height: 1.8;">MP3音频模块电路设计有点问题,实际电路取消了电源控制电路,直接将5V电源短接到模块电源5V正极。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/RRh2AfP4O4QMowhMFYxUtw1OLbpvdPTFE646EKdI.png"></p> <p style="line-height: 1.8;">M18蓝牙音频模块需要用按键或者手机来控制,这里我使用一组三极管电路来模拟按键,通过ESP32四路IO来控制。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/oqAB8JQDDBUscbLlpMJpzNaAWT7e75EqUjgIu5cA.png"></p> <p style="line-height: 1.8;">CD4052BM实际可以输入4路,这里只是用了两路。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/h8ojNkxzhUTKGNbVbfq2B1pwHJ2diC3XZ1xBd6cX.png" width="228" height="224"></p> <p style="line-height: 1.8;">预留了SPI屏幕接口,暂时还没用,后期可以把屏幕加上去。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/hLdkE2yobrsnSyZYZ5K7THyVucWyjSFjwQomIIAL.png" width="756" height="556"></p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/NX6z85QtlYQwvirZ7Fc5atdQyWGto9OWbEWPYuip.jpeg" alt="" width="540" height="405"></p> <p style="line-height: 1.8;">将红外发射电路和温湿度传感器引出,方便安装在外壳上,同时也防止电路发热对温湿度传感器有影响。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/FolxcpHTgHAcpyFgrTk3XNFLr8aqxAQLopvUPKsJ.png" width="533" height="628"><img src="//image.lceda.cn/pullimage/4oqqx5qrCYDte0cbBOc3SUuE4qxXhCpPiHEsrSxj.png" width="500" height="229">音乐节奏灯本来一开始准备自己做一个,电路上已经预留了输出接口,后来发现效果不如淘宝上10块钱的节奏灯,干脆直接改装一下算了。和蓝牙音频模块的控制原理一样,只需将P1、P2、P3通过导线连接到节奏灯三个按键其中一个引脚上(不是接地的引脚,自己用万用表测),IN1、IN2、IN3引出接到ESP32的IO口,+5V、GND引出接到主控板,用来给节奏灯供电。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;">功放板:音频功率放大器采用TPA3116D2DAD,前级采用NE5532放大电路。功放音频输入可采用外部输入(外部音频插头)或者内部输入(主控板音频输出线),具体由双排两档开关来控制。</p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/58qHOuyUGyHoa8gy7ws3NW75yelkVE6RxTnIckCo.jpeg" alt="" width="567" height="425"></p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/UdljrpB6gyhrWpDjujcuETidVDNK9dvihTx8ExpR.png" width="794" height="569"></p> <p style="line-height: 1.8;">功放电源采用MOS管控制,引出了功放电源控制和功放静音控制接口</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/MwUEQlwwfeuO2Vy1bUP87hETHYZMQDdGwnD6v7wi.jpeg" alt="" width="686" height="515"></p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/9zQ7bmklfwuqtQrgpGJwgSc4G0jGrie5lsBVXsqh.jpeg" alt="" width="684" height="513">第一版引脚分配的不合理,MP3音频模块的串口和CH340共用了,导致不能正常通信,后来改用IO21和IO22了。将原来的IO15和IO19/MISO引出来控制音乐节奏灯,所以图上很多线,后期有时间再重新调整一下。</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"> </p> <h3 style="line-height: 1.8;">*5、软件部分</h3> <hr> <p style="line-height: 1.8;">ESP32的程序在附件里。</p> <p style="line-height: 1.8;">离线语音模块的程序需要将PWM4 和PWM5引脚作为普通IO口输出高低电平</p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6;"><span style="font-size: 14px;"><img src="//image.lceda.cn/pullimage/w0bCiyMNBqrfuOQCnPe4F4yXSoLCkVJj4RpRpNjt.png"></span></span></p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><img src="//image.lceda.cn/pullimage/ul8nwPFA5KP9P3pTLQoOLoUNDV49DVypYleGl11O.png"></p> <p style="line-height: 1.8;">主程序里根据命令词的语义ID来确定哪个IO口控制什么,输出高电平还是低电平。</p> <h3 style="line-height: 1.8;">*6、BOM清单</h3> <hr> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">请输入内容…</span></p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">注:项目涉及的BOM清单。这个位置请上传BOM的截图。清单详情请以PDF的格式上传到附件中。建议包括型号、品牌、名称、封装、采购渠道、用途等内容。具体内容和形式应以表达清楚项目构成为准。</span></p> <p style="line-height: 1.8;"> </p> <h3 style="line-height: 1.8;">*7、大赛LOGO验证</h3> <hr> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">请上传包含大赛logo的项目图片,logo以丝印形式印刷在PCB上面。</span></p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">点击zip下载大赛logo标识! <span style="text-decoration: underline;"><a href="https://image.lceda.cn/easyedaResource/images/%E7%AB%8B%E5%88%9B%E7%94%B5%E8%B5%9B%E6%A0%87%E8%AF%86.rar" target="_blank">(大赛标识).zip</a></span></span></p> <p style="line-height: 1.8;"> </p> <h3 style="line-height: 1.8;">* 8、演示您的项目并录制成视频上传</h3> <hr> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">视频要求:请横屏拍摄,分辨率不低于1280×720,格式Mp4/Mov,单个视频大小限100M内;</span></p> <p style="line-height: 1.8;"><span style="color: #95a5a6; font-size: 14px;">视频标题:立创电赛:{项目名称}-{视频模块名称};如立创电赛:《自动驾驶》-团队介绍。</span></p> <p style="line-height: 1.8;"> </p> <p style="line-height: 1.8;"><span style="font-size: 14px;">更多详情:<a href="/posts/06c94d90c2c447dfbd9ed7339ff4a5b1" target="_blank">https://diy.szlcsc.com/posts/d76d9cb41705430e9a54e7a5feed07a5</a></span></p> <p style="line-height: 1.8;"> </p>
  • VID_20220724_211243.mp4

  • QQ空间视频_202207242149041658670544925.mp4

文档

基于TPA3116的功放板

PCB_#第七届立创电赛#基于TPA3116的功放板

ESP32_语音控制的蓝牙MP3播放器

PCB_ESP32语音控制的蓝牙MP3播放器

BOM

ID Name Designator Footprint Quantity
1 PJ-3210-4A AUDIO1 AUDIO_TH_PJ-3210-4A 1
2 1uF C5,C6,C7,C8,C25,C27,C29,C30 C0805 8
3 220uF C9 CAP-TH_BD6.3-P2.50-D1.0-FD 1
4 100nF C10,C12,C14,C19,C36 C0805 5
5 47uF C11 CAP-TH_BD6.3-P2.50-D1.0-FD 1
6 10uF C13 C0805 1
7 680nF C15,C22,C32,C39 C0805 4
8 1nF C16,C18,C23,C33,C35,C40 C0805 6
9 10nF C17,C21,C34,C38 C0805 4
10 470uF C20,C37 CAP-TH_BD8.0-P3.50-D0.6-FD 2
11 220nF C24,C26,C28,C31 C0805 4
12 A2001WV-3P CN1,CN2 CONN-TH_A2001WV-3P 2
13 SS54_C16103 D2 SMC_L7.1-W6.2-LS8.1-RD 1
14 DSS14 D8,D9 SOD-123_L2.7-W1.6-LS3.7-RD 2
15 DC-005-2.5A-2.0 DC1 CONN-TH_DC-005-2.5A-2.0 1
16 10uH L1,L2,L3,L4 IND-SMD_L7.0-W6.6 4
17 DG127-5.08 OUT_L,OUT_R CONN-TH_DG127-5.08-02P-14-02A 2
18 0805_red POW LED0805-RD 1
19 AO3400A Q1 SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR 1
20 WST4045 Q3 SOT-23-3_L2.9-W1.6-P1.90-LS2.8-BR 1
21 20K R1,R6,R18 R0805 3
22 10K R2,R4,R7,R8,R10,R21,R22 R0805 7
23 0 R3,R11 R0805 2
24 RK09712200MY R5 RES-ADJ-TH_RK09712200MY 1
25 100K R9,R12,R14,R17,R20,R23 R0805 6
26 3.3 R13,R15,R19,R24 R0805 4
27 51K R16 R0805 1
28 MK-22D14-G020 SW1 SW-TH_MK-22D14-G020 1
29 M3铜柱 TP1,TP2,TP3,TP4 M3螺丝孔 4
30 X8821WV-02K-N0SN U1 CONN-TH_2P-P2.50_X8821WV-02K-N0SN 1
31 CJ7812 3% U5 TO-252-2_L6.5-W6.1-P4.58-LS10.0-TL 1
32 TPA3116D2DAD U7 HTSSOP-32_L11.0-W6.1-P0.65-LS8.1-BL 1
33 NE5532P U2,U4 DIP-8_L9.4-W6.4-P2.54-LS9.1-BL 2

附件

附件名 下载
ESP32_MP3_MUSIC_BOX_BLINKER_202207010_001.rar
播报词列表_离线语音MP3播放器 - 20220703.xlsx
命令词列表_离线语音MP3播放器 - 20220703.xlsx
VID_20220724_211243.mp4
QQ空间视频_202207242149041658670544925.mp4

评论(28)

  • 表情
    emoji
    小嘉工作篇
    小嘉日常篇
  • 图片
成功
工程所有者当前已关闭评论
立创电赛 回复
<p>实物板子上的立创电赛logo,记得拍照上传哦~</p>
myself1820 回复
<p>上传的图片里面有哦</p>
立创电赛 回复
<p>@myself1820 看到看到</p>
nbyzs 回复
<p>我有个差不多的有兴趣合作一下吗</p>
myself1820 回复
<p>@nbyzs 怎么合作?可以加我QQ联系(24906604)</p>
jameschine 回复
<p>还以为ESP32实现智能语音识别(</p>
myself1820 回复
<p>@jameschine 水平有限,<span class="colour" style="color: rgb(85, 85, 85);">ESP32实现智能语音识别对我来说难度太大了,只能基于现有的模块来实现</span></p>
tttttest 回复
<p>老板,<code>vct1</code>哪里买啊?tuya已经买不到了,其他元件都买完发现这玩意儿买不到\哭</p>
myself1820 回复
<p>呃。VCT1貌似停产了,你可以买CI-C22GS02S单麦离线语音识别贴片模块,功能一样的,不过封装不一样,PCB电路需要改动。</p>
tttttest 回复
<p>好的,多谢了。那软件部分需要改吗?硬件部分老哥你会更新吗?不更新的话我就直接飞线了/笑哭</p>
myself1820 回复
<p>软件部分基本不需要改,硬件部分等我有时间了再更新吧,最近工作实在太忙了,没有时间画板子。到时我重新画个基于CI-C22GS02S的板子,语音模块的固件到时改好后我也一并发上来。时间可能会有点久,耐心等待一下。</p>
tttttest 回复
<p>好的,多谢了老哥。那我就不焊了,等新版本</p>
HWH153 回复
<p>你好,想请问一下M18蓝牙音频模块和CD4052BM多路复用芯片是为了设计什么功能的呀?</p>
myself1820 回复
<p>用于音频输出切换</p>
HWH153 回复
<p>是什么转换啊 我没想通 VC芯片不是自带喇叭嘛</p>
myself1820 回复
<p>蓝牙音频和MP3音频通过CD4052BM二选一输出给功放</p>
HWH153 回复
<p>请问蓝牙音频是播报蓝牙链接蓝牙断开什么的嘛,可以接入VC的喇叭嘛</p>
myself1820 回复
<p>我说的蓝牙音频是指的蓝牙模块输出的音频,这个音频来自于手机,蓝牙音频模块接收到之后输出给CD4052,CD4052再输出给功放,VC模块已经内置音频放大芯片了,不能直接接入功放。</p>
HWH153 回复
<p>懂了 感谢</p>
Baymax 回复
<p>这个灯条是成品还是设计的呀 没看到相关电路诶</p>
myself1820 回复
<p>灯条是买的成品,改了内部电路,将三个按键的两端引出来做了一个小控制板,用ESP32的3个IO口控制。控制板的原理很简单,就是控制三极管导通,将按键两端接通。</p>
allen-lu 回复
<p>请问一下为啥不用ESP32的音频模块来输出I2S然后再解码AUDIO啊</p>
myself1820 回复
<p>额,这个我不会</p>
Baymax 回复
<p>好的 谢谢您的解答</p>
hjwahaha 回复
<p>没啥好说的,点个赞,太牛了</p>
unicor.n 回复
<p>有新版吗</p>
立创电赛 回复
<p>本项目《基于ESP32的智能音箱》在第七届立创电赛中荣获三等奖!</p>
ayangon 回复
<p>加你qq可以教教我吗~<br/>qwq</p>
goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow