示例#1
0
 /// <summary>
 /// Ctor
 /// </summary>
 /// <param name="protocol"></param>
 /// <param name="slaveAddress"></param>
 /// <param name="registerReadAddressOffset"></param>
 /// <param name="registerWriteAddressOffset"></param>
 public ModbusReaderSaver(IModbus protocol, Byte slaveAddress = 1, UInt16 registerReadAddressOffset = Definitions.CONFIGURATION_READ_OFFSET, UInt16 registerWriteAddressOffset = Definitions.CONFIGURATION_WRITE_OFFSET, bool bigEndianOrder = false)
 {
     _protocol = protocol;
     SlaveAddress = slaveAddress;
     RegisterReadAddressOffset = registerReadAddressOffset;
     RegisterWriteAddressOffset = registerWriteAddressOffset;
     BigEndianOrder = bigEndianOrder;
 }
示例#2
0
 public DeviceFinder(IModbus protocol, Byte startSlaveAddress = 1, Byte endSlaveAddress = 247, UInt16 targetVersion = 0)
 {
     _protocol = protocol;
     StartSlaveAddress = startSlaveAddress;
     EndSlaveAddress = endSlaveAddress;
     if (EndSlaveAddress < StartSlaveAddress)
         StartSlaveAddress = EndSlaveAddress;
     TargetVersion = targetVersion;
 }
示例#3
0
        public BlockThreadProcess(Block block)
        {
            this.IsRunning       = false;
            this.BlockData       = block;
            this.ListSensorChild = AppManager.ListSensor.Where(i => i.OfBlock == this.BlockData.BlockId).ToList();


            //this.Modbus = new ModbusDemoData(block.Ip_Address, block.Port);
            this.Modbus = new ModbusTCP(block.Ip_Address, block.Port);
            this.Modbus.HandleWhenReceiveDataFromBlock    += HandleWhenReceiveDataFromBlock;
            this.Modbus.HandleWhenReceiveDataEndFromBlock += HandleWhenReceiveDataEndFromBlock;
            if (ErrorsReceiveDataFromBlock != null)
            {
                this.Modbus.ErrorsReceiveDataFromBlock += ErrorsReceiveDataFromBlock;
            }
        }