【项目分享】一款与众不同的智能家庭音乐系统

 

分享自爱板网论坛,请您查看...

《贸泽电子智造创新大赛》

优胜奖 作品


▌项目概述

本系统基于NXP的LPC54608和SiliconLab的Thunderboard开发板,实现了一个智能家庭音乐系统,可以使用Android手机APP搜索网易音乐,并将控制音箱播放网易音乐的流媒体音乐。

这个系统带有一块LCD显示界面,可以显示当前日期时间,天气预报,并可以实时显示当前家庭环境的传感器参数,如污染物浓度,二氧化碳浓度,噪声指数,温度,湿度等信息。

通过软件升级,可以后续扩展为智能家居系统的中枢,通过网络,蓝牙亦或是Thread协议控制家庭物联设备,如电灯,冰箱等。

整个设计过程包括硬件系统设计,包括功放板卡,喇叭等采购,软件系统设计包括android手机app开发,LPC54608系统软件设计,Thunder Board Sense系统Firmware软件开发。此外还需要制作音箱箱体并组装。
▌系统硬件设计

本系统完全采用现成的模块搭建而成,LPC54608+ThunderBoard Sense + Yamaha音频功放小板+4寸扬声器喇叭,系统的整体结构示意图如下:
△ 音频播放系统整体结构示意图


▌软件系统设计

本系统软件部分分为三个子部分,分别为LPC54608系统Firmware开发,手机控制软件Android APP开发,Thunder Board Sense系统Firmware开发。

▌系统创新

本系统的创意创新之处在于,在音箱中集成了多种传感器和LCD显示,使之不仅仅局限于听音乐,还可以作为一个智能家居的载体和中枢。软件上的创新在于在LPC上实现了网络音乐播放和环境参数的实时显示的功能,通过提供统一的接口,方便的进行音乐播放设置和控制。

▌作品实物图


▌评测与结论

整个系统的环境搭建要求如下:

1,LPC54608的电源采用USB POWER端口供电,Thunder Board的供电使用LPC54608的3.3v输出(接到Thunderboard的VMCU引脚);YAMAHA音频功放板卡采用12V5A电源供电。

2,把Thunder board的UART TX和RX分别接到LPC54608的UART4(JP13, D1, D2)

3,用一根音频线,两端分别连接YAMAHA音频功放子卡和LPC54608的audio out接口。

4,网线一端连接LPC54608的网口,一端接路由器。手机通过WiFi连接到同一个路由器下。使用手机APP搜索想要播放的歌曲名称,点击结果中的某一项,音箱即可播放。

由于个人精力和时间有限,以及LPC54608的处理能力不足,只是实现了部分功能。原本设想的是通过网易云音乐获取音乐数据流,已经成功hack了网易云音乐的API, 解析出mp3音乐源地址(https连接),并通过电脑浏览器连接和播放音频,但是因为LPC54608处理器处理能力问题,加入mbedTLS之后基本再无额外资源来做mp3解码和emwin界面显示而放弃,改为本地http服务器。理论上只要找到网络上合适的http格式的MP3源地址,还是可以通过本系统播放出来的。

另外目前暂未实现局域网IP地址的DHCP和广播监听功能,只是固定为192.168.0.128,手机端APP的命令也只是定向发送到这个地址。

Thunder Board Sense的输出已经调通,预先设计的是通过UART发送特定格式的字符串,LPC54608将其解析出来得到各种传感器参数,也因为时间问题,LPC54608一端没有实现。

由于LPC的性能问题,目前还不能在emwin界面开启的情况下播放歌曲,由于使用的是http边下载边解码边播放的方式,并且I2S输出使用polling的方式,播放的时候会有一些杂音。还有一定可以改进的空间。可以使用DMA方式,并且在Cache音频MP3数据,待完全download之后,再使用libmad解码,这样音质应该会有一个比较好的改善,对系统的负载也会减轻不少。

▌动态演示
点击“阅读原文”可获得以下资源
演示视频、项目文档、源代码、与原作者交流
END






欢迎加入微信群

加入与非社群,找到同道,一起切磋技艺、化解难题。当然还有不定期的红包雨等着你哦!



添加小编微信后,回复对应关键词+公司+岗位,方可被拉入社群,否则一律禁止入群,每人只可申请一个技术群。

关键词:嵌入式、模拟、人工智能、RF、传感器、汽车电子、物联网、IC设计、EDA、PCB、开源硬件、树莓派。


    关注 爱板网


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册