示例#1
0
        /// <summary>
        /// 给吊杆力和吊杆位移文本框赋值
        /// </summary>
        private void RefreshSteeveText()
        {
            try
            {                                                              //自己加吊杆锚杆互换
                Dictionary <int, Steeve> dicSteeve = adamHelper.steeveDic; //得到吊杆的字典集合,用方法得到力和位移


                double[] steeveForce   = new double[dicSteeve.Count]; //吊杆力数组,元素为double
                double[] steeveDis     = new double[dicSteeve.Count]; //吊杆位移数组,元素为double
                double[] realSteeveDis = new double[4];


                for (int i = 0; i < 4; i++)
                {
                    steeveForce[i]   = dicSteeve[i].GetForce();                                 //为吊杆力数组赋值值
                    realSteeveDis[i] = Math.Round(dicSteeve[i].GetDisplace(), 1);               //真实距离
                    steeveDis[i]     = dicSteeve[i].GetDisplace() - adamHelper.standardlist[i]; //升降位移
                    steeveDis[i]     = Math.Round(steeveDis[i], 1);                             //保留一位小数
                }
                double sum = 0;
                for (int i = 0; i < 4; i++)
                {
                    sum += steeveDis[i];//求上升位移和
                }
                double AverageOfFour = Math.Round(sum / 4, 1);

                //平均上升位移
                SetTextValueManager.SetValueToText(steeveForce, ref txtSteeveF1, ref txtSteeveF2, ref txtSteeveF3, ref txtSteeveF4, ref txtMaxSteeveForce, ref txtMaxSteeveForceDiff);
                txtSteeveForceLimit.Text     = steeveForceLimit.ToString();
                txtSteeveForceDiffLimit.Text = steeveForceDiffLimit.ToString();

                SetTextValueManager.SetValueToText(steeveDis, ref txtSteeveDis1, ref txtSteeveDis2, ref txtSteeveDis3, ref txtSteeveDis4, ref txtMaxSteeveDis, ref txtMaxSteeveDisDiff);

                txtSteeveDisLimit.Text     = steeveDisLimit.ToString();     //吊杆位移上限
                txtSteeveDisDiffLimit.Text = steeveDisDiffLimit.ToString(); //吊杆位移差上限
                //
                txtSteeveDis9.Text  = realSteeveDis[0].ToString();          //真实距离和平均位移赋值
                txtSteeveDis10.Text = realSteeveDis[1].ToString();
                txtSteeveDis11.Text = realSteeveDis[2].ToString();
                txtSteeveDis12.Text = realSteeveDis[3].ToString();
                txtAver.Text        = AverageOfFour.ToString();
            }
            catch (Exception ex)
            {
                timer1.Enabled = false;
                MessageBox.Show("采集吊杆力,位移数据失败,请检查硬件后重启软件。" + ex.Message);
            }
        }
示例#2
0
        /// <summary>
        /// 给前支点位移文本框赋值
        /// </summary>
        private void RefreshFrontPivotText()
        {
            try
            {
                firstStandard = adamHelper.first_frontPivotDisStandard;
                secondStanard = adamHelper.second_frontPivotDisStandard;
                threeStandard = adamHelper.three_standard;
                fourStandard  = adamHelper.four_standard;
                Dictionary <int, FrontPivot> dicFrontPivot = adamHelper.frontPivotDic;
                double[] frontPivotDis = new double[4]; //前支点沉降位移

                double[] realFront = new double[4];     //真实距离
                for (int i = 0; i < 4; i++)
                {
                    realFront[i] = dicFrontPivot[i].GetDisplace();
                    realFront[i] = Math.Round(realFront[i], 1);
                }
                frontPivotDis[0] = Math.Round(firstStandard - dicFrontPivot[0].GetDisplace(), 1);
                frontPivotDis[1] = Math.Round(secondStanard - dicFrontPivot[1].GetDisplace(), 1);
                frontPivotDis[2] = Math.Round(threeStandard - dicFrontPivot[2].GetDisplace(), 1);
                frontPivotDis[3] = Math.Round(fourStandard - dicFrontPivot[3].GetDisplace(), 1);
                for (int k = 0; k < 4; k++)
                {
                    frontPivotDis[k] = Math.Abs(frontPivotDis[k]);
                }

                double maxfront = frontPivotDis.Max();
                txtFrontPivotDis1.Text = frontPivotDis[0].ToString();
                txtFrontPivotDis2.Text = frontPivotDis[1].ToString();
                txtFrontPivotDis3.Text = frontPivotDis[2].ToString();
                txtFrontPivotDis4.Text = frontPivotDis[3].ToString();
                SetTextValueManager.set4(realFront, ref txtReal1, ref txtReal2, ref txtReal3, ref txtReal4);
                txtMaxFrontDis.Text   = maxfront.ToString();
                txtFrontDisLimit.Text = FrontDisLimit.ToString();
            }

            catch (Exception ex)
            {
                timer1.Enabled = false;
                MessageBox.Show("采集前支点位移数据失败,请检查硬件后重启软件。" + ex.Message);
            }
        }
示例#3
0
 /// <summary>
 /// 给锚杆力文本框赋值
 /// </summary>
 private void RefreshAnchorText()
 {
     // Dictionary<int, Anchor> dicAnchor = adamHelper.anchorDic;
     try
     {
         Dictionary <int, Anchor> dicAnchor = adamHelper.anchorDic;
         double[] anchorForce = new double[4];
         for (int i = 0; i < 4; i++)
         {
             anchorForce[i] = dicAnchor[i].GetForce();
         }
         SetTextValueManager.SetValueToText(anchorForce, ref txtAnchorF1, ref txtAnchorF2, ref txtAnchorF3, ref txtAnchorF4, ref txtMaxAnchorForce, ref txtMaxAnchorForceDiff);
         txtAnchorForceLimit.Text     = anchorForceLimit.ToString();
         txtAnchorForceDiffLimit.Text = anchorForceDiffLimit.ToString();
     }
     catch (Exception ex)
     {
         timer1.Enabled = false;
         MessageBox.Show("采集锚杆力数据失败,请检查硬件后重启软件。" + ex.Message);
     }
 }