#include "stdafx.h" #include "CServoUtilsTool.h" #include "Common.h" namespace SERVO { static std::unordered_map> EQ_DATA_TYPES = { {MID_Bonder1, { "气囊压力", "上腔压力", "管道真空规值", "腔体真空规值", "上腔温度1", "上腔温度2", "上腔温度3", "上腔温度4", "上腔温度5", "上腔温度6", "下腔温度1", "下腔温度2", "下腔温度3", "下腔温度4", "下腔温度5", "下腔温度6" }}, {MID_Bonder2, { "气囊压力", "上腔压力", "管道真空规值", "腔体真空规值", "上腔温度1", "上腔温度2", "上腔温度3", "上腔温度4", "上腔温度5", "上腔温度6", "下腔温度1", "下腔温度2", "下腔温度3", "下腔温度4", "下腔温度5", "下腔温度6" }}, {MID_VacuumBakeA, { "真空规值", "温控1", "温控2", "温控4", "温控5", "温控6", "温控7" }}, {MID_VacuumBakeB, { "真空规值", "温控1", "温控2", "温控4", "温控5", "温控6", "温控7" }}, {MID_BakeCoolingA, { "烘烤温控1", "烘烤温控2", "烘烤温控4", "烘烤温控5", "烘烤温控6", "烘烤温控7" }}, {MID_BakeCoolingB, { "烘烤温控1", "烘烤温控2", "烘烤温控4", "烘烤温控5", "烘烤温控6", "烘烤温控7" }} }; CServoUtilsTool::CServoUtilsTool() { } CServoUtilsTool::~CServoUtilsTool() { } std::string CServoUtilsTool::getEqName(int eqid) { switch (eqid) { case EQ_ID_LOADPORT1: return "Port1"; case EQ_ID_LOADPORT2: return "Port2"; case EQ_ID_LOADPORT3: return "Port3"; case EQ_ID_LOADPORT4: return "Port4"; case EQ_ID_ALIGNER: return "Aligner"; case EQ_ID_FLIPER: return "Fliper"; case EQ_ID_VACUUMBAKE: return "VacuumBake"; case EQ_ID_Bonder1: return "Bonder1"; case EQ_ID_Bonder2: return "Bonder2"; case EQ_ID_BAKE_COOLING: return "BakeCooling"; case EQ_ID_MEASUREMENT: return "AOI"; case EQ_ID_ARM_TRAY1: return "ArmTray1"; case EQ_ID_ARM_TRAY2: return "ArmTray2"; default: break; } return ""; } std::string CServoUtilsTool::getEqUnitName(int eqid, int unit) { char szBuffer[256]; if (eqid == EQ_ID_LOADPORT1 || eqid == EQ_ID_LOADPORT2 || eqid == EQ_ID_LOADPORT3 || eqid == EQ_ID_LOADPORT4 ) { sprintf_s(szBuffer, 256, "Port%d(Slot%d)", eqid - EQ_ID_LOADPORT1 + 1, unit + 1); return std::string(szBuffer); } if (eqid == EQ_ID_ALIGNER) { return "Aligner"; } if (eqid == EQ_ID_FLIPER) { return "Fliper"; } if (eqid == EQ_ID_VACUUMBAKE) { if (unit == 0) return "烘烤A腔"; if (unit == 1) return "烘烤B腔"; } if (eqid == EQ_ID_Bonder1) { return "Bonder1"; } if (eqid == EQ_ID_Bonder2) { return "Bonder2"; } if (eqid == EQ_ID_BAKE_COOLING) { if (unit == 0) return "后烘烤A腔"; if (unit == 1) return "冷却A"; if (unit == 2) return "后烘烤B腔"; if (unit == 3) return "冷却B"; } if (eqid == EQ_ID_MEASUREMENT) { return "AOI"; } if (eqid == EQ_ID_ARM_TRAY1) { return "ARM1"; } if (eqid == EQ_ID_ARM_TRAY2) { return "ARM2"; } return ""; } std::string CServoUtilsTool::getEqUnitName(int eqid, int unit, int slot) { char szBuffer[256]; if (eqid == EQ_ID_LOADPORT1 || eqid == EQ_ID_LOADPORT2 || eqid == EQ_ID_LOADPORT3 || eqid == EQ_ID_LOADPORT4 ) { sprintf_s(szBuffer, 256, "Port%d(Slot%d)", eqid - EQ_ID_LOADPORT1 + 1, slot); return std::string(szBuffer); } if (eqid == EQ_ID_ALIGNER) { return "Aligner"; } if (eqid == EQ_ID_FLIPER) { return "Fliper"; } if (eqid == EQ_ID_VACUUMBAKE) { if (unit == 0) { sprintf_s(szBuffer, 256, "烘烤A腔(Slot%d)", slot); return std::string(szBuffer); } if (unit == 1) { sprintf_s(szBuffer, 256, "烘烤B腔(Slot%d)", slot); return std::string(szBuffer); } } if (eqid == EQ_ID_Bonder1) { sprintf_s(szBuffer, 256, "Bonder1(Slot%d)", slot); return std::string(szBuffer); } if (eqid == EQ_ID_Bonder2) { sprintf_s(szBuffer, 256, "Bonder2(Slot%d)", slot); return std::string(szBuffer); } if (eqid == EQ_ID_BAKE_COOLING) { if (slot == 0) return "后烘烤A腔"; if (slot == 1) return "冷却A"; if (slot == 2) return "后烘烤B腔"; if (slot == 3) return "冷却B"; } if (eqid == EQ_ID_MEASUREMENT) { return "AOI"; } if (eqid == EQ_ID_ARM_TRAY1) { return "ARM1"; } if (eqid == EQ_ID_ARM_TRAY2) { return "ARM2"; } return ""; } std::string CServoUtilsTool::getMaterialsTypeText(MaterialsType type) { if (type == MaterialsType::G1) { return "G1"; } if (type == MaterialsType::G2) { return "G2"; } return ""; } std::string CServoUtilsTool::getGlassStateText(SERVO::GlsState state) { switch (state) { case SERVO::GlsState::NoState: return "NoState"; break; case SERVO::GlsState::Queued: return "Queued"; break; case SERVO::GlsState::InProcess: return "InProcess"; break; case SERVO::GlsState::Paused: return "Paused"; break; case SERVO::GlsState::Completed: return "Completed"; break; case SERVO::GlsState::Aborted: return "Aborted"; break; case SERVO::GlsState::Failed: return "Failed"; break; default: return ""; break; } } std::string CServoUtilsTool::getInspResultText(SERVO::InspResult result) { switch (result) { case SERVO::InspResult::NotInspected: return ""; break; case SERVO::InspResult::Pass: return "Pass"; break; case SERVO::InspResult::Fail: return "Fail"; break; default: return ""; break; } } std::unordered_map>& CServoUtilsTool::getEqDataTypes() { return EQ_DATA_TYPES; } }