资源简介

上位机与PLC通讯软件(C#),里面包含所需要的三菱DLL,引用后直接使用,已经经过调试,接口可用,需要用MX_Component 软件进行链接配置

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Threading;




namespace PLCconnect
{
    public  class ConnectPLC 
    {

        public bool isPLCConnected = false;
        System.String[] arrData = new string[32];       //Array for ‘Data‘
        public short[] arrDeviceValue = new short[32];         //Data for ‘DeviceValue‘    
        public int iReturnCode = 0;
        object plcLock = new object();


        /*The declaration of instance value for ACT controls************************/
        // When you use Dot controls by ‘References‘ you should program as follows;
        public ActUtlTypeLib.ActUtlType lpcom_ReferencesUtlType = new ActUtlTypeLib.ActUtlType();

        //public ConnectPLC()
        //{
        //    /* Create instance for ACT Controls*************************************/
        //    lpcom_ReferencesUtlType = new ActUtlTypeLib.ActUtlType();
        //    /* Set EventHandler for ACT Controls************************************/
        //    // Create EventHandler(ActUtlType)
           
        //    /**************************************************************************/
        //}


        /// 
        /// 断开PLC连接
        /// 

        public void ClosePLC()
        {
            int iReturnCode;    //Return code

            //Displayed output data is cleared.

            //
            //Processing of Close method
            //
            try
            {
                //When ActProgType is selected by the radio button

                //The Close method is executed.
                iReturnCode = lpcom_ReferencesUtlType.Close();

                //When The Close method is succeeded enable the TextBox of ‘LogocalStationNumber‘.
                if (iReturnCode == 0)
                {
                    isPLCConnected = false;
                }
                lpcom_ReferencesUtlType = null;
                //The return code of the method is displayed by the hexadecimal.

            }

            //Exception processing
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message ““ MessageBoxButtons.OK MessageBoxIcon.Error);
                return;
            }
        }


        #region  “PLC连接“
        public void connectPLC()
        {
            int iReturnCode;                     //Return code
            int iLogicalStationNumber = 0;      //LogicalStationNumber for ActUtlType     
           
            //
            //Processing of Open method
            //
            try
            {
                //Set the value of ‘LogicalStationNumber‘ to the property.
                lpcom_ReferencesUtlType.ActLogicalStationNumber = iLogicalStationNumber;

      

评论

共有 条评论