【发布时间】:2011-02-11 22:56:08
【问题描述】:
我很难确定 PHP 是否可以连接到 OPC server,以及如何连接。我们的 PHP 在带有 Apache 网络服务器的 Unix 上运行。 OPC 服务器在 Windows 上,这是我目前对它了解最多的。两台服务器在同一个网络上。
请简单解释一下 :) 我习惯只使用 PHP 连接数据库。
研究:
QuickOPC-COM 需要基于 Windows 的服务器。
谢谢!
【问题讨论】:
我很难确定 PHP 是否可以连接到 OPC server,以及如何连接。我们的 PHP 在带有 Apache 网络服务器的 Unix 上运行。 OPC 服务器在 Windows 上,这是我目前对它了解最多的。两台服务器在同一个网络上。
请简单解释一下 :) 我习惯只使用 PHP 连接数据库。
研究:
QuickOPC-COM 需要基于 Windows 的服务器。
谢谢!
【问题讨论】:
如果您可以通过 XML-DC 进行通信,那么您应该可以在 PHP 中使用SOAP client。查看 OPC 的 WSDL。我找不到太多文档,但请查看this post...
另外,this thread 可能有一些见解......
【讨论】:
我从未尝试过使用 PHP,但是我已经设法通过 ASP.NET 进行了尝试,是否可以选择切换到 ASP.NET? ASP.NET 应用程序可以使用 DLL,因此如果您可以访问一个好的 OPC DLL 连接库,您就可以在 ASP.NET 中使用它进行通信。 OPC 基金会有一个,尽管您需要成为会员才能下载它。还有其他各种商业版本,还有一个非常基本的免费版本,http://www.codeproject.com/KB/COM/opcdotnet.aspx(这是我几个月前用作概念证明的版本)
虽然它应该可以通过 PHP 实现,但我认为这绝非易事。 PHP 不支持 COM 访问,因为它是一个仅限 Windows 的系统。您可以在 PHP 中重现它,但这样做需要做很多工作。
另一种方法可能是将某种网关系统作为 ASP.NET 服务或本地程序编写在与 OPC 服务器相同的服务器上,它获取 OPC 数据并将其转换为更易于使用的格式,例如作为 XML 或类似的。
如果您确实找到了使用 PHP 的方法,请告诉我,因为我主要是一名 PHP 程序员,为一家专门从事 OPC 解决方案的公司工作,但我开始转向 ASP,因此我们可以提供一个 Web基于解决方案...
【讨论】:
没有很好的现有框架来使用 PHP 访问 OPC DA。我会考虑使用 OpenOPC 作为访问层构建一些 Python 脚本。
【讨论】: