标题: 基于ESP8266NodeMCU的物联网智能电度表开发过程 电力监测系统 交流电压电流表 [打印本页]

作者: LXY2018    时间: 2019-5-30 13:01
标题: 基于ESP8266NodeMCU的物联网智能电度表开发过程 电力监测系统 交流电压电流表
      很久之前就想做一个智能电度表,可以通过网络查看实时电能参数,以及每天每月的用电情况,但由于没有找到合适电能测量模块,所以一直没能实现;直到偶然中我发现了Peacefair PZEM 004T 电能模块,它能较好地测量电能,价格也可以接受,所以用它来实现是再好不过了。ESP8266是个小巧便宜的模块,内置独立处理器芯片,具很强的网络功能,利用它就能做出可以联网的智能设备,同时还省去了单片机。所以借助于ESP8266和PZEM 004T就可以很方便的实现智能电度表。
       首先购买NodeMCU开发板,这个开发板搭载ESP8266模块,集成了串口下载芯片,是非常理想的实验平台,然后刷了NodeMCU固件,打算使用LUA进行开发。说起来简单做起来难啊!程序写进去后各种问题不断,于是又一个一个的想办法解决,但是我遇到了一个最终也没有解决的问题,那就是模块老是莫名地重启,串口输出乱码,查找了两天原因未果后(已找到解决方法,将整个flash擦除再烧写就不会出现这个问题了),不得不放弃使用NodeMCU固件开发...接下来换为Arduino集成开发环境进行开发,但是发现这样无法了解ESP8266的许多细节了,并且Flash占用也大,绕了一圈之后,最终选择了官方SDK开发,虽然效率不高,但可以了解ESP8266的工作细节,使用的也是我熟悉的C语言,程序的运行效率也应该比其他方式要高。然后就去下载了官方SDK,开发软件,ESP8266的各种技术文档,按照教程一步一步地搭建开发环境,这些都做完后三天就过去了。按照最初的设想,我要使用Web浏览器查看系统的各种参数,所以就让ESP8266做web server;经过近一个星期的努力,做出了一个非常简单的原型机,由于缺乏html等相关方面的知识,显示效果不理想;ESP8266做web server感觉有些勉强,毕竟其数据处理能力很有限,所以最终选择使用Labview做上位机,这样模块的数据传输量降低了不少,同时方便编程,做出的显示界面也较为美观。然后就沿着选定的方案一步一步地去实现功能,中间各种各样的坑就不说了,经过一个多月的开发,终于实现了最基本的功能,即查看实时电能参数,至于记录各时段的电能参数不太好实现,因为ESP8266没有独立的RTC,而且需要设计一个存储模型来存储电能参数,这还需要不少时间。同时已支持一键配网功能,使用Esptouch实现,使用超级方便!
     此版本定为V2.0,以后还会对其进行升级,增加新的功能,比如存储历史电量信息,添加继电器等。
     昨天花了几个小时制作实物,进行的还算顺利,毕竟硬件连接很简单!难就难在软件开发上。


测试图.png (79.87 KB, 下载次数: 221)

labview测试图

labview测试图

实物图 (1).jpg (1.43 MB, 下载次数: 237)

实物图3

实物图3

实物图 (2).jpg (1.38 MB, 下载次数: 243)

实物图2

实物图2

实物图 (3).jpg (1.14 MB, 下载次数: 467)

实物图1

实物图1

作者: 51hei团团    时间: 2019-5-30 17:32
好东东 能分享下源程序和电路吗
作者: LXY2018    时间: 2019-9-23 17:16
相关工程文件

0.png (6.15 KB, 下载次数: 217)

0.png

Labview_PZEM004T_V2.0.7z

3.66 MB, 下载次数: 122, 下载积分: 黑币 -5

工程源文件


作者: emnides    时间: 2019-10-23 10:53
谢谢分享
作者: yhgwork    时间: 2019-11-24 00:02
硬件能不能也开源一下
作者: anyine    时间: 2020-4-11 23:28
为什么用arduino操作困难呢
作者: b11121012    时间: 2022-3-21 14:49
LXY2018 发表于 2019-9-23 17:16
相关工程文件

支持一个,正学着




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1