zhangqian
2023-10-26 2df84cdc7faf29cc8a2512b627a36a3881276b9f
service/plc.go
@@ -97,13 +97,15 @@
         if len(value) == 2 {
            val = binary.BigEndian.Uint16(value)
         } else if len(value) == 4 {
            val = binary.BigEndian.Uint32(value)
            low16Val := uint32(binary.BigEndian.Uint16(value[:2]))
            high16 := uint32(binary.BigEndian.Uint16(value[2:])) << 16
            val = low16Val + high16
         } else {
            logx.Errorf("plc read get an unknown int value: %v, address:%v", value, address)
            return nil, errors.New(fmt.Sprintf("unknown int value:%v", value))
         }
      }
      logx.Infof("plc read ok, address: %v, result: %v", address, val)
      logx.Infof("plc read ok, address: %v, result: %v, dataLength: %v, valueLength: %v", address, val, dataLength, len(value))
      return val, nil
   } else if plcConfig.Method == constvar.PlcMethodSerial {
      ipAddr = conf.Conf.Services.Serial