Ejemplo n.º 1
0
        public bool init_plc_Connect() //与plc连接的初始化
        {
            bool status;               //判断返回值是否对的标志

            //SocketBase sk = new SocketBase();

            if (SocketBase.initSocketBase())
            {
                SocketBase.SocketSend(plcHead1);
                //Console.ReadKey();
                if (SocketBase.SocketRec().Length == 22)
                {
                    Logger.Infor("handshake first done");
                    SocketBase.SocketSend(plcHead2);
                    byte[] res = SocketBase.SocketRec();
                    if (res.Length == 27)
                    {
                        status = true;
                        Logger.Infor("handshake second done,init ok " + res);
                    }
                    else
                    {
                        status = false;
                        Logger.Error("handshake second failed");
                    }
                }
                else
                {
                    //Console.WriteLine("rec {0}", SocketBase.SocketRec());
                    Logger.Error("handshake first error,plc init failed");
                    status = false;
                }
            }
            else
            {
                status = false;
            }
            return(status);
        }