[物联网] OneNet 多协议TCP透传

news2024/9/24 18:05:31

[物联网] OneNet 多协议TCP透传

STM32物联网–ONENET云平台的多协议接入产品创建 : https://blog.csdn.net/qq_44942724/article/details/134492924
Onenet tcp 透传 : https://blog.csdn.net/flyme2010/article/details/107086001
tcp服务端测试工具 : http://tcp.xnkiot.com/
NetAssist网络调试助手 : https://www.cmsoft.cn/resource/102.html

1.使用服务端测试工具

  • 打开tcp服务端测试工具 ,下载NetAssist网络调试助手 ,输入对应的ip地址和端口,就可以了.然后上位机和网页就是透传的,一边发啥,另一边就收到啥.
    在这里插入图片描述

在这里插入图片描述

2.使用 OneNet 平台

新版OneNet去掉了多协议接口跳转,貌似只能直接通过网页打开,感谢上面博客给的笔记.
https://open.iot.10086.cn/develop/global/product/#/public?protocol=3&other=1

  • 打开网页,然后切换到TCP透传,添加产品,设定产品名称,设备接入协议:TCP透传,其他设定随便.点击确定

在这里插入图片描述- 上面是创建产品,接下来创建设备,注意是注意设定鉴权信息,其他随便.

在这里插入图片描述

  • 接下来下载脚本模板,然后再上传.模板包含在那个问号帮助的脚本验证工具里,

在这里插入图片描述

  • 解压就看到后缀为lua的脚本文件.

在这里插入图片描述

  • 然后上传脚本文件,选择刚刚下载的sample.lua,然后设定脚本名称,

在这里插入图片描述

  • 最后效果如下

在这里插入图片描述

  • 接下来使用上位机测试,建立tcp连接,OneNET平台地址为 183.230.40.40:1811.这个地址我找半天没找到

在这里插入图片描述

  • 此时连接上,但是网页上显示设备还是离线,需要发送一个登录信息,

设备登陆上报信息
设备登陆报文是在建立TCP连接之后,用于告知OneNET平台,该终端DTU对应的是平台上的哪一个设备,数据用何种方式进行解析;
格式为 *PID#AuthCode#ParserName*
其中:
PID 为 产品ID
AuthCode 为 鉴权信息(创建设备的时候所指定)
ParserName 为 脚本名称(上传Lua脚本的时候所指定)
如:*345016#11234#sample*

在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 根据上述格式,我需要发送*627484#jqxx#jbmc*,平台接收识别成功后,会返回一个received,网页端就能看到在线.并且平台会间隔10秒周期性发送一个test给上位机.

在这里插入图片描述
在这里插入图片描述

  • 然后上位机发送东西,网页设备就会显示接收到数据.

在这里插入图片描述

  • 网页设备需要发送给上位机,就切换到下发指令页面,发送东西,上位机就能原模原样收到.

在这里插入图片描述

3. 使用 EC600M-CN 测试

  • 使用模块EC600M-CN的tcp直吐模式,连接ip端口,发送登录信息,就能连接上了.网页端显示也在线.

在这里插入图片描述

  • 这个最简单的透传连接终于成功了.找半天找不到ip地址和登录信息,还有多协议接口,明明那么简单.

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

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

相关文章

解决导入项目后在idea中不显示的问题

问题: 今天下午重新打开寒假之前负责的项目,发现打不开了, 从master拉取最新代码到我的分支,发现我的分支上显示就是这样子,无论怎么更新代码都不行。 原因: 在上一次上传代码的时候,我把我分…

YOLOv9改进|使用AKConv改进RepNCSPELAN4

专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,主力高效涨点!!! 一、改进点介绍 AKConv是一种具有任意数量的参数和任意采样形状的可变卷积核,对不规则特征有更好的提取效果。 RepNCSPELAN4是YOLOv9中的…

JAVA的学习日记

JAVA的学习日记(2024.3.1)(b站韩顺平老师课程学习笔记版) ps:捡起忘光光的Java语言 Sublime //1. public是公有,class是类 //2. public class Hello表示Hello是一个类,是一个public公有的类 //3. Hello{…

【框架】MyBatis 框架重点解析

MyBatis 框架重点解析 1. MyBatis 执行流程 会话工厂生产的 SqlSession 对象提供了对数据库执行SQL命令所需的所有方法,包括但不限于以下功能: 数据库操作:SqlSession可以执行查询(select)、插入(insert&a…

桥接模式(Bridge Pattern) C++

上一节:适配器模式(Adapter Pattern) C 文章目录 0.理论1.组件2.使用场景 1.实践 0.理论 桥接模式(Bridge Pattern)是一种结构型设计模式,它的核心思想是将抽象部分与其实现部分分离,使它们可…

liunx安装jdk、redis、nginx

jdk安装 下载jdk,解压。 sudo tar -zxvf /usr/local/jdk-8u321-linux-x64.tar.gz -C /usr/local/ 在/etc/profile文件中的,我们只需要编辑一下,在文件的最后加上java变量的有关配置(其他内容不要动)。 export JAVA_HOME/usr/l…

操作系统系列学习——多进程图像

文章目录 前言多进程图像 前言 一个本硕双非的小菜鸡,备战24年秋招,计划学习操作系统并完成6.0S81,加油! 本文总结自B站【哈工大】操作系统 李治军(全32讲) 老师课程讲的非常好,感谢 【哈工大】…

设置文字之间的间距应该如何实现

设置文字之间的间距,通常指的是字母之间(字符间距)或单词之间的间距。在CSS中,这可以通过letter-spacing和word-spacing属性来实现。 字符间距(letter-spacing) letter-spacing属性用于调整字符之间的间距…

【Kotlin】函数

1 常规函数 1.1 无参函数 fun main() {myFun() }fun myFun() {println("myFun") // 打印: myFun } 1.2 有参函数 1)常规调用 fun main() {myFun("myFun") // 打印: myFun }fun myFun(str: String) {println(str) } 2)形参指定默…

C++:设计包含min 函数的栈

目录 题目 代码实现 输出 题目 定义栈的数据结构&#xff0c;要求添加一个min 函数&#xff0c;能够得到栈的最小元素。 要求函数min、push 以及pop 的时间复杂度都是O(1)。 代码实现 #include <iostream>template<typename T>class stack { public:stack() {…

React富文本编辑器开发(四)

上一节我们做了块级元素的格式操作&#xff0c;这节我们来讲行内元素的相关操作。行内元素的样式一般指 粗体、斜体、代码或 删除线等 。通过前一章的内容得知&#xff0c;元素的渲染是通过渲染器来呈现的&#xff0c;块级元素通过指定 renderElement, 行内元素&#xff08;即内…

vxe-table编辑单元格动态插槽slot的使用

业务场景&#xff1a;表格中只有特定某一行的的单元格可以编辑&#xff0c;列很多&#xff0c;为每个列写个插槽要写很多重复代码&#xff0c;所以这里使用动态插槽&#xff0c;简化代码量。显示编辑图标&#xff0c;点击编辑图标隐藏。失去焦点保存调后台接口。 解决办法&…

【C语言】文件及文件操作详解(fseek,ftell,rwind)

目录 1. 为什么使用文件 2. 什么是文件 2.1 程序文件 2.2 数据文件 2.3 文件名 3. 二进制文件和文本文件 4. 文件的打开和关闭 4.1 流和标准流 4.1.1 流 4.1.2 标准流 4.2 文件指针 4.3 文件的打开和关闭 5. 文件的顺序读写 6.文件的随机读写 6.1 fseek 6.2 ft…

解决Keepalived “脑裂”(双VIP)问题

1. 检查广播情况 yum install tcpdump -y tcpdump -i ens33 vrrp -n master 192.168.80.130 与 backup: 192.168.80.131都在广播&#xff0c;正常情况下backup应该是不在广播的&#xff0c;所以可以判断存在防火墙屏蔽vrrp问题&#xff0c;需要设置VRRP过掉防火墙&#xff0…

浏览器常见问题及技巧总结-------( 更新中 )

浏览器常见问题及技巧总结 浏览器1 查找网页关键字2 如何利用技术下载网上图片3 百度搜索技巧 待续、更新中 浏览器 1 查找网页关键字 火狐firefox Ctrlf: 在网页中查找关键字2 如何利用技术下载网上图片 插件: 图片助手(但还是有水印, 比起原版的要差些)3 百度搜索技巧 1.…

SpringCloud gateway限流无效,redis版本低的问题

在使用springCloud gateway的限流功能的时候&#xff0c;配置RedisRateLimiter限流无效&#xff0c;后来发现是Redis版本过低导致的问题&#xff0c;实测 Redis版本为3.0.504时限流无效&#xff0c;改用7.0.x版本的Redis后限流生效。查了资料发现很多人都遇见过这个问题&#x…

【网站项目】314学生二手书籍交易平台

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

直流电压变送器更改从站地址

直流电压变送器采集模块转RS485修改地址 产品图片 产品说明书 修改从站地址 在串口助手上将默认的从站地址01h修改为0Bh 原从站地址&#xff1a;01h 修改参数&#xff1a;10h 通信参数允许修改寄存器&#xff1a;1b fe&#xff08;说明书里7166的十六进制&#xff09; 00 02…

c语言的数据结构:队列

1.队列存在的实现方式及其存在意义 1.1为什么队列使用单链表实现更好 动态内存分配&#xff1a;链表在C语言中通常使用动态内存分配&#xff0c;这意味着可以在运行时根据需要动态地添加或删除节点。这对于实现一个动态大小的队列非常有用&#xff0c;因为队列的大小可以在运…

Matlab在同一张图中如何加入多个图例

根据代码最终画出的图片如下&#xff1a; 其实原理很简单&#xff0c;就是在一张figure中画多个坐标轴&#xff0c;每个坐标轴都有对应的图例&#xff0c;之后再将多余坐标轴隐藏&#xff0c;只保留一个即可。 代码如下&#xff1a; clear all; close all;dd_linewidth 1;a …