public bool HasRobotFault(ref string message, ref MvRobotAlarmInfo alarmInfo) { //************IMPORTANT*************************************************// //UO[1~20] address has been mapping to DI[1~20] address at addr.22 //AND using BGLogic assign DI[1]~DI[20] to R[21]~R[40] respectivly //If you wanna read UO[1], plz read R[21] and so on //********************************************************************** object UO6Value = (byte)0; bool IsReadSuccess = false; //1:有err 0:normal mobjDataTable.Refresh(); IsReadSuccess = mobjNumReg.GetValue(26, ref UO6Value); if (!IsReadSuccess) { throw new Exception("Read Fail"); } if ((int)UO6Value == 1) { alarmInfo = GetRobotAlarm(); message = "Robot Err Occur !"; HasRobotFaultStatus = true; //if (RobotFaultStatus != almInfo.Result) { this.Equipment.IO_Switch("LaserIO", DeviceSwitch.OFF); } } else { message = "Success"; HasRobotFaultStatus = false; //if (RobotFaultStatus != almInfo.Result) { this.Equipment.IO_Switch("LaserIO", DeviceSwitch.ON); } } return(HasRobotFaultStatus); }