发作品签到
标准版

丐中丐 LCD1602自动量程电压电流表

工程标签

1.4w
0
0
119

简介

一个使用了STC8H3K32S2内部ADC,LCD1602屏幕的自动量程电压电流表,带有功率、电阻、时间、容量以及能量显示。

简介:一个使用了STC8H3K32S2内部ADC,LCD1602屏幕的自动量程电压电流表,带有功率、电阻、时间、容量以及能量显示。

开源协议

CC BY 3.0

创建时间:2023-02-12 13:42:46更新时间:2023-11-13 10:18:23

描述

本工程为上一个(LCD1602自动量程100V10A电压电流表 - 嘉立创EDA开源硬件平台 (oshwhub.com))的改进版,建议制作本版

 

更新内容:
  •     V2.0
  •     更改时间统计最大为999:59:59
  •     程序开始区分不同的最大电流,不同电流版本的区别只在软件和分流电阻上,其余硬件没有区别
  •     电压测量部分直接使用开漏IO口下拉,省去MOS管
  •     去除了冗余的滤波、负压电路和区分模拟地、数字地和电源地的设计,实测对性能毫无影响,功耗还低了30%(在12bit的ADC上用这么多东西是浪费)
  •  
  • 根据上个工程评论区的反馈,增补文章描述不到位的地方
  • 缩小图片的尺寸,方便阅读

 

  • 2023年11月11日:
  • 修正了分流电阻的阻值
  • 增补内容
 

 

特性:

  • 多量程设计,最大限度利用ADC,成本较低的同时可以获得较高的精度
  • 可以在校准时设置导线电阻值来大概地修正导线的压降,压降可正可负
  • 自动切换量程,自动移动小数点
  • 功率、电阻、时间、容量以及能量显示
  • 体积较小,PCB尺寸与LCD1602大小相同
  • 量程:0V~100V,0~10A/20A/50A/100A
  • 使用75mV分流器
  • 单按键操作
  • 低成本
  • 宽电压供电:7V~35V
  • 供电反接保护

 

 

 

参数:

  • 供电电压(VCC):7V~35V,建议不超过30V
  • 工作电流:大约20mA
  • 测量电压(VIN):0.000V~100.0V,分5V、10V、50V、100V四个电压量程,自动移动小数点
  • 测量电流(AIN):0.000A~10.00A,分3.8A和10A两个电流量程,自动移动小数点

                                       或0.000A~20.00A,分7.6A和20A两个电流量程,自动移动小数点

                                       或0.000A~50.00A,分19A和50A两个电流量程,自动移动小数点

                                       或0.000A~100.0A,分38A和100A两个电流量程,自动移动小数点

  • 刷新率:每秒5次
  • 功率计算:0.000W~999.9W,自动移动小数点
  • 电阻计算:0.000Ω~99999Ω,自动移动小数点
  • 时间统计:00:00:00~999:99:99,自动增加小时显示位数
  • 容量统计:0.000Ah~999.9Ah,自动移动小数点
  • 能量统计:0.000Wh~999.9Wh,自动移动小数点

 

 

 

接线:

  • 参考这张经典图片,图片上的“供电”对应板子上的"VCC","V+"对应"VIN","A+"对应"AIN"。

 

 

 

物料购买:

  • 单片机可以使用STC8H3K32S2、STC8H3K48S2或STC8H3K64S2
  • PCB上标有TX RX的3Pin排针建议使用90°弯针,方便下载
  • LCD1602的对比度可调电阻用立式蓝白可调电阻

  • 10A版本使用7.5mΩ的2512合金电阻作分流电阻,20A及以上电流版本必须外接75mV的分流器,如:

 

  • PCB右端的电流输入处可以焊接引脚间距为5mm或9.5mm的2P接线端子,如:

(此为引脚间距5mm的)

(此为引脚间距9.5mm的)

焊接9.5mm端子的效果如下图:

  • 按键端(KEY)接地为按键按下,可以用线引出

  • PCB上的U4和U6是贴片和直插两种不同封装的TL431,选择一种焊接就好
  • 每个表头需要M3螺母、M3*5螺丝和M3*10+6铜柱各4个

 

 

 

关于焊接:

  • 焊接时按先贴片后直插,元器件从矮到高的顺序焊接,单片机是TSSOP-20封装的,比较难焊,有条件的可以使用锡膏和热风枪     技术娴熟的加够助焊剂,用刀头一拖就行了
  • 电流输入端要过大电流,建议多上点锡

 

 

 

下载与校准:

  • 首先,你需要一个USB转TTL模块和三根杜邦线。
  • 从stc官网下载并安装stc-isp软件。
  • 点击“打开程序文件”,找到你想要下载的程序版本的文件夹里的.hex文件,打开。
  • 选择你使用的芯片型号。下载时选择IRC频率为11.0592MHz。如果使用的是STC8H3K64S2,设置用户EEPROM大小至少为0.5K,至多为40K。(可是最小也有0.5K啊)

  • 在stc-isp里选择你的串口,usb转串口的RX连接板子上的TX,usb转串口的TX连板子上的RX,连接好后点击“下载/编程”,再上电
  • 如果以上步骤正确,还是检测不到单片机,根据评论区反馈,可以先点下载,拔掉下载线,再插上,最后供电。(至于是拔RX还是TX,抑或是全部拔掉,自己试试。这bug有点玄学。有的人碰得上,有人碰不上。)
  • 为防止电源供电不足,下载程序时可以拔掉屏幕。

 

  • 校准工具:可调电源、一个你信得过的万用表
  • 下载完程序后,调节可调电阻,直到显示效果最佳。程序检测到没有校准数据,会自动进入校准模式,显示“CAL MODE”。

  • 等待约3秒后,进入电压零点校正。"Zero:"后的数字是此时电压通道的AD值。把VIN与地短路。这时,VIN会有1~4的底数(STC的IO口即使是强下拉也会有几毫伏的电压),保留。短按按键确认并进入下一步。

  • 进入电流零点校正。"Zero:"后的数字是此时电流通道的AD值。这时,AIN在悬空时会有8~13的底数,为消除运放输入失调电压和输出最小电压的偏置电压,保留。短按按键确认并进入下一步。

(忽视图片里的数值,懒得换图了)

  • 此时进入到电压分量程校准部分。下图为菜单解释。

反色文字或下划线文字为光标所在处。短按按键执行光标反色文字或下划线文字)位置的功能。如:

"+1"反色时,短按按键,当前量程的校准数据增加较小数值

"+10"反色时,短按按键,当前量程的校准数据增加较大数值

"-1"反色时,短按按键,当前量程的校准数据减少较小数值

"-10"反色时,短按按键,当前量程的校准数据减少较大数值

"NEXT"有下划线时,短按按键,进入下一步

注:校准数据增大或减少时,由于与校准的结果是倍数关系,校准的结果可能不变,要多按几下才会变化

 

长按按键一秒后,下菜单光标以每秒一个选项的速度开始滚动。松开按键停止。

滚动效果如下图:

  • 万用表调到电压挡位并与可调电源并联后并联到本表头的VIN端。本电压电流表的电压测量分4个量程,电压量程3(5V)、电压量程2(10V)、电压量程1(50V)、电压量程0(100V)(括号内为该量程的最大电压)。VIN输入此时的电压量程的最大电压内的电压。输入电压建议为满量程的5%~90%之间。对照万用表,调节表头显示的电压。注意:校准时保持AD值小于4095,大于等于4095则意味着超量程了,这时校准是没有用的,电压电流都一样。

  • 分别校准完4个电压量程后,断开表头、可调电源和万用表的连接。万用表调到电流挡位并与可调电源串联后串联到本表头的AIN端。本电压电流表的电流测量分2个量程,电流量程1(3.8A/7.6A/19A/38A)、电流量程0(10A/20A/50A/100A)(括号内为该量程的最大电流)。AIN输入此时的电流量程的最大电流内的电流。输入电流建议为满量程的5%~90%之间。对照万用表,调节表头显示的电流。注意:校准时保持AD值小于4095,大于等于4095则意味着超量程了,这时校准是没有用的,电压电流都一样。

  • 分别校准完2个电流量程后,进入导线电阻设置菜单。导线电阻值用于电压补偿,可正可负,正时电压减去电流乘导线电阻,可以用于可调电源;负时反之,可以用于电子负载。屏幕左上角为补偿后的电压值。此时电压量程恒为电压量程3(5V)。当电流和线阻都不为零时,即线损补偿起作用时,“V”增加下划线。

示例:导线电阻约为66mΩ,导线末端短路,通过1A电流。

未设置线阻时:

设置线阻为正时:可以用于可调电源,真实反映输出端的电压。此时线损补偿起作用,“V”增加下划线。

设置线阻为负时:可以用于电子负载,真实反映输入端的电压。此时线损补偿起作用,“V”增加下划线。

  • 设置完导线电阻后,单片机开始向内部EEPROM写入校准数据(实际是把一部分Flash当EEPROM使用)。若写入成功,则显示下图字样:

并在约4秒后自动重启,进入正常工作模式。

 

若写入失败,则显示“Flash Error!!!”,表头会在约4秒后自动重启。建议检查供电、重新下载程序或更换单片机。

 

 

 

操作说明:

  • 给表头上电,自动进入正常工作模式。
  • 掉电再上电后时间、容量和能量会清零。
  • 当电流和线阻都不为零时,即线损补偿起作用时,“V”增加下划线。屏幕左侧电压、电流显示不变。短按按键,屏幕右侧在显示功率、电阻,显示容量、时间,显示能量、时间之间来回切换。

显示功率、电阻:电流为零时,电阻显示“NoLoad”。

显示容量、时间:

显示能量、时间:

  • 在显示容量、时间和显示能量、时间时长按按键2秒后,容量、能量和时间清零,并一直保持为零,直到松开按键。

  • 在显示功率、电阻时长按按键2秒后,进入版本菜单,短按退出

(图为100V20A的版本)

  • 按住按键再上电,进入校准模式。校准步骤参照下载与校准:
  • 电阻测量展示:此时设置线阻为60mΩ

10Ω

100Ω

1000Ω

 

 

 

量程切换的原理:

  • 电压量程切换:通过处在开漏模式的单片机IO下拉选择不同的分压电阻,实现不同的分压比例,以实现切换量程。

 

问:在小量程时接入大电压不会把单片机淦坏吗?

答:不会,STC8H的IO口有保护二极管,电压会被钳位,除非那个100kΩ的电阻短路。

 

问:那为什么不加一个肖特基二极管来起到双重保护的作用呢?

答:肖特基二极管的漏电流太大,加了之后电压会有几十毫伏的底数。

 

问:切换量程会影响测量大电压的速度吗?

答:会,但很小。下图为测量60V电压时与VC99的速度比较

 

问:切换量程时电压不会抖动吗?

答:会,但是我已经在程序里将抖动屏蔽掉了。

 

  • 电流量程切换:还是一样的套路,通过MOS管选择不同的分压电阻,实现不同的放大倍数,以实现切换量程。

 

 

 

 

成本计算:

  • 可以看出,成本比上个版本更低     作者不是标题党XD

 

 

 

后记:

  • 二月份做好八月才发上OSHWHub的作者是屑(
  • 本人技术拙劣,如果有错误的地方,欢迎在评论区里指出

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
丐中丐 LCD1602自动量程电压电流表.zip
989
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航