Exemplo n.º 1
0
 private void btnReadDiscreteInputs_Click(object sender, EventArgs e)
 {
     try
     {
         if (!modbusClient.Connected)
         {
             modbusClient.IPAddress = txtIpAddressInput.Text;
             modbusClient.Port      = int.Parse(txtPortInput.Text);
             modbusClient.Connect();
         }
         bool[] serverResponse = modbusClient.ReadDiscreteInputs(int.Parse(txtStartingAddressInput.Text) - 1, int.Parse(txtNumberOfValuesInput.Text));
         lsbAnswerFromServer.Items.Clear();
         for (int i = 0; i < serverResponse.Length; i++)
         {
             lsbAnswerFromServer.Items.Add(serverResponse[i]);
         }
     }
     catch (Exception exc)
     {
         MessageBox.Show(exc.Message, "Exception Reading values from Server", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     finally
     {
         modbusClient.Disconnect();
     }
 }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            EasyModbus.ModbusClient modbusClient = new EasyModbus.ModbusClient();
            modbusClient.Connect("127.0.0.1", 502);
            bool[] response = modbusClient.ReadDiscreteInputs(0, 2);

            modbusClient.Disconnect();
            Console.WriteLine("Value of Discrete Input #1: " + response[0].ToString());
            Console.WriteLine("Value of Discrete Input #2: " + response[1].ToString());
            Console.ReadKey();
        }
Exemplo n.º 3
0
        public void GetValues(ConnectionProperties connectionProperties)
        {
            modbusClient = connectionProperties.modbusClient;
            if (!modbusClient.Connected)
            {
                modbusClient.IPAddress = connectionProperties.ModbusTCPAddress;
                modbusClient.Port      = connectionProperties.Port;
                modbusClient.Connect();
            }
            foreach (FunctionProperties functionProperty in connectionProperties.FunctionPropertiesList)
            {
                switch (functionProperty.FunctionCode)
                {
                case FunctionCode.ReadCoils:
                    functionProperty.values = modbusClient.ReadCoils(functionProperty.StartingAdress, functionProperty.Quantity);
                    break;

                case FunctionCode.ReadDiscreteInputs:
                    functionProperty.values = modbusClient.ReadDiscreteInputs(functionProperty.StartingAdress, functionProperty.Quantity);
                    break;

                case FunctionCode.ReadHoldingRegisters:
                    functionProperty.values = modbusClient.ReadHoldingRegisters(functionProperty.StartingAdress, functionProperty.Quantity);
                    break;

                case FunctionCode.ReadInputRegisters:
                    functionProperty.values = modbusClient.ReadInputRegisters(functionProperty.StartingAdress, functionProperty.Quantity);
                    break;

                default: break;
                }
            }
            if (valuesChanged != null)
            {
                valuesChanged(this);
            }
        }