单相用电器分析监测装置
实验题目:单相用电器分析监测装置
1. 课程简要信息
课程名称:电子系统综合设计课程学时:课内 $1 6 +$ 课外 16适用专业:电子信息类学生年级:三年级
2. 实验内容与任务
1)任务
设计并制作一个可根据电源线的电参数信息分析用电器类别和工作状态的装置。该装置具有学习和分析监测两种工作模式。在学习模式下,测试并存储各单件电器在各种状态下用于识别电器及其工作状态的特征参量;在分析监测模式下,实时指示用电器的类别和工作状态。

图 1 分析监测装置示意图
2)要求
(1)可识别的电器电流范围 0.015A-5.0A,可包括但不限于以下电器 LED 灯、节能灯、USB充电器(带负载、无线路由器、机顶盒、电风扇、热水壶。)可识别的电器工作状态总数不低于 7,电流不大于 50mA 的工作状态数不低于 5。同时显示所有可识别电器的工作状态。自定可识别的电器种类的电器,并完成其学习过程。
(2)实时指示用电器的工作状态并显示电源线上的电特征参数,响应时间不大于4s。特征参量包括电流和其他参量,自定义其他特征参量的种类、性质,数量自定。电器的种类及其工作状态、参量种类可用序号表示。
(3)随机增减用电器或改变使用状态,能实时指示用电器的类别和状态。
(4)具有学习功能。清除作品存储的所有特征参数,重新测试并存储指定电器的特征参数。一种电器一种工作状态的学习时间不大于 1分钟。
(5)其他
3. 实验过程及要求
学生以三人一组的形式进行实验,,利用所学模电、数电、单片机等相关知识,在课内 16 学时内完成本次实验任务。
1)预习部分
观察用电器工作时电流波形,考虑实验所需的测量精度。熟悉电压、电流互感器和 AD 采样芯片 ADS8688、过零比较器 LM311 等芯片。熟练运用单片机 MSP430 和FPGA。了解线性最小二乘法和矩阵运算知识。
2)电路设计
根据题目要求设计网侧电流电压的采样电路
根据器件需求设计辅助电源电路
完成系统的焊接并测试采样波形,要求布局合理,焊接美观,留有测试点。
3)软件设计
调试AD芯片并完成电压值和电流波形的周期采样根据题目要求采用合适方法处理电流波形信号并分析用电器种类
4)报告总结
每组在完成实验时,同时提交设计报告。
4. 相关知识及背景
实验中需要掌握的相关理论知识主要包括MSP430单片机、数字电路、采样电路设计、模数转换芯片的使用、信号与系统、线性代数(矩阵论)、数理统计和变压器等,以及一些与实际工程相关的系统测量、控制和调试技巧方法。
5. 教学目标与目的
课程以用电器监测系统为依托,通过不同层次的实验内容与任务以及边制作边学习的教学模式,促进学生对理论知识的理解,接触机器学习、算法等方面的知识,全面培养学生的工程实践能力、自学能力、交流沟通以及团队协作能力。
6. 教学设计与引导
预习及要求:学习观察用电器工作时电流与电压之间的相位关系,了解电器工作原理,考虑实验所需的测量精度。选择 A/D 的分辨率。查找资料选取合适的设计电路及实现方法。老师检查相应的设计思路,进行下一步。
课堂讲解、方法引导、背景解释
根据题目要求重点讲解电压、电流互感器和 AD采样、过零比较器等知识点。讲解线性最小二乘法、矩阵运算、超定方程的最优解。时域及频域的区别、相应的优缺点及最后的选择。
背景解释:实验来自楼宇家用电器用电检测及管理以及 2017年全国大学生电子设计竞赛题,通过实验让学生了解机器学习及算法在工程中的一些应用,以及两者在实际应用中的主要作用。
实验过程中的方法指导:用电器比较少可以采用穷举法、波形合成法等,也可尝试频域和时域算法,让学生尝试各种方法比较优劣。
本实验最后的结果是检测用电器是否正在使用,验收重点是看检测装置是否判断正确。特别是当 5A 电器与 15mA 电器同时使用时(两者电流相差 333 倍)能否正确判别。
在完成实验的基础上考虑两个问题:
1)在已知用电器的基础上接入一未知用电器,根据总的检测电流导出未知用电器的观测矩阵。
2)当有两个相同的用电器同时使用时如何能正确判别。
7. 实验原理及方案
1) 系统结构

图 2 单相用电器监测装置系统结构框图
2) 实现方案
(1)用电器工作状态识别算法
不同用电器工作时网侧电流波形会发生变化,据此,要从电流波形中分析出用电器工作状态主要有以下两种方法:
方案一:谐波分析法。对单一用电器工作电流信号整周期采样结果做 N 点 FFT, $5 0 \mathrm { H z }$ 基波与各高次谐波处的结果组成 n 维向量,由于各用电器的工作互不相关,因此对应 m 个用电器的 m 个向量组成向量空间的一组基,各用电器同时工作时的网侧总电流波形 FFT 结果组成n 维向量 y,y可以由空间的一组基 来表示。其中 H为基矩阵, $\mathtt { X }$ 的元素只有1和0两种取值,表示 m 个用电器各自的工作状态。当 $\mathrm { m } { = } \mathrm { n }$ 时,由 可以求出各用电器的工作状态。
方案二:线性最小二乘估计法。在学习过程中,将各用电器单独工作电流整周期采样值组成n 维列向量,其中 $\mathrm { n }$ 为采样点数。将对应 $\mathfrak { m }$ 个用电器的列向量组合成 $\mathrm { n } \times \mathrm { m }$ 维观测矩阵 H,在监测模式下,采样多种用电器同时工作时的网侧电流波形信号,组成 $\mathrm { n }$ 维向量 ,其中 v 为系统测量噪声, 为矢量参量,表示 $\mathfrak { m }$ 个用电器各自的工作状态。根据线性最小二乘估计法,有
$$ { \hat { \mathbf { \theta } } } = ( { \mathbf { H } } ^ { T } { \mathbf { H } } ) ^ { - 1 } { \mathbf { H } } ^ { T } { \mathbf { x } } $$
分析:方案一和方案二在理论上都是可行的,但方案一消耗大量资源和功率,且高次谐波幅度较小,采样值受噪声影响大,运算结果不够准确,仅适用于识别用电器个数较少的情况。方案二算法运算量较小,可以准确识别的用电器个数多,故选择方案二。
实施方法:
使用线性最小二乘估计法测量用电器种类的详细方法如下。
假设有一取决于未知参量 $\theta$ 的信号 $s [ n ]$ ,由于噪声或模型不准确,观测信号是受干扰的信号,用观测数据 $x [ n ]$ 表示, $\theta$ 的最小二乘估计就是使得观测数据和假设信号之间的平
方误差 $J ( \theta )$ 最小的 $\theta$ 值。其中
$$ J ( \theta ) = \sum _ { n = 0 } ^ { N - 1 } ( x [ n ] - s [ n ] ) ^ { 2 } , n = 0 , 1 , 2 , \cdots , N - 1 $$
假设参量 $\pmb \theta$ 是 $p { \times } 1$ 维矢量时,信号 $\pmb { s } = [ s [ 1 ] , s [ 2 ] , \cdots , s [ N ] ] ^ { T }$ 是待估计参量的线性函数,即
$$ \pmb { s } = \pmb { H } \pmb { \theta } $$
其中 $\mathrm { H }$ 为 $\mathsf { N } \times \mathsf { p }$ 维满秩矩阵。
观测数据向量为
$$ \pmb { x } = \pmb { H } \pmb { \theta } + \pmb { \nu } $$
观测数据和信号之间的平方误差为:
$$ \pmb { J } ( \pmb { \theta } ) = \left( \pmb { x } - \pmb { H } \pmb { \theta } \right) ^ { T } \left( \pmb { x } - \pmb { H } \pmb { \theta } \right) $$
对 $\pmb \theta$ 求导,并令导数值为 0,解得
$$ { \hat { \mathbf { \theta } } } = ( { \pmb { H } } ^ { T } { \pmb { H } } ) ^ { - 1 } { \pmb { H } } ^ { T } { \pmb { x } } $$
根据式(2.5),可以求出矢量参量 $\pmb \theta$ 的估计值。
本系统的学习和监测过程中,在采样时刻 $t _ { 1 } , t _ { 2 } , \cdots , t _ { \mathrm { n } }$ ,各用电器单独工作时的电流时域信号 $h _ { 1 } ( t ) , h _ { 2 } ( t ) , \cdots , h _ { \mathrm { m } } ( t )$ 与同时工作时的电流时域信号 $s ( t )$ 存在线性关系:
$$ \left{ \begin{array} { l l } { s ( t _ { 1 } ) = \theta _ { 1 } \cdot h _ { 1 } ( t _ { 1 } ) + \theta _ { 2 } \cdot h _ { 2 } ( t _ { 1 } ) + \dots + \theta _ { \mathrm { m } } \cdot h _ { \mathrm { m } } ( t _ { 1 } ) } \ { s ( t _ { 2 } ) = \theta _ { 1 } \cdot h _ { 1 } ( t _ { 2 } ) + \theta _ { 2 } \cdot h _ { 2 } ( t _ { 2 } ) + \dots + \theta _ { \mathrm { m } } \cdot h _ { \mathrm { m } } ( t _ { 2 } ) } \ { \qquad \vdots } \ { s ( t _ { \mathrm { n } } ) = \theta _ { 1 } \cdot h _ { 1 } ( t _ { \mathrm { n } } ) + \theta _ { 2 } \cdot h _ { 2 } ( t _ { \mathrm { n } } ) + \dots + \theta _ { \mathrm { m } } \cdot h _ { \mathrm { m } } ( t _ { \mathrm { n } } ) } \end{array} \right. $$
其中,系数 $\theta _ { 1 } , \theta _ { 2 } , \cdots , \theta _ { \mathrm { m } }$ 的取值为 0 或 1,表示用电器是否接入电路。
将式(2.6)写成矩阵形式,即
$$ s = { \left( \begin{array} { l } { s ( t _ { 1 } ) } \ { s ( t _ { 2 } ) } \ { \vdots } \ { s ( t _ { \mathrm { n } } ) } \end{array} \right) } = { \left( \begin{array} { l l l l } { h _ { 1 } ( t _ { 1 } ) } & { h _ { 2 } ( t _ { 1 } ) } & { \cdots } & { h _ { \mathrm { m } } ( t _ { 1 } ) } \ { h _ { 1 } ( t _ { 2 } ) } & { h _ { 2 } ( t _ { 2 } ) } & { \cdots } & { h _ { \mathrm { m } } ( t _ { 2 } ) } \ { \vdots } & { \vdots } & & { \vdots } \ { h _ { 1 } ( t _ { \mathrm { n } } ) } & { h _ { 2 } ( t _ { \mathrm { n } } ) } & { \cdots } & { h _ { \mathrm { m } } ( t _ { \mathrm { n } } ) } \end{array} \right) } { \left( \begin{array} { l } { \theta _ { 1 } } \ { \theta _ { 2 } } \ { \vdots } \ { \theta _ { \mathrm { m } } } \end{array} \right) } = H \theta $$
其中,矩阵 $H$ 每列代表一种用电器的整周期电流波形采样值,每行代表一个时刻所有用电器各自电流信号。显然,系统在工作时,需要求出矢量参量 $\pmb \theta$ 的估计值,将网侧总电流波形时域采样值 $\pmb { x } = \left( x ( t _ { 1 } ) , x ( t _ { 2 } ) , \cdots , x ( t _ { \mathrm { n } } ) \right)$ 和矩阵 $\pmb { H }$ 代入式(2.5),即可求出 $\hat { \pmb \theta }$ ,从而得到电路中各用电器的工作状态。
(2)正周期电流波形采样控制方法
为了精确分析电流波形的周期性变化,也避免重复采样浪费资源,对电流波形的采样需要精准控制为一个周期。由于电流波形随用电器变化而网侧电压波形基本不变,且电流周期与电压周期相同,故选用电压波形作为电流波形周期采样的依据。
方案一:电压波形采样值过零点触发。软件控制 AD转换器在采样值达到零点时,启动一个周期的电流波形采样。该方案无需搭建硬件电路,但缺点是得到的电压波形过零点不够
稳定,容易发生抖动。
方案二:硬件过零比较器产生触发信号。采用过零比较器检测电压波形的过零点,并启动电流波形采样实现一个整周期波形的采样。
分析:为了获取完整、准确的整周期电流波形,电流波形采样的起始位置必须精确。硬件过零比较相比软件方案更加稳定可靠,且电路比较简单,故选择方案二。
实施方法:
系统网侧电压有效值为恒定 $2 2 0 \mathrm { V }$ ,电流的变化范围为 $1 5 \mathrm { m A } { \sim } 5 \mathrm { A }$ ,因此电压信号的检测选用电流型电压互感器 TV1013,它的电压隔离能力强,相移可低至 $5 ^ { \circ }$ ,线性度低于$0 . 2 %$ 。网侧电流信号选用TA1420系列电流互感器,具有 $1 5 \mathrm { A } / 2 \mathrm { m A }$ 的高输入量程,噪声敏感度低,线性度好,且可调输出范围大,可以满足要求。
使用精密交流电压互感器 TA1015-01H 和精密交流电流互感器 TA1420-03,将网侧电压、电流变为可供 AD 芯片采样的弱电压信号,如图 3 所示。为减少互感器输出波形与实际波形的相移,减小非线性度,互感器输出端连接运放,其中电阻 $R _ { 1 } = R _ { 6 } = R _ { \mathrm { f } } = 1 . 2 \mathrm { k } \Omega$ ,电容 $C _ { 1 } = C _ { 9 } = 4 5 0 0 / \omega R _ { \mathrm { f } } = 4 5 0 0 / ( 2 \pi \cdot 5 0 \cdot 1 . 2 \mathrm { k } ) { = } 1 1 . 9 4 \mathrm { n F }$ ,取 $1 0 \mathrm { n F }$ 。

图3 电压、电流互感器电路
电压互感器后级连接使用LM311 设计的滞回过零比较器,如图4所示。输出电平在电压信号过零点产生变化,送入 MSP430 单片机 IO 口,上升沿作为电流信号采样的起始点。

图 4 滞回过零比较器
(3)AD 采样电路方案
AD 采样电路选择 16 位、8 通道的 ADS8688,采样速率达 500Ksps,输入范围±10V,可以满足设计要求。电路图如图 5所示。

图 5 A/D 采样电路
(4)辅助电源电路方案
系统辅助电源由变压器和 $\pm 5 \mathrm { V } , \pm 1 2 \mathrm { V }$ 降压模块组成。220V市电经变压器变为±18V电压,随后经过7812和7912三端稳压芯片降压至 $\pm 1 2 \mathrm { V }$ ,再串联7805和7905三段稳压芯片降压至 $\pm 5 \mathrm { V }$ 。
(5)控制电路和程序设计方案
系统在 FPGA 中控制 AD 采样和获取按键值,在 MSP430F6638 中对采样信号进行处理得到用电器类型,并控制 LCD 显示。FPGA 和单片机之间通过总线传输数据。程序框图如图6 所示。

图 6 系统程序框图
8. 教学实施进程
1)电压、电流互感器及采样电路验真。
2)16 位 A/D 正确采样。
3)FPGA256 点 FFT 计算。
4)自学预习最小二乘法、C语言矩阵运算。
5)现场讲解矩阵的求导、超定方程的最优解。采用最小二乘进行检测的原理。
6)实验电路的制作、通过互感器观测电压、电流波形。
7)软硬件结合完成实验任务,提供用电器验收学生作品。
8)验收结束选取有代表性的作品进行集体交流。
9. 实验报告要求
实验报告需要反映以下工作:
1) 实验需求分析
根据实验要求,了解内容,熟悉所需理论知识、实验平台以及设计过程中所需用到的器件。然后进行下述工作:
系统方案设计:查阅资料文献,小组讨论,得出选题系统的整体框图,并就设计的系统方案进行核心器件的选择、模块方案的设计,给出《xx 系统方案设计报告》及器件清单,说明方案设计的思路及核心器件选择的理由。
模块设计:利用 Altium Designer 等电子线路软件,画出硬件电路图;利用 Visio 等绘图软件,画出软件流程图。
2) 实现方案论证
列举在设计某一电路或实现某一功能时可以采取的各种方案,对比各种方案的优缺点,说明选取方案的根据。
3)理论推导计算
描述在设计过程中所需用到的一些设计参数的公式推导过程、解矩阵的理论依据以及选择器件(如 $\mathrm { A } / \mathrm { D }$ 位数,速度等)选择抽样率等所涉及的理论知识
4)电路设计与参数选择
阐述主电路、采样电路、比较电路的设计方法,给出电路图,并且在电路设计过程中,参数选择要有说明或计算
5) 电路测试方法
记录对题目要求中各指标的测试方法及条件
6) 实验数据记录根据测试表格,记录原始测量数据
7)数据处理分析根据测量记录,对结果进行分析,对没到达指标的进行改进
8)实验结果总结写出实验报告,对实验结果总结,对作品做出自身评价
10.考核要求与方法
| 考核要求 | 项目 | 满分 |
| 基本要求 | 支持的电器电流范围0.015A-5.0A | 20 |
| 可识别的电器工作状态总数不低于7,其中电流不大于50mA不低于15mA | 20 | |
| 实时指示用电器的工作状态并显示电源线上的电特征参数,响应时间不大于 4S | 20 | |
| 随机增减用电器或改变使用状态,能实时指示用电器的类别和状态。 | 20 | |
| 发挥要求 | 具有学习功能。清除参数后重新学习,每种不大于1分钟 | 10 |
| 其他 | 10 | |
| 实验报告 | 系统方案:比较与选择,方案描述 | 4 |
| 理论分析与计算:检测电路设计,特征参量设计和实验 | 7 | |
| 电路与程序设计 | 7 | |
| 测试结果:测试数据完整性,测试结果分析 | 2 |
11.项目特色或创新
本实验知识面较为广泛,其中主要涉及了信号采样、 $\mathrm { A } / \mathrm { D }$ 转换原理、单片机原理、FPGA 原理,矩阵运算,数理统计等知识,并且需要学生动手制作功率电感和设计电路,有利于考验学生的综合能力,使其学会理论与实践相结合。本次实验以三人一组的形式进行,分工合作,有利于激发每个学生潜在的优点和培养团队协作精神
参赛信息表
| 案例提供单位 | 武汉大学 | 相关专业 | 电子信息类 | |||
| 设计者姓名 | 黄根春 | 电子邮箱 | hqc@whu.edu.cn | |||
| 移动电话 | 15071174692 | 通讯地址 | 武汉大学电子信息学院实验中心 | |||
| 设计者姓名 | 张望先 | 电子邮箱 | zwx@whu.edu.cn | |||
| 移动电话 | 13971417656 | 通讯地址 | 武汉大学电子信息学院实验中心 | |||
| 设计者姓名 | 陈旻哲 | 电子邮箱 | eis cmz@whu.edu.cn | |||
| 移动电话 | 13164100939 | 通讯地址 | 武汉大学电子信息学院实验中心 | |||
| 相关课程名称 | 电子系统综合设计 | 学生年级 | 3 | 学时(课内+课外) | 32 | |
| 支撑条件 | 仪器设备 | 示波器,待测用电器 | ||||
| 软件工具 | Quartus ⅡI13.0, Code Composer Studio9.0 | |||||
| 主要器件 | FPGA与MSP430F6638开发版,ADS8688 芯片,LM311芯片,电流互感器,电压互感器,继电器模块,插线板 | |||||