//设置压差曲线 public static byte[] Set_cycpumpline(byte address, xd100x.cycpumpline cl) { int[] buffer = { cl._ov1, Convert.ToInt16(cl._pv1 * 100), cl._ov2, Convert.ToInt16(cl._pv2 * 100), cl._ov3, Convert.ToInt16(cl._pv3 * 100), cl._ov4, Convert.ToInt16(cl._pv4 * 100), cl._ov5, Convert.ToInt16(cl._pv5 * 100), cl._ov6, Convert.ToInt16(cl._pv6 * 100), cl._ov7, Convert.ToInt16(cl._pv7 * 100), cl._ov8, Convert.ToInt16(cl._pv8 * 100) }; return(DataInfo.ModbusSetData(address, 0x10, 161, buffer)); }
//设置压差曲线 public static byte[] Set_cycpumpline(byte address, xd100x.cycpumpline cl) { byte[] buffer = { (byte)Convert.ToSByte(cl._ov1), (byte)Convert.ToSByte(cl._pv1 * 100), (byte)Convert.ToSByte(cl._ov2), (byte)Convert.ToSByte(cl._pv2 * 100), (byte)Convert.ToSByte(cl._ov3), (byte)Convert.ToSByte(cl._pv3 * 100), (byte)Convert.ToSByte(cl._ov4), (byte)Convert.ToSByte(cl._pv4 * 100), (byte)Convert.ToSByte(cl._ov5), (byte)Convert.ToSByte(cl._pv5 * 100), (byte)Convert.ToSByte(cl._ov6), (byte)Convert.ToSByte(cl._pv6 * 100), (byte)Convert.ToSByte(cl._ov7), (byte)Convert.ToSByte(cl._pv7 * 100), (byte)Convert.ToSByte(cl._ov8), (byte)Convert.ToSByte(cl._pv8 * 100) }; return(DataInfo.SetData(address, 0x3f, buffer)); }
//解析压差曲线 public static xd100x.cycpumpline Read_cycpumpline(byte[] inByte) { xd100x.cycpumpline cl = new xd100x.cycpumpline(); cl._ov1 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 3)); cl._pv1 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 5) / 100.0, 2); cl._ov2 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 7)); cl._pv2 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 9) / 100.0, 2); cl._ov3 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 11)); cl._pv3 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 13) / 100.0, 2); cl._ov4 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 15)); cl._pv4 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 17) / 100.0, 2); cl._ov5 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 19)); cl._pv5 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 21) / 100.0, 2); cl._ov6 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 23)); cl._pv6 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 25) / 100.0, 2); cl._ov7 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 27)); cl._pv7 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 29) / 100.0, 2); cl._ov8 = Convert.ToInt32(DataInfo.GetLongValue2(inByte, 31)); cl._pv8 = (float)Math.Round(DataInfo.GetLongValue2(inByte, 33) / 100.0, 2); return(cl); }
//解析压差曲线 public static xd100x.cycpumpline Read_cycpumpline(byte[] inByte) { xd100x.cycpumpline cl = new xd100x.cycpumpline(); cl._ov1 = (sbyte)DataInfo.GetByteValue(inByte, 7); cl._pv1 = ((sbyte)DataInfo.GetByteValue(inByte, 8)) / 100f; cl._ov2 = (sbyte)DataInfo.GetByteValue(inByte, 9); cl._pv2 = ((sbyte)DataInfo.GetByteValue(inByte, 10)) / 100f; cl._ov3 = (sbyte)DataInfo.GetByteValue(inByte, 11); cl._pv3 = ((sbyte)DataInfo.GetByteValue(inByte, 12)) / 100f; cl._ov4 = (sbyte)DataInfo.GetByteValue(inByte, 13); cl._pv4 = ((sbyte)DataInfo.GetByteValue(inByte, 14)) / 100f; cl._ov5 = (sbyte)DataInfo.GetByteValue(inByte, 15); cl._pv5 = ((sbyte)DataInfo.GetByteValue(inByte, 16)) / 100f; cl._ov6 = (sbyte)DataInfo.GetByteValue(inByte, 17); cl._pv6 = ((sbyte)DataInfo.GetByteValue(inByte, 18)) / 100f; cl._ov7 = (sbyte)DataInfo.GetByteValue(inByte, 19); cl._pv7 = ((sbyte)DataInfo.GetByteValue(inByte, 20)) / 100f; cl._ov8 = (sbyte)DataInfo.GetByteValue(inByte, 21); cl._pv8 = ((sbyte)DataInfo.GetByteValue(inByte, 22)) / 100f; return(cl); }