电赛 | 单相用电器分析监测装置(省电赛一等奖作品)

1024G 嵌入式资源大放送!包括但不限于C/C++、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取!

前言

小编大学期间共参加了三次省级/国家级的电子设计竞赛/单片机应用设计大赛,均获得了一等奖,现将这些作品分享出来,供有需要的朋友进行学习。

大学期间,电子类的比赛比较重要的比赛应该就是每年暑假的省/国家级大学生电子设计竞赛吧,其中省赛是偶数年,国赛是奇数年,小编都有参加过,上一篇分享了我们团队参加2016年省赛做的循迹小车,感兴趣的朋友可移步至省电子设计竞赛一等奖作品分享(一)

本文分享的是我们团队参加2017年国赛做的单相用电器分析监测装置,这个比赛我们团队获了省一等奖,不是国家级一等奖,筛选出省一之后,还要进一步筛选,有个综合测评,队友太给力,综测成绩也挺好的,但是还是由于比赛的得分太低了,没办法派出去评国奖,唉。

竞赛题目

每年的TI杯电子设计竞赛都会出好几个题(关于17年TI杯电子竞赛的题目,有兴趣的可在后台回复:2017,进行获取),这次比赛我们选的是题目——单相用电器分析监测装置。该题题目及要求如下:

方案的选择及比较

一、系统框图

该系统有两部分组成:主机及从机。

主机以STM32为主控制器,通过SPI与ATT7022电能采集模块进行通信。ATT7022模块负责采集用电器的一些电源参数,如电压,电流,有功功率,无功功率等。我们判断用电器状态需要用到的参数是有功功率,经过一定的判断算法判断用电器的工作状态,然后将判断好的用电器的状态通过ZigBee无线模块发送给从机。

从机也是以一片STM32为主控制器,将主机发送过来的用电器的工作状态发送至串口屏上进行显示。

我们采用主从结构的原因是因为题目的发挥部分有要求:

方案选择的分析如下:

一、电能计量芯片的选择

1、电能信息采集模块主要是由电能采集芯片 ATT7022、电压互感器、电流互感器三部分组成。主要负责采集电压、电流数据,并转化为功率、电能信息,将用电信息存储于 ATT7022 的寄存器。

2、该芯片即可用于三相交流电的采集也可用于单相交流电的采集, ATT7022E 集成了 7 路 Sigma-delta ADC、参考电压电路以及所有功率、能量、有效值、功率因数及频率测量的数字信号处理等电路,能够测量各相以及合相的有功功率、无功功率、视在功率、有功能量及无功能量,同时还能测量各相电流、电压有效值、功率因数、相角、频率等参数,充分满足单相用电器监测装置的需求。

3、在输入 220V 交流电压经 6 个 22k 电阻进行分压,经电压互感器后接的精密检流电阻接入 ATT7022E 检测引脚,输入电流经电流互感器进行 1000: 1 分流经检流电阻接入 ATT7022E 的检流引脚。电压互感器和电流互感器将高电压进行隔离,很好的起到保护作用。 ATT7022E 模块由外部晶振及基本的外围配置电阻电容组成最小系统。

二、用电器状态判断

1、根据题意的要求电器的电流范围为0.005A-10.0A通过公式P=UI计算知,我们选择电器的功率范围1.1-2200W。

2、对于可识别的工作电器总数不低于7,且电流<5mA的大于5件,我们通过ATT7022电能芯片采集并传输得到各个用电器的工作状态。

3、我们将收到的电器参数通过Zigbee传输显示在液晶界面(time<=2s)。

4、第四点也是我们重点实现的步骤,由于需要实时指示当前用电器的情况,我们通过单片机读回的总功率去匹配不同用电器使用的功率和从而得出结果。通过对比了罗列法,穷举法,以及二进制模拟法。

(1)罗列法的实现太过于复杂,需将所有组合罗列并放在一个数组里面,太耗时间,太过繁琐。

(2)穷举法,通过算法能够快速得到我们所需要的结果,但是在相同功率不同用电器使用数的情况下,它并不能反应出我们实际的电器使用数。

(3)二进制模拟法,通过该方法我们将用电器的打开,关闭,分别对应二进制的0与1。通过C语言for循环遍历数组,从而得出我们预期的结果。如图所示我们通过二进制模拟,可以很清楚的看到用电器状态。

三、主、从机之间的通信

主从机之间通过ZigBee无线模块进行通信,ZigBee模块与主控之间通过串口连接。主机通过ZigBee模块往从机发送特定格式的字符串数据,从机使用中断的方式进行接收数据,然后在后台解析数据并刷新数据至串口屏上。

主机发送数据:

从机接收数据:

从机解析并显示数据:

四、屏幕界面图

这是我们的屏幕界面,用的是串口屏,串口屏我们用得很多,因为很方便地进行显示,而且显示效果也比较好。我的毕业设计也是用串口屏来显示的,有兴趣的朋友可移步至:智能桌面天气预报系统(终)进行查看。

代码获取

发现以前写的代码很乱,整理了一下,现在上传上来,有兴趣的朋友可关注微信公众号【嵌入式大杂烩】回复关键词:监测装置,即可获取。

 

【往期精彩笔记推荐】

学习使用带参宏,提高编程基础(一)

学习使用带参宏,提高编程基础(二)

1024G 嵌入式资源大放送!包括但不限于C/C++、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取!

 

单片机cs5463单相用电器分析监测装置程序主要是为了实现对单相用电器分析监测功能。在程序设计中,首先需要对单片机进行初始化设置,包括端口设置、外设功能配置、时钟设置等。接下来,需要编写相应的程序代码,实现以下功能: 1. 电压测量:利用cs5463芯片的电压测量功能,可以对电源电压进行准确测量。程序中需要设置相应的寄存器,并读取测量结果。 2. 电流测量:可以通过连接传感器测量电器的电流值。在程序中,需要对传感器进行校准和配置,并将测量结果进行处理和显示。 3. 功率计算:通过读取电压和电流值,可以计算出单相用电器的实时功率。程序中,需要进行相关计算,并将结果输出。 4. 功率因数计算:利用电压和电流测量值,可以计算出单相用电器的功率因数。程序中,需要进行相应计算,并将结果进行显示。 5. 能耗统计:通过对功率和时间的积分,可以计算出单相用电器的能耗。程序中需要进行累加计算,并将结果进行显示和存储。 6. 数据显示:可以通过液晶显示屏或其他显示设备将测量结果进行实时显示。程序中,需要将测量值进行格式化处理,并输出到相应的显示设备。 7. 报警功能:可以设置阈值,当测量值超过或低于设定的范围时,程序中可以触发报警功能,并通过声音或灯光等方式进行报警提示。 以上就是单片机cs5463单相用电器分析监测装置程序的主要内容,通过合理编写程序,可以实现对单相用电器的准确分析监测
评论 32
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式大杂烩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值