发作品签到
专业版

CW32电压电流表

工程标签

75
0
0
0

简介

该项目是基于立创·地文星CW32F030C8T6开发板的电压电流表。设计和实现一款数字电压电流表。涵盖了硬件电路设计、固件开发、以及相关的校准与测试过程。

简介:该项目是基于立创·地文星CW32F030C8T6开发板的电压电流表。设计和实现一款数字电压电流表。涵盖了硬件电路设计、固件开发、以及相关的校准与测试过程。
电压电流表训练营【立创开发板&CW32】

开源协议

GPL 3.0

创建时间:2024-07-24 07:17:59更新时间:2024-08-23 08:18:08

描述

一、项目功能介绍

该项目的功能包括:

  1. 电压测量:能够精确测量直流电压,显示实时电压值。
  2. 电流测量:能够精确测量直流电流,显示当前电流值。
  3. 校准功能:提供校准接口和方法,确保测量结果的准确性。

实物展示:

二、硬件设计

1. MCU的选型:该项目选用的是立创·地文星CW32F030C8T6

CW32在本项目中的重要优势:

·宽工作温度:-40~105℃的温度范围

·宽工作电压:1.65V~5.5V (STM32仅支持3.3V系统)

·超强抗干扰:HBM ESD 8KV 全部ESD可靠性达到国际标准最高等级(STM32 ESD2K)

·本项目重点-更好的ADC:12位高速ADC 可达到±1.0LSB INL 11.3ENOB 多种Vref参考电压... ...(STM32仅支持VDD=Vref)

·稳定可靠的eFLASH工艺。

 

2.供电电路:LDO选择了SE8550K2,最高可输入40V电压,但为了安全!!!尽量不要接入大于30V的电压。同时也可以使用开发板上的Type-C接口或者烧录口进行供电。

 

3.电压采样电路:设计了可以采集高达100V的电压,但为了安全,实际配置为0-30V。选择220KΩ和10KΩ电阻组成分压电路,使得分压比例为22:1。ADC参考电压,本项目中为1.5V。在电路中使用1N4148二极管作为钳位二极管,防止因输入电压过高而损坏MCU。二极管钳位能够限制电压幅度,保护电路不受过电压损坏。还增加一组电压采样电路,根据实际电压选择不同的采样通道,以提高测量精度。在0-3V范围内切换到更高精度的通道进行测量。

 

4.电流采样电路:采用低侧电流采样电路进行电流检测,采样电路的低侧与开发板表头接口共地。选择100mΩ(一定要选择大封装,例如2512 或者使用插件电阻)的采样电阻来检测最高3A的电流。

这两个元件是2mm香蕉头,可以在公开库中找到。

 

5. 电压测量校准的TL431电路设计:额外增加了一个TL431电路用来提供一个2.5V的基准电压,可用于给芯片一个用于校准AD的外部电压基准。

 

6.数码管显示:使用了两个0.28寸的三位共阴数码管作为显示器件,数码管的限流电阻为300Ω。

 

7.LED指示灯:在供电电路中加入一个电源指示灯,和一个和单片机PC13口连接的LED灯。

 

8. 按键电路设计:设置了三个按键供用户使用。

 

9. PCB设计:

电流采样电阻的开尔文接法:

在放置DC电源接口和连接开发板的排母时需要注意放置的位置和距离(连接开发板的排母的中心间距为600mil)

DC电源输入端要按原理图的顺序依次放置元件

电流采样部分使用铺铜时与焊盘连接方式不要使用默认的发散,要选择直连或者直接使用填充。

DRC设计的注意事项:

电源走线应尽可能宽,约在20~60mil之间。

普通信号线:10mil左右

ADC信号走线:10mil或8mil。太宽则在线路过长时,有可能影响信号的完整性。

 

三、软件部分

1. 标定的概念

 标定是通过测量标准器的偏差来补偿仪器系统误差,从而改善仪器或系统准确度、精度的操作。为了提高电压电流表在测量时的测量精度和准确度,需要对电压电流进行标定校准。

常见的标定原理如下:

假设一个采样系统,AD部分可以得到数字量,对应的物理量为电压(或电流);

1.若在“零点”标定一个AD值点Xmin,在“最大处”标定一个AD值点Xmax,根据“两点成一条直线”的原理,可以得到一条由零点和最大点连起来的一条直线,这条直线的斜率k很容易求得,然后套如直线方程求解每一个点X(AD采样值),可以得到该AD值对应的物理量(电压值):

上图中的斜率k:

k =(Ymax-Ymin)/(Xmax-Xmin)

(因为第一点为“零点”,故上面的Ymin = 0)

所以,上图中任一点的AD值对应的物理量:

y = k×(Xad- Xmin)+0

上面的算法只是在“零点”和“最大点”之间做了标定,如果使用中间的AD采样值会带来很大的对应物理量的误差,解决的办法是多插入一些标定点。

如下图,分别插入了标定点(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4) 四个点:

这样将获得不再是一条直线,而是一条“折现”(相当于分段处理),若欲求解落在x1和x2之间一点Xad值对应的电压值:

y = k×(Xad– X1)+ y1

由上看出,中间插入的“标定点”越多,得到物理值“精度”越高。

在电压电流表测量可以使用“电压电流标定板”“万用表”等配合适合,对采集的电压电流进行标定处理。标定点越多,测量越精确。

2.程序部分:

在源程序中使用了3点标定。其中,电压标定点为0V、5V、15V。电流标定点为0A、0.5A、1.5A。但因为我目前没有15V以上的供电设备所以电压标定点重新设为0V、5V、10V。所以下面的程序都是围绕这三个值来编写的。

主程序代码如下:

标定代码计算斜率函数如下:

校准存储函数如下:

3.烧录注意:在烧录时要选对烧录器(根据自己的烧录器选择)

 

四、标定设置

1.五种显示模式,四种标定选择:

模式0: 显示正常的电压电流值(上一排数码管显示电压值*.V或.*V自动切换,下一排显示电流值,_.**A)

模式1: 电压5V标定值设置。上一排数码管显示U.05. 。下一排显示当前电压值*.**V。在该模式下,应将万用表测量被测位,调到5.00V。 按下K2键后,将当前值标定为5V电压值。

模式2: 电压10V标定值设置。上一排数码管显示U.10. 。下一排显示当前电压值*.**V或**.*。在该模式下,应将万用表测量被测位,调到10.0V。 按下K2键后,将当前值标定为10V电压值。

模式3: 电流0.5A标定值设置。上一排数码管显示A.0.5 。下一排显示当前电流值*.**A。按下K2键后,将当前值标定为0.5A电流值。

模式4: 电流1.5A标定值设置。上一排数码管显示A.1.5 。下一排显示当前电流值*.**A。按下K2键后,将当前值标定为1.5A电流值。

在模式1-4时,可以通过按键3直接返回模式0。

2.电压标定:(标定5V和10V方法一致,需要标定两个值才能准确测量)

  1. 使用DC电源作为输入,接上JP1处的跳线帽。
  2. 把万用表黑色表笔接入TGDND中,红色表笔接入T_V中。
  3. 通过按键1把模式调到模式1
  4. 通过调节RP1使万用表上显示5.00V,然后按下按键2进行标定。
  5. 标定完成后,通过按键3返回模式0

3.电流标定:(标定0.5A和1.5A方法一致,需要标定两个值才能准确测量)

   标定电流使用的是电压模拟方式进行标定。万用表使用显示的电压=R0(0.1Ω)*实际电流。所以万用表显示的电压*10可以看作为实际电流值。(在标定时不要焊接R0)

  1. 使用DC电源作为输入,接上JP2处的跳线帽。
  2. 把万用表黑色表笔接入TGDND中,红色表笔接入TI+中。
  3. 通过按键1把模式调到模式3
  4. 通过调节RP2使万用表上显示0.05V,然后按下按键2进行标定。
  5. 标定完成后,通过按键3返回模式0

 

 

五、外观、外壳部分

1.嘉立创彩色PCB设计:PCB的设计使用嘉立创的彩色丝印工艺,使外观更加好看,美观。

2.嘉立创面板设计:使用了嘉立创的面板设计,并在立创商城中进行面板定制。面板的工艺使用了薄膜面板,高透明,无鼓包,厚度0.2mm,强遮光,背胶使用了3M9448A。可以贴在3D外壳上。

3.3D外壳设计:外壳在SolidWorks中进行设计,并在嘉立创进行3D打印。外壳使用上盖和后盖设计方案,并通过M3螺丝和M3螺母进行组合。(螺丝的长度为16mm)

展示视频:【立创开发板】CW32电压电流表_哔哩哔哩_bilibili

 

设计图

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

BOM

暂无BOM

附件

序号文件名称下载次数
1
3D文件.rar
2
2
数字电压电流表代码.rar
4
3
BOM_V2.0_Schematic2_2024-08-21.xlsx
1
4
演示视频50M.mp4
3
克隆工程
添加到专辑
0
0
分享
侵权投诉

评论

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

底部导航