系统:Windows 7旗舰版
软件:Visual Studio2010
SIMATIC_NET_8.2
测试图片:
测试代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
namespace OPCHelper
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
OPCHelper oPCHelper;
private void Form1_Load(object sender, EventArgs e)
{
IPHostEntry IPHost = Dns.Resolve(Environment.MachineName);
string strIP;
strIP = IPHost.AddressList[0].ToString();
oPCHelper = new OPCHelper(strIP, "OPC.SimaticNET", 10, "S7:[S7 Connection_1]");
if (oPCHelper.Connected)
{
oPCHelper.AddItems("Start","Stop", "Start2");
oPCHelper.AddItems("Pump1", "Pump2");
oPCHelper.AddItems("Num1", "Num2", "Num3", "Num4");
oPCHelper.AddItems("DB1,INT266", "DB1,INT268", "DB1,INT270", "DB1,INT272");
}
else
Application.Exit();
}
private void timer1_Tick(object sender, EventArgs e)
{
if (oPCHelper.Connected)
{
btn_Pump1.BackColor = oPCHelper["Pump1"].ToLower() == "true" ? Color.Green: Color.Gray;
btn_Pump2.BackColor = oPCHelper["Pump2"].ToLower() == "true" ? Color.Green : Color.Gray;
txt_RNum1.Text = oPCHelper["Num1"];
txt_RNum2.Text = oPCHelper["Num2"];
txt_RNum3.Text = oPCHelper["Num3"];
txt_RNum4.Text = oPCHelper["Num4"];
txt_RNum5.Text = oPCHelper["DB1,INT266"];
txt_RNum6.Text = oPCHelper["DB1,INT268"];
txt_RNum7.Text = oPCHelper["DB1,INT270"];
txt_RNum8.Text = oPCHelper["DB1,INT272"];
}
}
private void btn_Start_MouseDown(object sender, MouseEventArgs e)
{
oPCHelper["Start"] = Convert.ToString(1);
}
private void btn_Start_MouseUp(object sender, MouseEventArgs e)
{
oPCHelper["Start"]= Convert.ToString(0);
}
private void btn_Stop_MouseDown(object sender, MouseEventArgs e)
{
oPCHelper["Stop"] = Convert.ToString(1);
}
private void btn_Stop_MouseUp(object sender, MouseEventArgs e)
{
oPCHelper["Stop"] = Convert.ToString(0);
}
private void btn_Start2_Click(object sender, EventArgs e)
{
if (oPCHelper.Contains("Start2"))
{
if (!Convert.ToBoolean(oPCHelper["Start2"]))
oPCHelper["Start2"] = Convert.ToString(1);
else
oPCHelper["Start2"] = Convert.ToString(0);
}
}
private void btn_Write_Click(object sender, EventArgs e)
{
oPCHelper[txt_WName1.Text]=txt_WValue1.Text;
oPCHelper[txt_WName2.Text] = txt_WValue2.Text;
oPCHelper[txt_WName3.Text] = txt_WValue3.Text;
oPCHelper[txt_WName4.Text] = txt_WValue4.Text;
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
oPCHelper.Dispose();
}
private void btn_RemoveItems_Click(object sender, EventArgs e)
{
oPCHelper.RemoveItems(txt_ItemRemoved.Text);
}
private void btn_AddItems_Click(object sender, EventArgs e)
{
oPCHelper.AddItems(txt_ItemsAdded.Text);
}
}
}