Exemplo n.º 1
0
 /// <summary>
 /// ��ȡ�¶ȸ澯��Ϣ
 /// </summary>
 /// <param name="scanBordAddr"></param>
 /// <param name="clr"></param>
 public static void GetTempAlarmInfo(ScannerMonitorData monitorData,
                                     float threshold,
                                     out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData != null)
     {
         if (monitorData.TemperatureOfScanCard.IsValid)
         {
             int nValue = (int)monitorData.TemperatureOfScanCard.Value;
             if (nValue > threshold)
             {
                 //�¶ȳ�����ֵʱ��ΪΪ�澯��Ϣ
                 resType = MonitorInfoResult.Alarm;
             }
             else
             {
                 resType = MonitorInfoResult.Ok;
             }
         }
     }
 }
 //private void AddOneScreen
 private string GetErrTypeStr(ErrType item, MonitorInfoResult monitorResult)
 {
     string msg = "";
     if (item == ErrType.DVI)
     {
         msg = GetStr("DVIFault", "DVI故障");
     }
     if (item == ErrType.SenderCard)
     {
         msg = GetStr("SenderCardFault", "发送卡故障");
     }
     else if(item==ErrType.CabinetDoor)
     {
         msg = GetStr("CabinetDoorAlarm", "箱门开启");
     }
     else if (item == ErrType.Fan)
     {
         msg = GetStr("FanAlarm", "风扇告警");
     }
     else if (item == ErrType.Humidity)
     {
         msg = GetStr("HumidityAlarm", "湿度告警");
     }
     else if (item == ErrType.MonitorCard)
     {
         msg = GetStr("MonitorCardFault", "监控卡故障");
     }
     else if (item == ErrType.Power)
     {
         if(monitorResult == MonitorInfoResult.Fault)
         {
             msg = GetStr("PowerFault", "电源故障");
         }
         else
         {
             msg = GetStr("PowerAlarm", "电源告警");
         }
     }
     else if (item == ErrType.Redundancy)
     {
         msg = GetStr("RedundancyAlarm", "冗余告警");
     }
     else if (item == ErrType.SBStatus)
     {
         msg = GetStr("SBStatusFault", "接收卡故障");
     }
     else if (item == ErrType.Smoke)
     {
         msg = GetStr("SmokeAlarm", "烟雾告警");
     }
     else if (item == ErrType.Soket)
     {
         msg = GetStr("SoketFault", "排线故障");
     }
     else if (item == ErrType.Temperature)
     {
         msg = GetStr("TemperatureAlarm", "温度告警");
     }
     return msg;
 }
Exemplo n.º 3
0
 /// <summary>
 /// ��ȡ���Ϻ͸澯��Ϣ
 /// </summary>
 /// <param name="scanBordAddr"></param>
 /// <param name="clr"></param>
 public static void GetSBStatusFaultInfo(ScannerMonitorData monitorData, out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData != null)
     {
         if (monitorData.WorkStatus == WorkStatusType.OK)
         {
             if (monitorData.VoltageOfScanCard.IsValid)
             {
                 if (monitorData.VoltageOfScanCard.Value > MAXSUPPLYVOLTAGE
                     || monitorData.VoltageOfScanCard.Value < MINXSUPPLYVOLTAGE)
                 {
                     resType = MonitorInfoResult.Alarm;
                 }
                 else
                 {
                     resType = MonitorInfoResult.Ok;
                 }
             }
             else
             {
                 //��ѹ��Чʱ��Ϊ����
                 resType = MonitorInfoResult.Ok;
             }
         }
         else
         {
             resType = MonitorInfoResult.Fault;
         }
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// ��ȡ���Ϻ͸澯��Ϣ
 /// </summary>
 /// <param name="scanBordAddr"></param>
 /// <param name="clr"></param>
 public static void GetSmokeAlarmInfo(ScannerMonitorData monitorData, out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData != null && monitorData.IsConnectMC)
     {
         if (monitorData.SmokeWarn.IsValid)
         {
             if (monitorData.SmokeWarn.IsSmokeAlarm)
             {
                 resType = MonitorInfoResult.Alarm;
             }
             else
             {
                 resType = MonitorInfoResult.Ok;
             }
         }
     }
 }
Exemplo n.º 5
0
 public static void GetOneFanOrPowerAlarmInfo(ValueInfo valueInfo, float alarmThreshold, float faultThreshold,
                                             out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (valueInfo.IsValid)
     {
         if (valueInfo.Value < faultThreshold)
         {
             resType = MonitorInfoResult.Fault;
         }
         else if (valueInfo.Value < alarmThreshold)
         {
             //����ת�ٻ��ѹֵС����ֵʱ��ΪΪ�澯��Ϣ
             resType = MonitorInfoResult.Alarm;
         }
         else
         {
             resType = MonitorInfoResult.Ok;
         }
     }
 }
Exemplo n.º 6
0
 /// <summary>
 /// ��ȡ���߸澯����
 /// </summary>
 /// <param name="scanBordAddr"></param>
 /// <param name="clr"></param>
 public static void GetRowLineFaultInfo(ScannerMonitorData monitorData,
                                        ScanBoardRowLineStatus rowLineStatus,
                                        out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData == null || !monitorData.IsConnectMC)
     {
         return;
     }
     if (rowLineStatus != null && rowLineStatus.SoketRowLineStatusList != null)
     {
         SoketRowLineInfo soketInfo = null;
         resType = MonitorInfoResult.Ok;
         for (int i = 0; i < rowLineStatus.SoketRowLineStatusList.Count; i++)
         {
             soketInfo = rowLineStatus.SoketRowLineStatusList[i];
             if (!soketInfo.IsABCDOk
                 || !soketInfo.IsCtrlOk
                 || !soketInfo.IsDCLKOk
                 || !soketInfo.IsLatchOk
                 || !soketInfo.IsOEOk)
             {
                 resType = MonitorInfoResult.Fault;
                 return;
             }
             if (soketInfo.RGBStatusList != null
                 || soketInfo.RGBStatusList.Count > 0)
             {
                 for (int j = 0; j < soketInfo.RGBStatusList.Count; j++)
                 {
                     if (!soketInfo.RGBStatusList[j].IsBlueOk
                         || !soketInfo.RGBStatusList[j].IsGreenOk
                         || !soketInfo.RGBStatusList[j].IsRedOk
                         || !soketInfo.RGBStatusList[j].IsVRedOk)
                     {
                         resType = MonitorInfoResult.Fault;
                         return;
                     }
                 }
             }
         }
     }
 }
Exemplo n.º 7
0
 public static void GetOneFanOrPowerAlarmInfo(ValueInfo valueInfo, float threshold,
                                              out MonitorInfoResult resType)
 {
     //-50 ��������ܴﵽ�Ĺ��Ϸ�ֵ
     GetOneFanOrPowerAlarmInfo(valueInfo, threshold, -50, out resType);
 }
Exemplo n.º 8
0
 /// <summary>
 /// ��ȡ���Ϻ͸澯��Ϣ
 /// </summary>
 /// <param name="scanBordAddr"></param>
 /// <param name="clr"></param>
 public static void GetMCStatusFaultInfo(ScannerMonitorData monitorData, out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData != null)
     {
         if (monitorData.IsConnectMC)
         {
             if (monitorData.VoltageOfMonitorCardCollection != null
               && monitorData.VoltageOfMonitorCardCollection.Count > 0
               && monitorData.VoltageOfMonitorCardCollection[0].IsValid)
             {
                 if (monitorData.VoltageOfMonitorCardCollection[0].Value > MAXSUPPLYVOLTAGE
                     || monitorData.VoltageOfMonitorCardCollection[0].Value < MINXSUPPLYVOLTAGE)
                 {
                     resType = MonitorInfoResult.Alarm;
                 }
                 else
                 {
                     resType = MonitorInfoResult.Ok;
                 }
             }
             else
             {
                 //��ѹ��Чʱ��Ϊ����
                 resType = MonitorInfoResult.Ok;
             }
         }
         else
         {
             resType = MonitorInfoResult.Fault;
         }
     }
 }
Exemplo n.º 9
0
 /// <summary>
 /// ��ȡʪ�ȸ澯��Ϣ
 /// </summary>
 /// <param name="scanBordAddr"></param>
 /// <param name="clr"></param>
 public static void GetHumidityAlarmInfo(ScannerMonitorData monitorData,
                                         float threshold,
                                         out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData != null)
     {
         ValueInfo valueInf;
         if (monitorData.IsConnectMC
             && monitorData.HumidityOfMonitorCard.IsValid)
         {
             valueInf = monitorData.HumidityOfMonitorCard;
         }
         else if (monitorData.HumidityOfScanCard.IsValid)
         {
             valueInf = monitorData.HumidityOfScanCard;
         }
         else
         {
             return;
         }
         if ((int)valueInf.Value > threshold)
         {
             //ʪ�ȳ�����ֵʱ��ΪΪ�澯��Ϣ
             resType = MonitorInfoResult.Alarm;
         }
         else
         {
             resType = MonitorInfoResult.Ok;
         }
     }
 }
Exemplo n.º 10
0
 /// <summary>
 /// ��ȡ����״̬�澯����Ϣ
 /// </summary>
 /// <param name="generalSwitchCloseList"></param>
 /// <param name="alarmCnt"></param>
 /// <returns></returns>
 public static void GetGeneralSwitcAlarmInfo(ScannerMonitorData monitorData,
                                             List<bool> generalSwitchCloseList,
                                             out MonitorInfoResult resType)
 {
     resType = MonitorInfoResult.Unknown;
     if (monitorData == null || !monitorData.IsConnectMC)
     {
         return;
     }
     if (generalSwitchCloseList != null && generalSwitchCloseList.Count > 0)
     {
         resType = MonitorInfoResult.Ok;
         for (int i = 0; i < CurCabintDoorCount; i++)
         {
             if (!generalSwitchCloseList[i])
             {
                 resType = MonitorInfoResult.Alarm;
                 break;
             }
         }
     }
 }
Exemplo n.º 11
0
        /// <summary>
        /// ��ȡ�¶ȶ�Ӧ����Ϣ
        /// </summary>
        /// <param name="monitorData"></param>
        /// <param name="curIndex"></param>
        /// <param name="backClr"></param>
        /// <param name="displayStr"></param>
        public static void CaculateTempStatisticsInfo(ScannerMonitorData monitorData,
                                                      float threshold,
                                                      out ValueCompareResult valueCompareRes,
                                                      out MonitorInfoResult resType,
                                                      ref TempAndHumiStatisticsInfo statisticsInfo)
        {
            valueCompareRes = ValueCompareResult.Unknown;
            resType = MonitorInfoResult.Unknown;
            if (monitorData != null)
            {
                if (monitorData.TemperatureOfScanCard.IsValid)
                {
                    float fValue = monitorData.TemperatureOfScanCard.Value;
                    int nValue = (int)fValue;
                    if (nValue > threshold)
                    {
                        resType = MonitorInfoResult.Alarm;
                    }
                    else
                    {
                        resType = MonitorInfoResult.Ok;
                    }
                    if (statisticsInfo.ValidScanBoardCnt <= 0)
                    {
                        //��ǰɨ�迨����Ϊ0ʱ����ȡ��ǰ�¶�
                        statisticsInfo.MinValue = nValue;
                        statisticsInfo.MaxValue = nValue;

                        valueCompareRes = ValueCompareResult.IsFirstValidValue;
                    }
                    else
                    {
                        //��ȡ��ǰ��С�¶Ⱥ�����¶�
                        if (statisticsInfo.MinValue > nValue)
                        {
                            valueCompareRes = ValueCompareResult.BelowMinValue;
                            statisticsInfo.MinValue = nValue;
                        }
                        else if (statisticsInfo.MinValue == nValue)
                        {
                            valueCompareRes = ValueCompareResult.EqualsMinValue;
                        }

                        if (statisticsInfo.MaxValue < nValue)
                        {
                            valueCompareRes = ValueCompareResult.AboveMaxValue;
                            statisticsInfo.MaxValue = nValue;
                        }
                        else if (statisticsInfo.MaxValue == nValue)
                        {
                            if (valueCompareRes == ValueCompareResult.EqualsMinValue)
                            {
                                valueCompareRes = ValueCompareResult.EqualsBothValue;
                            }
                            else
                            {
                                valueCompareRes = ValueCompareResult.EqualsMaxValue;
                            }
                        }
                    }
                    statisticsInfo.ValidScanBoardCnt++;
                    statisticsInfo.TotalValue += nValue;
                    statisticsInfo.AllValueList.Add(nValue);
                }
            }
        }