C# 关于与三菱 PLC MC协议通讯 使用HslCommunication库通讯

通讯库下载

        在vs包管理工具中,可以直接搜索 HslCommunication 并安装该程序;

 官网地址及使用说明:

HslCommunication - 胡工科技官网

程序使用示例: 

此示例用的是MC协议与三菱的PLC通讯,请按照实际使用示例参照说明文档与相应PLC通讯:

 新new出来一个对象(与PLC的连接是使用的TCP连接),构造函数传参用的是string类型的IP地址和string类型的端口号。

调用ConnectServer() 是将连接从短链接变成长连接,并且能够支持断线重连。

 读取示例

//举例读取M1152点位的值
bool boolM1062 = melsecMc.ReadBool("M1152").Content;
//举例读取D444点位的值
string str_D4004 = melsecMc.ReadString("D444", 11).Content;

写入示例:

//写入M1152点位的值
 melsecMc.Write("M1152", false);
//写入D500点位的值
 melsecMc.Write("D500", 16);

此示例仅供参考,HSL库内容丰富,适用于很多通讯,具体请参照官方使用说明

  • 11
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#编程中,与三菱PLC通过MC协议进行通信可以通过使用串口通信来实现。以下是一个简单的示例代码,演示了如何使用C#三菱PLC进行通信: ```csharp using System; using System.IO.Ports; namespace MitsubishiPLCCommunication { class Program { static SerialPort serialPort; static void Main(string[] args) { // 设置串口参数 serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One); serialPort.Open(); // 发送读取数据的命令 byte[] readCommand = { 0x01, 0x03, 0x00, 0x01, 0x00, 0x01, 0xD5, 0xCA }; serialPort.Write(readCommand, 0, readCommand.Length); // 接收返回的数据 byte[] buffer = new byte[serialPort.BytesToRead]; serialPort.Read(buffer, 0, buffer.Length); // 处理接收到的数据 // TODO: 解析返回的数据 // 关闭串口 serialPort.Close(); } } } ``` 上述代码中,我们首先创建一个`SerialPort`对象,设置串口参数,包括串口号、波特率、校验位、数据位和停止位等。然后,我们发送一个读取数据的命令(示例中为读取一个寄存器的值),通过`serialPort.Write`方法将命令发送给PLC。 接下来,我们通过`serialPort.Read`方法读取PLC返回的数据,并将数据存储在一个缓冲区中。最后,我们可以根据需要解析和处理接收到的数据。 需要注意的是,上述代码中使用的是串口通信方式,你需要根据实际情况修改串口号、波特率和其他参数。此外,还需要根据MC协议的规范编写命令和解析数据的逻辑。 这只是一个简单的示例,实际应用中可能涉及更复杂的通信操作和数据处理。你可以根据自己的需求进行扩展和修改。另外,你可能需要参考三菱电气公司提供的相关文档来了解MC协议的具体规范和命令格式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值