static S7Client client = new S7Client();
static void Main(string[] args)
{
var res = client.ConnectTo("192.168.1.1", 0, 1);//连接PLC的IP地址
if (res == 0)
{
while (true)
{
byte[] db3Buffer = new byte[4];
var result = client.DBRead(127, 178, db3Buffer.Length, db3Buffer);//读取DB127.DBD178位置数据到db3Buffer当中
if (result == 0)//判断操作成功标识,成功0,否则不成功
{
double db3dbd4 = S7.GetRealAt(db3Buffer, 0);//将获取的数据进行转换成Real类型,需要确定PLC当中此数据为Real类型方可
Console.WriteLine("DB127.DBD178: " + db3dbd4);
}
db3Buffer = new byte[4];
db3Buffer.SetRealAt(0, 345f);//将 345 数据存入buffer当中后续写入到PLC
//此方法为扩展方法,也可以写成
//S7.SetRealAt(db3Buffer, 0, 345);
result = client.DBWrite(127, 54, db3Buffer.Length, db3Buffer);//将buffer数据写入PLC位置DB127.DBD54,类型为Real
if (result != 0)
{
Console.WriteLine("Error: " + client.ErrorText(result));
}
Thread.Sleep(1000);
}
}
Console.ReadKey();
}