【发布时间】:2015-03-04 10:54:04
【问题描述】:
我负责一个项目,我们需要从 PLC 收集数据(11 个标签)并以 5 毫秒的增量将它们写入 SQL 数据库。
这是第一个需要如此高采样率的项目,而我们通常只收集大约 5 - 10% 的数据(Rockwell Allen-Bradley CompactLogix PLC --> Kepware KEPserver --> VB.NET桌面应用程序-> MS SQL)。我在网上搜索了一些第三方产品(SQL4automation、Kepware DataLogger 插件、RSLinx、Ignition),它们承诺将数据从 PLC 直接无损传输到 DB,但它们都非常昂贵。
有没有人找到类似问题的(最好是免费的)解决方案?我们目前正在重写我们的 PLC 和桌面应用程序,以将数据写入两个单独的数组并交替复制 - 有人用这种方法成功了吗?
如果没有 - 有使用 3rd 方软件的经验吗?
感谢您的帮助, 杜吉
【问题讨论】:
-
5ms 是一个非常高的速率,考虑到所有的延迟......我真的认为在这种情况下在 PLC 内存上有一个数据缓冲区是常态。缓冲区甚至应该包含超过 2 个 IMO 标签的“快照”。
标签: arrays sql-server database plc data-loss