要读取二进制数据而不是转换后的泛型数据,可以使用S7.NetPlus库中的ReadBytes方法。以下是一个示例代码:

using S7.Net;
using System;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建S7.Net的PLC对象
            Plc plc = new Plc(CpuType.S71200, "192.168.0.1", 0, 1);

            // 连接到PLC
            plc.Open();

            // 读取二进制数据
            byte[] data = plc.ReadBytes(DataType.DataBlock, 1, 0, 10);

            // 打印二进制数据
            foreach (byte b in data)
            {
                Console.Write(b.ToString("X2") + " ");
            }

            // 关闭连接
            plc.Close();

            Console.ReadKey();
        }
    }
}

在上面的示例中,首先创建了一个Plc对象,并指定了PLC的类型、IP地址和机架号槽号。然后使用Open方法连接到PLC。

接下来使用ReadBytes方法从PLC的数据块(DataBlock)1读取10个字节的二进制数据。然后使用foreach循环遍历二进制数据,并将每个字节的十六进制值打印出来。

最后使用Close方法关闭与PLC的连接。

请注意,上述代码只是一个示例,具体的地址和数据类型需要根据实际的PLC程序进行调整


原文地址: http://www.cveoy.top/t/topic/iRzE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录