太阳能无线充电宝设计
2021-01-22林正昊朱峪君蔡婧瑶
林正昊,朱峪君,蔡婧瑶
1 设备系统设计背景与意义
目前太阳能无线充电宝所用的控制方式与产品所展现的性能等方面逐渐不能满足科学需求,其中控制方式繁琐,系统运行时往往出现卡顿或者“死机”现象以及反映时间缓慢,并且目前的太阳能无线充电宝产品的功能单一而且此系统无法扩展,因此把嵌入式系统方案引入到太阳能无线充电宝系统中很有必要,从而可以推动了此产品和相关行业快速发展。
2 太阳能充电宝系统架构设计
2.1 太阳能无线充电宝功能设计
本太阳能无线充电宝实现功能如上:
(1)通过无线充电器并接给锂电池供电,同时给检测是否再给锂电池进行充电。
(2)锂电池经过升压模块,给整个单片机系统及显示进行供电。
(3)显示充电式累计时间:达到进行充电计时,达不到自动停止计时,计时格式时/分/秒/0.1秒。液晶显示是否在充电状态。无线充电器模块分两部分,一部分接系统经升压模块12V供电输出感应,另一部分接收感应,经降压模块输出5V给设备充电。
2.2 系统网关架构设计
系统网关架构主要有信号采集处理模块,控制中枢系统模块与外围执行机构组成,太阳能无线充电宝系统设计架构如上图1所示。
图1 嵌入式网关架构设计图
太阳能无线充电宝系统主要由信号外界环境输入模块、单片机控制中枢、信号输出模块和通讯部分四个部分组成。其中信号采集模块是电压信号,MCU控制中心有STC89C52最小系统(晶振电路:提供系统运行频率、复位电路:初始化系统运行、程序烧写电路)和电源转换电路构成;执行机构有升压模块和无线充电模块。
3 系统的硬件平台设计
3.1 主要输入与输出信号电路设计
3.1.1 太阳能供电电路设计
本系统中选择9V多晶硅太阳能电池板作为发电元件,太阳能发电后经过TP4056模块给锂电池进行充电,同时因为锂电池的电压为3.7V-4.2V,而本设计的单片机等电路均为5V供电,所以用升压模块将3.7V的电压升到5V来给设备供电。太阳能电池板输出串接一个二极管,单向导电作用,保护太阳能电池板。
3.1.2 无线充电模块电路设计
选用XKT412-01无线充电模块,由一个发射模块和一个接受模块组成,无线充电原理是通过电磁波感应原理进行能量传输的。在能量发射端和能量接收端各有一个电磁线圈,其中发射端线圈连接有线电源产生电磁信号,接收端线圈感应发送端的电磁信号从而产生电流给电池充电。发送和接收的有效距离是1-20mm。为了防止无线模块对系统电源的干扰,在电路中串联二极管。
3.1.3 锂电池充电升压电路
锂电池充电时,需增加充电管理电路,防止电池长期处于过饱和状态和馈电状态,本系统采用TP4056充电管理模块,TP4056是一款完整的单节锂离子电池采用恒定电流/恒定电压线性充电器,底部带有散热片的SOP8/MSOP8封装与外部元件数目少。锂电池输出电压是3.7V,而整个系统需要电压是5V,所以需升压,本系统采用是DC-DC升压模块0.9V~5V升5V 600MA。模块的输入电压宽广,一般为1V~5V之间任何直流电压值,输出都是5V电压。
3.1.4 LCD1602液晶屏显示电路设计
LCD1602由数字量控制,控制准确度高。LCD1602主要有显示晶元、处理单元和存储器组成。三类存储分别存储不同的内容:DDRAM存储控制中心发送的数据;CGROM存储处理单元输出数据;CDROM存储液晶屏底层显示程序。
LCD1602液晶屏供电电压范围5V±0.5V,额定电压是5V,本系统输入电压为5V。该液晶显示模块采用双电源供电,一路是系统硬件单元供电,另一路是背光电源。共有8根数据线,总共可以显示28种类字符,液晶屏处理单元收到控制中心发来的二进制数据,经过字符变量对比输出需要显示的内容。
3.2 原理图设计
系统功能与元器件选型确定后进行原理图设计,原理图把系统需要的元器件按照功能电路进行电气连接(图2)。
图2 系统接线图
4 系统软件平台设计
主要系统信号采集与处理程序设计:
4.1 充电管理中断处理程序设计
为满足监测实时性,单片机采用定时中断的方式访问存储器,进行信号参数采集。首先设置单片机的计数器为定时方式,开启计数器,定时长短可随需要灵活设定。然后单片机运行其它程序,等待定时中断的到来。定时中断发生之后进入中断服务程序,调用内部存储器的控制操作程序,进行数据采集,并将采集来的数据进行处理,最后重新初始化定时中断,返回。如图3所示。
图3 中断处理流程图
4.2 LCD1602程序设计
通过LCD1602液晶屏作为显示模块,LCD1602模块在系统向它传输信号或者指令之前都会查询运行状态,只能当LCD1602模块工作在休闲状态时,系统才能对它传输信号或者指令,否则传输的信号或者指令不会被执行。其操作时序包括读操作时序和写操作时序。
5 系统调试与数据分析
5.1 太阳能无线充电宝系统调试
系统调试主要分为软件调试、关键器件调试与硬件调试,其中软件测试包括系统在线仿真(运用仿真器)、功能模块运行参数确定和中断优先级判断等方面;关键器件调试包括电源转换芯片参数调试、输入与输出信号灵敏度调试;硬件调试主要包括系统功能性验证。
5.1.1 系统软件调试
系统软件编译没有问题后,进入在线仿真后,首先单步运行查看系统流程是否满足设计要求,若不满足则需要调整软件结构,当满足设计要求后,判断各个功能模块默认参数是否正确,子函数定义是否合理,最后给程序打不同的断点确认中断优先级是否正确。经实际调试后太阳能无线充电宝都满足系统要求。
5.1.2 关键器件验证
单片机芯片验证:系统启动之前一定检查整个系统的供电电源正否正常,去掉单片机芯片,把系统接入电源,用万用表测量电源端口输入电压是否为5V,经过万用表测量端口电压为4.9V,这个电压满足系统设计要求,然后测量单片机两处供电电压是否正常,实际测量电压为4.85V,满足单片机工作电压范围,断开系统电源,把单片机芯片插入到底座上。启动系统电源,再次测量系统各处电压是否正常,实际测试所有电压都正常,按键复位按键,让系统手动复位一次。经过实际测试,单片机芯片可以正常工作。
5.1.3 系统硬件调试
在本次撰写的软件编译无Bug后,用上载器或者放置器烧写到单片机芯片中,开始进行功能与性能验证,主要从以上三个方面调试。
(1)控制中枢验证:系统启动之前一定检查整个系统的供电电源正否正常,去掉单片机芯片,把系统接入电源,用万用表测量电源端口输入电压是否为5V,经过万用表测量端口电压为4.9V,这个电压满足系统设计要求,然后测量单片机两处供电电压是否正常,实际测量电压为4.85V,满足单片机工作电压范围,断开系统电源,把单片机芯片插入到底座上。启动系统电源,再次测量系统各处电压是否正常,实际测试所有电压都正常,按键复位按键,让系统手动复位一次。
(2)功能验证:经过上步验证无误后,进入功能验证,对着系统功能设计要求,逐一验证所有功能,经过实际功能验证,设计的系统完全满足设计需求。
(3)可靠性验证:把产品实物放在高温40度环境中运行8小时,经测试,本设计系统可以在高温40度环境稳定运行。
5.2 系统整体调试结果分析
5.2.1 调试数据分析
太阳能无线充电宝系统在实际环境运行时,会因为环境系数(温湿度、噪音等)参数或者人为操作不当带来动作误差或者系统本身特性会影响系统的系统运行,在测试设备和测试方法上造成一定的干扰因素从而影响系统的输出结果不满足设计要求,从而在某一方面会干扰到系统采集到的输入参数与实际输入的参数有差距。实际运行时,输入信号经过采集端到数据处理中心,系统自身原因导致一定时间延时,从而造成系统处理的参数不精确产生误差。由于误差量的存在使系统输出结果非真实值,需去除误差,现代系统控制中主要运用修正的策略来弥补误差,本系统属于智能控制简单系统,对控制要求不高,查阅文献资料得到修正值,从而确定系统的输出结果满足要求。
5.2.2 测试问题定位与解决
(1)电源异常:系统首次上电,系统无法启动,则切换电源对供电系统检查。首先拔掉系统电源线,然后用万用表阻抗档位测量系统电源正负极有没有短路,测试发现是正常的,然后单独给电源线供电,并用万用表直流电压档测量5V电源是否正常,测试同样正常,可排除外部供电电源问题;把电源线接入系统并去掉单片机芯片和液晶模块,然后接入5V电源,测得系统开关处5V电源正常;接上来把液晶模块接入系统中,接入5V电源,同样测得5V电源正常同时液晶屏正常显示;但是把单片机芯片接入系统中,发现系统电源无法工作,经测量发现单片机芯片管脚电源正负极短路了,主要是焊接连锡造成的,当用电烙铁把连锡去掉,系统电源工作正常。
(2)系统频繁死机:系统在运行时,当输入连续采集信号,极易造成系统死机,而且系统也不会启动自复位程序。经过程序在线仿真发现当系统在一个周期内连续给定两次输入采集信号,造成软件在两种中断出不来,进行反复循环运行。造成此种Bug是因为两种中断采用同一定时器原因,当把中断1采用定时器0,中断2采用定时器1,此种问题就可以解决。