一、设计介绍
模块说明:
1、STC89C52:主控芯片 单片机
2、LCD1602:用于显示数据信息
3、独立按键:用于设置系统数据或控制
4、电能检测模块HLW8032:单片机通过4800波特率串口可以读取交流电数据,电流电压以及用电量
5、有源蜂鸣器:可以发出声音进行警报,有源蜂鸣器只需要给电平就可以直接发出声响,无源蜂鸣器则需要改变高低电平频率来发出声响
6、继电器:通过小电流来驱动大电流,也就是单片机引脚控制外部设备通断电
7、SIM800L短信模块:用于向目标手机号发送短信
功能介绍:
- 1、显示交流电的电压、电流、用电功率、用电量
- 2、设定三个用电功率阈值,处于不同用电功率阈值内处理不同:
POWER<阈值1:可正常用电
阈值1 <POWER<阈值2:蜂鸣器进行报警,并且间隔30秒发送一次短信提醒
阈值2 <POWER<阈值3:超过60内功率未恢复至正常范围则断开继电器来达到断电的功能(60秒后重新吸合继电器通电)
阈值3 <POWER:系统报警并立即断开继电器(60秒后重新吸合继电器通电)
- 3、可以在单片机端修改电话号码
- 4、设置的电话号码和用电功率阈值均有掉电保存功能
原理图:
使用立创EDA格式打开,打开方式为将文件夹内 .json 后缀文件拖入嘉立创EDA(标准版) - 免费、易用、强大的在线电路设计软件 立创EDA编辑网站中即可
本次原理图使用立创EDA画出的,对于新手较为方便,全中文易上手,不需要安装任何软件。另,Altium Designer 格式打开后标注会有所丢失,建议使用立创EDA
Proteus仿真图:
实物图:
元器件清单:
如果您不能独自完成焊接,我这边也提供付费焊接服务以及调试,完成后第一时间通过快递寄给您。
二、代码资料展示
主要代码展示:
/********************* 函数声明 *******************/
//显示界面 每个菜单的结构
void Dis_menu();
//显示 数据
void Dis_Dat();
//获取数据
void Get_Dat();
//按键扫描
void Key_Scan();
//刷新设置后的数据
void Dis_Set_Dat();
void SIM800_send();
//定时器0初始化
void timer0_init();
//报警 短信 继电器 处理函数
void Proc_Alarm();
//读取掉电保存的内容
void Read_e2();
//将数据保存在芯片中
void Write_e2();
void main()
{
DelayMs(100);//等待系统稳定
UART_Init();//串口初始化 4800波特率
LCD_Init();//液晶显示初始化
Dis_menu();//显示菜单结构
timer0_init();//定时器0初始化
Read_e2();//读取掉电保存数据
while (1)
{
Get_Dat();//获取数据
Proc_Alarm();//报警 短信 继电器 处理函数
Key_Scan();//按键扫描
}
}
工程管理展示:
更多详细功能与代码视频讲解请B站搜索:易佳电子设计 主页搜索该设计编号或名称
视频链接:【51毕业设计案例】【025】交流电电压电流功率监测设计/用电监控系统/智能排插设计-基于51/52单片机_哔哩哔哩_bilibili