问题标签 [modbus-tcp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
92 浏览

java - 通过 TCP/IP 接收来自 Modsim 的心,微笑

我正在尝试将 Modrssim(Modbus 模拟器)与 java 类进行通信。我正在向 modsim 发送查询,它会对此做出响应。但是当我尝试阅读回复时,我无法获得正确的字符。

这是我的代码:

作为回应,我在 modsim 中得到 00 00 00 00 00 03 01 02 00。MOdsim 中的响应图像在这里:

在此处输入图像描述

但在阅读时,它显示了一颗心和两个笑脸。收到的数据:

在此处输入图像描述

0 投票
1 回答
434 浏览

apache-spark - 我们如何使用 Spark Streaming 使用 MODBUS 协议从所有 65536 个寄存器中读取数据?

我有一个特定的条件,我想从 MODBUS 协议读取数据。

但它只允许我一次读取 120 个寄存器。如果我增加这个计数,它会给我ERROR CODE=3 我正在为此使用 JAMOD。

有没有一种方法可以从所有寄存器中读取数据?

我已经浏览了这些链接,但它们没有帮助:

  1. 如何解决 ModbusSlaveException:错误代码 = 3?

  2. http://control.com/thread/1026161502#1026161502

我制作了一个自定义 Spark 接收器来读取数据,我需要将这些数据推送到 Kafka 中。

请为此提供一个解决方案或解决方法,我可以在其中读取所有65536 个寄存器。

0 投票
0 回答
51 浏览

rules - Snort 规则:保存号码以便稍后检查

我正在尝试实现 Snort 规则,该规则将检查 Query 的特定字段(事务 id,Modbus 协议)在 Response 中是否相同。如果没有,则报警。问题是是否可以实施,如果可以,如何实施?

0 投票
1 回答
130 浏览

c - ModbusTCP - 生成帧中的错误 ID

我有奇怪的问题。我尝试使用 PC 上的 libmodbus 通过 modbusTCP 与 ifm AY1020 通信。

我的代码如下所示:

由于调试,我能够获得在 modbus_read_registers 函数中生成的帧:

[00][01][00][00][00][06][FF][03][0B][BA][00][02]

我明白了

错误 网关路径不可用 网关路径不可用

分析后你可以发现该帧中的设备ID是FF,但是根据这个错误PLC期望1。

如果在调试期间我强制将此值从 FF 更改为 01 一切正常,则更进一步。看起来它分配了错误的ID。

我将不胜感激任何帮助、建议和解决方案。

最好的,

帕维尔

0 投票
0 回答
1667 浏览

c# - C# Modbus SlaveException 读取注册表

我正在从事 ac# 项目,该项目必须通过 TCP Modbus 与 PLC 通信。我正在使用Nmodbus 库,它工作正常。问题是当我尝试超过 12000 读/写注册表时。我得到这个异常:

这是生成异常的代码部分:

任何建议将不胜感激。谢谢,费德里科。

0 投票
1 回答
5317 浏览

python - Python3套接字客户端发送和接收十六进制字符串

我被困在这个套接字客户端 Python3 代码中:

它给出了错误

文件“C:\Python34\lib\encodings\utf_8.py”,第 16 行,解码返回 codecs.utf_8_decode(input, errors, True) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 11:无效的起始字节

我正在尝试连接到Ananas - Modbus/TCP -server

错误是什么?

谢谢!

0 投票
1 回答
3804 浏览

python - 使用ModbusTcpClient库在三菱PLC上Python modbus通讯读字

我正在尝试使用以下代码在 Mitsubishi PLC (Q06udeh) 上进行交流和阅读文字:

我得到以下输出:

无论我如何更改具有不同参数的访问词都没有希望,我仍然没有成功。

请帮忙。

0 投票
1 回答
731 浏览

c# - Nmodbus4 库使用

在名为 Nmodbus4 的库中允许使用诸如 float、string、double、long 和 short 等数据类型。但是我不知道如何实现 string 和 float ,但是 integer 和 Boolean 的实现已经完成了。请任何人都可以帮助我找到解决方案。

0 投票
0 回答
81 浏览

c - 收集数据并将其更改为 PLC

我正在做一个项目来收集数据并将其更改为 PLC。我想与任何 PLC 制造商合作,所以我想最好的方法是创建自己的 modbus 通信协议而不使用 OPC 协议(避免依赖制造商)。

您认为哪个最好:OPC 协议还是直接在 ModBus 协议中?

另外,我发现了 modbus 库 libmodbus 和 nmodbus 你觉得它们怎么样?你觉得我的项目可行吗?

0 投票
0 回答
1067 浏览

c# - ASP.NET Core 中的通信

情况:

我需要在我的 ASP.NET Core 项目中创建某种通过 Modbus TCP/IP 进行通信的控制部分。

与 Modbus 通信正常,但我需要永久读取一些 Modbus 地址,并且需要设置它们的间隔。我在db中有这样的结构。

我现在有一个名为 CommunicationRepository 的单例,它是这个协议的控制器,并且具有从模块读取、写入模块、具有来自模块的数据结构等的方法,并创建 CommunicationRunners。

通信库图

CommunicationRunner 可以等待间隔时间过去,然后从 CommunicationRepository 触发委托 - 然后读取特定的 Modbus 地址。

CommunicationRunner 图

问题: 现在它是由异步完成的,这会减慢其他所有事情的速度——在页面中导航、来自 web api 的响应等。当然,这个问题可以在很小的时间间隔内(例如 10 毫秒)被识别出来。

我怎样才能使它更稳定,无窃听?我必须使用线程吗?如果,那么究竟如何?

我会很感激一些代码示例。

谢谢你,看看图片。