CCLinkIE转ModbusTCP借网关之力打破组态王与三菱PLC通讯隔阂
在某自动化生产线项目中,客户采用了三菱PLC作为现场控制核心,该PLC支持CCLinkIE现场总线协议。同时,客户希望使用组态王上位机软件进行生产过程的监控与管理,然而组态王上位机更擅长与ModbusTCP协议设备进行通讯。为了解决这一协议不匹配的问题,决定采用捷米特JM-CCLKIE-TCP网关来完成CCLinkIE转ModbusTCP的协议转换,实现组态王上位机与三菱PLC的通讯。


二、系统架构
(一)系统组成
1. 组态王上位机:运行组态王监控软件,用于对生产过程进行实时监控、数据记录、报警处理等操作。
2. 捷米特JM-CCLKIE-TCP网关:作为协议转换的核心设备,将CCLinkIE协议的数据转换为ModbusTCP协议的数据,反之亦然。
3. 三菱PLC:型号为Q系列,支持CCLinkIE现场总线协议,负责现场设备的控制和数据采集。
(二)网络拓扑
组态王上位机通过以太网与捷米特JM-CCLKIE-TCP网关相连,网关再通过CCLinkIE现场总线与三菱PLC进行通讯。具体连接方式如下:
· 组态王上位机:IP地址为192.168.1.100,子网掩码为255.255.255.0。
· 捷米特JM-CCLKIE-TCP网关:ModbusTCP侧IP地址为192.168.1.101,子网掩码为255.255.255.0;CCLinkIE侧站号为2。
· 三菱PLC:CCLinkIE主站,站号为1。


基本硬件参数
| 参数项 | 配置值 | 说明 |
| 型号 | JM-CCLKIE-TCP | 网关型号 |
| 协议支持 | CCLinkIE从站/ModbusTCP主站/从站 | 双向协议转换 |
| 接口类型 | CCLinkIE(RJ45)×1/ModbusTCP(RJ45)×1 | 双网口设计 |
| 电源规格 | DC24V±10%,50mA | 工业级电源输入 |
| 工作温度 | -20℃~60℃ | 工业环境适应温度 |
| 防护等级 | IP20(室内安装) | 防尘设计 |
3.2CCLinkIE侧参数配置
3.2.1网络基础参数
| 参数项 | 配置值 | 说明 |
| 站号 | 2 | CCLinkIE网络从站地址(需与PLC配置一致) |
| 通讯速率 | 10Mbps | 支持10/100Mbps(自动协商) |
| 数据位 | 8位 | 固定配置 |
| 停止位 | 1位 | 固定配置 |
| 校验方式 | 无校验 | CCLinkIE协议特性 |
3.2.2数据映射区域
| CCLinkIE数据类型 | 三菱PLC区域 | 网关ModbusTCP地址 | 数据长度 | 读写属性 |
| 输入数据(PLC→网关) | X输入继电器 | 30001起 | 128字 | 只读 |
| 输出数据(网关→PLC) | Y输出继电器 | 40001起 | 128字 | 只写 |
| 寄存器输入(PLC→网关) | RWr寄存器(W0-W127) | 30129起 | 128字 | 只读 |
| 寄存器输出(网关→PLC) | RWw寄存器(W1000-W1127) | 40129起 | 128字 | 只写 |
3.3ModbusTCP侧参数配置
3.3.1网络基础参数
| 参数项 | 配置值 | 说明 |
| IP地址 | 192.168.1.100 | 网关ModbusTCP侧IP(需与上位机同网段) |
| 子网掩码 | 255.255.255.0 | 固定配置 |
| 端口号 | 502 | ModbusTCP标准端口 |
| 从站地址 | 1 | 当作为ModbusTCP从站时的设备地址 |
3.3.2功能码映射
| Modbus功能码 | 操作类型 | 支持数据区域 | 说明 |
| 0x03 | 读取保持寄存器 | 40001-40256 | 读取网关输出数据(PLC可写区域) |
| 0x06 | 写入单个保持寄存器 | 40001-40256 | 写入网关输入数据(PLC可读区域) |
| 0x10 | 写入多个保持寄存器 | 40001-40256 | 批量写入数据 |
3.4网关指示灯说明
| 指示灯 | 颜色 | 状态说明 |
| POWER | 绿色 | 常亮:电源正常;熄灭:电源故障 |
| RUN | 黄色 | 闪烁(1Hz):正常运行;熄灭:停机 |
| CCLINKIELINK | 绿色 | 常亮:CCLinkIE连接正常;熄灭:连接断开 |
| MODBUSTCPLINK | 绿色 | 常亮:ModbusTCP连接正常;熄灭:连接断开 |
四、组态王上位机配置步骤
4.1添加ModbusTCP设备
1. 打开组态王工程,进入设备配置向导;
2. 选择ModbusTCP设备,驱动类型为TCP服务器;
3. 输入网关ModbusTCP侧IP地址(192.168.1.100)和端口号(502)。
4.2定义数据变量
| 变量名称 | 寄存器地址 | 数据类型 | 读写属性 | 对应PLC区域 |
| PLC_Output_Y0 | 40001 | USHORT | 读写 | Y0输出继电器 |
| PLC_Input_X0 | 30001 | USHORT | 只读 | X0输入继电器 |
| PLC_Register_W100 | 40129 | INT | 读写 | RWw寄存器W100 |
五、三菱PLC(Q系列)配置要点
5.1CCLinkIE主站设置(GXWorks3)
1. 添加CCLinkIE模块(如QJ71GP21S-SX),设置主站IP为192.168.1.1;
2. 配置从站列表,添加捷米特网关,站号2,分配输入输出区域各128字;
3. 数据映射:
o 网关输入数据(PLC读取)→寄存器区域:W0-W127
o 网关输出数据(PLC写入)→寄存器区域:W1000-W1127
5.
配置说明:

总结
通过采用捷米特JM-CCLKIE-TCP网关,成功解决了组态王上位机与三菱PLC之间的协议不匹配问题,实现了ModbusTCP转CCLinkIE的通讯。该网关具有配置简单、性能稳定等优点,能够满足工业自动化生产过程中的通讯需求。同时,通过合理的系统架构设计和参数设置,确保了整个系统的可靠性和稳定性。
相关文章:
CCLinkIE转ModbusTCP借网关之力打破组态王与三菱PLC通讯隔阂
在某自动化生产线项目中,客户采用了三菱PLC作为现场控制核心,该PLC支持CCLinkIE现场总线协议。同时,客户希望使用组态王上位机软件进行生产过程的监控与管理,然而组态王上位机更擅长与ModbusTCP协议设备进行通讯。为了解决这一协议…...
MyBatis-Plus 通过 ID 更新数据为NULL总结
在使用 MyBatis-Plus 通过 ID 更新数据时,若需将字段值设为 null,可参考以下解决方案: 方法一:使用 TableField 注解 在实体类字段上添加注解,指定更新策略为忽略非空检查: public class User {TableFie…...
Linux网络编程第一课:深入浅出TCP/IP协议簇与网络寻址系统
知识点1【网络发展简史】 **网络节点:**路由器和交换机组成 交换机的作用:拓展网络接口 路由:网络通信路径 1、分组交换 分组的目的: 数据量大,不能一次型传输,只能分批次传输,这里的每一批…...
深入解析布尔注入:原理、实战与防御
目录 一、布尔注入的原理与核心逻辑 二、布尔注入的实战步骤 三、关键函数与绕过技巧 四、实战案例:获取数据库名称 五、防御策略与最佳实践 六、总结 一、布尔注入的原理与核心逻辑 布尔注入(Boolean-Based Blind SQL Injection)是一种…...
GESP2023年12月认证C++七级( 第三部分编程题(2)纸牌游戏)
参考程序: #include <iostream> #include <cstring> // for memset #include <vector> using namespace std;const int max_n 1005; int n; int a[max_n], b[max_n], c[max_n]; // a[]: 得分系数;b[]: 换牌惩罚;c[]: …...
不同的人机验证的机制
目录 Cloudflare Turnstile验证 reCAPTCHA V2 GeeTest CAPTCHA Arkose Labs 验证码(FunCaptcha) 图像(图片)验证码 亚马逊验证码 (AWS/WAF) Cloudflare Turnstile验证 Cloudflare Turnstile 验证码以隐形方式运行…...
HarmonyOS学习 实验九:@State和@Prop装饰器的使用方法
HarmonyOS应用开发:父子组件状态管理实验报告 引言 在HarmonyOS应用开发领域,组件之间的状态管理是一个至关重要的概念。通过有效的状态管理,我们可以确保应用的数据流动清晰、可预测,从而提升应用的稳定性和可维护性。本次实验…...
基于瑞芯微RK3562 四核 ARM Cortex-A53 + 单核 ARM Cortex-M0——Linux应用开发手册
前 言 本文主要介绍TL3562-MiniEVM评估板的AMP(Asymmetric Multi-processing)开发案例,适用开发环境如下: Windows开发环境:Windows 7 64bit、Windows 10 64bit Linux开发环境:VMware16.2.5、Ubuntu20.04.6 64bit U-Boot:U-Boot-2017.09 Kernel:Linux-5.10.209 Lin…...
Java c线程等待ab线程执行完再执行
1、LockSupport AtomicInteger LockSupport.park() 函数表示挂起当前线程LockSupport.unpark© 函数表示解除线程c的阻塞状态AtomicInteger.decrementAndGet() 函数表示将该变量减一,并返回当前变量值(线程安全的原子类) 2、CountDownL…...
ubuntu20.04 Android14编译环境配置
ubuntu 更新和必要安装 sudo apt update sudo apt install git sudo apt install python2-minimal sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2 sudo upda…...
优化 Dockerfile 性能之实践(Practice of Optimizing Dockerfile Performance)
优化 Dockerfile 性能之实践 构建 Docker 镜像时,Dockerfile 的性能会显著影响构建过程的效率。经过优化的 Dockerfile 可以缩短构建时间、最小化镜像大小并提高整体容器性能。在本文中,我们将探讨优化 Dockerfile 性能的最佳实践。 尽量减少层数 影响…...
【Ai】MCP实战:手写 client 和 server [Python版本]
什么是mcp MCP 是一个开放协议,它为应用程序向 LLM 提供上下文的方式进行了标准化。你可以将 MCP 想象成 AI 应用程序的 USB-C 接口。就像 USB-C 为设备连接各种外设和配件提供了标准化的方式一样,MCP 为 AI 模型连接各种数据源和工具提供了标准化的接口…...
解决 AWS RDS MySQL mysqldump 导入sql SET @@GLOBAL 权限不足问题
在使用 mysqldump 导出数据库时,导出的 SQL 文件通常会包含一些 SET 语句,例如 SET MYSQLDUMP, SET SESSION, SET GLOBAL 等,这些语句用于设置会话或全局变量以确保数据一致性和兼容性。然而,在 AWS RDS MySQL 环境中,…...
Java与C在典型场景下的性能对比深度剖析
🎁个人主页:User_芊芊君子 🎉欢迎大家点赞👍评论📝收藏⭐文章 🔍系列专栏:AI 【前言】 在计算机编程领域,Java和C语言都是举足轻重的编程语言。Java以其跨平台性、自动内存管理和丰富…...
多智能体 AI 游戏框架(开源程序):竞争、发展、适应
一、软件介绍 文末提供程序和源码下载 SamoAI 在人类和 AI 之间创建了一个无缝的多代理叙事层,实现了跨多个平台的自然协作。通过一致的身份保留和情境记忆,它允许通过一系列行动随着时间的推移而演变的交互,就像人际关系一样。 二、核心概念…...
从 BI 与 SQL2API 的差异,看数据技术的多元发展路径
在数据驱动的商业世界里,商业智能(BI)与 SQL2API 如同两颗闪耀的星星,各自散发着独特的光芒。BI 早已在企业中广泛应用,成为数据分析领域的中流砥柱;而 SQL2API 作为新兴技术,虽潜力巨大&#x…...
java实现二叉树的前序、中序、后序遍历(递归和非递归方式)以及层级遍历
java实现二叉树的前序、中序、后序遍历以及层级遍历 一、二叉树节点定义二、递归方式1.前序遍历2.中序遍历3.后序遍历 三、非递归方式1.前序遍历2.中序遍历3.后序遍历4.层级遍历5.分层打印 四、测试用例 一、二叉树节点定义 class TreeNode {int val;TreeNode left;TreeNode r…...
Solr admin 更新文档
<add><doc><field name"id">1904451090351546368</field><field name"companyName" update"set">测试科技有限公司</field></doc> </add>...
【Netty篇】EventLoopGroup 与 EventLoop 详解
目录 开场白:话说 Netty 江湖第一段:EventLoopGroup——“包工头”的角色第二段:EventLoop——“身怀绝技的工人”第三段:EventLoop 如何处理 I/O 事件、普通任务和定时任务第四段:Handler 执行中如何换人?…...
操作系统之shell实现(上)
🌟 各位看官好,我是maomi_9526! 🌍 种一棵树最好是十年前,其次是现在! 🚀 今天来学习C语言的相关知识。 👍 如果觉得这篇文章有帮助,欢迎您一键三连,分享给更…...
考研数据结构之图的遍历:深度优先搜索(DFS)与广度优先搜索(BFS)(包含真题及解析)
考研数据结构之图的遍历:深度优先搜索(DFS)与广度优先搜索(BFS) 图的遍历是图论中的核心操作之一,主要包括深度优先搜索(DFS)和广度优先搜索(BFS)。本文将详…...
数据结构与算法——链表OJ题详解(2)
文章目录 一、前言二、OJ续享2.1相交链表2.2环形链表12.2环形链表2 三、总结 一、前言 哦了兄弟们,咱们上次在详解链表OJ题的时候,有一部分OJ题呢up并没有整理完,这一个星期呢,up也是在不断的学习并且沉淀着,也是终于…...
Linux 基础知识详解
Linux 基础知识详解 一、快照与克隆 1. 📸快照(Snapshot) 快照是虚拟机当前运行状态的一次“瞬间拷贝”,包括内存、磁盘、配置等信息。这使得管理员能够快速恢复到某个特定的时间点。 用途: 安全实验前保存状态&am…...
MySQL慢SQL优化方案详解:从诊断到根治的完整指南
MySQL慢SQL优化方案详解:从诊断到根治的完整指南 一、慢SQL的致命影响 当数据库响应时间超过500ms时,系统将面临三大灾难链式反应: 用户体验崩塌 页面加载超时率上升37%用户跳出率增加52%核心业务转化率下降29% 系统稳定性危机 连接池耗…...
centOs7配置有限网络
最简单快速的是使用nmtui命令,采用图形页面修改。 点击编辑连接并回车: 选中编辑然后回车: 千万记住DNS服务器就是子网掩码,不是常说的DNS域名。把地址,网关,子网掩码配置好。只要ip不冲突,网…...
C语言 —— 指尖跃迁 刻印永恒 - 文件操作
目录 1. 什么是文件 1.1 程序文件 1.2 数据文件 1.3 文件名 2. 二进制文件和文本文件 3. 文件的打开与关闭 3.1 流和标准流 3.2 文件指针 3.3 文件的打开与关闭 fopen fclose 4. 文件的顺序读写 4.1 fgetc和fputc fgetc fputc 4.2 fgets和fputs fgets fputs…...
网络安全与信息安全的区别及共通
在数字化时代,网络安全与信息安全已成为保障个人、企业乃至国家正常运转的重要防线。尽管二者紧密相关且常被混为一谈,但实则存在显著差异。当然,它们也有一些相同点,比如都以保障数字环境下的安全为核心目标,均需要通…...
【愚公系列】《Python网络爬虫从入门到精通》052-Scrapy 编写 Item Pipeline
🌟【技术大咖愚公搬代码:全栈专家的成长之路,你关注的宝藏博主在这里!】🌟 📣开发者圈持续输出高质量干货的"愚公精神"践行者——全网百万开发者都在追更的顶级技术博主! …...
【AI News | 20250416】每日AI进展
AI Repos 1、Tutorial-Codebase-Knowledge 自动分析 GitHub 仓库并生成适合初学者的通俗易懂教程,清晰解释代码如何运行,还能生成可视化内容来展示核心功能。爬取 GitHub 仓库并从代码中构建知识库;分析整个代码库以识别核心抽象概念及其交互…...
GIS开发笔记(6)结合osg及osgEarth实现半球形区域绘制
一、实现效果 输入中心点坐标及半径,绘制半球形区域,地下部分不显示。 二、实现原理 根据中心点及半径绘制半球形区域,将其挂接到地球节点。 三、参考代码 void GlobeWidget::drawSphericalRegion(osg::Vec3d point,double radius) {// 使…...
