一、作品简介 1、PCBA图片 2、研究背景、目的和功能 电源一直是大家DIY的首选项目,但是想DIY出炫酷的又比较难,本表头开始只是针对DIY市场设计,后来发现很多产品,诸如温控计,充放电控制,也就是说设置一个上下阈值,然后给出一个IO,通过关停来达到控制目的,因为大多数控制器都是一个AD转换的方式,于是有了表头设计的思路; 作为一个可以快速控制开发的原型,如果仅仅是固定的界面是没法应用到产品中的,因为不同厂家的产品界面需求变化比较大,这个也就是类似产品无法快速应用的原因所在;想当年,一个三位半数码管的表头卖的非常好,因为可以很方便的改成转速计,温度计等等,因为数码管没有界面,反而可以应用到各个领域;而时代发展了,我们的产品需要高大上的显示界面,但是这样一般的产品反而实现困难了,为此,我们设计了这个表头,可以按照用户的个性需求,书写脚本语句改变所有的显示界面,建立产品的快速原型开发; 3、亮点 标准的AD转换,上下阈值控制,以及脚本可控的界面变化,可以发挥想象,基于此产品设计出很多新奇产品。 需要详细资料学习的请到原贴下载:club.szlcsc.com/article/details_6550_1.html 二、系统构架图电路图 电路非常的简单实用,用7660生成负压,低端R025电阻采样,过OP07放大后进入STM32的AD进行采样;其实这个主要的难点在软件上。 三、硬件部分的描述这个基本上就是一个电流电压的测量,测量后,自动汇集脚本控制显示; 电压测量基本就是一个简单的电阻分压,电压27K对2.7K 1:11分压,因此电压量程3.3*11=36.3V,采用单片机的12位AD,因此采样分辨率为36.3V/4096=0.00886V,由于AD的精度为+-3LSB,虽然采用的过采样等手段保证精度;因此 电压量程36V ,当然可以增大或减少分压比达到扩大或缩小量程的作用,软件最大支持到65V; 电流测量选用了 DALE的R025 25毫欧的采样电阻,DALE品牌都清楚,温飘系数小,效果不错,按照5A电流计算,压降0.025*5=0.125V; 运放放大电阻分压比为:1.5K:27K,即放大19倍,因此计算出电流为6.9A左右,为了保证一定的余量,我们定义表头的满量产为5A;同样电流分辨率为1.7mA左右,+-3LSB为+-5.4mA; 最终电压和电流都进入单片机的AD采样,采样采用AD DMA 模式,任何一组算法实际上是DMA中50次采样求出的平均值; 在另一方面,由上位机将软件的字库,图库,以及显示的语句都存在表头的存储器中,表头每时每刻都在进行AD的转换,以及语句的解译执行,因此就达到了当前的显示效果。 四、材料清单(BOM列表)主要器件(采购自立创商城): stm32f030c8t6,编号C40053; AMS1117-3.3,编号C6186; MX25L6406,编号C60525; OP07CP; DALE R025,采样电阻。 五、软件部分的描述整体性能: 1、采用2.6吋320X240分辨率的高分屏显示。 2、电压27K对2.7K 1:11分压,因此电压量程3.3*11=36.3V,采用单片机的12位AD,因此采样分辨率为36.3V/4096=0.00886V,由于AD的精度为+-3LSB,虽然采用的过采样等手段保证精度,但是在+-0.027V内跳动属正常精度;(这个范围是指对电池的测量,实际上27mV很多电源的纹波都无法保证); 3、电流采用25毫欧的采样电阻,运放放大电阻分压比为:1.5K:27K,即放大19倍,因此计算出电流为6.9A左右,为了保证一定的余量,我们定义表头的满量产为5A;同样电流分辨率为1.7mA左右,+-3LSB为+-5.4mA; 4、双路共地设计,表头使用+5V电源,可由串口端接入,但是功率地必须由MainGND接入,否则会导致测量不准; 5、板上仍然预留A004模块的位置,这样可以将表头的供电范围扩展到28V(资料数据,实际建议不超24V),这样可以从测量电压中“偷电”; 6、板载双路MOS,可以通过GPU语句对电压电流设置上下限,并可控制MOS管,方便做类温度控制的仪器; 7、双路带有AH,WH测量,配合MOS管,其实很容易做出类似锂电池放电容量测试的程序。 校准的步骤: 1、同时按住AN1和AN2,上电,此时屏幕出现黑屏,松开AN1和AN2 ,系统进入校准界面: 2、此时,系统提示“请将V1+(IN) 和 V2+(IN) 一同接 +5V 基准电压,然后按AN1 按钮;”,按提示操作,此步校准2路电压; 3、之后,系统显示:“请将GND1 接负载负极,辅助电源+接负载正,调整当负载电流 200mA时(可以串万用表电流档),然后按AN1 按钮;”,此步校准第一路电流的低端; 4、之后,系统显示:“请将GND2 接负载负极,辅助电源+接负载正,调整当负载电流 200mA时(可以串万用表电流档),然后按AN1 按钮;”,此步校准第二路电流的低端; 5、显示“请将GND1 接负载负极,辅助电源+接负载正,调整当负载电流 2A时(可以串万用表电流档),然后按AN1 按钮”,此步校准第一路电流的高端 6、显示“请将GND2 接负载负极,辅助电源+接负载正,调整当负载电流 2A时(可以串万用表电流档),然后按AN1 按钮;”,此步校准第二路电流的高端 7、系统显示“请重启设备;”断电重启,校准完成。 六、总结因考虑到商业机密问题,源代码无法公开,但为了保障爱好者学习,我们公开早期表头的核心代码,仅供学习。
|