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

最近在做一个项目,是对接一卡通设备的。我一开始只拿到设备和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电一直是通的,没想到这一点。看屏幕上的提示,一直以为是我们接错了,其实我们一直都是接的正确的,只是没有把设备断电重启。 然而这一点厂家从头到尾没提过。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深信服态势感知一体机SIP-1000 Y2100 3.0.1Y升级3.0.3Y步骤

当前版本:3.0.1Y 升级后版本:3.0.3Y PS:3.0.1Y不能直升3.0.3Y,需要先通过升级工具升级到3.0.2Y,再安装前置补丁从3.0.2Y升级到3.0.3Y;每一次升级时间为20-30分钟,设备升级会重启,需提…

Scrapy框架自学

配置国内镜像源 # pip设置配置 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip config set trusted-host pypi.tuna.tsinghua.edu.cn创建虚拟环境 # 使用conda创建虚拟环境(具体内容请参考课件) conda create -n py_s…

树状结构查询 - 华为OD统一考试

OD统一考试 分值: 200分 题解: Java / Python / C 题目描述 通常使用多行的节点、父节点表示一棵树,比如: 西安 陕西 陕西 中国 江西 中国 中国 亚洲 泰国 亚洲 输入一个节点之后,请打印出来树中他的所有下层节点。 …

Element-ui图片懒加载

核心代码 <el-image src"https://img-blog.csdnimg.cn/direct/2236deb5c315474884599d90a85d761d.png" alt"我是图片" lazy><img slot"error" src"https://img-blog.csdnimg.cn/direct/81bf096a0dff4e5fa58e5f43fd44dcc6.png&quo…

使用paho.mqtt.embedded-c和openssl实现MQTT的单向认证功能

1、背景 由于项目有需求在一个现有的产品上增加MQTT通信的功能&#xff0c;且出于安全考虑&#xff0c;MQTT要走TLS&#xff0c;采用单向认证的方式。 2、方案选择 由于是在现有的产品上新增功能&#xff0c;那么为了减少总的成本&#xff0c;故选择只动应用软件的来实现需求。…

微软Office 2019 批量授权版

软件介绍 微软办公软件套件Microsoft Office 2019 专业增强版2024年1月批量许可版更新推送&#xff01;Office2019正式版2018年10月份推出&#xff0c;主要为多人跨平台办公与团队协作打造。Office2019整合对过去三年在Office365里所有功能&#xff0c;包括对Word、Excel、Pow…

小程序系列--4.协同工作和发布

一、小程序成员管理 1. 成员管理的两个方面 2. 不同项目成员对应的权限 3. 开发者的权限说明 4. 添加项目成员和体验成员 二、小程序的版本 1、小程序的版本 三、发布上线 1. 小程序发布上线的整体步骤 一个小程序的发布上线&#xff0c;一般要经过上传代码 -> 提…

Python: Spire.PDF-for-Python

# encoding: utf-8 # 版权所有 2024 ©涂聚文有限公司 # 许可信息查看&#xff1a; # 描述&#xff1a; # Author : geovindu,Geovin Du 涂聚文. # IDE : PyCharm 2023.1 python 3.11 # Datetime : 2024/1/11 10:32 # User : geovindu # Product : PyChar…

Unity组件开发--长连接webSocket

1.下载安装UnityWebSocket 插件 https://gitee.com/cambright/UnityWebSocket/ 引入unity项目&#xff1a; 2.定义消息体结构&#xff1a;ExternalMessage和包结构Package&#xff1a; using ProtoBuf; using System; using System.Collections; using System.Collections.Ge…

c++全排列

目录 next_permutation()函数 例 perv_permutation()函数 例 next_permutation()函数 next_pernutation()函数用于生成当前序列的下一个排序。它按照字典序对序列进行重新排序&#xff0c;如果存在下一个排列&#xff0c;则将当前序列更改为下一个排列&#xff0c;并返回t…

LeetCode-657/1275/1041

1.机器人能否返回原点&#xff08;657&#xff09; 题目描述&#xff1a; 在二维平面上&#xff0c;有一个机器人从原点 (0, 0) 开始。给出它的移动顺序&#xff0c;判断这个机器人在完成移动后是否在 (0, 0) 处结束。 移动顺序由字符串 moves 表示。字符 move[i] 表示其第 …

达梦数据库的归档模式介绍

几种归档模式 归档是实现数据守护系统的重要技术手段&#xff0c;根据功能与实现方式的不同&#xff0c;DM 数据库的归档可以分为 6 类&#xff1a;本地归档、远程归档、实时归档、即时归档、异步归档和同步归档。 其中&#xff0c;本地归档日志的内容与写入时机与数据库模式…

C语言发展史

前言 当前&#xff0c;C语言是大学广泛应用的计算机教学语言之一&#xff0c;除了文科类专业&#xff0c;大部分理工科专业都会教授C语言&#xff0c;但是&#xff0c;C语言是谁搞出来的&#xff1f;是怎么编译的?相信很多同学对此并不清楚&#xff0c;今天&#xff0c;我们就…

安达发|APS智能排产系统之换产矩阵

在制造业中&#xff0c;生产计划和调度是至关重要的环节。为了提高生产效率、降低成本并满足客户需求&#xff0c;企业需要采用先进的生产管理系统。APS&#xff08;高级计划与排产&#xff09;智能排产系统正是为此而生的一种解决方案。它通过数学模型和算法&#xff0c;实现了…

视频监控设备通过onvif协议接入到视频监控平台

目 录 一、什么是onvif规范 1、onvif的定义 2、onvif的优势 二、AS-V1000监控平台对onvif的支持程度 二、通过onvif接入视频监控设备 1、onvif维护主页面 2、设备发现 3、设备验证 4、设备录入系统 5、通道配置 6、权限分配 三、对onvif设备进行…

im6ull学习总结(三-五)freetype显示正行字

知识补充 笛卡尔坐标系 这里笛卡尔坐标系就是初高中学的直角坐标系的第一象限 lcd坐标系则不同 这两个坐标系如何转换 观察两个坐标系 点&#xff08;x,y&#xff09;的x坐标在两个坐标系中相同&#xff0c;纵坐标&#xff08;y&#xff09;存在着yV-yV V是整个屏幕的行数的像…

小程序基础学习(组件化)

&#xff08;一&#xff09;创建 找到components文件夹下面创建新的文件夹 然后再文件夹内创建component格式的文件 创建后这样 我创建的是my-info的文件夹以及my-info的components文件&#xff0c;跟着普通的页面一样 &#xff08;二&#xff09; 注册组件 找到你需要使用组…

2023年全国职业院校技能大赛软件测试赛题—单元测试卷⑤

单元测试 一、任务要求 题目1&#xff1a;根据下列流程图编写程序实现相应处理&#xff0c;执行j10*x-y返回文字“j1&#xff1a;”和计算值&#xff0c;执行j(x-y)*(10⁵%7)返回文字“j2&#xff1a;”和计算值&#xff0c;执行jy*log(x10)返回文字“j3&#xff1a;”和计算值…

Vue 中修改 Element 组件的 下拉菜单(Dropdown) 的样式

Vue 中修改 Element 组件的 下拉菜单(Dropdown) 的样式 今天在项目中碰到一个 UI 改造的需求&#xff0c;需要根据设计图把页面升级成 UI 设计师提供的设计图样式。 到最后页面改造完了&#xff0c;但是 UI 提供的下拉菜单样式全部是黑色半透明的&#xff0c;只能硬着头皮改了。…

银河麒麟v10安装前端环境(Node、vue、Electron+vite)

此帖子所提到的所有依赖包都是基于银河麒麟v10真机的arm架构包&#xff0c;如果是在windows上的虚拟机上 把依赖包换成x64的包即可&#xff0c;方法步骤都是一样 一.node安装 原始方法安装&#xff08;建议用第二种nvm方法&#xff0c;因为更简单&#xff09;&#xff1a; 1…