一、项目功能介绍
本作品是一款放置在家中的智能空调伴侣,旨在用户家中传统的空调实现智能控制。智能伴侣以瑞萨R7FA2E1A72DFL作为主控,利用温湿度传感器单元、WiFi数据传输单元、红外收发单元、语音单元、LCD显示单元等进行智能控制,实现了室内温湿度采集、实时天气预报、空调工作状态设置、语音识别、语音播报、LCD显示等功能。
产品具体特性如下:
USB接口,5V,1A供电
2.4寸LCD屏显示功能,显示室内温湿度以及室外天气情况
实时天气预报功能,每半小时更新一次室外天气
室内温湿度采集功能,湿度精度±2%,温度精度±0.5℃
云端功能设置,可通过微信小程序对空调工作状态进行远程设置
语音识别功能,可识别唤醒词、天气预报、室内湿度、室内温度、空调温度增减等关键词,并进行相应设置
语音播报功能,可播报当前室内温湿度以及天气情况
更多特性演示可以参考下方视频。
点击查看视频
本项目硬件部分100%使用立创EDA进行设计。
本项目软件、硬件完全开源,可以浏览、下载本项目资源,或在此基础上进行二次开发,但是禁止未授权的商用。
二、开源协议
该项目开源协议使用GPL3.0
三、硬件部分
系统整体方案
本作品是基于瑞萨R7FA2E1A72DFL微控制器作为主控制器。整个系统分为7个单元,分别为供电单元、主控单元、传感器采集单元、WiFi数据传输单元、语音处理单元、显示单元以及控制输出单元。
具体方案框图如下所示:

各单元详细介绍如下:
1供电单元
原理图如下:
如上原理图所示,供电单元采用micro usb作为供电接口输入5V电压,采用AMS1117-3.3 LOD作为5V转3.3V电源使用。由于该USB接口为常用电源插拔口,为了安全增加USB专用ESD芯片USBLC6-2P6,防止插拔过程中产生静电造成接口损伤;USB转串口通讯部分放到控制输出单元详细说明。
2主控单元
原理图如下:

主控单元由上图所示,程序下载调试接口使用SWD口;芯片子时钟配置为32.768K用于RTC定时使用;芯片工作模式选择接口默认设置为高电平,为单芯片模式;芯片复位电路上增加续流二极管,可以将复位线上电容的电压快速泄放到电源上;
3传感器采集单元
原理图如下:
传感器采集单元如上图所示,DHT11主要用于室内温湿度采集,如果传感器和主控芯片之间通讯距离过远导致误码,可以适当减小R20,延长通讯距离;NTC10K主要用于不采集湿度只采集温度场景下,降低成本使用;
4WiFi数据传输单元
原理图如下:

WiFi数据传输单元如上图所示,此WiFi模组采用乐鑫ESP8266模块,按键SW3用于下载WiFi程序使用,WiFi下载时,IO0=0,再按下SW2复位后才可进入下载模式。WiFi供电需要保证3.3V,0.5A,在WiFi进入smart config模式时峰值电流可能达到500mA左右。WiFi串口0连接主控芯片串口1,由于有时WiFi需要单独测试使用,所以在WiFi与主芯片连接串口之间增加了跳线帽,方便测试使用。
5语音处理单元
原理图如下:

语音处理单元如上图所示,5V供电,保证0.5A供电电流,由于喇叭工作时电流波动较大,所以电源处要增加电容。注意喇叭和mic差分走线,PCB上最好对这两对线做包地处理,减少音频信号传输干扰。在mic和喇叭接口处增加双向TVS,防止ESD干扰,注意TVS一定选取寄生电容小的,防止对音频产生干扰。H4音频模组烧录接口,烧录时SW5需要按下。
6显示单元
原理图如下:

显示单元如上图所示,10Pin SPI通讯2.4寸LCD屏,LCD主控芯片为ST7789V2。R15、R14、R16为LCD背光限流使用。
7控制输出单元
原理图如下:

控制输出单元如上图所示,分为三部分,红外收发、通讯接口、单按键开关。红外接收单元用于接收市面上红外遥控器发送的编码,发送单元用于发送空调控制编码,二者底层驱动皆采用NEC协议。USB接口连接CH340实现USB转串分别用于与主芯片打印串口连接和与WiFi串口0连接,具体连接哪一个可以使用SW4进行选择,SW4抬起连接WiFi串口,SW4按下连接主控芯片串口2。单按键开关工作原理在原理图上已经标明,通过两个GPIO可以实现整个设备的开启关闭,注意此电路只能实现延迟关闭不能实现延迟开启。
总原理图如下所示:

PCB如下所示:


实物图如下所示:



如上图所示:PCB设计时注意项如下:
WiFi模组天线位置将PCB切除,且WiFi天线周围做净空处理,防止对WiFi信号产生影响;
语音模块的喇叭还有mic注意差分走线,且走线包地良好;
晶振附近的地保证良好,防止EMI;
SPI线注意等长;
电源线注意粗细合理,按照10mil最大500mA设计;
退耦电容放在芯片电源引脚附近,越近越好。ESD器件放在干扰源传输的入口处;
PCB板的接口和安装孔布局合理,可能产生互相干扰的器件分开放置;
后续可能需要进行调试的信号PCB添加测试点;
未完待续




