Esempio n. 1
0
        private void Poll()
        {
            double   nidbuff = double.MaxValue;
            DateTime dt      = DateTime.Now;

            while (!bExit)
            {
                if (ReadCount - ChartCount < 99 && !Pause)
                {
                    byte[] data = sc.GetAppdata();

                    double nid = (DateTime.Now - dt).TotalSeconds;
                    if (!GetDataByTime)
                    {
                        nid = StaubliXML.GetXMLDouble("nID", StaubliXML.Byte2xd(data));
                    }
                    double nSpeed = StaubliXML.GetXMLDouble("nRobotSpeed", StaubliXML.Byte2xd(data));

                    if (nid != nidbuff && nid > 0)
                    {
                        nidbuff = nid;

                        speeddata[ReadCount % 100, 0] = nid;
                        speeddata[ReadCount % 100, 1] = nSpeed;
                        ReadCount++;
                    }
                }
                System.Threading.Thread.Sleep(polltime);
            }
        }
Esempio n. 2
0
        private void BT_Login_Click(object sender, EventArgs e)
        {
            if (CB_IP.Text == "")
            {
                MessageBox.Show("请输入CS8C IP 地址");
                return;
            }

            if (CB_App.Text == "")
            {
                MessageBox.Show("请输入下位机加载的应用程序名");
                return;
            }

            sc = new SoapClient(CB_IP.Text.Trim());
            if (!sc.PingNet())
            {
                MessageBox.Show("网络不通,请检查IP地址是否正确或者网络链接");
                return;
            }
            if (!sc.Login())
            {
                MessageBox.Show("Soap登录失败");
                return;
            }
            sc.SoapGetAppname = @"Disk://" + CB_App.Text + "/" + CB_App.Text + ".pjx";

            byte[] data = sc.GetAppdata();

            if (!RobotKit.StaubliXML.IsGlobelData("nRobotSpeed", data))
            {
                MessageBox.Show("应用程序中 nRobotSpeed变量不存在");
                return;
            }

            GetDataByTime = RD_Time.Checked;
            if (!GetDataByTime)
            {
                if (!RobotKit.StaubliXML.IsGlobelData("nID", data))
                {
                    MessageBox.Show("应用程序中nID变量不存在");
                    return;
                }
            }

            MessageBox.Show("登录成功");
            BT_Start.Enabled   = true;
            GB_Setting.Enabled = false;
        }
Esempio n. 3
0
        private void Poll()
        {
            double   nidbuff = double.MaxValue;
            DateTime dt      = DateTime.Now;

            while (!bExit)
            {
                if (ReadCount - ChartCount < 99 && !Pause)
                {
                    byte[] data = sc.GetAppdata();

                    double nid = (DateTime.Now - dt).TotalSeconds;
                    if (!GetDataByTime)
                    {
                        nid = StaubliXML.GetXMLDouble("nID", StaubliXML.Byte2xd(data));
                    }
                    double[] nJointForce = StaubliXML.GetXMLDoubleArray("nJointForce", StaubliXML.Byte2xd(data));

                    if (nid != nidbuff && nid > 0)
                    {
                        nidbuff = nid;

                        speeddata[ReadCount % 100, 0] = nid;
                        if (nJointForce == null)
                        {
                            nJointForce = new double[6];
                        }
                        for (int i = 0; i < nJointForce.Length; i++)
                        {
                            speeddata[ReadCount % 100, 1 + i] = nJointForce[i];
                        }

                        ReadCount++;
                    }
                }
                System.Threading.Thread.Sleep(polltime);
            }
        }
Esempio n. 4
0
        private void BT_Login_Click(object sender, EventArgs e)
        {
            if (CB_IP.Text == "")
            {
                MessageBox.Show("请输入CS8C IP 地址");
                return;
            }

            if (CB_App.Text == "")
            {
                MessageBox.Show("请输入下位机加载的应用程序名");
                return;
            }

            sc = new SoapClient(CB_IP.Text.Trim());
            if (!sc.PingNet())
            {

                MessageBox.Show("网络不通,请检查IP地址是否正确或者网络链接");
                return;

            }
            if (!sc.Login())
            {

                MessageBox.Show("Soap登录失败");
                return;

            }
            sc.SoapGetAppname = @"Disk://" + CB_App.Text + "/" + CB_App.Text + ".pjx";

            byte[] data = sc.GetAppdata();

            if (!RobotKit.StaubliXML.IsGlobelData("nJointForce", data))
            {

                MessageBox.Show("应用程序中nJointForce变量不存在");
                return;
            }

            GetDataByTime = RD_Time.Checked;
            if (!GetDataByTime)
            {
                if (!RobotKit.StaubliXML.IsGlobelData("nID", data))
                {

                    MessageBox.Show("应用程序中nID变量不存在");
                    return;
                }

            }
            JointIndex = CB_JointIndex.SelectedIndex;
            pm.Title = "Staubli机器人关节" + (JointIndex + 1).ToString() + "受力";
            MessageBox.Show("登录成功");
            BT_Start.Enabled = true;
            GB_Setting.Enabled = false;
        }