Prefacio
La comunicación Modbus es la coordinación de comunicación de hardware más utilizada y no tengo mucho contacto con el PLC. Modbus garantiza una transmisión de datos sencilla y eficiente.
Una breve introducción al protocolo Modbus
Una breve introducción a Modbus
Descarga del software Modbus Poll y Modbus Slave: debe descargarse
NModbus
Generalmente, las que comienzan con N son versiones portadas de la plataforma .NET. Como NLog, Log4Net.
Dirección del almacén de NModbus Github
Uso de Modbus
Generalmente, este tipo de pequeño proyecto de GitHub no tiene una introducción detallada al proyecto de GitHub y se le proporciona en forma de demostración. Es un poco difícil para los estudiantes que no tienen conocimientos de programación ni de inglés.
La documentación oficial de NModbus simplemente enumera algunas funciones.
Fácil de usar
Nota: asegúrese de comprender primero el software Modbus Poll y Modbus Slave. Depuremos el programa C# nuevamente.
Aquí tomamos Modbus TCP como ejemplo.
static void Main(string[] args)
{
Task.Run(ReadModbusTcp) ;
Console.WriteLine("运行完毕");
Console.ReadKey();
}
//简单的Task任务
public async static Task ReadModbusTcp()
{
using (TcpClient client = new TcpClient("127.0.0.1", 502))
{
Console.WriteLine("启动Tcp连接");
var factory = new ModbusFactory();
IModbusMaster master = factory.CreateMaster(client);
master.Transport.ReadTimeout = 2000;
master.Transport.Retries = 10;
// 从地址0开始,读取10个数据。
ushort startAddress = 0;
ushort numInputs = 10;
while (true)
{
var inputs = master.ReadInputRegisters(1, startAddress, numInputs);
for (int i = 0; i < numInputs; i++)
{
Console.WriteLine($"Input {
( startAddress + i )}={
( inputs[i] )}");
}
await Task.Delay(1000);
}
}
}