作者 | 主题 |
---|---|
HUO1921 侠圣 经验值:2314 发帖数:157 精华帖:6 |
楼主 2016-06-29 13:51:32
主题:【分享】自己编写的C#访问OPC库(自动化接口) 系统: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); } } }
hongxi-002@qq.com
|