예제 #1
0
        private async void IDRead()
        {
            short nRet = 0;
            bool  isIDOK;

            NMFstate[0]++;
            nRet = NMF.nmf_DOSetTogPin(DevNum, (short)0);

            await Task.Delay(1000);

            /*Idread.ReadID();
             * Txt_ICID.Text = Idread.GetID();*/
            TimeSpan spanTime = TimeSpan.FromMilliseconds(1000);

            isRecv = false;
            DateTime start = DateTime.Now;

            ID = "";

            SSC_.Write("OWT2800372f5a2\r\n");

            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }

            isRecv = false;
            start  = DateTime.Now;
            SSC_.Write("OR_28002\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }
            //recv = recv.Remove(0, 2);
            //ID = recv;
            ReadData = "";

            isRecv = false;
            start  = DateTime.Now;
            SSC_.Write("OW_28003240079\r\n");

            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }

            isRecv = false;
            start  = DateTime.Now;
            SSC_.Write("OR_28003\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }
            if (ReadData.Length > 3)
            {
                ReadData = ReadData.Remove(0, 3);
            }
            ID = ReadData;

            isRecv = false;
            isIDOK = false;
            start  = DateTime.Now;

            SSC_.Write("OW_2800324007A\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }
            isRecv = false;
            start  = DateTime.Now;
            SSC_.Write("OR_28003\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }

            if (ReadData.Length > 3)
            {
                ReadData = ReadData.Remove(0, 3);
            }
            ID += ReadData;

            isRecv = false;
            isIDOK = false;
            start  = DateTime.Now;

            SSC_.Write("OW_2800324007B\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }

            isRecv = false;
            start  = DateTime.Now;
            SSC_.Write("OR_28003\r\n");

            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }

            if (ReadData.Length > 3)
            {
                ReadData = ReadData.Remove(0, 3);
            }
            ID += ReadData;

            isRecv = false;
            isIDOK = false;
            start  = DateTime.Now;

            SSC_.Write("OW_2800324007C\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }

            isRecv = false;
            start  = DateTime.Now;
            SSC_.Write("OR_28003\r\n");
            while (true)
            {
                if (DateTime.Now - start > spanTime)
                {
                    break;
                }
                if (isRecv)
                {
                    break;
                }
            }
            if (ReadData.Length > 3)
            {
                ReadData = ReadData.Remove(0, 3);
            }
            ID += ReadData;
            ID  = ID.Replace(@"
"                                , "");

            Txt_Test.Text = ID;

            NMFstate[0]++;
            nRet = NMF.nmf_DOSetTogPin(DevNum, (short)0);
        }
예제 #2
0
        public SelfForm()
        {
            InitializeComponent();
            masterinfo = new MasterInfo(5);
            masterinfo.LoadInfo();
            //logfile = new LogFile();
            DAQ1        = new DAQ();
            DAQ2        = new DAQ();
            DAQ3        = new DAQ();
            DAQ4        = new DAQ();
            DAQ5        = new DAQ();
            barcoderead = new BarcodeRead();
            mlcp        = new MLCP();
            bin         = new Binary();

            nmfdio = new NMFDIO();

            inifile = new IniFiles(@"C:\Users\abc\Data\Option.ini");
            Spec    = new List <string>();
            //Spec = logfile.LoadSpec(2, 92);
            IP       = new short[3];
            NMFstate = new int[3];

            ReadData = "";
            ID       = "";
            IsNICon  = false;
            IsNMFCon = false;
            bytes    = ConvertByteArray("0D");
            list     = new List <string>();
            info     = new List <string>();
            info2    = new List <bool>();
            //strar = new string[5];
            bin.Load(@"C:\Users\abc\Data\Spec\Spec1", ref info, ref info2);

            NIName = inifile.ReadString("NI", "DevName", "");
            if (NIName == "")
            {
                MessageBox.Show("Option 탭에서 NI DevName을 확인해주세요");
            }
            try
            {
                IP[0]  = Convert.ToInt16(inifile.ReadString("NMF", "DevName1", ""));
                IP[1]  = Convert.ToInt16(inifile.ReadString("NMF", "DevName2", ""));
                IP[2]  = Convert.ToInt16(inifile.ReadString("NMF", "DevName3", ""));
                DevNum = Convert.ToInt16(inifile.ReadString("NMF", "DevName4", ""));
            }
            catch (Exception ex)
            {
                MessageBox.Show("Option 탭에서 NMF DevName을 확인해주세요");
            }

            //SSC_.Open();
            try
            {
                BarcodeScanner1.PortName = inifile.ReadString("Barcode1", "PortName", "");
                BarcodeScanner2.PortName = inifile.ReadString("Barcode2", "PortName", "");
                MLCP.PortName            = inifile.ReadString("Meter", "PortName", "");
                SSC_.PortName            = inifile.ReadString("SSC", "PortName", "");
                //Idread = new IDRead(inifile.ReadString("SSC", "PortName", ""), 19200);

                BarcodeScanner1.Open();
                BarcodeScanner2.Open();
                MLCP.Open();
                SSC_.Open();
                //Idread.Connect();
            }
            catch
            {
                MessageBox.Show("장비 연결을 확인해주세요");
            }

            //IsNMFCon = nmfdio.Connect(DevNum, IP[0], IP[1], IP[2], 200);

            DAQ1.Analog_Connect(NIName, "ai0");
            DAQ2.Analog_Connect(NIName, "ai1");
            DAQ3.Analog_Connect(NIName, "ai2");
            DAQ4.Analog_Connect(NIName, "ai3");
            DAQ5.Analog_Connect(NIName, "ai4");
            DAQ1.Digital_Connect(NIName);
            DAQ2.Digital_Connect(NIName);
            DAQ3.Digital_Connect(NIName);
            DAQ4.Digital_Connect(NIName);
        }
예제 #3
0
 private void SSC__DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
 {
     ReadData = SSC_.ReadLine();
     isRecv   = true;
 }