• easymodbus串口模式调试测试


    easymodbus串口模式调试测试

    public int EasyModbusReadInputRegisters()
            {
                ModbusClient modbusClient = new ModbusClient(_spHelper.ConfigSerialPort.PortName);
                try
                {
                    modbusClient.UnitIdentifier = _dcuInfo.siteId;
                    modbusClient.Baudrate = _spHelper.ConfigSerialPort.BaudRate;
                    modbusClient.Parity = (System.IO.Ports.Parity)_spHelper.ConfigSerialPort.Parity;
                    modbusClient.StopBits = (System.IO.Ports.StopBits)_spHelper.ConfigSerialPort.StopBits;
                    modbusClient.ConnectionTimeout = 500;
                    modbusClient.Connect();
                    int[] result = modbusClient.ReadInputRegisters(54, 1);  //PLC地址号
                    modbusClient.Disconnect();
                    return result[0];
                }
                catch (Exception ex)
                {
                    modbusClient.Disconnect();
                    return -1;
                }
                
            }
    
            public bool EasyWriteMultipleRegisters()
            {
                ModbusClient modbusClient = new ModbusClient(_spHelper.ConfigSerialPort.PortName);
                try
                {
                    modbusClient.UnitIdentifier = _dcuInfo.siteId; //从机地址,0x01,0x02
                    modbusClient.Baudrate = _spHelper.ConfigSerialPort.BaudRate;//波特率
                    modbusClient.Parity = (System.IO.Ports.Parity)_spHelper.ConfigSerialPort.Parity;
                    modbusClient.StopBits = (System.IO.Ports.StopBits)_spHelper.ConfigSerialPort.StopBits;
                    modbusClient.ConnectionTimeout = 500;
                    modbusClient.Connect();
                    int[] registers = new int[] { 3250, 3110 }; //要写的值
                    ushort startAddress = 54;  //PLC从某个地址开始写
                    modbusClient.WriteMultipleRegisters(startAddress, registers);
                    modbusClient.Disconnect();
                    return true;
                }
                catch (Exception ex)
                {
                    if (modbusClient.Connected)
                    {
                        modbusClient.Disconnect();
                    }
                    return false;
                }
                
            }
  • 相关阅读:
    煲鸡汤流程
    面向对象
    程序员英语学习思维导图
    百度通配符学习
    面向对象
    IO学习
    理解java的三大特性之继承
    重载(overload)、覆盖(override)、隐藏(hide)的区别
    2018年值得关注的10大JavaScript动画库
    小知识点总结
  • 原文地址:https://www.cnblogs.com/txwtech/p/16442247.html
Copyright © 2020-2023  润新知