当前位置:网站首页>【网络通信三】研华网关Modbus服务设置
【网络通信三】研华网关Modbus服务设置
2022-07-31 16:27:00 【慷仔】
研华网关Modbus服务设置
1、前言
最近在使用研华网关进行Modbus的通信试验,试图跟之前研究的Modbus通信库进行相互通信。
企图互通两者的通信,熟悉Advantech EdgeLink Studio的使用等目的。
关键字如下所示:
- Advantech EdgeLink Studio
- Modbus Tcp
- Socket 阻塞和非阻塞
- IPv4和IPv6区别
使用到的相关软件和工具: - Advanced IP Scanner
- Modbus Poll
- Advantech EdgeLink Studio
2、Advantech EdgeLink Studio使用流程
2.1、总体使用流程
2.2、重要流程截图



3、试验流程
3.1、使用Modbus Poll进行连接



3.2、libmodbus自写程序连接研华网关的流程
# 复制克隆该项目,运行脚本生成modbus_poll工具
# clear all exec
if [ ! -d "./bin" ]; then
mkdir bin
else
cd bin
rm -rf ./*
cd ..
fi
if [ ! -d "./build" ]; then
mkdir build
fi
cd build
# build client
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Release -DClient=ON ..
make
cd release
cp modbus_poll ../../bin
cd ../../
# 使用工具进行modbus通信
if [ -f bin/modbus_poll ]; then
cd bin/
# ./modbus_poll --debug -mtcp -t0x01 -r2 -p502 10.0.1.28
./modbus_poll --debug -mtcp -t0x03 -r1 -p502 10.0.1.59 -c4
cd ../
else
echo "不存在相应的modbus_poll工具"
fi
3.3、自写程序的通信试验结果
Connecting to 10.0.1.59:502
[00][01][00][00][00][06][01][03][00][01][00][04]
Waiting for a confirmation...
<00><01><00><00><00><0B><01><03><08><00><D6><00><33><00><42><00><00>
SUCCESS: read 4 of elements:
Data: 0x00d6 0x0033 0x0042 0x0000
结果说明:
- "./modbus_poll --debug -mtcp -t0x03 -r1 -p502 10.0.1.59 -c4"命令表示从modbus的1地址开始,读取4个寄存器值,同时显示出来。其中研华网关的ip是10.0.1.59,modbus端口号为502。
- 这些结果和在Modbus Poll工具中显示的是一致的,说明通信成功无误。
4、遇到的问题及解决方法
4.1、问题1
- 现象:自写程序modbus_poll无法与研华网关connect成功,显示"Connect time out"的报错;但是Modbus Poll工具却可以进行通信。
- 原因:没有在研华网关的"系统设置/网络和Internet/网络设置"中设置好相应的IPv4属性
- 解决方法:设置好相应的IPv4属性信息,可以是如下所示的设置。

边栏推荐
- 小程序:matlab解微分方程「建议收藏」
- MySQL multi-table union query
- EF Core 2.2中将ORM框架生成的SQL语句输出到控制台
- 牛客 HJ3 明明的随机数
- TypeError: unhashable type: ‘list‘
- Handling write conflicts under multi-master replication (4) - multi-master replication topology
- 【pytorch】1.7 pytorch与numpy,tensor与array的转换
- 2020微信小程序反编译教程(小程序反编译源码能用吗)
- 基于C语言的编译器设计与实现
- 【7.28】代码源 - 【Fence Painting】【合适数对(数据加强版)】
猜你喜欢
随机推荐
最新神作!阿里巴巴刚出炉的面试参考指南(泰山版),我直接狂刷29天
jeecg主从数据库读写分离配置「建议收藏」
GP 6总体架构学习笔记
基于Redis(SETNX)实现分布式锁,案例:解决高并发下的订单超卖,秒杀
Codeforces Round #796 (Div. 2) (A-D)
6-22漏洞利用-postgresql数据库密码破解
第05章 存储引擎【1.MySQL架构篇】【MySQL高级】
gerrit中如何切换远程服务器
【7.29】代码源 - 【排列】【石子游戏 II】【Cow and Snacks】【最小生成数】【数列】
Handling write conflicts under multi-master replication (4) - multi-master replication topology
Premiere Pro 2022 for (pr 2022)v22.5.0
tooltips使用教程(鼠标悬停时显示提示)
外媒所言非虚,苹果降价或许是真的在清库存
type of timer
MySQL multi-table union query
[7.28] Code Source - [Fence Painting] [Appropriate Pairs (Data Enhanced Version)]
Oracle动态注册非1521端口
GP 6 overall architecture study notes
form 表单提交后,使页面不跳转[通俗易懂]
6-22 Vulnerability exploit - postgresql database password cracking








