【问题标题】:SQL-Siemens PLC connectionSQL-西门子PLC连接
【发布时间】:2021-09-13 07:39:47
【问题描述】:

其实我正在做S7 1500 PLC和SQL server之间的连接,我可以成功发送和接收数据。 我在 SQL 服务器中建了一个表(产品 ID、产品、数量、产品密钥)。

许多产品可以有相同的产品密钥。

我需要 PLC 中的一个命令就像

Insert
FROM TestTable
WHERE product Key=5000'

这给了我所有产品密钥=5000的产品

【问题讨论】:

  • 你只是想要INSERT INTO newtable SELECT * FROM TestTable WHERE product Key=5000吗?
  • 我已经删除了 [mysql] 和 [sql-server] 这两个标签,因为这两个标签显然都不是;它不是 RDBMS 方言的有效语法。此外,您似乎忘记提问了。

标签: sql plc siemens


【解决方案1】:

我确实回答了一个类似的问题

Where should I start with my OPC-UA client?

如果您只是想将数据从 PLC 移动到数据库,请查看 Node-Red。这是一个可以帮助您入门的视频。 Node-Red 可以直接与 PLC 对话。如果您需要更多帮助,尽管问!!

https://www.youtube.com/watch?v=LaUmhhMdoyY

Node-Red 也可以做 GUI。

对于报告,您可以使用https://grafana.com/

如果您想要一个好的数据库来登录查看https://www.timescale.com/

Grafana 和 Timescale 配合得很好!!

【讨论】:

  • 我从PLC的数据库中收到了数据。我使用 Wireshark 来查看它是否属实,我发现这是真的,但问题是我无法在 PLC 示例上读取这些结果:数据库中的 500 它变成 16#F401_C100 之类的东西,这没有意义
  • 您需要为 PLC 构建一个完整的解释器。我不能说不能做,我只能说不添加某种中介软件就不能做。我为此使用节点红色。您可以将 SQL 推荐传递给 node-red。 Node-red 然后会激发 SQL 并可以用结果填充 PLC 中的字符串。
【解决方案2】:

据我了解你的问题,你应该试试这个查询:

从 TestTable WHERE Key = 5000 中选择产品

您的数据库设计如何?您能否分享有关您的数据库和表的更多信息?

【讨论】:

  • 欢迎来到 SO,其他问题应该去 cmets 而不是答案部分。
猜你喜欢
  • 1970-01-01
  • 2018-10-09
  • 2022-08-13
  • 1970-01-01
  • 2016-11-18
  • 2021-08-21
  • 2015-10-07
  • 1970-01-01
  • 2015-12-02
相关资源
最近更新 更多