Exemple #1
0
        protected float ReadSingle(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            float        value       = modusRtu.ReadFloat(modbusAdrss.SignalAdress).Content;

            return(value);
        }
Exemple #2
0
        protected string ReadString(DeviceAdress adress, ushort length)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            string       value       = modusRtu.ReadString(modbusAdrss.SignalAdress, length).Content;

            return(value);
        }
Exemple #3
0
        protected sbyte ReadSbyte(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            sbyte        value       = Convert.ToSByte(modusRtu.ReadInt16(modbusAdrss.SignalAdress).Content >> 8);

            return(value);
        }
Exemple #4
0
        protected double ReadDouble(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            double       value       = modusRtu.ReadDouble(modbusAdrss.SignalAdress).Content;

            return(value);
        }
Exemple #5
0
        protected long ReadInt64(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            long         value       = modusRtu.ReadInt64(modbusAdrss.SignalAdress).Content;

            return(value);
        }
Exemple #6
0
        protected bool ReadBoolean(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            bool         coil        = modusRtu.ReadCoil(modbusAdrss.SignalAdress).Content;

            return(coil);
        }
Exemple #7
0
        protected int ReadInt32(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            int          value       = modusRtu.ReadInt32(modbusAdrss.SignalAdress).Content;

            return(value);
        }
Exemple #8
0
        protected short ReadInt16(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            short        value       = modusRtu.ReadInt16(modbusAdrss.SignalAdress).Content;

            return(value);
        }
        protected byte ReadByte(DeviceAdress adress)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;
            byte         value       = Convert.ToByte(modusTcp.ReadUInt16(modbusAdrss.SignalAdress).Content >> 8);

            return(value);
        }
 public ModbusTcpSystem(string name, string ipAddress, int port = 502, byte station = 1) : base(name)
 {
     modusTcp          = new ModbusTcpNet(ipAddress, port, station);
     startInputsAdress = new ModbusAdress()
     {
         SignalAdress = "100"
     };
     startInputsAdress = new ModbusAdress()
     {
         SignalAdress = "100"
     };
 }
Exemple #11
0
        public void ReadAressFile(string filePath)
        {
            string path = System.Environment.CurrentDirectory;

            path = filePath + "\\ModbusAdress";
            if (!File.Exists(path))
            {
                throw new Exception("配置文件不存在!");
            }
            using (StreamReader sr = new StreamReader(path)) {
                var line = sr.ReadLine();
                while (line != null)
                {
                    line = sr.ReadLine();
                    string[] strs = line.Split(',');
                    if (strs[0] != "No" && strs[0] != string.Empty)
                    {
                        if (strs[(int)eModbusAdressTitle.IsInput].Trim(' ') == "1")
                        {
                            ModbusAdress adress = new ModbusAdress();
                            adress.SignalAdress = strs[(int)eModbusAdressTitle.Adress];
                            AdressValueInfo valueInfo = new AdressValueInfo()
                            {
                                adress      = adress,
                                deviceValue = new ModbusValue(),
                                length      = Convert.ToUInt16(strs[(int)eModbusAdressTitle.AdressLenth]),
                                valueType   = GetAdressType(strs[(int)eModbusAdressTitle.AdressType]),
                            };
                            this.AddInputSignal(strs[(int)eModbusAdressTitle.AdressName], valueInfo);
                        }
                        if (strs[(int)eModbusAdressTitle.IsOutput].Trim(' ') == "1")
                        {
                            ModbusAdress adress = new ModbusAdress();
                            adress.SignalAdress = strs[(int)eModbusAdressTitle.Adress];
                            AdressValueInfo valueInfo = new AdressValueInfo()
                            {
                                adress      = adress,
                                deviceValue = new ModbusValue(),
                                length      = Convert.ToUInt16(strs[(int)eModbusAdressTitle.AdressLenth]),
                                valueType   = GetAdressType(strs[(int)eModbusAdressTitle.AdressType]),
                            };
                            this.AddOutputSignal(strs[(int)eModbusAdressTitle.AdressName], valueInfo);
                        }
                    }
                }
            }
        }
Exemple #12
0
        protected void Write(DeviceAdress adress, string value)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;

            modusRtu.Write(modbusAdrss.SignalAdress, value);
        }
Exemple #13
0
        internal void Write(DeviceAdress adress, double value)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;

            modusRtu.Write(modbusAdrss.SignalAdress, value);
        }
        protected void Write(DeviceAdress adress, byte value)
        {
            ModbusAdress modbusAdrss = (ModbusAdress)adress;

            modusTcp.Write(modbusAdrss.SignalAdress, value);
        }