硬件电路的设计

3.1系统的功能分析及体系结构设计
3.1.1系统功能分析
本设计由STM32单片机核心板电路+交流电压电流检测模块电路+WIFI模块电路+指示灯电路组成。
1、通过电压互感器TV1005M和电流互感器TA1005M分别检测交流电压和交流电流值,
2、手机APP和WiFi模块互联后,可以实时显示交流电压、交流电流、功率和电量实时显示在手机上。
3、当功率超过200W时,继电器自动断开。功率不超过200W时,可以手动控制继电器的开关。
4、手机和WiFi模块连接后,手机上显示计时时间。
名称:AUAISOUT000
IP及端口号:10.10.10.11:8080
接受内容:
V:123A:12345P:1234567Q:1234567.89T:123R:1
说明:(只增加R部分命令及发送内容,其他未变动)
V:123 表示123V交流电压 字符5个长度不变 如12V 表示V:012
A:12345 表示12.345A交流电流
P:1234567 表示1234.567W 瞬时功率 即缩小1000倍
Q:1234567.89 表示1.23456789 度 缩小1000000倍 因为度的单位比较大kwh
T:1234 表示1234S 单片机设备运行时间
R:1 表示继电器接通 供电中 0表示断开即过载
发送内容:*或者# #断开供电 *接通供电。
3.1.2系统总体结构
本系统具体框图如下图所示:

原理图:

ESP8266WIFI模块电路设计电路设计
串口WIFI模块是新一代嵌入式WiFi模块,体积小,功耗低。采用UART接口。串口wifi模块是基于通用串行接口特性,符合IEEE802.11 协议栈网络标准,内置TCP/IP协议栈,使传统串口设备更好的加入无线网络。
ESP8266是一款超低功耗的模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和互联网的应用设计,可将用户的物理设备连接到WIFI无线网络上,进行互联网或局域网通信,实现联网功能。
ESP8266可广泛应用于智能电网、智能交通、智能家具、手持设备、工业控制等领域。WiFi模块电路图如下图所示。

TV、TA-1005-1M交流电压电流互感器模块电路设计
本交流电流互感器模块型号为TV1005-1M。本交流电流互感器模块型号为TA1005M。
电压互感器介绍
电压互感器和变压器类似,是用来变换线路上的电压的仪器。电压互感器变换电压的目的,主要是用来给测量仪表和继电保护装置供电,用来测量线路的电压、功率和电能,或者用来在线路发生故障时保护线路中的贵重设备、电机和变压器,因此电压互感器的容量很小,一般都只有几伏安、几十伏安,最大也不超过一千伏安。特点是容量很小且比较恒定,正常运行时接近于空载状态
它也有两个绕组,一个叫一次绕组,一个叫二次绕组。两个绕组都装在或绕在铁心上。两个绕组之间以及绕组与铁心之间都有绝缘,使两个绕组之间以及绕组与铁心之间都有电气隔离。电压互感器在运行时,一次绕组N1并联接在线路上,二次绕组N2并联接仪表或继电器。因此在测量高压线路上的电压时,尽管一次电压很高,但二次却是低压的,可以确保操作人员和仪表的安全。
电压互感器本身的阻抗很小,一旦副边发生短路,电流将急剧增长而烧毁线圈。因此,电压互感器的原边接有熔断器,副边可靠接地,以免原、副边绝缘损毁时,副边出现对地高电位而造成人身和设备事故。
线路上为什么需要变换电压呢?这是因为根据发电、输电和用电的不同情况,线路上的电压大小不一,而且相差悬殊,有的是低压220V和380V,有的是高压几万伏甚至几十万伏。要直接测量这些低压和高压电压,就需要根据线路电压的大小,制作相应的低压和高压的电压表和其他仪表和继电器。这样不仅会给仪表制作带来很大困难,而且更主要的是,要直接制作高压仪表,直接在高压线路上测量电压,那是不可能的,而且也是绝对不允许的。
模块特点
(1)体积小,精度高;印刷线路板直接焊接安装,使用方便,外形美观。
(2)全封闭,机械和耐环境性能好,电压隔离能力强,安全可靠。
二、使用环境条件:
(1)环境温度:-55℃~+85℃;
(2)相对湿度:温度为40℃时不大于90%;
(3)大气压力:8601060mbar(约为650800mmHg)。
三、工作频率范围:20Hz~20kHz。
四、绝缘耐热等级:F级(155℃)。
五、安全特性:
(1)绝缘电阻:常态时大于1000MΩ;
(2)抗电强度:可承受工频2000V50Hz /1分钟;
(3)阻燃性:符合UL94-Vo级。
六、输入电压:≤1000Vac

系统软件设计

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "lcd.h"
#include "adc.h"
#include <stdio.h>
#include "timer.h"//ALIENTEK Mini STM32开发板范例代码15
//ADC实验
//技术支持:www.openedv.com
//广州市星翼电子科技有限公司//char tabDataV[5];//打印电压数组
//char tabDataA[7];//打印电流数组
//char tabDataP[9];//打印功率数组
//char tabDataQ[12];//打印电量数组
//char tabDataT[6];//打印时间数组
char tabData[42];//打印时间数组unsigned int ACcurrent;        //市电电流
unsigned int ACvolt;        //市电电压
unsigned long PowerWt=0;//功率
float PowerQd=0;//功率
unsigned char relayFlag=1;
int main(void){ u16 adcx;float temp;delay_init();            //延时函数初始化    uart_init(9600);      //串口初始化为115200TIM3_Int_Init(499,7199);//50ms     LED_Init();                //初始化与LED连接的硬件接口LED0=0;Adc_Init();             //ADC初始化        RELAY=1; //继电器打开relayFlag=1;  //继电器状态标识delay_ms(4000); printf("AT+CIPMUX=1\r\n");        //允许链接delay_ms(1000);printf("AT+CIPSERVER=1,8080\r\n");     //创建端口号8080delay_ms(1000); while(1){adcx=Get_Adc_Average(ADC_Channel_1,10);// PA1 交流电压检测口 ad转换10次求平均值temp=(float)adcx*(3.3/4096);ACvolt=(unsigned int)(temp*303);//*303 互感器计算获取 以及1K电阻 用示波器检测校准得到if(ACvolt<15) ACvolt=0;adcx=Get_Adc_Average(ADC_Channel_2,10);  // PA2                                                       求平均值temp=(float)adcx*(3.3/4096);if(temp>0.02){ACcurrent=(unsigned int)((temp-0.02)*3100);//*3950 互感器计算获取扩大1000倍 以及1K电阻 用示波器检测校准得到 0.02去除波动 防止误判断}else{ACcurrent=0;}if(ACcurrent<50)ACcurrent=0;//滤除电流PowerWt=ACvolt*ACcurrent;      //功率if(dealFlag==1)//处理标志{dealFlag=0;PowerQd=(float)PowerWt*1/60.0/60.0+PowerQd;   //累计电量 1表示1s 因为电流扩大了1000倍 因此该处也扩大了1000倍 且此处功率单位为W 除以1000为千瓦 结果为度 1度=1千瓦时}if(times>=9999){times=0;}if(PowerWt/1000>200){    RELAY=0;           //关闭继电器relayFlag=0;}       sprintf(tabData,"V:%03dA:%05dP:%07luQ:%010.2fT:%04dR:1",ACvolt,ACcurrent,PowerWt,PowerQd,times);
//      sprintf(tabDataA,"A:%05d",ACcurrent);//电流
//      sprintf(tabDataP,"P:%07lu",PowerWt);//功率
//      sprintf(tabDataQ,"Q:%010.2f",PowerQd);//电量
//      sprintf(tabDataT,"T:%04d",times);//时间if(relayFlag==1){sprintf(tabData,"V:%03dA:%05dP:%07luQ:%010.2fT:%04dR:1",ACvolt,ACcurrent,PowerWt,PowerQd,times);        }//打印数据else {sprintf(tabData,"V:%03dA:%05dP:%07luQ:%010.2fT:%04dR:0",ACvolt,ACcurrent,PowerWt,PowerQd,times);     }//打印数据printf("AT+CIPSEND=0,42\r\n");       //发送固定字节数据的at命令delay_ms(200);printf(tabData);                   //发送数据delay_ms(200);LED0=!LED0;        //数据发送  delay_ms(200);      //延时}
}   

.

链接:https://pan.baidu.com/s/1gNrn3SM3iHgstS0Ly1P7AQ
提取码:4xgh

.

基于STM32单片机的智能电表无线WIFI插座APP电压电流检测方案原理图程序设计相关推荐

  1. 基于51单片机的太阳能锂电池充电器系统电压电流检测方案原理图设计

    系统功能分析 本系统具体框图如下图所示 本设计由STC89C52单片机+LCD1602液晶显示电路+A/D转换芯片PCF8591电路+电压检测电路+电流检测电路ACS712-5A+继电器控制电路+电源 ...

  2. 基于单片机串口远程多路温湿度采集仿真-基于单片机ADC0809八路电压采集系统设计-基于单片机16x32点阵多模式显示仿真设计-基于单片机餐厅呼叫控制系统仿真设计-基于STM32单片机的智能水杯设计

    1220基于单片机ADC0809八路电压采集系统设计-毕设课设资料 数码管显示,测量八路电压表. #define addo (5.0/255.0) #define zero 0.005 //用于校准A ...

  3. 基于STM32单片机的智能家居测量系统设计

    当今的家庭生活面临着各种环境和健康问题,周围的生活参数存在潜在的隐患,包括室温.气体中有害物质的浓度等.在新时代,人们越来越关注健康及其相关因素.随着微电子技术的应用,电器的普及,以及单片机和传感器性 ...

  4. 基于STM32单片机的智能家居烟雾温度火灾防盗报警的设计与实现

    功能介绍 以STM32单片机作为主控系统: LCD1602液晶显示屏来显示显示测得的值: SR501人体红外感应是否有人进行防盗: 通过烟雾传感器MQ-2获取前的烟雾值: 通过DHT11温湿度传感器来 ...

  5. 基于STM32单片机的智能停车场车位管理系统设计

    摘  要 通过调查发现,现有的许多公共场所的停车位管理落后,智能化程度不高.为顺应现代自动化狂潮的发展趋势,本项目以STM32单片机为主控芯片,基于RFID智能识别技术,设计了一个具有IC识别的智能停 ...

  6. 基于STM32单片机的智能手环设计(OLED显示)(Proteus仿真+程序+报告)

    编号8 基于STM32单片机的智能手环设计(OLED显示) 功能描述: 由 STM32单片机+按键模拟计步+RTC时钟模块+DS18B20温度传感器模块+心率采集模块+串口模块+OLED显示模块+键盘 ...

  7. 基于STM32单片机的智能加湿器(Proteus仿真+程序)

    标号:11 基于STM32单片机的智能加湿器 功能描述: 11.基于STM32单片机的智能加湿器 本设计由STM32F103单片机最小系统+DHT11温湿度传感器+1602液晶显示模块+声光报警模块+ ...

  8. 基于STM32单片机的智能书桌设计与实现

    研究结果表明,学生的读写姿势不正确率高达70%甚至85%以上[1].不良的读写姿势.不合适的光照条件会令学生不停地调整眼睛的睫状肌,容易降低睫状肌调节能力,进而导致近视[2].从长远看,不良的读写姿势 ...

  9. 基于stm32单片机农业智能温室大棚温湿度光照测量报警系统Proteus仿真

    资料编号:146   下面是相关功能视频演示: 146-基于stm32单片机农业智能温室大棚温湿度光照测量报警系统Proteus仿真(源码+仿真+论文) 设计内容 本次嵌入式课程设计综合实验的内容为基 ...

  10. 基于stm32单片机农业智能温室大棚温湿度光照测量报警系统Proteus仿真(源码+仿真+论文)

    资料编号:146 视频讲解: 146-基于stm32单片机农业智能温室大棚温湿度光照测量报警系统Proteus仿真(源码+仿真+论文) 设计内容 本次嵌入式课程设计综合实验的内容为基于proteus的 ...

最新文章

  1. 关于生成随机数的疑点
  2. 51CTO学院三周年-最受学员喜爱讲师评选大赛
  3. ****** 五十 ******、软设笔记【UML分析和意义】-类图、对象图、状态图、活动图、顺序图、协作图、构件图、部署图,动静态模式...
  4. 反恐精英代码_反恐精英20周年,为什么沙漠2(dust2)地图玩家们一直玩不腻?...
  5. 10个Linux 系统性能监控命令行工具
  6. 如何能出令自己满意的代码
  7. SVN登录时不断弹出用户名密码输入
  8. “Word自动更改后的内容保存到通用文档模板上。是否加载该模板?“的解决办法...
  9. cxf开发基于web的webservice项目(转载)
  10. 【响应式编程的思维艺术】 (4)从打飞机游戏理解并发与流的融合
  11. Open3d之彩色点云配准
  12. webdriver 等待页面加载完成_Python爬虫,登陆神器Selenium等待(waits)页面加载的三种方法...
  13. 7.生产者消费者 案例 (使用Lock 同步锁 方式,使用Condition完成线程之间的通信)...
  14. 处理得怎么样填空词语_武都网络推广软件效果怎么样【易商网络】
  15. python 生意参谋操作
  16. Labwindows扫盲+技巧贴,CVI学习必看
  17. CodeForces 愚人节题目
  18. linux常用操作命令
  19. 主流的巡店系统有哪些?哪个品牌比较好
  20. 图形数据库Titan-学习笔记

热门文章

  1. 阿里云数据库迁移手记
  2. codesys工控机_CoDeSys
  3. 树莓派4B配置远程桌面软件 Teamviewer(解决报错)
  4. CGAL几何库配置教程
  5. 一文彻底搞懂激光雷达原理!
  6. Win10 企业版 2016长期服务版 激活
  7. 【汉化】nitrosdk。。。这个。。。天朝V5
  8. 【学习目录】支持向量机原理网络资料整理
  9. 输入等值线参数绘制等值线图python_专题复习:等值线(上)
  10. 【JESD204B】基于JESD204B协议的ADC、DAC数据传输