定时器门控模式在电流采集上的应用

一、定时器门控模式介绍

定时器门控模式是单片机定时器的一种工作模式,是指定时器根据触发输入信号的电平来启动或停止计数器的计数。使用定时器门控模式,可以准确、高效的采样出一段时间内,电流采集芯片输出的高电平占空比,通过转换关系,从而计算出准确的电流值。

二、定时器门控模式的优点

1) 精度高:定时器门控模式可以通过外部信号来控制定时器的启动和停止,从而可以实现更加精确的计时和测量。
2) 节省资源:定时器门控模式可以减少CPU的负担,从而节省系统资源。
3) 灵活性强:定时器门控模式可以根据不同的应用场景进行灵活配置,从而满足不同的需求。
总之,定时器门控模式是单片机定时器的一种重要工作模式,它可以提高系统的精度和效率,是很多应用场景下的理想选择。

定时器门控模式如何使用:

使用定时器门控模式,需要配置触发定时器计数的信号极性等等。一般芯片官网手册对该模式的配置以及时序图都有详细的描述,下图为其中的一部分重要内容:





图135 门控模式下的控制电路:


根据图中的时序图可知,该模式下定时器的计数值只会在配置的电平属性下计数,否则停止计数。

定时器门控模式在电流采集上的应用:

1、芯片的选择:

采集中路中电流的方式有很多种,使用专业的电流采集芯片无疑是最佳的方式之一,其特点包括精度高、响应快、功耗低、可靠性高等等,cpa306m25便是一款完全具备以上优点的电流采集芯片。

①cpa306m25特性:

◆ 差分输入电压范围:±50 mV 或±250 mV

◆ 曼彻斯特编码或未编码的数据输出选项

◆ 低失调误差:±50 µV 或 ±100 µV(最大值)

◆ 低增益误差:25°C 时±0.2% (最大值)

◆ 优异的温漂性能:

◆ ±1 μV/°C(最大值)失调温漂

◆ ±40 ppm/°C(最大值)增益温漂

 高边和低边均支持 3.3 V 和 5 V 供电电压

◆ 高共模瞬态抗扰度:±150 kV/µs(典型值)

◆ 为系统安全设计的故障诊断功能

◆ 宽工作温度范围:–55°C 到 125°C

◆ 额定工作电压下使用寿命大于 40 年

 质量等级:GJB7400 N1

◆ 隔离式开关电源

 不间断电源

简化电路图如下:


②芯片概述:

CPA306x 器件采用二氧化硅作为隔离层,支持高达 5 kVRMS 的电气隔离。

该技术将高低压域分开从而防止低压器件被损坏,同时提供低辐射和高磁场抗扰度。高共模瞬态抗扰度意味着 CPA306x 器件在隔离层之间正确地传递信号,适合要求高压、大功率开关的工业电机控制和驱动应用场合。

器件内部输入共模过压和高边电源丢失检测功能有助于故障诊断和系统安全。CPA306x 器件提供±50 mV 差分输入电压选项从而降低分流电阻上的功率损耗。

CPA306x 的输出位流采用曼彻斯特编码或未编码,然后通过后级的 FPGA 或 DSP 处理。CPA306Ex 版本支持单线的数据和时钟传输,让后级接收器无需考虑时序要求。

CPA306x 器件通过使用 sinc3 滤波器能够在 78.1 kSPS 数 据吞吐率时实现 86 dB 的信噪比。外部时钟频率范围是从 5 MHz 到 21 MHz,为使用提供灵活性。

CPA306x 器件通过宽体八脚 SOIC 封装 ,支持在额定扩展工业温度范围内(–55°C 到 125°C)正常工作。

③引脚介绍

芯片的输入驱动时钟频率较高,为5MHz-21MHz,根据该描述配置正确的PWM驱动范围,也正如此,使用频率较低的电流采集方式(如通过上升沿、下降沿触发进入中断从而计算高电平时长)无法适用与该芯片进行电流采集。


2、硬件原理图设计:

参考cpa306m25芯片手册,可设计电流采集原理图。如下图示例:芯片右侧为电流采集部分,左侧为信号结果输出部分。


单片机输出pwm通过7号引脚以驱动芯片正常工作,6号引脚为数字信号输出,连接单片机的定时器触发源管脚,2、3引脚连接电压差分输入,8、5号引脚分别连接数字电源、数字地,1、4号引脚分别连接模拟电源、模拟地。

3、数字输出和转换公式

模拟输入(AINP – AINN)和调制器输出的关系如图所示。模拟输入 0 V 理论上对应数字位流中 0 和 1 出现的时间各占 50%。在数字输出位流中 1 的密度和对应的模拟输入电压可以通过下列等式计算:



4、软件流程图

①简要描述

配置单片机的主、从两个定时器,使能主从定时器,使能pwm输出驱动芯片开始进行电流采集,等待主定时器count溢出中断,于此同时获取从定时器的count值,保存后进行count值清零,通过公式转换或者其他方法计算出实际电流值。

②流程图

该流程图为单次电流采集,循环捕获从定时器中的计数值参与计算,便可以实现连续的电流采集。



5、程序设计

根据电流采集芯片的信号输入输出特性,信号处理需要用到主从两个定时器以及一个产生pwm的定时器,所以程序上首先需要对定时器做相关配置。

①外设配置参考

主要配置单片机定时器分频系数,自动重装载值,开启门控模式,选择触发源,开启定时器中断,选择中断优先级,使能定时器。

从定时器配置:

参考程序:


主定时器配置

参考程序:


pwm输出配置

参考程序:


②定时器中断获取计数值

调用定时器中断函数,读取count计数值,清零count值,清除中断标志位。


③计数值转换电流值

方法一

根据从定时器的count值,除以主定时器的装载值,得到密度Density,使用四.3章节提供的公式进行数据转换,从而得到电路中实际的电流值。

方法二

采集出几组电流值与count值,导入表格获取线性关系和公式,将公式直接带入程序中,亦可以得到准确的电流值,如下图所示,横坐标x表示从定时器count值,纵坐标y表示采集到的电流值。


参考程序:








最后:本数据采集方式意在获取原始值之后直接进行数据转换,简单明了,但可能会存在出现干扰数据从而得到错误的电流值,所以有必要加入滤波算法。可以采用平均值滤波算法或其他更好的滤波方法,以此保证数据的正确性、稳定性和可靠性。

更多精彩内容,欢迎关注迈硕电气。

028-87409729

: 9:00-18:00

17348136089 

: 7*24h