资料
C#通过OPC连接PLC读写功能案例
最简单、最有效的PLC连接程序,里面包含了各种类型的读写功能,绝对是拷贝过去,直接把地址替换就可以使用。
功能简介:
本程序主要是针对PLC发送请求信号,收到信号执行调用,例如:由PLC发送请求信号1,程序自动去调用,当调用结束,信号恢复为0,直到下一次变为1,再次进行调用;
1、手工下载一个Interop.OPCAutomation.dll
2、手工创建一个类PublicOPC_PLC
3、直接调用即可,
调用方法:
PublicOPC_PLC Plc = new PublicOPC_PLC();
Plc.InitConnect();
Plc.CH160CreateGroup("PLC地址");
//此处的PLC地址必须为PLC中DB块对应的BOOL型的地址例如:C1.[S7].DB35.DBX544.0
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using OPCAutomation;
using System.Net;
using System.Threading;
namespace OPCService
{
public class PublicOPC_PLC
{
#region 私有变量
///
/// OPCServer Object
///
public static OPCServer MyServer;
///
/// OPCGroups Object
///
public static OPCGroups MyGroups;
///
/// OPCGroup Object
///
public static OPCGroup MyGroupMA;
public static OPCGroup MyGroupMA2;
///
/// OPCItems Object
///
OPCItems MyItemsMA;
///
/// OPCItem Object
///
OPCItem[] MyItemMA;
///
/// 主机IP
///
public static string strHostIP = "";
///
/// 主机名称
///
public static string strHostName = "";
///
/// 连接状态
///
public static bool opc_connected = false;
///
/// 客户端句柄
///
int itmHandleClient = 0;
///
/// 服务端句柄
///
int itmHandleServer = 0;
public OPCGroup GroupMA
{
get { return MyGroupMA; }
}
#endregion
///
/// 初始化连接对应的状态,包括连接服务器,需要读取的初始