5.1 电流检测模式概述

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • 5.1 电流检测模式概述
  • 登录
在本视频中,在本培训系列的 “用于检测中性去除篡改的 ADS131M04电流检测模式”部分中, 我们将概述ADS131M04的电流检测模式, 这是ADS131M04独立ADC的特殊低功耗模式, 可以当某人通过移除其中性连接 而篡改了仪表时, 检测是否 存在电流。 一种篡改技术是从仪表上 移除中性线,如右图所示。 如果中性点断开,则电压测量 将为0伏特,这反过来将导致 有功功率的0瓦测量值。 如果缺少中性线,主AC/DC 将无法正常工作。 因此,需要使用备用电源, 如电池或电源CT为仪表供电。 对于这种篡改技术,虽然由于 0伏读数有效额定功率为0瓦, 但仍然会有电流流过仍然 可以感测到的线路线。 ADS131M04具有电流检测模式, 可用于检测此篡改方案中 是否存在电流。 在此模式下,如果用户可配置的采样数 超过用户定义的ADC阈值 (这可能表示篡改),ADC将从内部 振荡器运行并向 微控制器提供中断。 由于ADC正在执行此电流检测, 因此微控制器可以进入休眠模式, 直到警报ADS131M04 检测到电流为止。 该电流检测模式是低功率, 这允许周期性地进入模式 而不会显着耗尽仪表将运行的 备用电源, 因为主AC/DC被中性线移除 禁用。 电流检测模式是一种低功耗模式, ADS131M04以2.7千比特/秒的速率 采集可配置数量的采样, 并将结果的绝对值 与可编程阈值进行比较。 如果样本窗口内的可配置数量的结果超过阈值, 则通知主机微控制器。 通过在当前通道上执行电流检测模式, 您可以检测到篡改电流。 ADC处于待机模式时 进入电流检测模式,这是一种低功耗模式, 器件未采样。 通过在ADS131M04处于连续转换模式时 向ADS131M04发送命令进入待机模式。 通过在M04的SYNC/RESET引脚上提供负脉冲, 可以从待机模式进入电流检测模式。 在电流检测模式下,标准ADC 使用自己的内部时钟进行采样。 不使用时钟外部时钟。 由于采样不是在待机模式下进行, 内部时钟用于电流检测模式, 为了降低电流消耗, 在首次进入待机模式之前, 应禁用从微控制器馈送到ADS131M04的 外部时钟。 如果器件进入电流检测 模式并且采样窗口内的 相当数量的结果超过阈值, 则DRDY下降沿通知主微 控制器。 通过在当前信道上执行电流检测, 该DRDY通知将指示 已检测到电流。 应该注意的是,每当新样本可用时, DRDY引脚就不会像设备处于 正常转换模式时那样插入。 只有在检测到电流时, DRDY引脚才应在电流检测模式下插入低电平。 处于待机模式时,也不应插入DRDY, 因为设备不会进行转换。 右侧的流程图显示了ADS131M04上的 当前检测过程。 该过程首先由用户从其正常连续 转换模式向M04发送备用 命令开始。 通过发送此命令,设备将进入待机模式。 器件处于待机模式后, 用户应在SYNC / RESET引脚上提供一个脉冲, 这将使器件进入电流检测模式, 假设ADS131M04寄存器中的 CD_LEN位已启动。 当处于电流检测模式时, ADS131M04会检查每个采样的绝对值 是否高于用户定义的阈值, 该阈值由M04上的CD阈值寄存器设置。 如果样本超出设定阈值, 则增加该当前采样窗口的阈值 计数器。 在此阈值递增后, 将检查阈值计数是否高于其中一个 ADS131M04寄存器中的 CD_NUM位设置的值。 CD_NUM位被配置 为需要超过发生检测阈值的 样本数。 要求多个样本用于检测的目的 是控制可能超过阈值的噪声值, 但是不代表足够高的功率水平以保证 主机的行动。 如果阈值计数器 大于CD_NUM位设置的值,则如果M04寄存器中的CD_ALLCH位设置为0, 或者CD_ALLCH设置为1并且 在所有使能的通道上 检测到电流,则DRDY置为有效。 DRDY置位后, 即使尚未检查完整的样本窗口, 设备也会返回待机模式。 如果检查的样本数等于样本窗口 (由一个M04寄存器中的CD_LEN位 设置且阈值计数器不高于CD_NUM值), 则器件返回待机模式 而DRDY未被置位。 要使ADS131M04定期进入电流检测模式 而无需CPU干预, 一个选项是将定时器作为输出连接到 ADS131M04上的SYNC / RESET引脚。 可以将定时器设置为使其输出 提供必要的脉冲,以使M04定期从待机模式 进入电流检测模式。 在此设计中,连接到ADS131M04 SYNC / RESET 引脚的引脚可以通过端口映射到 其中一个MSP432定时器模块的定时器输出。 该定时器可以通过电路板上的 低频晶振提供时钟,如果MSP432进入 低功耗模式,SM时钟和M时钟被禁用, 则定时器可以工作。 从而能够减少系统 电流消耗。 在此设计中,用于驱动SYNC / RESET的 定时器配置为以向上模式计数, 其中定时器计数到其 TAxCCR0寄存器中设置的值。 在计数到TAxCCR0之后, 定时器将在下一个时钟周期重置为0。 连接到SYNC / RESET引脚的定时器输出 设置为复位设置输出模式。 在此模式下,当定时器首次计数到 TAxCCR1寄存器中的值时,SYNC / RESET引脚 将置为低电平。 当定时器再次计数到0时,引脚将被置为 高电平。 为了在第一次初始化定时器时 立即进入电流检测模式, 在定时器首次启动之前,定时器计数初始化为 等于TAxCCR1的值。 TAxCCR0和定时器的频率设置应输入 设置应输入电流检测 模式的频率。 MSP432的定时器A模块具有时钟分频器, 时钟可用于其低频定时器。 左上角的F定时器公式显示了 基于所选时钟分频器的 定时器频率。 可以通过将TAxCCR0的值加1, 然后将结果除以定时器的频率 来计算进入当前检测模式的触发之间的时间。 SYNC/RESET引脚处于低负脉冲宽度 时间的持续时间也可以 通过从TAxCCR0的数量加1中 减去TAxCCR1, 然后将结果除以定时器的频率来计算。 例如,假设定时器时钟源的频率 为32.768千赫兹,TAxCCR0 和TAxCCR1的值为65,535, 这是可以容纳的最大值。 如果我们希望电流 检测模式每10秒发生一次, 那么我们可以将定时器时钟 分频器值设置为5,这将导致定时器频率 为6,553.6赫兹,负脉冲宽度时间为153微秒。 类似地,如果我们希望 当前检测模式每64秒发生一次, 那么我们可以将定时器时钟分频器值 设置为32,这将导致定时器频率 为1,024赫兹,负脉冲宽度时间为977微秒。 左图显示了触发设备进入 当前检测模式时可以遵循的 示例过程。 可以选择ADS131M04 进入电流检测模式的示例 时间是我们早期指示电源的 输入电压正在下降, 这可能表示断电或中性线 连接的移除。 在此设计中,使用TPS7A78上的 电源故障指示触发。 对于此示例过程, 禁用与ADS131M04 DRDY引脚 置位相关的端口中断,以便可以正确配置器件, 而无需触发软件读取ADC样本。 在禁用端口中断后, 主机微控制器可以修改其中一个ADS131M04 寄存器,以禁用 在当前检测模式下我们不想要比较的 所有通道。 即,应禁用所有电压通道, 并且可能禁用两个电流通道中的一个。 随后,主机微控制器 应向ADS131M04发送命令, 使其进入待机模式。 发送命令进入待机模式后, 可以使用端口映射控制器将连接到ADS131M04的 SYNC / RESET引脚的微控制器引脚 配置为定时器输出,而不是常规GPIO引脚。 由于待机模式 或电流检测模式不需要外部时钟, 因此还应禁用从微控制器 到ADS131M04 CLKIN引脚的时钟 以降低电流消耗。 此外,用于产生SYNC / RESET脉冲的 定时器应初始化其计数器, 这样我们就不必在MSP432 首先向ADS131M04提供脉冲 进入电流检测模式之前 等待很长时间。 初始化定时器计数后, 然后启动定时器,这将提供 MO4 SYNC / RESET引脚上的脉冲, 以定期启动电流检测模式, 如上一张幻灯片所述。 此时,DRDY被置为低电平的任何时间 都表示电流已被测试。 因此重新启用DRDY端口中断。 然后可以将主微控制器 置于低功率模式。 请注意,这不是专门针对此设计 而做的。 但是,如果检测到篡改电流, DRDY断言将导致 微控制器中断, 从而唤醒微控制器。 在右侧,我们看到退出 当前检测模式的示例过程。 可触发此功能的一个示例 是在停电结束后电力 已恢复到电表的情况。 对于此设计,此事件由GPS7A78的 电源正常信号置位触发。 该过程首先由微控制器退出设备 可能在断电期间放入的 任何低功率模式。 接下来,禁用用于在SYNC / RESET引脚上 提供脉冲的定时器。 连接到ADS131M04 SYNC / RESET 引脚的微控制器GPIO引脚 可以配置回GPIO操作, 以备将来手动复位ADS131M04时 使用。 接下来,再次启用微控制器 到ADS131M04的CLKIN引脚的时钟。 启用时钟后,从主机微控制器 向ADS131M04发送唤醒命令, 以便它可以退出待机模式 并返回连续转换模式。 此时,设备正在转换。 因此DRDY引脚将以常规速率置位。 由于我们之前不想读取某些通道, 因此我们不想读取样本, 因此我们进入当前检测模式。 我们禁用与DRDY相关的端口中断, 以便我们不读取任何样本。 接下来,修改ADS131M04的 一个寄存器,以便再次使能所有ADC通道。 启用所有通道后, 再次启用端口中断, 以便我们可以再次开始读取ADC值。 此时,恢复了我们最初进入 当前检测模式之前的正常
课程介绍 共计10课时,1小时35分59秒

如何使用独立计量 ADC 设计单相分流电表

ADC 电表 分流 独立计量 单相

提供有关分流器和电流互感器特性的详细信息。 讨论了三种不同的架构,用于检测用于计算计量参数的电压和电流样本。 讨论了TIDA-010036参考设计中ADS131M04独立ADC和MSP432计量/主机微控制器的功能。 概述了TIDA-010036参考设计。 讨论了TIDA-010036参考设计中使用的电路,用于将电源电压和电流转换为馈入ADS131M04的电压波形。 讨论了使用TPS7A78交流电压定期实现降压电源的优势。 讨论初始化ADS131M04,从器件获取样本以及计算CRC以检查数据包完整性的过程。 讨论了可用于根据ADS131M04的检测电压和电流样本计算计量参数的算法。 概述了ADS131M04的电流检测模式,用于检测从仪表中移除中性线连接。 显示ADS131M04电流检测模式的电流消耗结果。


展开

推荐帖子

OCaml中的80位扩展精度浮点
是否有OCaml库可以利用IA-32和x86-64架构上的80位扩展精度浮点类型? 利用历史浮点指令是理想的。 这样的库的实现在编译器之外是可能的,由于语言的ffi支持。 库必须分为两部分:本地ocaml源部分和C运行时部分。 OCaml源必须包含数据类型声明,以及所有导入函数的声明。例如,添加操作将是: (** basic binary operations on long d...
fish001 DSP 与 ARM 处理器
紧急求助
各位高手们,本人有一选型问题要求助呀,我现在决定用MSP430单片机做一个温度压力的变送器,要求是低功耗,有实时时钟系统,两个模拟量输入,1KB的EEPROM,体积小,引脚少,用于定时采样两路模拟量,但是现在不知道选哪个型号的MSP430,希望各位高手给点建议,谢谢!...
panama 微控制器 MCU
TI 博文:ADC采样积分方式的BLDC方波无感控制的原理
本文主要参考了TIDA-010031参考设计,分析下ADC采样积分方波无感控制的原理,方便大家更好地完成类似的方案设计。   1.下面是典型的三相BLDC电机控制框图. 三个半桥驱动BLDC无刷电机,检测低边总线电流 2.典型的BLDC电机相电流和反电动势波形图分析 从波形上看,每60度电角度,只有两个半桥有驱动电压输出,另外一个半桥上下管全关,这个...
qwqwqw2088 模拟与混合信号
MSP430设置串口波特率的方法
给定一个BRCLK时钟源,波特率用来决定需要分频的因子N:               N = fBRCLK/Baudrate 分频因子N通常是非整数值,因此至少一个分频器和一个调制阶段用来尽可能的接近N。 如果N等于或大于16,可以设置UCOS16选择oversampling baud Ra...
fish001 微控制器 MCU

推荐文章

TQ210搭载Android4.0.3系统构建之ADC从驱动到HAL到JNI到应用程序(驱动篇) 2024年12月16日
ADC的驱动也采用platform设备驱动的方式进行编写,platform_device为platform_driver提供ADC控制器/ADC数据存储器/ADC延时器的地址,在platform_driver的probe函数在进行ioremap的映射,进而操作相应的寄存器。 对于ADC寄存器的操作,可分为三步: 1.使用clk_get获取adc时钟,接着使用clk_e...
TQ210搭载Android4.0.3系统构建之ADC从驱动到HAL到JNI到应用程序(HAL篇) 2024年12月16日
其实ADC的HAL层和BEEP、LED的就HAL层很像,所以注释就很少了,详情见BEEP、LED的HAL层 直接上源码吧 adc_under_hal.h #ifndef __ADC_UNDER_H #define __ADC_UNDER_H #include hardware/hardware.h #include stdint.h #include sys/cd...
TQ210搭载Android4.0.3系统构建之ADC从驱动到HAL到JNI到应用程序(JNI篇) 2024年12月16日
ADC的JNI层采用的方式与BEEP中JNI层采用的方式是一致的,采用Java+包名+类名+方法名,具体见BEEP的JNI层 直接上源码 adc_under_jni.c #include android/log.h #include jni.h #include hardware/hardware.h #include hardware/adc_under_...
TQ210搭载Android4.0.3系统构建之ADC从驱动到HAL到JNI到应用程序(应用程序篇) 2024年12月16日
adc的上层应用:在UI主线程中,通过Handler机制,在自定义的线程与主线程之间进行消息的传递,从而更新文本控件显示ADC转换的值 AdcActivity.java package com.under.adc; import java.text.DecimalFormat; import android.os.Bundle; import...

wudianjun2001

学习了,呵呵。不错,涨知识了!

2020年03月14日 15:51:03

lai28450748

学习了

2019年10月18日 11:35:42

zly1986ZLY

学习了,呵呵。不错,涨知识了!

2019年09月13日 17:36:24

jpf

学习到了,希望多出一点这样的视频~

2019年09月10日 16:39:51

zwei9

学习学习

2019年09月05日 00:53:39

大明58

如何使用独立计量 ADC 设计单相分流电表

2019年08月30日 10:50:17

steven0143

學習了,相當精彩的說明與介紹~

2019年08月29日 14:15:21

zx1988ZX

精彩的讲座,学习了!

2019年08月17日 20:38:26

SensorYoung

学习如何使用独立计量 ADC 设计单相分流电表

2019年08月06日 15:59:02

hellokt43

学习如何使用独立计量 ADC 设计单相分流电表

2019年08月02日 09:26:49

分享到X
微博
QQ
QQ空间
微信

EEWorld订阅号

EEWorld服务号

汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved