modbustcp通讯协议_欧姆龙PLC分别做modbus tcp客户端和服务器的通讯案例

本文介绍NJ设备中ModbusTCP库文件的使用方法,包括客户端与服务器两端的功能块应用,以及如何实现多客户端连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NJ并不支持ModbusTCP协议,库文件是在socket的基础上开发出来的功能块。库文件共有8个功能块,根据不同的功能块实现不同的modbusTCP的功能。

8个功能块分别为客户端使用7个功能块,客户端连接、读线圈、读输入寄存器、读保持寄存器、写单个线圈、写单个保持寄存器、写多寄存器;和服务器使用一个功能块。

3e3d8e9da7d0936a3918cfab420df31e.png
f075cac4bd79ac270852d0a4e4c85efb.png

2、客户端连接

取其中一个功能块为例,进行测试。

添加客户端连接功能块,写入对方IP、端口号、连接信号变量;功能块使能后,置位connect。输出部分,可以看到错误和错误代码。

添加读保持寄存器功能块,写入从设备地址、起始地址、字节长度,connect功能块中的输出TCP_socket需要和读写功能块输入的TCP_socket为同一变量;建立好输出变量,send_request置位即可读取。

接收数据为Word,如果需要转为其他数据类型,可以使用数据转换指令。

8e0cff47c580ea421e38a2424f97dabe.png
591b7bcfcc932dfd4af92954db383273.png

3、服务器连接

添加功能块,在输入中分别填入需要发送的寄存器和线圈数据;上位进行连接后,将会显示对方IP和端口。

由于modbus的固定端口为502,因此调试工具或者其他上位需要将连接端口设置为502;否则无法进行通讯。

注:以太网通讯中,部分端口号为固定用途,例如网页打开的默认端口为80,在使用中会自动省略;modbus端口为502.

连接成功后,发送Modbus功能码进行通讯。

ce84eed57d5adf276f4ebec4ec16d8af.png
d766d41391d52acfbba79f07c6797cfd.png
7a799836d53bd62d082c14aebde53957.png
9512a5cdddfbd34ad81720727c3ebf8e.png

4、服务器连多个客户端

在实际使用中,会遇到连多个客户端的情况,由于功能块是使用socket方式开发,因此,可以使用多个端口连接。但是,如果对方是标准的modbusTCP,无法更改端口的话,那么将无法进行多个客户端连接。

先将功能块里的内容复制出来,然后再将端口号的改为变量的方式,这样就可以进行多客户端连接。经测试,通讯没有问题。

9f8f6fa3f5c6b9e93c0eee10fc366d4f.png
0ac148f3b53e99ff1da009437de973ad.png
8b719d8e7609c887af4d7cd7f8d6599a.png
### 查找最新 Miniconda3 安装教程 为了获取最新的 Miniconda3 安装指南,建议访问官方文档页面。通常,Anaconda Miniconda 的官方网站会提供最权威更新及时的信息。 #### 获取最新安装包 可以从 Miniconda 的官方网站下载适合操作系统的最新版本: - 访问 [Miniconda 官方网站](https://docs.conda.io/en/latest/miniconda.html),这里提供了不同平台(Linux, macOS, Windows)对应的安装脚本链接。 - 对于 Linux 用户来说,可以使用如下 wget 命令直接从终端下载最新版的 Miniconda3 安装程序: ```bash wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh ``` 对于其他操作系统,请参照官网给出的具体指令进行下载。 #### 执行安装过程 完成下载之后,按照提示执行安装向导。以下是针对 Linux 平台的一个典型例子: 1. 使用 `bash` 运行已下载的 shell 脚本来启动图形化或命令行界面引导式的安装流程 ```bash bash Miniconda3-latest-Linux-x86_64.sh ``` 2. 按照屏幕上的指示同意许可协议并选择安装路径等选项。 3. 推荐将 Conda 初始化设置加入到 `.bashrc` 文件以便每次登录自动加载配置[^1]。 #### 验证安装成功与否 一旦安装完毕,可以通过运行以下命令验证是否正确设置了环境以及确认当前使用的 Conda 版本号: ```bash conda --version ``` 如果一切正常,则应该能看到显示具体的版本信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值