4G DTU模块和串口设备连接的方式
首先说下解决思路:
由于考虑到串口开发很麻烦,所以后来买了一个4g模块的dtu。
所以最后的解决方案是,plc串口设备与dtu相连,由于dtu是透传模式,使用java与4g模块进行通信就完事了。
虽然这样看着很简单,但是这段时候不少走弯路,颇有一种摸石过河、黑夜走路的感觉,什么东西都要自己摸索,又怕方向是错的,直到成功的那一刻才知道原来是这样,终于到了扒开了云雾,见到了太阳,然后回头看看才明白道路是那样的清晰。
但是:我要说的是不要畏惧困难,哪怕你不知道前路如何,哪怕不知道方向是否正确,但一定有静下心来去思考,一点点去尝试,最后一定能找到正确的道路。
经历的历程:
历程1:
拿到plc设备的那一刻,自己完全不知道该怎么办,我是谁?我在哪??我要做什么???但是被项目逼迫的我很快冷静下来,管他呢,先单独测试设备吧,先用指令把设备跑通了再说,这是历程1的主要目标。于是研究串口协议,研究modbus ASCII码协议、解析其每位16进制数据的含义、研究其校验码,花了3天左右的时间终于把协议搞明白了,协议搞明白了,写了串口指令,接下来我要怎么发送,请教懂行的人,下载了串口调试助手,反复试,终于第一条指令成功了,把我高兴的差点就流出了老父亲般激动的泪水。
历程2:
4g dtu模块,拿到后和plc的思路一样,先看4g模块是否通信正常,于是在厂家的官网找到配置调试文档,按着步骤调试、配置,最后把4g模块参数配置完成,主要这里的配置主要是给dtu设置服务器地址,就是4g模块最终要和谁通信,给dtu配置上服务器的ip地址和端口号。最后配置完成,在服务器上装上网络调试助手,发送信息测试成功,通信正常。
历程3:
经过1个多星期的工作,dut和plc已分别收服,接下来要测试,dut连接plc之后,给dtu发信息能否控制plc的运行。由于前期分别做测试时已经做了很多工作,所以两者在一起调试很顺利,很快就通上了信息,使用网络助手给dtu发送指令,dtu能顺利的把指令传给plc,从而达到控制plc的效果。那接下来就是怎么用java和dtu通信了。
历程4:
java与dtu的通信,讲真,这两者通信着实让我有点不知所措,不过后来回到家躺在床上灵光一闪,dtu不就用的sokect通信的吗?我现在写个socket的服务器来代替之前的网络助手发送指令是否可行呢?于是第二天早上一到公司就写了几行简易代码,丢到之前给dtu配置地址的那台服务器上实验,果然接收到了dtu的心跳包数据,这时我有点喜出望外,感觉写了几行指令实验,结果真的能行,终于历经了4个阶段后,整个流程都跑通了,解决方案也有了,剩下的就是怎么写代码的事了。
4G DTU模块和串口设备连接的方式的更多相关文章
- 4G DTU模块的功能和作用是什么
4G DTU模块我们可以简单将它理解为使用4G无线通信网络来进行远距离无线传送的终端设备.4G DTU模块基于4G方式进行远距离的数据传输,是专门用于将串口数据转换为IP数据或将IP数据转换为串口数据 ...
- 使用MQTT协议的4G DTU模块具有什么优势
什么是MQTT协议 要了解使用MQTT协议的4G DTU模块具有哪些优势,首先我们需要了解什么是MQTT协议,MQTT协议最早是IBM开发的一个即时通讯协议,它的主要是为大量计算能力有限且工作在低带宽 ...
- 4G DTU模块带有MQTT协议吗?
DTU作为一种通讯设备,其应用场合十分广泛.从广义上讲,在进行通信时,传输数据链路两端负责发送数据信息的模块单元都称之为DTU,在它的作用下对所传信息格式转换和数据整理校验.在狭义上的定义,DTU一般 ...
- 4G DTU模块的工作原理
DTU是无线数据传输模块,4G DTU又被称4G模块,是4G网络进行远距离传输的设备,即串口服务器的无线版,其功能与串口服务器类似. 4G DTU是一种物联网无线数据终端,利用公用运营 ...
- 4G DTU的数据透传功能如何实现
准备将众山科技4G DTU进行数据透传之前,先将电脑串口连接到4G DTU串口上.如果是没有硬件串口的电脑,可以通过USB转RS232串口转换线进行连接. 连接成功后,按照说明书中提供的初始参数进行设 ...
- 4g物联网模块的原理
4G DTU模块也可以被称之为是含有第四代移动通信技术的模块,是随着科技不断发展进步下物联网和移动互联网发展下的又一产物.而4G技术包括TD-LTE和FDD-LTE两种制式.集3G与WLAN于一体并能 ...
- 4G DTU的使用方法和应用领域
4G DTU是一种数据传输单元,通俗理解就是,用来传输数据的一种硬件.既然是用来传输数据的,那就能将它视为一个管道,也就是说,指令同过它传给设备,而管道是不对这些指令做出响应的. 4G DTU如何使用 ...
- 4G DTU数据传输终端的功能介绍
4G DTU是基于4G网络的自动化数据传输终端,是一种物联网无线数据传输设备,使用公用运营商的4G网络为用户提供无线远距离数据传输功能,使用工业级32位的高性能通信处理器和工业级无线模块,以嵌入式实时 ...
- 4G DTU无线数据透明传输终端
4G DTU是基于4G网络的远程无线数据透明传输终端,是一种物联网无线数据传输设备,使用公用运营商的4G网络为用户提供无线远距离数据传输功能,使用工业级32位的高性能通信处理器和工业级无线模块,以嵌入 ...
随机推荐
- Spring属性注入(set方式、构造函数方式、p名称空间、spel、复杂类型)
1.set注入方式 (1)注入的为值类型(八大数据类型)的数据 配置文件: <?xml version="1.0" encoding="UTF-8"?&g ...
- Java基础——缓存
1.缓存 将程序或系统中常用的数据对象存储在像内存这样特定的介质中,以避免在每次程序调用时,重新创建或组织数据所带来的性能损耗,从而提高了系统的整体运行速度 以目前的系统架构来说,用户的请求一般会先经 ...
- 【FastDFS】SpringBoot整合FastDFS实战,我只看这一篇!!
写在前面 在<[FastDFS]小伙伴们说在CentOS 8服务器上搭建FastDFS环境总报错?>和<[FastDFS]面试官:如何实现文件的大规模分布式存储?(全程实战)> ...
- 关于Xilinx PCIE DMA的问答
关于Xilinx PCIE DMA的问答 很久没上博客园了,但由于之前在博客园写了几篇关于PCIE DMA的文章,很多同学给我发消息询问相关知识点,之前有空的时候都是语音一小时跟人细讲,最近由于工作繁 ...
- NodeJS二进制合并
Node.js 批量文件合并code cnblogs @ Orcim 本 文主要介绍使用 Node 进行 ACB 序列文件(Atom CueSheet Binary,编译 AtomCueSheet ...
- 如何设置UITextField的焦点?
需要一进VIEW就显示键盘. 在viewDidLoad函数中调用:[yourUITextField becomeFirstResponder];
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- 【题解】PTA-Little Bird
Link 单调队列板子. 题目大意:一个点可以由距离它不超过\(k\)的点跳过来,如果那个点比它高就不需要花费体力,否则花费\(1\)的体力.问走到\(n\)的最小体力,多组询问. 显然的转移方程,设 ...
- JavaScript求数组中元素的最大值
要求: 求数组[2,6,1,77,52,25,7]中的最大值. 实现思路: 声明一个保存最大元素的变量 max 默认最大值max定义为数组中的第一个元素arr[0] 遍历这个数组,把里面每个数组元素和 ...
- 谈谈InnoDB中的B+树索引
索引类似于书的目录,他是帮助我们从大量数据中快速定位某一条或者某个范围数据的一种数据结构.有序数组,搜索树都可以被用作索引.MySQL中有三大索引,分别是B+树索引.Hash索引.全文索引.B+树索引 ...