
一个1微安分辨率的20毫安电流计
简介
,还有一个0-50度正负0.03度、50-100度正负0.08度的超高精度温度计。电流计用于监控STLINK后面的MCU和其它器件电流,因为切换流畅度的原因电压测量在附件里有单独的程序。后续版本集成。
简介:,还有一个0-50度正负0.03度、50-100度正负0.08度的超高精度温度计。电流计用于监控STLINK后面的MCU和其它器件电流,因为切换流畅度的原因电压测量在附件里有单独的程序。后续版本集成。开源协议
:Public Domain
描述
本工程已废弃,只做拆解模块参考用,电流计已改成更强悍(更贵)的形式,硬件已完成,软件还在搞。预计半年后更新。
这个电流计是为了开发超低功耗超高精度的两个温度计做的,因为我买不起台式的微功耗计,而几十块那种手持式设备精度又不够,并且大多数特化为手机充电头分析工具,对于低功耗MCU的分析需求难以满足。
这个页面只展示了电流计的PCB,附件里有完整(没有外壳)的电流计代码和电路图、PCB文件,以及一些关联的资料,感兴趣可以看一下。
实机测试视频是晚上拍的,家人都睡觉了,所以就随便拍了下。
最终计算结果是818NA,和显示的平均值842-22=820误差2NA。这22NA是板子漏电,我用的FR4板子,我的程序是有短接输入做初始偏移校准的,虽然绝对精度因为没校准不能保证,但是理论上只会有PA位跳动。 我已经试过了,85度烤半个小时这个初始值会掉到5NA,但是放那里几个小时不动又会飙升到20NA的样子,过一天会到50NA,我这是山上,湿度75-85的样子,目前焊接一个星期了,暂时没见过更高的漏电情况。因为我的手持万用表是三位半的,精度可能不够,电阻测量可能有误,所以理想分辨率或者说短期精度在5NA的样子,一般低功耗器件标称在100NA到几百NA的样子,勉强够低功耗器件电流分析吧,后续的放大器版本已经确定用TIA加ADC,然后继电器切换量程,可能能把漏电控制在1NA以下。
如果要直接复刻TMP119,要注意FPC非常小,只有3毫米宽、4毫米长,所以必须使用40AWG的导线焊接,所有引出的焊盘都要焊接。我是先用风枪焊接了背面的电容,然后用风枪焊接正面的传感器,再焊接5个导线。注意传感器别碰掉或者吹掉了,很小的东西,镊子抖一下就不见了。40AWG可以直接用火机快速的烧一下,然后上锡再焊接,建议在桌面万向夹上操作。
电流计使用USB供电,因为设计就是接在STLINK后面,所以没有演示电池供电的表现。实际上稳定性是没有什么区别的,因为LDO和ADC的PSRR CMRR都超级高,几乎无视电源波动,没必要测试电池表现了。
所有外围芯片的代码都建立了库文件,可以直接复用。
附件里有提及到的大部分器件调试稳定的单独代码和集成PCB。
视频里的程序修改这一部分与实际情况不符合:实际上我已经提供了两个版本的程序而不是需要自行修改,一个400UA一个20MA,都是可以直接运行的,就是板子上要焊接的检流电阻不一样。然后改程序不止要改电阻值的宏定义,还要根据手册改PGA倍数,以及过压(流)阈值这些才是完整的。
电流计大概配置:
ADC ADS1220
MCU STM32L031(是HAL库,但是如果你不打算改动,那么直接用KEIL打开F7 F8就完了)。
0.91寸OLED (128X32)
TPS7A0233 LDO(高PSRR 极低静态电流,本来是用于丐版温度计的,因为PSRR 噪声这些表现都还行就把剩下的用在这里了)
检流用的100欧姆电阻(连在3V3 3V3O中间的那一排电阻,可以只焊接一个100欧姆,或者多并来提升过流能力)电阻推荐YAGEO的 25PPM 0.1%系列,实测50K的温漂只有5PPM的样子,即使在非常高要求下也是很优秀的电阻,价格只要4块钱一套20个。
程序使用江科大的中文OLED库来显示,因为我用的低功耗MCU内存有限,删除了图形功能。改成了适配0.91寸分辨率。程序中没有使用中文,但是可以支持中文显示,需要自已加字库。
程序分为两个版本:
20MA量程,1UA分辨率,40样本每秒,对应的PCB要把3V3和3V3O中间的那个电阻用100欧姆的。
400UA量程,50NA分辨率,20样本每秒,(受环境湿度影响有10-50NA漏电流,所以定义为50NA分辨率,实际可以稳定分辨5NA,减去固有漏电后短期可信度接近5NA吧),对应的PCB要把3V3和3V3O中间的那个电阻用5100欧姆的。
电阻不一定按我说的配,可以任意配。配完记得修改程序里的电阻值、PGA倍率、过流保护阈值。
使用说明:
代码里有ADC输入过流保护,过流后7秒自动尝试运行,如果还是过流就继续保护7秒,直到解除过流条件后恢复运行。
PCB的5V脚是接在STLINK的5V上,3.3VOUT和它旁边的GND是用来给被测电路供电的,电路本身也需要3.3V供电,GND可以共用输出或都其它标记GND的引脚。板子只能输出3.3V和对应电阻版本的电流,需要其它量程自已改。
如果想要ADC有较好表现,注意靠近ADC AIN0 AIN1引脚那里的一组电容电阻是抗混叠滤波器,不要随便改动它的规格和器件型号,其它随意。
MCU是极简配置,只有三个输入电容和一个BOOT电阻,其它外围都使用器件自带的,要复用注意这一点。
附件里还有个单独测量电压的程序,我懒得合并了,因为准备开发下一个版本,PCB也要改。下一个版本是用引脚间距更大的外置放大器尽量减小漏电流,并且能用串口在电脑上显示波形,同时测量电压和电流。
下面是电流计的外观。

下面是温度计介绍:
一开始是想开发一个超高精度且超高稳定性的温度计给亲戚的小孩子玩的,预计是两三百块钱吧。后来走火入魔了,成本干到了800+,但是很尴尬,一通操作下来后发现它的精度只能到TMP119的水平,0-50度 0.05度精度典型精度,100度 0.08度典型精度。而TMP119只要30块加上外围总共100块钱不到。后来在测试完119的前代TMP117后发现TI的东西使用很方便,且作为电子新手我不确定ADC版本我能发挥到什么水平,TMP119出厂校准超高精度,即使作为一个参考源也是很不错的,所以就顺便做了TMP119版本的温度计,因为贸易战耽搁了一段时间,全网断货,后来嘉立创开卖了我就30块买了,现在已经掉回开战前的价格24块一个了,需要温度计的强烈建议尝试一下。
因为只是用来保底,所以TMP119虽然逻辑跟ADC版本温度计一样,通过LIS3DH加速计开机、无动作检测关机。带高精度的DPS310气压计补偿测量开水(小学生可能会接触到的一个实验)。安全的80MAH镍氢电池供电。可在水下长时间工作。预计使用PEEK外壳,抗常见非主动破坏。只比一支笔大一点的体积,至少半年不用充电的待机时间。
细节上ADC版本更好:
基本配置:ADC : ADS1262(32位,设计范围的积分非线性<3PPM,跟常见6位半万用表差不多,分辨率有7位半的水平)。
参考电阻:EBG 25K 0.01%精度 1PPM。或者福禄克拆机的23K 0.02%精度(卖家7位半校准过) 1PPM。或者前两个测试表现不好的话还有AE的2.5PPM 0.005精度4K电阻。
(以上电阻除了福禄克拆机没测试,附件里基本都有温漂测试,使用ADS1220扩大范围估算的。等ADS1262开始组装后会单独测福禄克拆机电阻)。
传感器:YAGEO(赫利氏)M222(PT1000 1/10B,1-50度0.03度最大误差,50-100度0.08度最大误差,几乎跟TMP119一样的性能,因为TMP119标的长期稳定性数据也挺夸张的,我也没见过TI在标称值上被人打脸的,所以可能M222在长期稳定性方面也没有特别大的优势,售价高达290元,加上能配得上的ADC ADS1262后已经达到了辣眼睛的成本水平了。之所以最后还是硬着头皮上了,主要是这破玩意花了我快一个月选型查资料画电路图,不做出来浑身难受。)
ADC版本供电用的超级安全的40MAH钛酸锂电池。
使用了保护板(BQ76907,一个动作电压电流各种参数都高度可调的保护芯片,是少见的可以用于钛酸锂的BMS,钛酸锂的电压范围非常尴尬,普通BMS都不能很好的适配)。
5V模拟电源使用了ADP7118,11UV噪声,1MHZ PSRR=50dB,可接受20V输入。3.3V则是超低漏电流的SIP32431模拟开关从BMS上自带的LDO取电。虽然ADS1262的PSRR和CMRR都非常高,但是为了避免不必要的麻烦,所以模拟电源用了比较好的器件。
加速计使用了ADI的MXL367,一个运行时只有1UA不到的加速计,应该没有第二个加速计或者陀螺仪能到这个功耗水平了。本开源工程的电流计主要就是用来研究这个加速计和其它低功耗器件在不同软件配置下的功耗表现的。
另外就是ADC版本支持3-12V输入充电,虽然使用了只有TMP119版本一半大的电池,但是可实现近1年不充电的续航能力。而TMP119版本只支持5V输入充电,并且由于器件节能水平较低,以及镍氢电池固有的高漏电属性,所以理论待机在半年的样子。
综合以上,ADC版本的定位不仅仅是一个儿童玩具,或者在更严苛的使用场合下也有一战之力。
以下是ADC版本的功耗理论计算。(LT1618过于昂贵且占用面积不出彩,淘宝全是假货。已用TI的两个方便购买的超小器件替代了,用于50MA以下恒流充电)。
完整的测试板PCB和电路图在附件里。这块测试板集合了这里提及的所有器件,但是是用的STM32F103标准库,部分代码有提供。最终ADC版的正式机是用的和TMP119以及电流计一样的HAL库,等完善后会全部开源。

设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。


评论