Skip to main content

Configurazione del monitoraggio dello scambio I/O e dello stato del dispositivo

Monitoraggio ModbusTCPClientSideExample progetto

  1. Nel ModbusTCPClientSideExample progetto, aprire il PLC_PRG.prg.st programma.

  2. Dichiarare due variabili denominate readValue E writeValue Di tipo WORD.

  3. Definire una variabile maxValue Di tipo WORD con il valore 100.

  4. Inserisci il seguente codice nella tua implementazione:

    IF writeValue > maxValue THEN
       writeValue := 0;
    END_IF
    IF readValue = writeValue THEN
       writeValue := writeValue + 1;
    END_IF

    Nota

    Non appena viene stabilita la comunicazione Modbus, questo codice verrà incrementato continuamente readValue E writeValue fino al raggiungimento del limite.

  5. Apri l'editor del Modbus_TCP_Server dispositivo e passare al Mappatura I/O tab.

  6. Espandere le voci per Channel 1 E Channel 2.

  7. Mappa PLC_PRG.readValue per il Channel 2[0] voce. La variabile riceve il valore letto dalla richiesta in seguito.

  8. Mappa PLC_PRG.writeValue per il Channel 1[0] voce. La variabile fornisce il valore da scrivere.

    Il risultato è il seguente:

    _c4_img_task_modbus_setup_monitoring.png
  9. Torna a PLC_PRG.prg.st Del ModbusTCPClientSideExample progetto.

  10. Dichiarare una variabile serverComState Di tipo IoDrvModbusTCP.ModbusTCPComState.

  11. Dichiarare una variabile serverErrorCode Di tipo IoDrvModbusTCP.MB_ErrorCodes.

  12. Aggiungi il seguente codice alla tua implementazione e regola il nome del server in modo che corrisponda al nome utilizzato sotto Dispositivi. In questo progetto di esempio, il nome è Modbus_TCP_Server.

    serverComState := Modbus_TCP_Server.ComState;
    serverErrorCode := Modbus_TCP_Server.byModbusError;

    Ciò consentirà di monitorare lo stato della comunicazione e il codice di errore corrente utilizzando le uscite del blocco funzione del dispositivo.

Monitoraggio ModbusTCPServerSideExample progetto

  1. Nel ModbusTCPServerSideExample progetto, aprire il PLC_PRG.prg.st programma.

  2. Dichiarare due variabili denominate registerValue E tempValue Di tipo WORD.

  3. Inserisci il seguente codice nella tua implementazione:

    tempValue := registerValue;
  4. Apri l'editor del ModbusTCP_Server_Device dispositivo e passare al Mappatura I/O tab.

  5. Espandere la voce per Registri di detenzione.

  6. Mappa PLC_PRG.registerValue per il Holding Registers[0] voce. La variabile contiene il valore del registro.

    Il risultato è il seguente:

    _c4_img_task_modbus_setup_monitoring_serer_device.png
  7. Torna a PLC_PRG.prg.st Del ModbusTCPServerSideExample progetto.

  8. Dichiarare una variabile serverDeviceClientConnections Di tipo UINT.

  9. Dichiarare una variabile serverDeviceErrorCode Di tipo UINT.

  10. Inserisci il seguente codice nella tua implementazione:

    serverDeviceClientConnections := ModbusTCP_Server_Device.uiClientConnections;
    serverDeviceErrorCode := ModbusTCP_Server_Device.ErrorCode;

    Questo codice ti permetterà di monitorare il numero attuale di client connessi a questo server e il codice di errore corrente del server.

Nota

Ora la configurazione per la comunicazione Modbus e il monitoraggio dei dispositivi sono completi.