双积分式直流数字电压表

By SCU Team

任务

全国大学生电子设计竞赛模拟题
在不采用专用A/D转换器芯片的前提下,设计并制作积分型直流数字电压表。

要求

1.基本要求;

(1)测量范围: 10mV~2V
(2)量程: 200mV,2V
(3)显示范围:十进制数0~ 1999
(4)测量分辨率: 1mV (2V档)
(5)测量误差:≤士0.5%士5个字
(6)采样速率:≥2次/秒(7)输入电阻:≥1MQ
(8)具有抑制工频干扰功能
(9)用液晶屏将所有信息显示和设置。

2.发挥部分

(1)测量范围: 1mV~2V
(2)量程: 200mV, 2V
(3)显示范围:十进制数0~ 19999

方案论证与比较

方案一:积分式直流电压测量电路

如图1所示,当电容器上的电压Uc比待检测的信号电压Vin低时,从比较器的输出端就可以检测到高电平;当电容器上的电压Uc比待检测的信号电压高时,从比较器的输出端就可以检测到低电平,也就是在比较器输出端出现下降沿的瞬间Vin和Uc正好相等,即:

该方案对电阻和电容器的精确度、稳定性以及单片机的时钟要求比较高,Vcc的变化对充电时间t的影响非常大,在测量小信号和大信号时,精度会下降。被测电压的值与时间是非线形的,计算处理较为困难。

方案二:双积分直流电压测量电路

测量步骤

先将被测电压加到积分电路上,对电容充电一段固定时间(定时积分),然后使电容对基准电源放电(反向积分),当电容上的电荷放完,比较器翻转,给单片机中断信号,从而检测充电和放电时间。运放采用集成块OPA134,具有超低失真,低噪声等特点。通过充电时间和放电时间,可以计算出被测电压。公式:

结合上述公式,可得

所示为双积分电路核心电路,OPA134作为积分运算器,LM339作为比较器。所有开关均采用CD4066模拟开关,通过单片机控制。综合以上几种方案,我们选择方案二。

系统硬件电路设计

基准电压Vref产生电路

如图3所示,通过对VEE进行滤波,用电位器进行分压产生负压,之后通过电压跟随器,提高带负载能力,稳定基准电压。

信号调理电路

用于调节不同量程档位。
如图4所示,该信号调理电路采用仪表放大器芯片PGA202,该芯片可利用单片机控制1,2管脚达到对输入信号放大1,10,100,1000倍,且放大倍数稳定可靠。本电路将7管脚接地,8管脚输入待测信号,单片机判断信号后进行相应放大处理。

模拟电子开关的设计

由于两次积分的切换不能直接用手动控制,并且每次测量都需要对积分电容进行放电处理,为实现短延时,自动化处理,我们采用了CD4066芯片,内置4个模拟开关,其引脚如图5所示。本电路将A开关控制待测电压接入,B开关为校零调整开关,C开关控制基准电压接入,D开关控制积分电容放电。单片机通过控制4个control端实现相应开关的打开闭合。

分压电路设计

由于积分信号经过LM339比较器后输出正负电压过大,无法直接输入单片机,本电路采用如下简单分压电路,将LM339输出的电压控制在0V~VCC/2之间,之后输入单片机进行检测。分压电路如图7所示。

总仿真图

软件控制内容:

软件自动控制是基于嵌入式stm32F429IGT6型ARM处理器作为核心板,使用cubeMX软件快速初始化程序。利用2个定时器中断捕捉比较器的上升沿和下降沿,准确测量出两次电路积分的过程时间,并通过检测时间,通过(time2-time0)*Voltage0/time1公式换算出电压值,自动判断出其量程,反馈到程控放大器调整其放大倍数,测量时进行自动调零。通过I2C通信协议将各种指标参数显示在OLED屏上。

程序逻辑参考

TG1:自动校零(接地)
TG2:积分电容的放电
TG3:选择被测电压
TG4:选择基准电压
预先设置计数比较值n0,n1,基准电压E0,系统时钟周期T0;

电路部分程序逻辑设计建议:

t0~t1整备阶段:TG2闭合,整个积分电路输出为零,计数器清零,默认量程200mV-2V(不进行放大),建议设置延时20-30ms,以待电路稳定;

t0~t1重整备阶段:TG2闭合,整个积分电路输出为零,计数器清零,建议设置延时20-30ms,以待电路稳定;

t0~t1校零阶段:TG2闭合,TG1闭合,整个积分电路输出为零,计数器清零,控制仪表放大器100倍放大,建议设置延时50-60ms,以待电路稳定;

t1~t2采样阶段:TG3闭合,计数器开始计数,建议采样时间T1为60ms 或100ms,计数值N1为T1/T0;

t2~t3比较阶段:计数器计满N1产生中断,TG4闭合,进行基准电压反向积分,重新计数,等待电压比较器下降沿信号,获得计数值N2:
N2>n1 ,电压200mV~2V, 直接执行输出阶段;
(N2 > n0)&&(N2 < n1),电压20mV~200mV,控制仪表放大器10倍放大,重新回到重整备阶段;
N2 < n0,电压1~20mV,控制仪表放大器100倍放大,一旦N2已大于n1,可不等待下降沿信号,立即回到重整备阶段,以节约时间;

t4输出阶段:输出(N2-N0)*E0/N1,每30s执行一次校零阶段,否则直接回到整备阶段;

2020电赛模拟题:自制积分式直流数字电压表相关推荐

  1. 2020电赛F题回顾——简易无接触温度测量与身份识别装置

    2020电赛F题回顾--简易无接触温度测量与身份识别装置 第一次参加电赛,已经大三了,这也有可能是我的最后一次,不禁感慨时间过得真快.在实验室一起奋斗的夜晚既辛苦又幸福,感谢陪伴在我身边一起做电赛的同 ...

  2. python利用tensorflow识别圆_RaspberryPi上实现佩戴口罩识别——2020电赛F题小记

    今年的电赛题目非常反常,传统控制题目基本没有,新增加了测距题目,甚至物联网题目,Ai题目都出来了.直接电赛变算法+钞能力大赛.看到F题:测温+人脸识别,碰巧我们手头有调好的红外测温模块+树莓派+ope ...

  3. 2020电赛A题(心电波形,lcd显示,心率计算,iir滤波处理)

    STM32心电波形显示 心率计算 1.硬件部分 心率信号收集的硬件部分采用了ADS1292模块(淘宝就有卖),这个芯片也是TI的要求使用芯片. 除了ADS1292的另外一块芯片的作用是电源隔离 购买模 ...

  4. 2020电赛经验总结+E题解题思路

    2020电赛经验总结+E题解题思路 取得的成果和经验 四川省2020年电子设计竞赛已经落下帷幕,第一次参加电赛,无论从知识还是经验上都有所获得.虽然只取得省三的成绩,但整个比赛过程为明年备战国赛具有指 ...

  5. 【2020团队天梯赛模拟题L2-1】 根据输出序列判断是否是栈的输出结果(C语言)

    [2020团队天梯赛模拟题L2-1] 根据输出序列判断是否是栈的输出结果(C语言) (因为找不到题目只有回忆写题了)题目描述:输出m,n,k3个整数,其中m代表栈的最大存储容量,n代表输出序列的个数, ...

  6. 电赛 | 电源题软件如何准备?

    关注.星标公众号,直达精彩内容 摘要:PWM和SPWM在电源的备战中是很有必要的.基础的恒流源.恒压源需要使用PWM的占空比及频率来达到数控的作用,往后的逆变则需要用到SPWM.当然还有ADC.DAC ...

  7. 电赛猜题?我觉得没用,还不如做好这些!

    01 前言 大家好,我是张巧龙,转眼又到22年电赛,这个公众号上有很多同学可能都参加过电赛,有毕业的已经工作的,也有没毕业的今年要参加. 我第一次接触电赛是在大一暑期,从参加电赛到指导学生参加电赛,转 ...

  8. 2021年电赛 E题 数字传输

    数字-模拟信号混合传输收发机(E题) 目录 题目 方案 工程文件 题目 (2) 实现数字信号传输. 首先键入4个0~9的一组数字,在发送端进行存储并显示,然后按下发送键对数字信号连续循环传输.在接收端 ...

  9. 2020TI省级电赛E题制作杂谈

    2020TI省级电赛E题制作杂谈 写在前面 THD的计算准则 THD测量的步骤 频谱变换 计算部分 常用的波形和其THD THD在系统中的重要性 写在前面 在这里记录2020TI省级电赛E题制作的方案 ...

最新文章

  1. craigslist_Craigslist,Wikipedia和丰富经济
  2. 发送经纬度坐标给指定手机
  3. sql脚本对比工具_Java开发中用到的数据库迁移工具(flyway)
  4. python写dnf游戏脚本辅助_HMM-维特比算法明白与实现(python)_dnf辅助,r6辅助
  5. Codeforces Round #703 (Div. 2) 题解
  6. jquery中的创建节点和添加节点的方法
  7. Linux内核源代码分析-目录
  8. 数据库工作笔记018---MySQL 中 You can't specify target table '表名' for update in FROM clause错误解决办法
  9. php sorcket_深入浅出讲解:php的socket通信
  10. yolov3 python接口_darknetyolov3调用Python接口来检测和保存批处理图像,DarknetYoloV3,python,进行,批量,图片,并...
  11. python计算相关性显著性p值_基于python如何实现计算两组数据P值
  12. 数学建模之层次分析法及其应用
  13. openwrt USB热插拔(hotplug)
  14. graphpad做柱状图_轻松搞定各种柱状图
  15. 彩蛋-管理员root@‘locahost‘ 密码丢失,处理方案。
  16. TLV协议——实现封包与解析
  17. 赛效:超级简历在线简历助手教您一键制作简历
  18. 人工智能α-β树剪支图文
  19. Gunicorn系列之利用Gunicorn启动项目
  20. SpringBoot运行主程序报错:No subdirectories found for mandatory directory location ‘file:./config/*/‘.

热门文章

  1. macOS Monterey 12.0.1 App闪退问题
  2. LeetCode 45.跳跃游戏II
  3. ssm+bootsrap人力资源考勤OA人事系统-JAVA【数据库设计、源码、开题报告】
  4. 微信小程序踩坑之pc端小程序的上传图片失败没有上传成功
  5. linux交换分区的文件格式为,linux利用交换分区空间类提供虚拟内存,交换分区的文件系统类型必须是() (5.0分)...
  6. Visual Studio,vs 中文SVN插件安装
  7. 35岁的程序员出路在何方?
  8. 快节奏生活,到底,快在哪里?
  9. swiper实现匀速无缝滚动
  10. 蜜雪冰城申请注册“雪王胖胖”,经营范围不止冰饮