搜索
发新帖本帖赏金 10.00元(功能说明)我要提问
返回列表

[应用方案] 基于新唐单片机的电压电流表头制作(INA226)

[复制链接]
12148|18
小叶三千|  楼主 | 2021-5-13 22:24 | 显示全部楼层 |阅读模式
本帖最后由 小叶三千 于 2021-5-13 22:30 编辑

#申请原创#  @21ic小跑堂
   我们通常使用的可调电源,普通的可调电源一般会有两个内容的显示,一个是当前调至的电压值,一个是当前用电器的电流值。下面介绍一下使用INA226的功率芯片制作这个既能显示电压值,又能显示电流值的表头制作。
一.所需硬件
1. INA226功率芯片,这个是采集数据的主要器件,下面会有介绍。
2. 屏幕(这里使用的OLED12864-7线SPI),用于显示电压电流值。
3. 单片机(这里使用的是新唐N76E003),因为我们要把采集的数据转换成我们所需要的数值显示在屏幕上,所以不需要太强大的MCU,一般的最小的51即可。
4. 采样电阻——100mΩ。INA226需要用采样电阻来获取电流值,所以这个电阻尽量选择精度高一点的,功率大一点的。
5. 剩下的就是一些单片机的基本外设了,电容、电阻等等就不多说了。
二.INA226简介

直接放截图吧,更详细的内容看附件的芯片手册。

39612609d3751ebcec.png

三.硬件PCB
根据INA226的手册,简单的画了一个PCB,将单片机、OLED屏也集成到了PCB中,AD工程请见附件。
原理图:

77466609d3762bfe71.png

PCB图:

82031609d376b16384.png

四.软件编写
1. INA226驱动,IIC通信,需要在单片机进行IIC驱动编写,具体可见附件的IIC_INA226.c

80874609d3770c85f2.png

2. INA226的读写
INA22610个寄存器,其中4个是可读可写,6个只能读取

92210609d377653427.png
35346609d3779d3e83.png

每个寄存器的意义请看下图,程序里也有。

26825609d377f5da3f.png

之后就是INA226的读寄存器和写寄存器

31217609d37841795c.png
65904609d3788c30bb.png

INA226_data.Read_Data[1]是输入的电压值,也就是iread(0x80,2),读取的0x80的地址(本机地址),0x02是读取的寄存器,由手册可知,0x02代表的是总线电压。如果不准的话,可以更改后面的系数1.25。我这里感觉还挺准的。
INA226_data.Read_Data[0是输入的电流值,也就是iread(0x80,4)0x04是读取的寄存器,由手册可知,0x04代表的是电流,INA226_data.Var_Iref是系数,也是同理,校准用的。

3. OK,主要的已经搞定,接下来就是OLED12864的驱动了,我使用的是大字体显示,本来屏幕就小,那么字就大一点。

下图是电流和电压的数值显示

9284609d3790990c4.png

4. 基本差不多了,还有注意的是初始化的时候,INA226需要写入采样时间和电流的校准值

寄存器0x05,校准寄存器,0x0036是怎么算出来的呢,手册上面有公式。
公式:0.00512/( 电流分辨率0.001A * 取样电阻0.1)=51.2=0x0033
之后感觉不是很准,我把数值上调到了=0x0036
寄存器0x00,采样时间寄存器。设置转换时间204us,求平均值次数128,采样时间为204*128,设置模式为分流和总线连续模式。

11490609d37969a526.png

五.实物调试

接下来就是把程序烧录到单片机中,进行调试了,下图是我制作完成的实物,大家凑合看吧,看着有点Low,哈哈,调试了好长时间,也换过好多硬件调试,上面是我制作的经验心得,分享给大家。

68655609d37ee1e923.png 8003609d37f2e0f82.png

PCB工程.rar

3.67 MB, 下载次数: 36

ina226功率表.rar

98.97 KB, 下载次数: 24

ina226.pdf

1.26 MB, 下载次数: 35

使用特权

评论回复

打赏榜单

21小跑堂 打赏了 10.00 元 2021-05-14
理由:恭喜通过原创文章审核!请多多加油哦!

Harvard| | 2021-5-13 23:41 | 显示全部楼层
不错 明星单片机003  .原来是个最具性价比的方案.. 现在尴尬了

使用特权

评论回复
小叶三千|  楼主 | 2021-5-14 08:09 | 显示全部楼层
Harvard 发表于 2021-5-13 23:41
不错 明星单片机003  .原来是个最具性价比的方案.. 现在尴尬了

哎,现在贵的要死

使用特权

评论回复
caojihui521| | 2021-5-14 21:55 | 显示全部楼层
性价比高,精度看着也可以啊,也打算搞个玩玩

使用特权

评论回复
小叶三千|  楼主 | 2021-5-15 11:06 | 显示全部楼层
caojihui521 发表于 2021-5-14 21:55
性价比高,精度看着也可以啊,也打算搞个玩玩

mA没问题,uA好像就不行了,我也不知道是我调参数的问题,还是这个芯片的精度问题

使用特权

评论回复
caojihui521| | 2021-5-15 20:06 | 显示全部楼层
小叶三千 发表于 2021-5-15 11:06
mA没问题,uA好像就不行了,我也不知道是我调参数的问题,还是这个芯片的精度问题 ...

估计电压准一些,电流误差,可能是电阻精度或者噪音,调整一下试试看

使用特权

评论回复
yangjiaxu| | 2021-5-15 21:15 | 显示全部楼层
不错不错 很奈斯

使用特权

评论回复
小叶三千|  楼主 | 2021-5-16 10:50 | 显示全部楼层
caojihui521 发表于 2021-5-15 20:06
估计电压准一些,电流误差,可能是电阻精度或者噪音,调整一下试试看

感觉像是参数调试的问题

使用特权

评论回复

评论

caojihui521 2021-5-17 10:53 回复TA
也是有可能的,比如CT bit, 1.25mv 的LSB ,都可以改改试试 
tianran08| | 2021-5-18 10:16 | 显示全部楼层
你那一排LED打算用来做什么用

使用特权

评论回复
小叶三千|  楼主 | 2021-5-18 10:35 | 显示全部楼层
tianran08 发表于 2021-5-18 10:16
你那一排LED打算用来做什么用

哪有一排LED,那是测试电流的负载。。。

使用特权

评论回复
leshak| | 2021-5-18 17:09 | 显示全部楼层
谢谢分享

使用特权

评论回复
tianxj01| | 2021-5-18 18:23 | 显示全部楼层
这个还是不错的,就是新唐003现在很尴尬了。

使用特权

评论回复
风动随心| | 2021-6-6 21:02 | 显示全部楼层
看着不错  有没有那位大佬上传一下可直接烧录的hex文件

使用特权

评论回复
小叶三千|  楼主 | 2021-6-7 08:45 | 显示全部楼层
风动随心 发表于 2021-6-6 21:02
看着不错  有没有那位大佬上传一下可直接烧录的hex文件

要什么hex文件

使用特权

评论回复
风动随心| | 2021-6-7 22:39 | 显示全部楼层

想制作一个板子玩一下,但是不会代码啊!要是有可直接烧录的文件,就可以打个板用了

使用特权

评论回复
小叶三千|  楼主 | 2021-6-8 08:17 | 显示全部楼层
风动随心 发表于 2021-6-7 22:39
想制作一个板子玩一下,但是不会代码啊!要是有可直接烧录的文件,就可以打个板用了 ...

直接把代码烧进去就行啊

使用特权

评论回复
单片小菜| | 2021-6-8 16:07 | 显示全部楼层
楼主是做的双面板还是四层板?感谢分享。

使用特权

评论回复
小叶三千|  楼主 | 2021-6-8 19:27 | 显示全部楼层
小叶三千 发表于 2021-6-8 08:17
直接把代码烧进去就行啊

不客气,简单的小玩意,双层板就够了哈

使用特权

评论回复
扫描二维码,随时随地手机跟帖
返回列表 发新帖 本帖赏金 10.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

本版热帖

本版活跃用户

优质原创写原创,赢大奖

编辑推荐

  • 1 wolfe_yu 得到打赏 ¥180.00
  • 2 最美葫芦娃 得到打赏 ¥155.00
  • 3 呐咯密密 得到打赏 ¥120.00
  • 4 hk386 得到打赏 ¥75.00
  • 5 火星国务卿 得到打赏 ¥63.00
  • 6 两只袜子 得到打赏 ¥56.00
  • 7 laocuo1142 得到打赏 ¥50.00
  • 8 年轻的国王 得到打赏 ¥50.00
  • 9 ezcui 得到打赏 ¥45.00
  • 10 linghz 得到打赏 ¥45.00
在线客服 快速回复 返回顶部 返回列表