ModbusCommunication est une librairie C# qui encapsule la librairie ➡️Nmodbus et ajoute une fonctionnalité de lecture/écriture cyclique.
sequenceDiagram
Application (Master)->>PLC (Slave): Request Read input
PLC (Slave)-->>Application (Master): Data input
Application (Master)->>PLC (Slave): Request Write output
Warning
Uniquement testé avec un automate M580 Schneider
Contructeur :
mb = new ModbusTCPMaster(ip, port, startInput, 120, startOutput, 120);
//Définition des entrées digital
mb.AddSignalInput(new DigitalInputSignal("Life", "Bit de vie communication", 0, 0));
//Définition des sorties digital
mb.AddSignalOutput(new DigitalOutputSignal("LifeEcho", "Echo bit de vie communication", 0, 0));
mb.AddSignalOutput(new DigitalOutputSignal("DefCam1", "Defaut camera 1", 0, 1));
mb.AddSignalOutput(new DigitalOutputSignal("DefCam2", "Defaut camera 1", 0, 2));
Evennement et écriture :
//Bit de vie communication
mb["Life"].SignalChanged += (s) =>
{
mb["LifeEcho"].State = s.State;
};
Note
L'application utilise ➡️Nmodbus pour communiquer avec l'automate M580 Schneider.