C#多线程之图像处理、数据库读写及PLC指令内部协调问题,大家有何高招
在实际应用中,常常会遇到高速产品线图像处理项目,如要求每秒钟处理至少2~3个图像,并将产品数据存入数据库,不合格则剔除产品。
为了提高运行效率,常使用多线程的方式处理图像信息,及后续的数据库读写、PLC指令发送等等。但是,在确保程序基本逻辑功能无误的情况下,有时PLC串口指令未正常发送,导致部分产品漏检,合格产品或多或少。
原因分析:①多线程可能未完整执行;②数据库读写耗时太长;③串口发送耗时(指令无误)
贴关键代码:
首先开启多线程(函数采用事件触发,不知此线程是否有问题):

显示部分:

数据库读写及PLC指令(有时未正常执行):


如何更好的协调多线程中图像处理、数据库读写及PLC指令,使之能满足高速生产的要求呢?大家有何良策?谢谢指导!
为了提高运行效率,常使用多线程的方式处理图像信息,及后续的数据库读写、PLC指令发送等等。但是,在确保程序基本逻辑功能无误的情况下,有时PLC串口指令未正常发送,导致部分产品漏检,合格产品或多或少。
原因分析:①多线程可能未完整执行;②数据库读写耗时太长;③串口发送耗时(指令无误)
贴关键代码:
首先开启多线程(函数采用事件触发,不知此线程是否有问题):

显示部分:

数据库读写及PLC指令(有时未正常执行):


如何更好的协调多线程中图像处理、数据库读写及PLC指令,使之能满足高速生产的要求呢?大家有何良策?谢谢指导!
...全文
相关推荐
C#读写西门子PLC实例
在本文中,我们将深入探讨如何使用C#编程语言来实现对西门子PLC(可编程逻辑控制器)的读写操作。
C#通过OPC服务器连接PLC读写数据
本教程中,我们将学习如何建立这样的客户端,以连接OPC服务器并读写PLC的数据。步骤1:安装OPC SDK首先,你需要选择一个支持C#的OPC SDK,如Kepware、Matrikon或ABB等。
c#与三菱PLC通讯读写实例
在本文中,我们将深入探讨如何使用C#编程语言与三菱FX2N系列PLC进行串口通讯,实现数据的读写操作。
C#通过TCP读写S7-200 SMART PLC地址
在使用C#读写S7-200 SMART PLC的数据时,关键步骤包括正确设置网络参数,并使用支持TCP协议的库来进行数据的读写操作。2.
PLC通讯实现-C#访问OPCUA实现读写PLC
标题中的“PLC通讯实现-C#访问OPCUA实现读写PLC”指的是使用C#编程语言通过OPCUA协议来实现与可编程逻辑控制器(PLC)的通信,进行数据的读取和写入操作。


