数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 9675|回复: 239

[工仪] 用0.5元的py32f002a单片机制作的电池內阻仪

    [复制链接]
发表于 2023-7-29 14:05:48 | 显示全部楼层 |阅读模式
上次做的内阻仪比较费电,这次改成单电源的了,单片机用的0.5元的PY32F00A单片机,主要为了试试这单片机能不能用。

总体做的比别人做的个头大,精度和分辨率也不如别人做的,但是全身都是便宜货,虽然电路麻烦点但是里面元器件价格却不高。
设置了两个档位,欧和毫欧,两个档位都是恒流20毫安。读数显示00.00-2.000欧和00.00-60.00毫欧,耐压未测试隔直电容都是低压的,测18650电池没问题。

电路原理单片机输出一路1KHZ PWM经过RC滤波变成正弦波,再进入恒流电路通过隔直电容把1KHZ交流电注入到待测电池,测试夹电压信号线通过隔直电容后抬高到1.65V,然后进入放大电路,放大电路设了两个档位用来切换欧和毫欧档位。

程序算法,ADC采样率100KHZ采集1000点,经过DFT得到实部(电阻)虚部(电抗),分别再进入200点滑动平均滤波器,校准相位后只显示电阻成分。

两个操作按键,其中一个按键在两个档位之间切换,另一个没用。 显示部分采用4位数码管,右侧LED等显示档位,左侧的1个表示显示数字是正还是负。

电路图


电路图:






我是板子做来家用铁皮剪剪开的,怕开槽审核不通过就没开




制作资料下载

1.s是程序源代码,1.bin是固件。JLCEDA文件夹里面有JLCEDA的工程,原理图和PCB已经画好。




校准方法
三个校准菜单,显示P-00是短路清零、显示P-01是相位校准、显示P-02是标准电阻校准。

按住切换档位的按键再同时按住另一个进入校准模式,数码管显示P-00,按档位加的按键会在P-00、P-01、P-02之间切换,两个按键一块按退出校准菜单显示END,按另外一个按键进入显示的菜单。

P-00 夹子短路,两个按键加减调到0,先调欧档,两个按键一块按进入毫欧档,调好后再两个按键一块按保存到FLASH 显示END

P-01 夹住1欧电阻,调到这个电阻真实相位,我也不知道就调到0了,调好后两个按键一块按保存到FLASH 显示END

P-02 夹住标准电阻把读数调到和电阻一样,也是先调欧档,两个按键一块按进入毫欧档,调好后再两个按键一块按保存到FLASH 显示END

家准演示视频,在家蹲了快16年语言能力很差还不会普通话。。。 听不懂可以点开字幕有自动生成的字幕。

毫欧档校准可以用10毫欧或者再大点的校准,校准完了后测0.1毫欧可能会偏大,再用短路清零调小就行了。

https://www.bilibili.com/video/BV1g14y167Yy/?spm_id_from=333.999.0.0

实物图










































本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x

打赏

参与人数 19家元 +485 收起 理由
vip2128 + 30 優秀文章
沙漠臭屁虫 + 30
闻太师 + 30 謝謝分享
aec + 30 謝謝分享
ringlys0 + 8 会编程的都是大神。
trg13 + 6 謝謝分享 厉害厉害
jpdd521 + 30 硬核大佬,就是歪歪,666.
IlovePLC + 30 優秀文章
kkdkj + 30 謝謝分享
hongo + 30 優秀文章

查看全部打赏

本帖被以下淘专辑推荐:

 楼主| 发表于 2023-7-29 19:04:26 | 显示全部楼层
xxh2003 发表于 2023-7-29 14:34
厉害,这东西我能看看,搞不懂!

这东西不复杂的,电路就是恒流+放大,程序也只是用到初中的三角函数相关知识,不过我上学时候贪玩没好好学习,用到都是后来自学的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:06:35 | 显示全部楼层

什么东西到我手里都会变丑。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:36:54 | 显示全部楼层

免费PCB不用白不用,本来考虑用PCB做个测试表比的,但是效果不好还不如夹子




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:39:09 | 显示全部楼层
猪小呆 发表于 2023-7-29 19:33
我连三角函数都忘光了,现在只会简单的加减乘除。。。

我也只会加减乘除,我初三就分流到技校上了半年就辍学了,基础非常差,只能用到什么现学现用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:42:14 | 显示全部楼层
作死的家伙 发表于 2023-7-29 17:20
难道不是矿石那位仁兄

是啊,我做了什么都到处发,很多地方都有号
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:47:20 | 显示全部楼层
rush 发表于 2023-7-29 17:34
这mcu好啊,几毛钱再添新选择,再也不受stc的气了

这个价格能用就不错了,就是不知道这型号以后会不会砍功能,实际里面有很多手册上没有的功能,我程序也是按照PY32F030参考手册写的。

这个单片机的ADC不怎么行,听说S T C的ADC比较好用是真12位。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:49:44 | 显示全部楼层
dang 发表于 2023-7-29 18:13
独乐乐不如众乐乐,佩服锄头兄的钻研精神

这东西我留着毫无用处,本身做这个就是为了玩玩,肯定愿意分享给更多人,有人觉得有用就是对我最大的支持。
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2023-7-29 19:54:06 | 显示全部楼层
石墨 发表于 2023-7-29 18:30
好复杂,PCB搞那么多飞线

我画板技能不行,那个飞线就是数码管显示用的SPI口再就是电池的,我以前搞制作都是纯飞线没电路板,就是画电路板了也是先飞线做个。


回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 19:57:28 | 显示全部楼层
zhangwj 发表于 2023-7-29 18:46
搞的外壳漂亮些。

我只会打铁皮外壳,以前打了很多网友都说丑,期待有网友能搞的漂亮点。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 20:03:06 | 显示全部楼层
作死的家伙 发表于 2023-7-29 19:57
在下佩服务农比我会搞。

但是我学的东西对我真的几乎毫无用处,也就能用来分享,家里人看我也没啥别的爱好,还素食也不吃好的,就玩玩这个就勉强容忍我玩不责怪我
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 20:27:56 | 显示全部楼层
e.woods 发表于 2023-7-29 20:13
感谢楼主的分享。平时有用到我直接买了一个成品的。
有时间的话  向楼主学习仿造一个。 ...

搞DIY主要是闲着没事玩玩,要实用还是买个成品划算,就我来说投入的时间和买元器件的钱能买个很好的成品了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 20:35:01 | 显示全部楼层
rush 发表于 2023-7-29 20:13
我有个东西做了一直没发上来,就是一个热敏电阻,控制pwm给不能调速的电脑风扇调速的小板子,换能调速的 ...

恩 这倒是,ARM内核的调试起来方便,关键是这价格比有的8位单片机还便宜
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 20:57:54 | 显示全部楼层
本帖最后由 yjmwxwx 于 2023-7-29 21:00 编辑
茶壹杯 发表于 2023-7-29 20:40
感谢LZ分享

要是我们同城  就送你一大箱电子材料  反正我自己也玩不过来

非常感谢, 我这几年买了不少东西也玩不过来了,我现在住的地方也就只能走开人了,很多东西都不舍得扔,已经饱和了。。


下面这张是我去年拍的照片,不贴图片怕你不相信,实在是没地方放东西了。。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 21:39:50 | 显示全部楼层
猪小呆 发表于 2023-7-29 21:16
为何你的显示器底座在侧面?这样能立得住嘛,看起来方便嘛?

显示器挂在后面的木头架子上,这样可以把字体放大看的行数多。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 21:44:01 | 显示全部楼层
wqwq212 发表于 2023-7-29 21:27
看看精度如何,可以自制玩玩

主题帖里有我B站网址,里面有测电阻的视频。不过毕竟玩具级别,元器件便宜就是人工贵,适合搞DIY玩玩
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 21:46:28 | 显示全部楼层
hbdj1234 发表于 2023-7-29 21:36
有时间仿制个,谢谢楼主分享!

等制作的时候有什么问题可以到论坛来交流,看到有人制作成功我才开心,感谢愿意制作的人
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 21:51:29 | 显示全部楼层
猪小呆 发表于 2023-7-29 21:46
你屋子里怎么东拉西扯到处都是线?快跟国际空间站有一拼了:

220V电灯线、网线、灯挂在铁丝上、地线、还有两个12V灯泡的线。。主要是我比较懒不爱收拾,住的地方和垃圾场差不多。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-29 22:35:43 | 显示全部楼层
wangxiangtan2 发表于 2023-7-29 22:10
这不配个12864屏幕留遗憾了

我这的COG12864个头太大了,就直接用数码管了,别人如果真要想制作买也容易,缺点就是光线强了看不清,不过驱动数码管板子的是SPI口,也可以写个程序驱动液晶
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-30 09:09:26 | 显示全部楼层
lmy2003 发表于 2023-7-30 00:17
谢谢分享,软件貌似比较难搞


软件也不复杂,一个定时器输出1K的PWM,再一个定时器设置100KHZ频率触发ADC采样,DMA把采样1000点数据传输到RAM,再用DFT计算这1000点数据,其实就是和1000点的COS和SIN表相乘累加,100000除1000点=100HZ,每个数据点就是100HZ,激励信号是1KHZ就是第10个点,也就是COS和SIN表里面包含十个周期。 和COS表相乘累加的数据就是实部(电阻),和SIN表相乘累加的数据就是虚部(电抗),实部和虚部再各进入200点滑动滤波器。 这时候夹住无感电阻,把实部和虚部用ATAN2计算出角度,然后把角度旋转到0度就行了,就只显示实部就行了,比如得到的数字是2000,而实际测的电阻是1欧,要想显示1.000欧,就直接2000乘0.5就行了,校准记就调0.5行了,虽然这样校准有点简陋但是也能用,整个算法就是加法和乘法。


单片机边上 H8 H9 就是SWD调试口,可以用来烧写固件,我用的是JLINK OB 三根线就行了,H8是SWDIO,H9是SWCLK,另外一根线接GND


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-20 04:01 , Processed in 0.187200 second(s), 14 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表