矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
楼主: zhengrob

基于AD7175的Voltgen自校准电压源_更新V2.1

  [复制链接]
发表于 2024-4-20 19:24:15 | 显示全部楼层
感谢楼主!我的模拟板差不多画好了,数字版和电池供电电源还在磨蹭。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-4-25 16:56:39 | 显示全部楼层
zhengrob 发表于 2024-4-20 16:46
以上发布的2版固件,都没有激活DS18B20,因为长时间运行发现温度会不定时的显示0.00°C的情况,等debug完再 ...

关于校准,洋洋洒洒写了几百字,外加图片视频,一提交,画面一切换,什么都没有了?
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-4-26 17:14:56 | 显示全部楼层
zhengrob 发表于 2024-4-17 11:01
简单讲一下组装调试。对于硬件,如果从画板子开始到打板焊接元器件,这绝对是一个需要耐心的大工程。建议采 ...

重写校准部分。

需要一条USB转TTL线将Voltgen板与PC相连,PL2303/CH340/CP2101/FT232方案的都行,当然FT232贵的肯定好用!

打开VoltgenROM.exe 的app(Washu的帖子里有下载链接),如下图,进入图示第1个区域选择19200波特率和正确串口号,然后点击Connect。接下来需要验证通讯是否建立,进入第4个区域将STV100000000改为STV050000000,然后点击Send,看LCD屏上SET电压是否会变成5.000000V。如果是则通讯没有问题,可以进行下边的操作。
calibration_note.jpg

用34401(或更高位)分别测量H16端子上基准电压输出端对地的电压值和10V基准电压对地电压值,比如7.07632和10.0563。分别将其填入第2个区域的主基准电压和DAC基准电压项内。本区域内其余项依次填入固定值1.25, 249,1000000, 0,0, 0即可,然后点击本区域内的Save按键,在下方交互栏内可以看到数据传输的进度,传输完成后可以再次点击Save也就是可以操作多次Save,以确保传输实现。然后移至第3个区域直接点击Save,这个操作是将默认的多点线性校准数据传输至STM32的RAM内,同样,也可以点击Save'多次以确保数据可靠传递。

上述操作完成后,在Voltgen_V2.1主板右下方的EPROM_SAFE的2脚插针上插入一颗短路帽,然后按KEY1按键。此时LCD屏上会显示如下内容,然后按RESET键,Voltgen会重新启动。将34401接在H16端子的Voltgen输出端和地端上,此时在34401上应该显示一个很接近10V的电压。再回到VoltgenROM界面上来,此时开始做多点电压线性校准。可以通过键盘输入或者第4区域的STVxx0000000命令,分别设置0V至10V的整数电压值,依次记录34401的实际显示数值并将其填入第3区域的输入框内。比如设置7V电压输出,34401显示值是6.999960,就在7V: 后边框内填入6.999960,依次类推。全部完成后点击第3区内的Save按键,传输有可能中断,可以多次点击Save以确保数据准确传送。
cali_button.jpg cali_LCD.jpg


上述操作完成后, 再次按KEY1按键(此时短路帽还在)。依照LCD显示再次按RESET键,系统将重新启动,至此校准工作全部完成。

之所以定义这样的流程是因为STM32 的Flash内数据存储是按块进行的,而不是像真正EEPROM按字节或者字操作。所以只能先将校准数字写入RAM内的指定区域,然后通过KEY1按键触发写Flash块的操作,至于EPROM_SAFE2脚插针,是为了防止误操作而做的安全措施,校准完毕后将短路帽移除,此时再按KEY1键就不会触发写Flash的操作了。这个安排看起来不算优雅但是有效。

校准完以后。设置电压输出就应该有很不错的准确度了(完):

回复 支持 反对

使用道具 举报

     
发表于 2024-4-26 17:43:04 | 显示全部楼层
厉害,B翻成C.
发帖以防万一,先本地保存
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-4-26 18:09:35 | 显示全部楼层
zhengrob 发表于 2024-4-26 17:14
重写校准部分。

需要一条USB转TTL线将Voltgen板与PC相连,PL2303/CH340/CP2101/FT232方案的都行,当然 ...

本Voltgen_V2.1基本告一段落。当然后期会不定期更新固件。

开启一个新的项目,到时候开新帖:高分辨率多斜坡ADC,敬请期待!
MS_ADC.jpg

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2024-4-27 14:44:33 | 显示全部楼层
zhengrob 发表于 2024-4-26 18:09
本Voltgen_V2.1基本告一段落。当然后期会不定期更新固件。

开启一个新的项目,到时候开新帖:高分辨率 ...

对您的敬仰犹如滔滔江水绵绵不绝~~~~~~
回复 支持 反对

使用道具 举报

     
发表于 2024-4-27 18:48:17 | 显示全部楼层
敬仰中~~~~~ 有没有现成的成品供出售的呢?
回复 支持 反对

使用道具 举报

     
发表于 2024-4-28 10:27:11 | 显示全部楼层
太厉害了,坐等大佬讲多斜ADC
回复 支持 反对

使用道具 举报

     
发表于 2024-4-29 00:48:42 来自手机 | 显示全部楼层
膜拜大佬!期待出头套件
回复 支持 反对

使用道具 举报

发表于 2024-5-1 18:27:30 | 显示全部楼层
zhengrob 发表于 2024-4-25 16:56
关于校准,洋洋洒洒写了几百字,外加图片视频,一提交,画面一切换,什么都没有了?

由于板子布局的原因,我的COG要倒过来放,老大有空时能帮忙给出一版旋转180°显示的固件吗?伪差分版。
回复 支持 反对

使用道具 举报

发表于 2024-5-1 18:45:44 | 显示全部楼层
这是数字板。
微信图片_20240501184404.png
微信图片_20240501184431.png
回复 支持 反对

使用道具 举报

     
发表于 2024-5-19 18:20:22 | 显示全部楼层
7175的手册提到,单端使用的时候会使INL指标劣化,不知道楼主注意到没有

其实差分输入的ADC不是不能用,在缓冲电路那里把单端电压转换成差分的就可以了,比如输入单端0~10V,转换成差分±5V,另单端输入为0时差分输出-5V,这样就能完整利用差分转换的分辨率
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-5-19 21:30:48 | 显示全部楼层
本帖最后由 zhengrob 于 2024-5-19 21:44 编辑
MF35_ 发表于 2024-5-19 18:20
7175的手册提到,单端使用的时候会使INL指标劣化,不知道楼主注意到没有

其实差分输入的ADC不是不能用, ...


其实使用AD7175的场合是很少见单端输入方式的,而大多数设计确实是采用差分模式的。这里采用单端就是为了适应原来的外围电路。如果采用差分输入,需要改动的地方还是不少的。如果AD7175的供电电压是5V-0V,差分输入就应该是以2.5V为中心点的+-2.5V,输入电路需要做2.5V电位提升。如果AD7175供电电压是+-2.5V,可以+-2.5V差分电压直接输入。这2种情况都是以+2.5V作为Vref。不管用哪个方案,都需要多颗精密电阻配合才能覆盖+-12.5V的范围。

目前的单端输入方式或者伪差分方式,配合现在的电路是完全可以胜任的。如果用来做6位半输出,基本不需要做多点线性校正就可以的。如果用来做更高位的输出,大概率首先成为瓶颈的可能是电阻的温飘和电压基准的噪声。

Hioki拿AD7175来做7位半电压表(DM7275/7276),毫不吝啬地给它配了个LTZ1000H,证明它能撑得起这个台面 。当然DM7275/7276也是采用了差分输入的设计。
回复 支持 反对

使用道具 举报

     
发表于 2024-5-19 22:54:36 | 显示全部楼层
本帖最后由 MF35_ 于 2024-5-19 22:55 编辑
zhengrob 发表于 2024-5-19 21:30
其实使用AD7175的场合是很少见单端输入方式的,而大多数设计确实是采用差分模式的。这里采用单端就是为 ...



你搞错了,7175的差分电压范围是±REF,用5V的基准,每个AIN的共模输入范围是0~5V,两个AIN之间的差分电压是±5V,2.5V为中心是对共模电压来讲的,假如输入电压范围是0~12V,先用电阻分压把电压变成0~5V的范围(这个原始电路上就有),然后把这个0~5V的电压转换为两路互为反向的电压,其中一路是0~5V变化,另一路是5V~0,这样这两路电压之间的差分就是-5V~+5V。

因此只需要把原来0~5V的单buff变成两路buff即可,并不需要精密电阻,这个voltgen的精度只取决于7V基准,线性只取决于ADC的线性,其他原件的精度是无所谓的,用低温度系数的电阻,只是为了减少噪声,只要你测量7V基准和输入电压用的是同一个放大电路,那么其中误差就会相互抵消掉,这是它的设计精髓。

这个voltgen的期间选型上,唯一需要关心的是LF噪声,比如主DAC,必须用低LF噪声的(从DAC不需要,因为加权值很低),运放必须用低噪声的,甚至运放的温漂都不是非常重要(只要不太大就行,温漂太大会转为LF噪声,所有器件的温漂都会转换为LF噪声,因此虽然电阻温漂要求不高,但也不能太低)
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2024-5-20 09:00:32 | 显示全部楼层
MF35_ 发表于 2024-5-19 22:54
你搞错了,7175的差分电压范围是±REF,用5V的基准,每个AIN的共模输入范围是0~5V,两个AIN之间的差 ...

你说的这个是单端转换为差分再进ADC,在目前的方案中这样做意义并不明显。
现在的程序是用的伪差分工作方式。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-26 07:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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