KEPServerEX与三菱iQ-R系列PLC通讯

KEPServerEX

与三菱iQ-R系列PLC通讯

Mitsubishi Ethernet

北京东方鼎晨科技有限公司

目 录

1. 前言

2. 三菱PLC端相关设置

3. Kepware端相关设置

前言

KEPServerEX是美国PTC Kepware公司生产的具有行业性的连接平台,KEPServerEX支持150多种通讯协议,用于向您的所有应用程序提供单一来源的工业自动化数据。该平台的设计使用户能够通过一个直观的用户界面来连接、管理、监视和控制不同的自动化设备和软件应用程序。KEPServerEX利用OPC(自动化产业的互操作性标准)和以IT为中心的通信协议(如MQTT、REST、SNMP、ODBC和Web服务),来为用户提供单一来源的工业数据。此平台是为满足客户对性能、可靠性和易用性的要求而开发和测试的。

北京东方鼎晨科技有限公司是是一家专业从事工业自动化产品销售和控制系统集成的高科技企业,作为KEPServerEX中国区分销商,我们拥有十几年的产品销售及技术经验积累。我们能为客户提供标准的KEPServerEX培训课程,并提供免费产品咨询及电话技术支持。

本文是北京东方鼎晨公司为Kepware使用者能在最短时间内对文中所对应的设备进行配置、调试而制作。由于我们的水平有限,文中的不足之处请联系指正。

三菱PLC端相关设置

测试用PLC采用的三菱iQ-R系列R04 CPU,该PLC设置步骤如下

(1)设置R04 CPU以太网地址,批量允许SLMP

(2)点击上图红框中的“详细设置”,对以太网连接设备进行配置。添加SLMP连接设备,通讯协议选UDP(TCP也可以,与Kepware设置一致即可),端口号5011

设置完毕后点,应用保存。

(3)下载配置的相关参数及程序到PLC

(4)在线监视程序

Kepware端相关设置

(1)选择协议 Mitsubishi Ethernet

(2)按默认完成添加通道

(3)添加设备,选择CPU类型、设置PLC IP地址、端口号

(4)新建标签并写入标签地址,用客户端查看通讯状态

至此,Mitsubishi Ethernet通讯配置完成!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
三菱R系列PLC的串口通讯程序需要根据具体的通讯协议和通讯方式来编写。以下是一些常用的编程语言和通讯协议的示例: 1. 使用GX Developer编写串口通讯程序 在GX Developer中,可以通过使用“模拟终端”功能来进行串口通讯编程。具体步骤如下: 1) 在项目中添加“模拟终端”功能; 2) 配置串口参数,包括波特率、数据位、停止位、校验位等; 3) 编写通讯程序,通过发送数据和接收数据的方式进行通讯。 2. 使用Visual Basic编写串口通讯程序 在Visual Basic中,可以使用“SerialPort”组件来进行串口通讯编程。具体步骤如下: 1) 添加“SerialPort”组件; 2) 配置串口参数,包括波特率、数据位、停止位、校验位等; 3) 编写通讯程序,通过发送数据和接收数据的方式进行通讯。 3. 通讯协议示例 三菱R系列PLC通讯协议包括ASCII协议、二进制协议、Modbus协议等。以下是使用Modbus协议进行通讯的示例代码: ``` // C#示例代码 using System; using System.IO.Ports; namespace MitsubishiPLC { class Program { static void Main(string[] args) { SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One); serialPort.Open(); byte[] readCommand = new byte[] { 0x01, 0x03, 0x00, 0x00, 0x00, 0x01, 0x84, 0x0A }; // 读取D0的值 byte[] writeCommand = new byte[] { 0x01, 0x06, 0x00, 0x00, 0x00, 0x01, 0x05, 0xFA }; // 写入D0的值为250 serialPort.Write(readCommand, 0, readCommand.Length); // 发送读取命令 byte[] readBuffer = new byte[1024]; int readLength = serialPort.Read(readBuffer, 0, readBuffer.Length); // 读取返回数据 byte[] readData = new byte[readLength - 5]; Array.Copy(readBuffer, 3, readData, 0, readData.Length); Console.WriteLine("D0的值为:" + BitConverter.ToInt16(readData, 0)); serialPort.Write(writeCommand, 0, writeCommand.Length); // 发送写入命令 Console.WriteLine("写入D0的值为:250"); serialPort.Close(); } } } ``` 以上代码是使用C#编写的,通过Modbus协议进行通讯,其中读取D0的值和写入D0的值为250是示例,可以根据实际需求进行修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值