• 大小: 986KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-06-12
  • 语言: C#
  • 标签: ADS通讯  c#  PLC  倍福  

资源简介

使用 C# 实现与TWINCAT PLC control变量的通讯 ,实现上位机对倍福PLC的控制。 包括说明文档,示例程序。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Windows.Forms;
using TwinCAT.Ads;
using System.IO;
using System.Timers; 

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private int hbool1;
        private int hint1;
        private int hstr1;
        private int hlreal1;
        private TcAdsClient adsClient;
        private ArrayList notificationHandles;
        private int hcomplexStruct;
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender EventArgs e)
        {
            try
            {
                //read by handle
                //the second parameter specifies the type of the variable

                textBox1.Text = adsClient.ReadAny(hbool1 typeof(Boolean)).ToString();
                textBox2.Text = adsClient.ReadAny(hint1 typeof(int)).ToString();
                textBox4.Text = adsClient.ReadAny(hlreal1 typeof(Double)).ToString();
                textBox3.Text = adsClient.ReadAny(hstr1 typeof(String) new int[] { 5 }).ToString();
                FillStructControls((ComplexStruct)adsClient.ReadAny(hcomplexStruct typeof(ComplexStruct)));

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }


        }

        private void Form1_Load(object sender EventArgs e)
        {
            adsClient = new TcAdsClient();
            notificationHandles = new ArrayList();
            try
            {
               
                adsClient.AdsNotificationEx += new AdsNotificationExEventHandler(adsClient_AdsNotificationEx);
                button4.Enabled = false;
                button6.Enabled = false;
                adsClient.Connect(801);
                hbool1 = adsClient.CreateVariableHandle(“MAIN.bool1“);
                hint1 = adsClient.CreateVariableHandle(“MAIN.int1“);
                hstr1 = adsClient.CreateVariableHandle(“MAIN.str1“);
                hlreal1 = adsClient.CreateVariableHandle(“MAIN.lreal1“);
                hcomplexStruct = adsClient.CreateVariableHandle(“MAIN.ComplexStruct1“);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        private  void TimeEvent(object source ElapsedEventArgs e)
        {
            

        }
        private void adsClient_AdsNotificationEx(object sender AdsNotificationExEventArgs e)
        {
            TextBox textBox = (TextBox)e.UserData;
            Type type = e.Value.GetType();
            if (type == typeof(string) || type.IsPrimitive)
                textBox.Text = e.Value.ToString();
            else if (type == typeof(ComplexStruct)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    1118924  2012-08-06 14:30  ADS通讯(c#)\ADS通讯(c#).docx

    ..A..H.     31744  2017-07-13 12:07  ADS通讯(c#)\C#源程序\.vs\WindowsFormsApplication1\v14\.suo

     文件       8275  2012-08-06 12:39  ADS通讯(c#)\C#源程序\Backup\Form1.cs

     文件       9214  2012-08-06 12:18  ADS通讯(c#)\C#源程序\Backup\Form1.Designer.cs

     文件       6181  2012-08-06 12:18  ADS通讯(c#)\C#源程序\Backup\Form1.resx

     文件        505  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Backup\Program.cs

     文件       1404  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Backup\Properties\AssemblyInfo.cs

     文件       2899  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Backup\Properties\Resources.Designer.cs

     文件       5612  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Backup\Properties\Resources.resx

     文件       1109  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Backup\Properties\Settings.Designer.cs

     文件        249  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Backup\Properties\Settings.settings

     文件       4013  2012-08-03 10:55  ADS通讯(c#)\C#源程序\Backup\WindowsFormsApplication1.csproj

     文件         74  2012-07-30 10:09  ADS通讯(c#)\C#源程序\Backup\WindowsFormsApplication1.csproj.user

     文件        941  2012-07-30 17:26  ADS通讯(c#)\C#源程序\Backup\WindowsFormsApplication1.sln

     文件      38400  2012-08-06 12:39  ADS通讯(c#)\C#源程序\bin\Debug\WindowsFormsApplication1.pdb

     文件      21680  2017-07-11 16:16  ADS通讯(c#)\C#源程序\bin\Debug\WindowsFormsApplication1.vshost.exe

     文件        490  2015-11-13 10:24  ADS通讯(c#)\C#源程序\bin\Debug\WindowsFormsApplication1.vshost.exe.manifest

     文件       8275  2012-08-06 12:39  ADS通讯(c#)\C#源程序\Form1.cs

     文件       9214  2012-08-06 12:18  ADS通讯(c#)\C#源程序\Form1.Designer.cs

     文件       6181  2012-08-06 12:18  ADS通讯(c#)\C#源程序\Form1.resx

     文件       6951  2017-07-11 16:16  ADS通讯(c#)\C#源程序\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       9005  2012-07-30 16:36  ADS通讯(c#)\C#源程序\obj\Debug\ResolveAssemblyReference.cache

     文件       3584  2017-07-11 15:54  ADS通讯(c#)\C#源程序\obj\Debug\TempPE\Properties.Resources.Designer.cs.dll

     文件       5951  2017-07-11 16:16  ADS通讯(c#)\C#源程序\obj\Debug\WindowsFormsApplication1.csproj.FileListAbsolute.txt

     文件        847  2012-08-06 12:18  ADS通讯(c#)\C#源程序\obj\Debug\WindowsFormsApplication1.csproj.GenerateResource.Cache

     文件        180  2012-08-06 12:18  ADS通讯(c#)\C#源程序\obj\Debug\WindowsFormsApplication1.Form1.resources

     文件      38400  2012-08-06 12:39  ADS通讯(c#)\C#源程序\obj\Debug\WindowsFormsApplication1.pdb

     文件        180  2012-08-03 10:56  ADS通讯(c#)\C#源程序\obj\Debug\WindowsFormsApplication1.Properties.Resources.resources

     文件        505  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Program.cs

     文件       1404  2012-07-30 09:17  ADS通讯(c#)\C#源程序\Properties\AssemblyInfo.cs

............此处省略32个文件信息

评论

共有 条评论