编程语言
首页 > 编程语言> > 桌面SCADA应用程序 – 通过C读取和写入PLC

桌面SCADA应用程序 – 通过C读取和写入PLC

作者:互联网

我尽力搜索有关SCADA的所有主题并开发自己的C桌面应用程序以与PLC通信,但找不到最近或我认为适合我所需要的相关主题.如果我错过了他们,将非常感谢他们的链接.如果我也碰巧在错误的部分发布了这个,或者你可以想到一个更好的部分让我发布,我会把它带到那里.

话虽如此,我提前感谢您花时间阅读我的问题,并感谢您提供的任何意见.

关于我在做什么

我目前正在学校接受机电工程学习,在我的最后一年项目中,我正在用C开发一个桌面应用程序来监控我们在我们的一个实验室内的PLC.

在这个实验室中,我有一个预先存在的以太网网络将所有PLC连接到单点,我正在与PC连接,并将从那里完成我的所有工作.

我将在Qt中开发应用程序,以便设计GUI,并让我访问QNetworkInterface以及QTcpSocket.

话虽如此,我不会说我是一名经验丰富的程序员,但我已经用几种语言(即:python,c,c,php)搞砸了好几年了,我仍然学习,考虑到学习永远不会停止.

我的问题

>有没有我可以阅读的参考资料,你可以建议,在这个主题上更容易理解我需要通过什么样的过程来接收信息(即:个人I / O,状态位,标签,日志等) …)直接来自PLC,而不是通过OPC服务器?
>如果需要OPC服务器,除了使用Rockwell Automations RSLinx抓取标签并在excel中显示它们的值之外,我从未处理过OPC链接(我使用这种确切的方法创建了原型,但是想要离开来自excel,如果可能的话,还有OPC服务器(RSLinx).对于那些对OPC服务器主题一无所知的人,或者据我所知,OPC一般情况下你会建议什么?
>你们之前是否曾经编写过自己的应用程序来做类似的事情,如果不是和我想要完成的事情相同?
>对于尝试此类项目的人,您会给出什么建议或建议?

PS:作为这个项目的开始,我最初只想获得I / O(标签或地址)的读数,以查看它们的当前值(输入关闭或打开,输出是否通电).但最终我还希望能够根据我从他们那里收到的值,为我正在监控的PLC上的标签写入值.

PSS:我想再次注意,我仍然是一名学生,并且仍在全面了解这个主题.我想请你耐心一点,因为我可能第一次没有把握完全的东西!

如果我错过了您认为能够提供答案的相关信息,请告诉我们!我会尽力及时提出所说的信息!

谢谢!

编辑#1:在另一个问题中添加,并略微改变了我的第一个问题

编辑#2:修正问题2

解决方法:

恕我直言,SCADA程序应该具有能够连接到OPC服务器的最低要求. OPC用于大多数商业PLC.

严格来说,不需要OPC服务器/客户端方法,但它为您提供了灵活性并为您提供了抽象模型.如果您想使用协议直接连接到PLC,那么当然也可以.然后,您需要了解有关协议及其各种版本的更多详细信息.

是的,我在开发商业SCADA应用程序的团队中工作了几年.

在这样的项目中很容易迷失方向,所以尽量保持简单.通过使用OPC,您可以节省时间,而不是直接使用协议.您可以添加为其他协议添加自定义驱动程序的功能 – 具体取决于您的时间范围.在开始编写模型的鸟瞰图之前,尝试对项目进行建模,避免迷失在细节中.

标签:plc,c,tcp,scada
来源: https://codeday.me/bug/20190728/1564301.html