Go语言物联网开发安科瑞ADW300/4G电能表数据上传mqtt平台-电表接线到传输数据完整流程

news2024/12/26 22:03:45

电能表功能说明

ADW300是方便用户进行用电监测、集抄和管理,可灵活安装在配电箱中,可用于电力运维、环保监管等在线监测类平台中。我们本案例是用于工业售电公司对出售电的管理,设备可以监控用电情况、故障监控及警报,售电公司可以通过设备传回的数据进行分析给出最优用电指导,为生产企业降本增效,根据故障提醒维修电工可以快速反应抢修,减少生产企业损失。

GoFly快速开发平台开发售电管理系统

客户为什么选择我们,我们框架真么能胜任吗,这些都是客户和使用gofly科技企业和开发者们关系的,从开发实践后给大家分享一下。为什么我们把Go作为框架语言,这都是居于当下市场趋势,我们科技现在不是以前搞个信息展示网站、内容展示平台、电商,服务端核心在存取及简单数据处理。当下是大数据分析辅助生产、工业数字化系统智能化自主生产、安全生产系统等这些需要我们系统性能、安全、稳定、可靠、易于维护不能给生产企业增加成本、软件迭代速度快(不能企业转变生产模式软件半天出不来)。基于当下需求服务端要具备云计算开发、云原生能力,不能一套系统切套多能语言dll吧。我们做个项目就直接用Go开发mqtt broker整项目都是Go语言,这种我们整套系统完全可靠、后期维护有保证、降低成本、自主开发可以契合项目每个需求,这样软件出来才能满足客户生产需要。

设备数据上传mqtt平台操作教程

这篇文章记录如何从设备接线安装、通电、连接电脑调试工具、配送设备、传输数据到mqtt服务器、mqtt服务器搭建、mqtt服务器成功收到设备数据,一个网站物联网数据传输流程。

1.设备接线

  • 电源接在:1和2上
  • 电压线:黄色接A相电压、绿色接B相电压、红色接C相电压。
  • 输出端接入互感器:按照黄绿红顺序接线,带*号接入红色、不*号接入白色。
  • 通讯接口(接入电脑调试):RS485线,a接21,b接22、或者T/R+接21——T/R-接22

需要一个转接线如上图

全部接线后如图上图所示

2.打开调试软件配置通讯参数

a.把接好的通讯接口usb插入电脑双击打开调试软(需要软件包夹客服微信跟我们要)。

b.开启时如果提示COMX开启成功,点击“广播读ADW300地址”,显示版本号获取成功后右侧设置见面可视。

c. 进入环保参数设置1界面设置IP,端口 以及上传时间,可选择以IP或者域名两种形式,设置前请务必先读取一下。

操作流程:

具体配置,在GPRS/NB设置栏设置,Mqtt服务器的ip和端口

IP地址:x,x,x,x

端口号:xxxxx

设备编号:14位,电表侧面的条形码下面。

上传:可以设置  1~15   [单位:分钟,默认是5分钟]

点击“设置”,保存参数

d.找到通用MQTT该界面设置MQTT相关参数,同样设置前先读取一下,mqtt-theme1代表下发主题,mqtt-theme2代表上报主题。

配置内容:

MQTT username:订阅设备需要username,若无要求,可以默认“1”

MQTT password:订阅设备需要password,若无要求,可以默认“1”

MQTT theme-1: 下发主题,一般不用,    默认“1”              

MQTT theme-2: 上传主题,/若无要求,可以默认填“设备编号”  

ClientID:客户设置,默认电表的14位设备编号,如果特殊要求,再沟通  

MQTT QOS: 1  (电表需要mqtt服务器的应答,所以需要设置qos:1)

到此配置完成,下面去服务器安装mqqt服务。

3.打包部署mqtt服务

该版本电表仅支持​​MQTT v3.1.1​​​ 版本协议,我们去下载:​​代码包​​  。

3.1.开发启动

无需go mod tidy,因为无第三方包依赖。直接启动main.go文件即可。

go run main.go
3.2.打包部署

windows 环境下构建:

  • linux: 
GOOS=linux
GOARCH=amd64
go build -o mqttgofly
  • windows: 
go build -o mqttgofly

构建完成后,直接运行二进制包即可。

4.Linux 系统部署

部署在Linux 系统需要赋与 ​​mqttgofly​​​ 可执行权限,​​chmod 744 ./mqttgofly​

在存放​​mqttgofly​​文件目录下打开终端,运行如下命令:

chmod 744 ./mqttgofly

部署请看开发文档:​​mqttv3开发文档​​

连接成功后我们可以看到结果如下:

调试工具mqtt消息推送成功

服务器mqtt收到设备推送的消息。

更多内容可以到GoFly全栈开发社区交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1501065.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

解决 ucore lab3 无法触发 page fault 的问题

问题描述 完成清华大学操作系统实验课 ucore(x86) lab3 时,发现无法触发 page fault 异常,具体来说时 check_pgfault() 函数会在执行如下代码时报错 static void check_pgfault(void) {// ......uintptr_t addr 0x100;assert(find_vma(mm, addr) vma…

Chromium内核浏览器编译记(四)Linux版本CEF编译

转载请注明出处:https://blog.csdn.net/kong_gu_you_lan/article/details/136508294 本文出自 容华谢后的博客 0.写在前面 本篇文章是用来记录编译Linux版本CEF的步骤和踩过的坑,以防止后续再用到的时候忘记,同时也希望能够帮助到遇到同样问…

【操作系统概念】 第9章:虚拟内存管理

文章目录 0.前言9.1 背景9.2 按需调页9.2.1 基本概念9.2.2 按需调页的性能 9.3 写时复制9.4 页面置换9.4.1 基本页置换9.4.2 FIFO页置换9.4.3 最优(Optimal)置换9.4.4 LRU(Least Recently Used)页置换9.4.5 近似LRU页置换9.4.6 页缓冲算法 9.5 帧分配9.5…

java及特性的简单介绍

简介: 印度尼西亚有一个盛产咖啡的岛屿java,中文名翻译为爪哇,给这种新语言起码java 寓意端上一杯热咖啡。 特性: 1.面向对象 2.与平台无关 3.稳定安全 4.多线程 面向对象 1.面向对象语言关注的是对象,而不关注过程 2…

办公电脑换成MacBookPro半年之后……

小白是从2008年开始接触电脑的,当时朋友给我注册的第一个QQ账号是2008年4月。 从此,小白一直认为电脑全部都是Windows系统。直到上大学那年,看到了外教老师的MacBookPro…… 折腾电脑的开始居然是起源于诺基亚手机,给半智能S40的…

探索数据结构:单链表的实战指南

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:数据结构与算法 贝蒂的主页:Betty‘s blog 前言 在上一章节中我们讲解了数据结构中的顺序表,知道了顺序…

网络编程---网络编程入门、UDP通信程序、TCP通信程序

1.网络编程入门 1.网络编程概述 网络编程: 在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据传输 计算机网络: 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来&#…

微服务:Docker篇

1. 初识Docker 1.1. 什么是Docker 微服务虽然具备各种各样的优势,但服务的拆分通用给部署带来了很大的麻烦。 分布式系统中,依赖的组件非常多,不同组件之间部署时往往会产生一些冲突。 在数百上千台服务中重复部署,环境不一定一…

方阵的特征值与特征向量

目录 特征值 & 特征向量 相关性质 特征值 & 特征向量 相关性质

【JavaEE初阶】 JVM类加载简介

文章目录 🍃前言🌲类加载过程🚩加载🚩验证🚩准备🚩解析🚩初始化 🎄双亲委派模型🚩什么是双亲委派模型?🚩双亲委派模型的优点 ⭕总结 &#x1f343…

超市小程序有哪些功能 怎么制作

超市小程序是非常有用的工具,可以帮助超市提升用户体验,提高销售额。下面我们来看一下超市小程序可以具备哪些功能,以及如何制作一个高效的超市小程序。 1. **商品展示与搜索功能**:用户可以浏览超市的商品信息,包括价…

JVM-虚拟机栈概述

背景:由于跨平台的设计,java指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器。 栈是运行时单位,而堆是存储的单位。即:栈解决程序运行的问题,即程序如何执行,或者说如何…

ChatGPT在地学、GIS、气象、农业、生态、环境等领域中的应用

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮,可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…

RabbitMQ的web控制端介绍

2.1 web管理界面介绍 connections:无论生产者还是消费者,都需要与RabbitMQ建立连接后才可以完成消息的生产和消费,在这里可以查看连接情况channels:通道,建立连接后,会形成通道,消息的投递、获取…

JDK17镜像制作

背景 获取JDK17 wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz 解压JDK tar -zxvf jdk-17_linux-x64_bin.tar.gz 制作JRE 由于jdk的体积比较大,可以使用jre来作为运行环境,jdk1.8及以前版本,自带jre&#…

【center-loss 中心损失函数】 参数与应用

文章目录 前言简单总结一下参数对比解释参数权重衰减(L2正则化)动量其他参数运行 前言 之前我们已经完全弄明白了中心损失函数里的代码是什么意思,并且怎么用的了,现在我们来运行它。 论文:https://ydwen.github.io/…

5. Java内存模型JMM

文章目录 计算机硬件存储体系基于计算机存储结构的 JMM Java 内存模型 JavaMemoryModelJMM规范下的三大特性原子性可见性有序性 多线程对变量的读写过程读取过程 多线程先行发生原则 happens-beforex,y 的 case 说明happens-before 原则说明happens-before 大原则happens-befor…

TCP重传机制、滑动窗口、拥塞控制

一、总述 TCP,Transmission Control Protocol,是一个面向连接、基于流式传输的可靠传输协议,考虑到的内容很多,比如数据包的丢失、损坏、分片和乱序等,TCP协议通过多种不同的机制来实现可靠传输。今天,重点…

数据库原理实验课(1)

目录 实验内容 安装头歌中的相关内容 具体过程 完结撒花~ 我也是第一次接触oracle的相关软件和操作,所以是一次傻瓜式教学记录 实验内容 安装头歌中的相关内容 具体过程 这是我在百度网盘中下载解压出来的oracle文件夹内的全部内容(可能有因为安装完…

C++指针(四)万字图文详解!

个人主页:PingdiGuo_guo 收录专栏:C干货专栏 前言 相关文章:C指针(一)、C指针(二)、C指针(三) 本篇博客是介绍函数指针、函数指针数组、回调函数、指针函数的。 点赞破六…