龙空技术网

作为电气工程师,你知道西门子PLC支持多少个连接吗?

技成培训 297

前言:

当前咱们对“js list add”大约比较看重,各位老铁们都需要学习一些“js list add”的相关知识。那么小编在网络上汇集了一些关于“js list add””的相关内容,希望姐妹们能喜欢,姐妹们一起来学习一下吧!

很多人都知道西门子PLC有连接数的限制,下图是S7-1200的连接资源:

说实话,我是看得不太明白的,于是,有了下面的测试,测试基于xktComm库,我计划按顺序开启N个连接,然后每个连接在连接成功后再进行一次数据读取,确认通信正常,观察下N的限制是多少?

于是有了下面的代码:

            Console.WriteLine("多连接通信测试开始");            List<SiemensS7> SiemensList = new List<SiemensS7>();            for (int j = 1; j <= 40; j++)            {                Thread.Sleep(500);                Console.WriteLine($"第{j}次连接测试" + "\r");                SiemensS7 objS7 = new SiemensS7();                if (objS7.Connect(IpAddress, CPU_Type.S71200, 0, 0))                {                    Console.WriteLine($"第{j}次连接成功");                    object value = objS7.Read("MD0", xktComm.Common.VarType.DInt);                    if (value != null)                    {                        SiemensList.Add(objS7);                        Console.WriteLine($"第{j}次通信测试读取成功:" + value.ToString());                    }                    else                    {                        Console.WriteLine($"第{j}次通信测试读取失败");                    }                }                else                {                    Console.WriteLine($"第{j}次连接失败");                }            }            while (true)            {                Console.WriteLine("请输入你要测试的连接索引,输入100表示退出");                int index = Convert.ToInt32(Console.ReadLine());                if (index != 100)                {                    if (SiemensList.Count >= index)                    {                        object res = SiemensList[index - 1].Read("MD0", xktComm.Common.VarType.DInt);                        Console.WriteLine("读取结果:" + res.ToString());                    }                    else                    {                        continue;                    }                }                else                {                    break;                }            }            Console.WriteLine("多连接通信测试完成");

为了保证连接始终可用,我增加了一个二次测试,就是将所有的连接都放到一个集合中,后续可用随意测试某个连接是否仍然可用。

测试结果如下:

从结果上,我们可以看到我这个PLC可以支持36个上位机连接。

后面我又做了一个测试,将博图打开,切换到在线,再次测试,发现只能支持35个上位机连接了,这个是否可以说明一点,上位机和博图走的是同一种连接?

标签: #js list add