Example #1
0
        //private int bInterpolationFinishedInt;

        public override bool Init(HardWareInfoBase infoHardWare)
        {
            try
            {
                //adsPlcServer = new TcAdsPlcServer();
                clientStateInfo = new StateInfo();
                dataStream      = new AdsStream(31);
                //Encoding is set to ASCII, to read strings
                binRead = new BinaryReader(dataStream, System.Text.Encoding.ASCII);

                tcNetID  = infoHardWare.ipAddress;
                tcClient = new TcAdsClient();
                // tcClient.Connect(tcNetID, 801);
                tcClient.Connect(tcNetID, 801);
                Global.bPLCConnected = true;
                bInitOK = true;
                allHome = tcClient.CreateVariableHandle("MAIN_Logic.all_Home");
                hInt    = tcClient.CreateVariableHandle("MAIN_Logic.home_Step");
                startContInterpolation = tcClient.CreateVariableHandle("MAIN_Fast_2ms.bExec");
                resetAlarm             = tcClient.CreateVariableHandle(".DATA.ResetAlarm");
                resetInterpolation     = tcClient.CreateVariableHandle("MAIN_Fast_2ms.nci_Sequence.reset");

                stopInterpolation   = tcClient.CreateVariableHandle("MAIN_Fast_2ms.b_NCIStop");
                preWeldingInt       = tcClient.CreateVariableHandle("MAIN_Fast_2ms.preWelding");
                preWeldingSatrtInt  = tcClient.CreateVariableHandle("MAIN_Logic.preWeldingStart");
                preWeldingNumberInt = tcClient.CreateVariableHandle("MAIN_Logic.preWeldingNumber");
                bPreWeldingDoneInt  = tcClient.CreateVariableHandle("MAIN_Logic.fbPreWeldingDone");
                preWeldingPosInt    = tcClient.CreateVariableHandle("MAIN_Logic.preWeldingPos");
                tech = tcClient.CreateVariableHandle("MAIN_Fast_2ms.posTech.Pos");
                //MAIN_Fast_2ms.nci_Sequence.overide
                InitParameter();
                return(true);
            }
            catch (Exception ex)
            {
                //Global.logger.ErrorFormat("连接倍福PLC失败,地址:{0},错误信息:{1}", tcNetID, ex.Message);
                Global.bPLCConnected = false;
                bInitOK = false;
                return(false);
            }
        }
Example #2
0
        public override bool Init(HardWareInfoBase infoHardWare)
        {
            int ret = wmx.CreateDevice(@"C:\Program Files\SoftServo\WMX3\", DeviceType.DeviceTypeNormal, 0);

            if (ret != 0)
            {
                string errorCode = "";
                errorCode = WMX3Api.ErrorToString(ret);
                // Global.logger.ErrorFormat("WMX3初始化失败!错误信息:{0}", errorCode);
                //return false;
            }
            else
            {
                bInitOK = true;
            }
            //建立通讯
            Thread thread = new Thread(new ParameterizedThreadStart(EstablishCommunication));

            thread.IsBackground = true;
            thread.Start(infoHardWare);
            return(true);
        }