一卡通水控电控开发踩过的坑

最近在做一个项目,是对接一卡通设备的。我一开始只拿到设备和3个文档开局。不知道从哪下手。一步一步踩坑过来。踩了很多没有必要的坑,写出来给有用的人吧。

读卡器怎么用?

有个读卡器,一开始什么软件也不提供。我都不知道是干嘛用的。后来问客服才知道有一个测试软件。我真是服了,不能把用到的软件直接打包一次性发来吗?最好配个软件使用手册。

然后我就得到了这个软件。
在这里插入图片描述
得到这个软件以后发现也无法读卡,我又跑去问客服。才发现还要安装一下驱动才行。
在这里插入图片描述

我真的服了,一步一个坑,就不能一次性把需要的东西全给吗?

安装完驱动,读卡器总算可以使用了。

安装好打开软件后,切到 通讯模块测试,通讯方式设置中 串口号选:COM5

在这里插入图片描述

左下方的状态栏中可以看到,读卡成功:执行所用时间:2958.6085

说明成功了!

写卡

先读卡,然后在读出的数据基础上进行修改。

设置参数:

工作模式设置成tcp客户端 端口5000 目标地址就是服务器地址 右边就是给电控机设置的ip参数。

在这里插入图片描述

设置好拿去电控机上刷一下就好。

目标地址是否可以使用域名?

实测:长域名无法正常写入,nlic.wisxxx.cool只能写入nlic.wisdxxx.

所以暂时只能使用IP了

校验设置是否成功

千万不要以为设置完成后就一定会成功的。这是我踩坑回来的体会。

  • 设置的端口和最终的端口可能不一样
  • 设备的本机IP与最终的IP也可能不一样

校验方法,

  1. 设备插入网络连上网。
  2. 软件上点搜索,右侧会出来设备列表,找到我们的设备。MAC地址和设备名称一般不会变。

然后在点读取,在点右侧列表中的设备。

此时界面上就会显示真实的设备参数信息了。

在这里插入图片描述

还有一个更方便的软件TCP配置程序.exe,这个软件中显示的信息更全面。

在这里插入图片描述

怎么判断机器已经联网

一开始我都不知道机器插入网线以后到底有没有成功连接。
我后来用愚蠢的办法,到路由器的管理页面查看所有已经连接的设备。通过排除法找到这个水控机设备。为了实现这事情,我甚至把公司的路由器重置了。

这种蠢方法用的一段时间我才发现其实厂家有现成的软件可以查询。

厂家软件查询设备在线情况

提到这个我真的有点不开心,厂家有现成的软件,一开始也不提供。可能内行人会直接向厂家要吧,我第1次做对接,就不知道有这个软件。这个软件还是后来我在客户群里问其他事情,有个客服给我分享了一个网盘,在网盘中无意中发现的。
在这里插入图片描述

通过界面上判断

在这里插入图片描述

搞错通信协议

拿到设备好,收到厂家提供的3个开发文档。里面有http的还有一个没写明什么协议的。身为web开发者的我,误认为是http协议的,浪费了两天时间。

关键是我在开发过程中有在客服群里问,竟然没人提醒我。

后来得知我看错文档了,我又开始研究《实时消费管理系统协议》文档,这个文档从到到尾没有说采用什么协议通信的。
我又受配置软件影响,错误的认为是UDP协议。又使用UDP的方式搞。

在这里插入图片描述
http 和 udp的方式都收不到数据,我一开始仅是怀疑是我的网络没接对。到后来群里又来了个技术明确说是TCP协议我才明白。

唉!这个坑踩的莫名其妙的。

正确协议 TCP ,也就是Java中的Socket。

警告!!!!与电表通讯异常

这是一个大坑啊。现象如图所示:
在这里插入图片描述
厂家的回复是:
计量电表的485线接反了 换一下就好了

我们的电工来回反复接,都会报这个错。我们在 工地部署了好多套都是这个问题,就算接错也不能全错吧!
我们一开始怀疑可能是接触不良或者正负极接错了,回来找自己的原因。浪费了好久。

直到最后才无意中发现坑的存在!!!

线接成功后,必须要重启设备才生效!!!
线接成功后,必须要重启设备才生效!!!
线接成功后,必须要重启设备才生效!!!

我真是服了,我们在工地 12V电一直是通的,没想到这一点。看屏幕上的提示,一直以为是我们接错了,其实我们一直都是接的正确的,只是没有把设备断电重启。 然而这一点厂家从头到尾没提过。

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

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

相关文章

Jupyter Notebook

2017年左右在大学里都听说过Jupyter Notebook,并且也安装用了一段时间,后来不知道什么原因没有用了。估计是那时候写代码的时候多一些,因为它可以直接写代码并运行结果,现在不怎么写代码了。 介绍 后缀名为.ipynb的json格式文件…

laravel框架的用途有哪些

Laravel框架是一个开源的PHP框架,用于开发Web应用程序。它有很多用途,包括: Web应用程序开发:Laravel框架提供了丰富的功能和工具,用于开发各种类型的Web应用程序,包括企业应用、电子商务平台、博客、社交…

Kotlin-数组

数组 创建数组 可以通过Array来创建数组,也可以通过arrayOf()等工具创建数组 Kotlin中创建数组有两种方式 arrayOf(),arrayOfNulls(),emptyArray()工具函数使用Array(size:int,initial:(Int)…

《YOLO算法:基础+进阶+改进》报错解决 专栏答疑

前言:Hello大家好,我是小哥谈。《YOLO算法:基础进阶改进》专栏上线后,部分同学在学习过程中提出了一些问题,笔者相信这些问题其他同学也有可能遇到。为了让大家可以更好地学习本专栏内容,笔者特意推出了该篇…

SpringBoot集成Camunda

一&#xff1a;SpringBoot集成 1.1&#xff1a;pom.xml 因camunda集成SpringBoot对SpringBoot的版本和JDK的版本都有一定的要求&#xff0c;所以这里贴个完整的依赖。可以去官网找每个SpringBoot的版本对应的camunda版本。 <?xml version"1.0" encoding"…

前端入门教程:学完即可单独完成前端项目

目录 目录 1.HTML: 1.1概念 1.2结构 1.3常见的标签使用分类&#xff1a; 2.CSS: 2.1概念 2.2样式实践&#xff1a; 以下的举例都来自于博客&#xff1a; 2.3css选择器&#xff1a; 什么是css选择器&#xff1a; 举例如下&#xff1a; 2.4Demo 3.JavaScript&#…

Spring 容器的初始化过程

Spring 容器的初始化过程包括以下主要步骤&#xff1a; 加载配置文件&#xff1a; Spring 容器通常会从 XML 文件、Java 注解或者 Java Config 等方式加载配置信息&#xff0c;这些配置信息定义了应用中的 bean、依赖关系、切面等内容。 创建容器实例&#xff1a; 一旦配置…

算法34:贴纸拼词(力扣691题)

题目&#xff1a; 我们有 n 种不同的贴纸。每个贴纸上都有一个小写的英文单词。 您想要拼写出给定的字符串 target &#xff0c;方法是从收集的贴纸中切割单个字母并重新排列它们。如果你愿意&#xff0c;你可以多次使用每个贴纸&#xff0c;每个贴纸的数量是无限的。 返回你…

vivado IP Revision Control

2020.2 只需要git 管理 prj.xpr 和 prj.srcs/ https://china.xilinx.com/video/hardware/ip-revision-control.html https://www.xilinx.com/video/hardware/vivado-design-suite-revision-control.html

每日一题:LeetCode-LCR 007. 三数之和

每日一题系列&#xff08;day 18&#xff09; 前言&#xff1a; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f50e…

解决chromebook kabylake安装linux没有声音问题

chromebook kabylake安装arch没有声音&#xff0c;好长时间没有解决&#xff0c;一直用的蓝牙耳机。 今天搜搜帖子解决了&#xff0c; 分享供参考 git clone https://github.com/eupnea-project/chromebook-linux-audiocd chromebook-linux-audio ./setup-audio提示 I Underst…

Shell编程--数组

数组 1.定义数组1.1.普通数组1.2.关联数组1.3.数组常用定义方法 2.使用数组shell数组中"*" 和 "" 区别 1.定义数组 数组也是一种变量&#xff0c;常规变量只能保存一个值&#xff0c;数组可以保存多个值 关联数组跟普通数组的区别&#xff1a; 普通数组&a…

linux高级篇基础理论十一(GlusterFS)

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a; 小刘主页 ♥️不能因为人生的道路坎坷,就使自己的身躯变得弯曲;不能因为生活的历程漫长,就使求索的 脚步迟缓。 ♥️学习两年总结出的运维经验&#xff0c;以及思科模拟器全套网络实验教程。专栏&#xff1a;云计算技…

VS中动态库的创建和调用

VS中动态库的创建和调用 库 ​ 库是写好的现有的&#xff0c;成熟的&#xff0c;可以复用的代码。库的存在形式本质上来说库是一种可执行代码的二进制。 ​ 库有两种&#xff1a;静态库&#xff08;.a、.lib&#xff09;和动态库&#xff08;.so、.dll&#xff09;。所谓静态…

一键操作完整的部署项目流程

目录 一、常见的搭配 二、完整的部署项目流程具体步骤 2.1、安装jdk 安装jdk &#xff1a; 配置环境&#xff1a; 检查是否成功&#xff1a; 2.2、配置tomcat外部访问 下载解压软件 安装tomcat 测试tomcat安装是否成功 2.3、安装MySQL 安装vcc环境 命令输入步骤 安…

应用在热能表领域中的数字温度传感芯片

热能表&#xff0c;是适用于测量在热交换环路中&#xff0c;被称作载热液体的液体所吸收或转换热能的仪器&#xff0c;它由流量传感器、温度传感器和热能积算仪三部分组成。热量表&#xff08;热表&#xff09;又称热能表、热能积算仪&#xff0c;既能测量供热系统的供热量又能…

多模态推荐系统综述:二、特征交互 Fusion

二、Fusion 融合不同的多模态信息&#xff0c;与bridge相比&#xff0c;融合更关注项目之间的多模态内部关系。 它可以灵活地融合不同权重和焦点的多模态信息。 注意机制是应用最为广泛的特征融合。 2.1 粗粒度注意力。 一些模型应用注意力机制在粗粒度级别融合来自多种模式…

ES6笔记总结

首先我们需要了解一下什么是 ECMA&#xff1a; ECMA&#xff08;European Computer Manufacturers Association&#xff09;中文名称为欧洲计算机制造商协会&#xff0c;这 个组织的目标是评估、开发和认可电信和计算机标准。1994 年后该组织改名为 Ecma 国际 什么是 ECMAScr…

美易官方《美股一哥争夺战白热化:微软市值一度超越苹果》

随着科技股的持续走高&#xff0c;美股一哥争夺战也愈发激烈。微软和苹果这两家科技巨头之间的市值争夺战更是吸引了全球市场的关注。上周苹果接连被两家华尔街机构下调评级后&#xff0c;微软的市值已经在逼近苹果&#xff0c;挑战苹果的美股最高市值公司地位。 微软和苹果都…

[深度学习]Open Vocabulary Object Detection 部署开放域目标检测模型使用感受

一、Open Vocabulary Object Detection介绍 Open Vocabulary Object Detection (OpenVOD) 是一种新型的目标检测方法&#xff0c;它使用开放词汇的概念来识别和检测图像中的对象。与传统的目标检测方法相比&#xff0c;OpenVOD具有更高的灵活性和可扩展性&#xff0c;因为它允…