Exemple #1
0
        private string setPlcCmd(Socket socket, string plcAddress, string setResult)
        {
            string rtn = InspectUtilsTB.sendCmdToTarget(socket, "01WWR" + plcAddress + setResult + "\r\n");

            //MessageBox.Show("01WWR" + plcAddress + setResult + "\r\n");
            return(rtn);
        }
Exemple #2
0
        private string readInspect(int camId)
        {
            string str = "c1;";

            InspectUtilsTB.sendCmdToTarget(localSocket, str);
            var receiveData = InspectUtilsTB.receiveDataFromTarget(localSocket, resBytes);

            return(receiveData);
        }
Exemple #3
0
        /// <summary>
        /// 建立所有连接
        /// </summary>
        public void connectAllcon()
        {
            if (!cam1En.Checked && !cam2En.Checked)
            {
                MessageBox.Show("至少开启一个相机");
                return;
            }
            //用于标识是否有连接建立成功
            bool flag = false;

            //只有在有连接参数的时候才连接
            if (inspectSocket == null & !isEmpty(inspectIp.Text) & !isEmpty(inspectPort.Text))
            {
                inspectConnectInfo.ip   = inspectIp.Text;
                inspectConnectInfo.port = int.Parse(inspectPort.Text);
                inspectSocket           = InspectUtilsTB.connectToTarget(inspectConnectInfo.ip, inspectConnectInfo.port);
                if (inspectSocket != null)
                {
                    flag = true;
                }
            }

            if (plcSocket1 == null & !isEmpty(plcIp1.Text) & !isEmpty(plcPort1.Text))
            {
                plcConnectArr[0].ip   = plcIp1.Text;
                plcConnectArr[0].port = int.Parse(plcPort1.Text);
                plcSocket1            = InspectUtilsTB.connectToTarget(plcConnectArr[0].ip, plcConnectArr[0].port);
                if (plcSocket1 != null)
                {
                    flag = true;
                }
            }

            if (flag)
            {
                connectAll.Text      = "关闭连接";
                connectAll.BackColor = Color.LimeGreen;
                connectStatus        = true;
            }
            else
            {
                MessageBox.Show("连接失败");
            }
        }
Exemple #4
0
        public void closeAllSocket()
        {
            if (inspectSocket != null)
            {
                InspectUtilsTB.shutDownConnect(inspectSocket);
                inspectSocket.Close();
                inspectSocket = null;
            }

            if (plcSocket1 != null)
            {
                InspectUtilsTB.shutDownConnect(plcSocket1);
                plcSocket1.Close();
                plcSocket1 = null;
            }

            work1.camMode = 0;
            connectStatus = false;
        }
Exemple #5
0
        private int getPlcCmd(Socket socket, string plcAddress)
        {
            int enCamId = 0;

            InspectUtilsTB.sendCmdToTarget(socket, readCmd + plcAddress + "\r\n");
            var cmd = InspectUtilsTB.receiveDataFromTarget(socket, new byte[1024]);

            testStr = cmd;
            var indexOf = cmd.IndexOf('\r');

            if (indexOf != -1)
            {
                cmd = cmd.Substring(0, indexOf);
            }
            if (cmd == "11OK0001" && cmd != lastCmd)
            {
                Console.WriteLine(Thread.CurrentThread.Name + "触发");
                enCamId = 1;
            }

            lastCmd = (string)cmd.Clone();
            return(enCamId);
        }
Exemple #6
0
        private string setPlcCmd(Socket socket, string plcAddress, string setResult)
        {
            string rtn = InspectUtilsTB.sendCmdToTarget(socket, writeCmd + plcAddress + setResult);

            return(rtn);
        }
Exemple #7
0
        private void cmdCam1_Click(object sender, EventArgs e)
        {
            string str = "c1;";

            testMsg.Text      = "无";
            testMsg.BackColor = Color.Silver;
            InspectUtilsTB.sendCmdToTarget(inspectSocket, str);
            var receiveData = InspectUtilsTB.receiveDataFromTarget(inspectSocket, resByteArr);

            if (work1.camMode == 1)     //仅开启上面的相机
            {
                if (receiveData == "2") //上ok下ng
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0001\r\n");
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "上面胶条 OK";
                    testMsg.BackColor = Color.LimeGreen;
                }
                else
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0003\r\n"); //给PLC发送3代表上面NG
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "上面胶条 NG";
                    testMsg.BackColor = Color.Red;
                }
            }
            else if (work1.camMode == 2)
            {
                if (receiveData == "3") //上ng下ok
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0001\r\n");
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "下面胶条 OK";
                    testMsg.BackColor = Color.LimeGreen;
                }
                else
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0002\r\n"); //2代表下面NG
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "下面胶条 NG";
                    testMsg.BackColor = Color.Red;
                }
            }
            else if (work1.camMode == 3) //上下面相机都正常工作
            {
                if (receiveData == "1")  //上下都ok
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0001\r\n");
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "全部OK";
                    testMsg.BackColor = Color.LimeGreen;
                }
                else if (receiveData == "2") //上OK下NG
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0002\r\n");
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "下面胶条NG";
                    testMsg.BackColor = Color.Red;
                }
                else if (receiveData == "3") //上NG下OK
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0003\r\n");
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "上面胶条NG";
                    testMsg.BackColor = Color.Red;
                }
                else if (receiveData == "4") //上下都NG
                {
                    setPlcCmd(plcSocket1, cam1ResAds, " 0004\r\n");
                    setPlcCmd(plcSocket1, cam1CmdAds, " 0000\r\n");
                    testMsg.Text      = "全部NG";
                    testMsg.BackColor = Color.Red;
                }
            }
        }