mrDarker
6 天以前 829fe6c6bc33d53fda9c31fd45a37e1df87befff
SourceCode/Bond/Servo/Common.h
@@ -1,6 +1,8 @@
#pragma once
#define TESTMODE                  1
/* Rx Code */
#define RX_CODE_TEST               0
#define RX_CODE_LOG                  1000
@@ -14,7 +16,15 @@
#define RX_CODE_ALARM_SET            1008
#define RX_CODE_ALARM_CLEAR            1009
#define RX_CODE_EQ_DATA_CHANGED         1010
#define RX_CODE_MASTER_STATE_CHANGED   1011
#define RX_CODE_EQ_ROBOT_TASK         1012
#define RX_CODE_LOADPORT_STATUS_CHANGED   1014
#define RX_CODE_CONTROL_STATE_CHANGED   1015
#define RX_CODE_CONTROLJOB_CHANGED      1016
/* 软件侧 ALID */
#define ALID_SOFTWARE_PAUSE_EVENT      9000
#define ALID_SOFTWARE_TEST_ALARM      9099
/* Channel Name */
#define MC_CHANNEL1_NAME      "McChannel1"
@@ -24,15 +34,26 @@
#define APPDLG_BACKGROUND_COLOR            RGB(255, 255, 255)
#define LOGDLG_BACKGROUND_COLOR            RGB(255, 255, 255)
#define PANEL_MASTER_BACKGROUND_COLOR      RGB(255, 255, 255)
#define PANEL_PRODUCTION_BACKGROUND_COLOR   RGB(255, 255, 255)
#define PANEL_ATTRIBUTES_BACKGROUND_COLOR   RGB(255, 255, 255)
#define PANEL_EQUIPMENT_BACKGROUND_COLOR   RGB(255, 255, 255)
#define PAGE_GRPAH1_BACKGROUND_COLOR      RGB(255, 255, 255)
#define PAGE_GRPAH2_BACKGROUND_COLOR      RGB(255, 255, 255)
#define EQ_BOX_OFFLINE                  RGB(222, 222, 222)
#define EQ_BOX_ONLINE                  RGB(0, 176, 80)
#define EQ_BOX_OCCUPIED                     RGB(255, 127, 39)
#define EQ_BOX_FRAME1                  RGB(22, 22, 22)
#define EQ_BOX_FRAME2                  RGB(255, 127, 39)
#define CR_MSGBOX_BKGND                  RGB(7, 71, 166)
#define CR_MSGBOX_TITLE                  RGB(200, 216, 246)
#define CR_MSGBOX_MESSAGE               RGB(200, 216, 246)
#define TOP_TOOLBAR_BACKGROUND            RGB(240, 240, 240)
#define STATUSBAR_BK_NORMAL               RGB(195, 195, 195)
#define STATUSBAR_BK_STARTING            RGB(58, 127, 78)
#define STATUSBAR_BK_RUNNING            RGB(34, 177, 76)
#define STATUSBAR_BK_ALARM               RGB(255, 127, 39)
#define CIM_STATUS_BK_SELECTED            STATUSBAR_BK_RUNNING
#define CIM_STATUS_BK_DISCONNECTED         STATUSBAR_BK_NORMAL
/* LOG BTN */
#define BTN_LOG_FRAME_NORMAL         RGB(88, 88, 88)
@@ -51,22 +72,66 @@
#define BTN_ALARM_BKGND_PRESS         RGB(133, 203, 225)
/* Equipment ID */
#define EQ_ID_EFEM            1
#define EQ_ID_Bonder1         2
#define EQ_ID_Bonder2         3
#define EQ_ID_LOADPORT1         4
#define EQ_ID_LOADPORT2         5
#define EQ_ID_LOADPORT3         6
#define EQ_ID_LOADPORT4         7
#define EQ_ID_LOADPORT1         1
#define EQ_ID_LOADPORT2         2
#define EQ_ID_LOADPORT3         3
#define EQ_ID_LOADPORT4         4
#define EQ_ID_ARM_TRAY1         5
#define EQ_ID_ARM_TRAY2         6
#define EQ_ID_ALIGNER         7
#define EQ_ID_FLIPER         8
#define EQ_ID_VACUUMBAKE      9
#define EQ_ID_ALIGNER         10
#define EQ_ID_BAKE_COOLING      11
#define EQ_ID_ARM            12
#define EQ_ID_ARM_TRAY1         13
#define EQ_ID_ARM_TRAY2         14
#define EQ_ID_OPERATOR_REMOVE   999
#define EQ_ID_Bonder1         10
#define EQ_ID_Bonder2         11
#define EQ_ID_BAKE_COOLING      12
#define EQ_ID_MEASUREMENT      13
#define EQ_ID_EFEM            100
#define EQ_ID_ARM            101
#define EQ_ID_OPERATOR_REMOVE   102
/* Equipment Name */
#define EQ_NAME_LOADPORT1         "LoadPort1"
#define EQ_NAME_LOADPORT2         "LoadPort2"
#define EQ_NAME_LOADPORT3         "LoadPort3"
#define EQ_NAME_LOADPORT4         "LoadPort4"
#define EQ_NAME_ARM_TRAY1         "ArmTray1"
#define EQ_NAME_ARM_TRAY2         "ArmTray2"
#define EQ_NAME_ALIGNER            "Aligner"
#define EQ_NAME_FLIPER            "Fliper"
#define EQ_NAME_VACUUMBAKE         "VacuumBake"
#define EQ_NAME_BONDER1            "Bonder1"
#define EQ_NAME_BONDER2            "Bonder2"
#define EQ_NAME_BAKE_COOLING      "BakeCooling"
#define EQ_NAME_MEASUREMENT         "Measurement"
#define EQ_NAME_EFEM            "EFEM"
#define EQ_NAME_ARM               "Arm"
#define EQ_NAME_OPERATOR_REMOVE      "OperatorRemove"
// 设备元信息结构体
struct DeviceMetaInfo {
   int nDeviceID;
   const char* strDeviceName;  // 指针,仅指向常量字符串
};
// 全局设备元信息列表
static const DeviceMetaInfo g_allDeviceMetaInfos[] = {
   {EQ_ID_LOADPORT1, EQ_NAME_LOADPORT1},
   {EQ_ID_LOADPORT2, EQ_NAME_LOADPORT2},
   {EQ_ID_LOADPORT3, EQ_NAME_LOADPORT3},
   {EQ_ID_LOADPORT4, EQ_NAME_LOADPORT4},
   {EQ_ID_ARM_TRAY1, EQ_NAME_ARM_TRAY1},
   {EQ_ID_ARM_TRAY2, EQ_NAME_ARM_TRAY2},
   {EQ_ID_ALIGNER,   EQ_NAME_ALIGNER},
   {EQ_ID_FLIPER,    EQ_NAME_FLIPER},
   {EQ_ID_VACUUMBAKE, EQ_NAME_VACUUMBAKE},
   {EQ_ID_Bonder1, EQ_NAME_BONDER1},
   {EQ_ID_Bonder2, EQ_NAME_BONDER2},
   {EQ_ID_BAKE_COOLING, EQ_NAME_BAKE_COOLING},
   {EQ_ID_MEASUREMENT, EQ_NAME_MEASUREMENT},
   {EQ_ID_EFEM, EQ_NAME_EFEM},
   {EQ_ID_ARM, EQ_NAME_ARM},
   {EQ_ID_OPERATOR_REMOVE, EQ_NAME_OPERATOR_REMOVE},
};
/* step name */
#define STEP_MODE                  _T("EQMode")
@@ -108,45 +173,71 @@
#define STEP_EQ_PORT4_TRANSFER_MODE      _T("EQPort4TransferMode")
#define STEP_EQ_PORT4_ENABLE         _T("EQPort4Enable")
#define STEP_EQ_PORT4_TYPE_ATUO         _T("EQPort4TypeAuto")
#define STEP_EQ_P1_CASSETTE_EMPTY      _T("EQPort1CassetteEmpty")
#define STEP_EQ_P1_CASSETTE_LOAD_EADY   _T("EQPort1CassetteLoadReady")
#define STEP_EQ_P1_CASSETTE_LOADED      _T("EQPort1CassetteLoaded")
#define STEP_EQ_P1_CASSETTE_INUSE      _T("EQPort1CassetteInUse")
#define STEP_EQ_P1_CASSETTE_UNLOAD_EADY   _T("EQPort1CassetteUnloadReady")
#define STEP_EQ_P1_CASSETTE_BLOCKED      _T("EQPort1CassetteBlocked")
#define STEP_EQ_P2_CASSETTE_EMPTY      _T("EQPort2CassetteEmpty")
#define STEP_EQ_P2_CASSETTE_LOAD_EADY   _T("EQPort2CassetteLoadReady")
#define STEP_EQ_P2_CASSETTE_LOADED      _T("EQPort2CassetteLoaded")
#define STEP_EQ_P2_CASSETTE_INUSE      _T("EQPort2CassetteInUse")
#define STEP_EQ_P2_CASSETTE_UNLOAD_EADY   _T("EQPort2CassetteUnloadReady")
#define STEP_EQ_P2_CASSETTE_BLOCKED      _T("EQPort2CassetteBlocked")
#define STEP_EQ_P3_CASSETTE_EMPTY      _T("EQPort3CassetteEmpty")
#define STEP_EQ_P3_CASSETTE_LOAD_EADY   _T("EQPort3CassetteLoadReady")
#define STEP_EQ_P3_CASSETTE_LOADED      _T("EQPort3CassetteLoaded")
#define STEP_EQ_P3_CASSETTE_INUSE      _T("EQPort3CassetteInUse")
#define STEP_EQ_P3_CASSETTE_UNLOAD_EADY   _T("EQPort3CassetteUnloadReady")
#define STEP_EQ_P3_CASSETTE_BLOCKED      _T("EQPort3CassetteBlocked")
#define STEP_EQ_P4_CASSETTE_EMPTY      _T("EQPort4CassetteEmpty")
#define STEP_EQ_P4_CASSETTE_LOAD_EADY   _T("EQPort4CassetteLoadReady")
#define STEP_EQ_P4_CASSETTE_LOADED      _T("EQPort4CassetteLoaded")
#define STEP_EQ_P4_CASSETTE_INUSE      _T("EQPort4CassetteInUse")
#define STEP_EQ_P4_CASSETTE_UNLOAD_EADY   _T("EQPort4CassetteUnloadReady")
#define STEP_EQ_P4_CASSETTE_BLOCKED      _T("EQPort4CassetteBlocked")
#define STEP_EQ_PORT1_EMPTY            _T("EQPort1Empty")
#define STEP_EQ_PORT1_LOAD_EADY         _T("EQPort1LoadReady")
#define STEP_EQ_PORT1_LOADED         _T("EQPort1Loaded")
#define STEP_EQ_PORT1_INUSE            _T("EQPort1InUse")
#define STEP_EQ_PORT1_UNLOAD_EADY      _T("EQPort1UnloadReady")
#define STEP_EQ_PORT1_BLOCKED         _T("EQPort1Blocked")
#define STEP_EQ_PORT2_EMPTY            _T("EQPort2Empty")
#define STEP_EQ_PORT2_LOAD_EADY         _T("EQPort2LoadReady")
#define STEP_EQ_PORT2_LOADED         _T("EQPort2Loaded")
#define STEP_EQ_PORT2_INUSE            _T("EQPort2InUse")
#define STEP_EQ_PORT2_UNLOAD_EADY      _T("EQPort2UnloadReady")
#define STEP_EQ_PORT2_BLOCKED         _T("EQPort2Blocked")
#define STEP_EQ_PORT3_EMPTY            _T("EQPort3Empty")
#define STEP_EQ_PORT3_LOAD_EADY         _T("EQPort3LoadReady")
#define STEP_EQ_PORT3_LOADED         _T("EQPort3Loaded")
#define STEP_EQ_PORT3_INUSE            _T("EQPort3InUse")
#define STEP_EQ_PORT3_UNLOAD_EADY      _T("EQPort3UnloadReady")
#define STEP_EQ_PORT3_BLOCKED         _T("EQPort3Blocked")
#define STEP_EQ_PORT4_EMPTY            _T("EQPort4Empty")
#define STEP_EQ_PORT4_LOAD_EADY         _T("EQPort4LoadReady")
#define STEP_EQ_PORT4_LOADED         _T("EQPort4Loaded")
#define STEP_EQ_PORT4_INUSE            _T("EQPort4InUse")
#define STEP_EQ_PORT4_UNLOAD_EADY      _T("EQPort4UnloadReady")
#define STEP_EQ_PORT4_BLOCKED         _T("EQPort4Blocked")
#define STEP_EQ_P1_CASSETTE_CTRL_CMD   _T("EQPort1CassetteCtrlCmd")
#define STEP_EQ_P2_CASSETTE_CTRL_CMD   _T("EQPort2CassetteCtrlCmd")
#define STEP_EQ_P3_CASSETTE_CTRL_CMD   _T("EQPort3CassetteCtrlCmd")
#define STEP_EQ_P4_CASSETTE_CTRL_CMD   _T("EQPort4CassetteCtrlCmd")
#define STEP_EQ_CIM_MESSAGE_CONFIRM      _T("EQCimMessageConfirm")
#define STEP_EQ_RECEIVED_JOB_UPSn      _T("EQJEReceivedJobUps")
#define STEP_EQ_RECEIVED_JOB_UPS1      _T("EQJEReceivedJobUps1")
#define STEP_EQ_RECEIVED_JOB_UPS2      _T("EQJEReceivedJobUps2")
#define STEP_EQ_RECEIVED_JOB_UPS3      _T("EQJEReceivedJobUps3")
#define STEP_EQ_RECEIVED_JOB_UPS4      _T("EQJEReceivedJobUps4")
#define STEP_EQ_RECEIVED_JOB_UPS5      _T("EQJEReceivedJobUps5")
#define STEP_EQ_RECEIVED_JOB_UPS6      _T("EQJEReceivedJobUps6")
#define STEP_EQ_RECEIVED_JOB_UPS7      _T("EQJEReceivedJobUps7")
#define STEP_EQ_RECEIVED_JOB_UPS8      _T("EQJEReceivedJobUps8")
#define STEP_EQ_RECEIVED_JOB_UPS9      _T("EQJEReceivedJobUps9")
#define STEP_EQ_SENT_OUT_JOB_DOWNSn      _T("EQJESentOutJobDowns")
#define STEP_EQ_SENT_OUT_JOB_DOWNS1      _T("EQJESentOutJobDowns1")
#define STEP_EQ_SENT_OUT_JOB_DOWNS2      _T("EQJESentOutJobDowns2")
#define STEP_EQ_SENT_OUT_JOB_DOWNS3      _T("EQJESentOutJobDowns3")
#define STEP_EQ_SENT_OUT_JOB_DOWNS4      _T("EQJESentOutJobDowns4")
#define STEP_EQ_SENT_OUT_JOB_DOWNS5      _T("EQJESentOutJobDowns5")
#define STEP_EQ_SENT_OUT_JOB_DOWNS6      _T("EQJESentOutJobDowns6")
#define STEP_EQ_SENT_OUT_JOB_DOWNS7      _T("EQJESentOutJobDowns7")
#define STEP_EQ_SENT_OUT_JOB_DOWNS8      _T("EQJESentOutJobDowns8")
#define STEP_EQ_SENT_OUT_JOB_DOWNS9      _T("EQJESentOutJobDowns9")
#define STEP_EQ_VCR1_EVENT_REPORT      _T("EQVcr1EventReport")
#define STEP_EQ_RURRENT_RECIPE_CHANGE   _T("EQCurrentRecipeChange")
#define STEP_EQ_MASTER_RECIPE_LIST_REQ   _T("EQMasterRecipeListReq")
#define STEP_EQ_MASTER_RECIPE_LIST      _T("EQMasterRecipeListReport")
#define STEP_EQ_RECIPE_PARAMETER_REQ   _T("EQRecipeParameterReq")
#define STEP_EQ_RECIPE_PARAMETER      _T("EQRecipeParameterReport")
#define STEP_EQ_RECEIVED_JOBn         _T("EQReceivedJobReport")
#define STEP_EQ_RECEIVED_JOB1         _T("EQReceivedJobReport1")
#define STEP_EQ_RECEIVED_JOB2         _T("EQReceivedJobReport2")
#define STEP_EQ_RECEIVED_JOB3         _T("EQReceivedJobReport3")
#define STEP_EQ_RECEIVED_JOB4         _T("EQReceivedJobReport4")
#define STEP_EQ_RECEIVED_JOB5         _T("EQReceivedJobReport5")
#define STEP_EQ_RECEIVED_JOB6         _T("EQReceivedJobReport6")
#define STEP_EQ_RECEIVED_JOB7         _T("EQReceivedJobReport7")
#define STEP_EQ_RECEIVED_JOB8         _T("EQReceivedJobReport8")
#define STEP_EQ_RECEIVED_JOB9         _T("EQReceivedJobReport9")
#define STEP_EQ_FETCHED_OUT_JOBn      _T("EQFetchedOutJobReport")
#define STEP_EQ_FETCHED_OUT_JOB1      _T("EQFetchedOutJobReport1")
#define STEP_EQ_FETCHED_OUT_JOB2      _T("EQFetchedOutJobReport2")
@@ -163,7 +254,54 @@
#define STEP_EQ_FETCHED_OUT_JOB13      _T("EQFetchedOutJobReport13")
#define STEP_EQ_FETCHED_OUT_JOB14      _T("EQFetchedOutJobReport14")
#define STEP_EQ_FETCHED_OUT_JOB15      _T("EQFetchedOutJobReport15")
#define STEP_EQ_STORED_JOBn            _T("EQStoredJobReport")
#define STEP_EQ_STORED_JOB1            _T("EQStoredJobReport1")
#define STEP_EQ_STORED_JOB2            _T("EQStoredJobReport2")
#define STEP_EQ_STORED_JOB3            _T("EQStoredJobReport3")
#define STEP_EQ_STORED_JOB4            _T("EQStoredJobReport4")
#define STEP_EQ_STORED_JOB5            _T("EQStoredJobReport5")
#define STEP_EQ_STORED_JOB6            _T("EQStoredJobReport6")
#define STEP_EQ_STORED_JOB7            _T("EQStoredJobReport7")
#define STEP_EQ_STORED_JOB8            _T("EQStoredJobReport8")
#define STEP_EQ_STORED_JOB9            _T("EQStoredJobReport9")
#define STEP_EQ_STORED_JOB10         _T("EQStoredJobReport10")
#define STEP_EQ_STORED_JOB11         _T("EQStoredJobReport11")
#define STEP_EQ_STORED_JOB12         _T("EQStoredJobReport12")
#define STEP_EQ_STORED_JOB13         _T("EQStoredJobReport13")
#define STEP_EQ_STORED_JOB14         _T("EQStoredJobReport14")
#define STEP_EQ_STORED_JOB15         _T("EQStoredJobReport15")
#define STEP_EQ_DISPATCHINT_MODE_CHANGE   _T("EQDispatchingModeChangeCommand")
#define STEP_EFEM_ROBOT_CMD            _T("EFEMRobotCmd")
#define STEP_EQ_IN_OP_MODE_CHANGE      _T("EQIndexerOperationModeChangeCommand")
#define STEP_PORT1_TYPE_CHANGE         _T("Port1TypeChange")
#define STEP_PORT2_TYPE_CHANGE         _T("Port2TypeChange")
#define STEP_PORT3_TYPE_CHANGE         _T("Port3TypeChange")
#define STEP_PORT4_TYPE_CHANGE         _T("Port4TypeChange")
#define STEP_PORT1_MODE_CHANGE         _T("Port1ModeChange")
#define STEP_PORT2_MODE_CHANGE         _T("Port2ModeChange")
#define STEP_PORT3_MODE_CHANGE         _T("Port3ModeChange")
#define STEP_PORT4_MODE_CHANGE         _T("Port4ModeChange")
#define STEP_PORT1_TRANSFER_MODE_CHANGE   _T("Port1TransferModeChange")
#define STEP_PORT2_TRANSFER_MODE_CHANGE   _T("Port2TransferModeChange")
#define STEP_PORT3_TRANSFER_MODE_CHANGE   _T("Port3TransferModeChange")
#define STEP_PORT4_TRANSFER_MODE_CHANGE   _T("Port4TransferModeChange")
#define STEP_PORT1_ENABLE_MODE_CHANGE   _T("Port1EnableModeChange")
#define STEP_PORT2_ENABLE_MODE_CHANGE   _T("Port2EnableModeChange")
#define STEP_PORT3_ENABLE_MODE_CHANGE   _T("Port3EnableModeChange")
#define STEP_PORT4_ENABLE_MODE_CHANGE   _T("Port4EnableModeChange")
#define STEP_PORT1_TYPE_AUTO_CHANGE      _T("Port1TypeAutoChange")
#define STEP_PORT2_TYPE_AUTO_CHANGE      _T("Port2TypeAutoChange")
#define STEP_PORT3_TYPE_AUTO_CHANGE      _T("Port3TypeAutoChange")
#define STEP_PORT4_TYPE_AUTO_CHANGE      _T("Port4TypeAutoChange")
#define STEP_PORT1_CASSETTE_TYPE_CHANGE   _T("Port1CassetteTypeChange")
#define STEP_PORT2_CASSETTE_TYPE_CHANGE   _T("Port2CassetteTypeChange")
#define STEP_PORT3_CASSETTE_TYPE_CHANGE   _T("Port3CassetteTypeChange")
#define STEP_PORT4_CASSETTE_TYPE_CHANGE   _T("Port4CassetteTypeChange")
#define STEP_EQ_PANEL_DATA_REPORT      _T("EQPanelDataReport")
#define STEP_EQ_FAC_DATA_REPORT         _T("EQFacDataReport")
#define STEP_EFEM_PANEL_DATA_REQUEST   _T("EFEMPanelDataRequest")
#define STEP_EQ_JOB_PROCESS_START_REPORT   _T("EQJobProcessStartReport")
#define STEP_EQ_JOB_PROCESS_END_REPORT      _T("EQJobProcessEndReport")
/* Step ID */
#define STEP_ID_CIMMODE_CHANGED_CMD_REPLY      0x550
@@ -187,10 +325,40 @@
#define STEP_ID_VCR1_EVENT_REPORT            0x56A
#define STEP_ID_MASTER_RECIPE_LIST_REPORT      0x56B
#define STEP_ID_RECIPE_PARAMETER_REPORT         0x56C
#define STEP_ID_FAC_DATA_REPORT               0x56D
#define STEP_ID_RECIVE_JOB_UPS1               0x580
#define STEP_ID_RECIVE_JOB_UPS2               0x581
#define STEP_ID_RECIVE_JOB_UPS3               0x582
#define STEP_ID_RECIVE_JOB_UPS4               0x583
#define STEP_ID_RECIVE_JOB_UPS5               0x584
#define STEP_ID_RECIVE_JOB_UPS6               0x585
#define STEP_ID_RECIVE_JOB_UPS7               0x586
#define STEP_ID_RECIVE_JOB_UPS8               0x587
#define STEP_ID_RECIVE_JOB_UPS9               0x588
#define STEP_ID_SENT_OUT_JOB_DOWNS1            0x590
#define STEP_ID_SENT_OUT_JOB_DOWNS2            0x591
#define STEP_ID_SENT_OUT_JOB_DOWNS3            0x592
#define STEP_ID_SENT_OUT_JOB_DOWNS4            0x593
#define STEP_ID_SENT_OUT_JOB_DOWNS5            0x594
#define STEP_ID_SENT_OUT_JOB_DOWNS6            0x595
#define STEP_ID_SENT_OUT_JOB_DOWNS7            0x596
#define STEP_ID_SENT_OUT_JOB_DOWNS8            0x597
#define STEP_ID_SENT_OUT_JOB_DOWNS9            0x598
#define STEP_ID_STORE_JOB_REPORT1            0x5A0
#define STEP_ID_STORE_JOB_REPORT2            0x5A1
#define STEP_ID_STORE_JOB_REPORT3            0x5A2
#define STEP_ID_STORE_JOB_REPORT4            0x5A3
#define STEP_ID_STORE_JOB_REPORT5            0x5A4
#define STEP_ID_STORE_JOB_REPORT6            0x5A5
#define STEP_ID_STORE_JOB_REPORT7            0x5A6
#define STEP_ID_STORE_JOB_REPORT8            0x5A7
#define STEP_ID_STORE_JOB_REPORT9            0x5A8
#define STEP_ID_STORE_JOB_REPORT10            0x5A9
#define STEP_ID_STORE_JOB_REPORT11            0x5AA
#define STEP_ID_STORE_JOB_REPORT12            0x5AB
#define STEP_ID_STORE_JOB_REPORT13            0x5AC
#define STEP_ID_STORE_JOB_REPORT14            0x5AD
#define STEP_ID_STORE_JOB_REPORT15            0x5AE
#define STEP_ID_FETCHED_OUT_JOB_REPORT1         0x5AF
#define STEP_ID_FETCHED_OUT_JOB_REPORT2         0x5B0
#define STEP_ID_FETCHED_OUT_JOB_REPORT3         0x5B1
@@ -206,6 +374,13 @@
#define STEP_ID_FETCHED_OUT_JOB_REPORT13      0x5BB
#define STEP_ID_FETCHED_OUT_JOB_REPORT14      0x5BC
#define STEP_ID_FETCHED_OUT_JOB_REPORT15      0x5BD
#define STEP_ID_JOB_PROCESS_START_REPORT      0x5BF
#define STEP_ID_JOB_PROCESS_END_REPORT         0x5C0
#define STEP_ID_JOB_DATA_REQUEST            0x5C1
#define STEP_ID_PANEL_DATA_REQUEST            0x5D0
#define STEP_ID_PANEL_DATA_REPORT            0x5D1
#define STEP_ID_IN_OP_CMD_REPLY               0x5F0
#define STEP_ID_DISPATCHING_MODE_CHANGE_REPLY   0x5F1
#define STEP_ID_PORT1_TYPE_CHANGE            0x600
#define STEP_ID_PORT2_TYPE_CHANGE            0x601
#define STEP_ID_PORT3_TYPE_CHANGE            0x602
@@ -230,30 +405,60 @@
#define STEP_ID_PORT2_TYPE_AUTO_CHANGE         0x629
#define STEP_ID_PORT3_TYPE_AUTO_CHANGE         0x62A
#define STEP_ID_PORT4_TYPE_AUTO_CHANGE         0x62B
#define STEP_ID_PORT1_CASSETTIE_EMPTY         0x638
#define STEP_ID_PORT1_CASSETTIE_LOAD_READY      0x640
#define STEP_ID_PORT1_CASSETTIE_LOADED         0x648
#define STEP_ID_PORT1_CASSETTIE_INUSE         0x650
#define STEP_ID_PORT1_CASSETTIE_UNLOAD_READY   0x658
#define STEP_ID_PORT1_CASSETTIE_BLOCKED         0x660
#define STEP_ID_PORT2_CASSETTIE_EMPTY         0x639
#define STEP_ID_PORT2_CASSETTIE_LOAD_READY      0x641
#define STEP_ID_PORT2_CASSETTIE_LOADED         0x649
#define STEP_ID_PORT2_CASSETTIE_INUSE         0x651
#define STEP_ID_PORT2_CASSETTIE_UNLOAD_READY   0x659
#define STEP_ID_PORT2_CASSETTIE_BLOCKED         0x661
#define STEP_ID_PORT3_CASSETTIE_EMPTY         0x63a
#define STEP_ID_PORT3_CASSETTIE_LOAD_READY      0x642
#define STEP_ID_PORT3_CASSETTIE_LOADED         0x64a
#define STEP_ID_PORT3_CASSETTIE_INUSE         0x652
#define STEP_ID_PORT3_CASSETTIE_UNLOAD_READY   0x65a
#define STEP_ID_PORT3_CASSETTIE_BLOCKED         0x662
#define STEP_ID_PORT4_CASSETTIE_EMPTY         0x63b
#define STEP_ID_PORT4_CASSETTIE_LOAD_READY      0x643
#define STEP_ID_PORT4_CASSETTIE_LOADED         0x64b
#define STEP_ID_PORT4_CASSETTIE_INUSE         0x653
#define STEP_ID_PORT4_CASSETTIE_UNLOAD_READY   0x65b
#define STEP_ID_PORT4_CASSETTIE_BLOCKED         0x663
#define STEP_ID_PORT1_EMPTY                  0x638
#define STEP_ID_PORT1_LOAD_READY            0x640
#define STEP_ID_PORT1_LOADED               0x648
#define STEP_ID_PORT1_INUSE                  0x650
#define STEP_ID_PORT1_UNLOAD_READY            0x658
#define STEP_ID_PORT1_BLOCKED               0x660
#define STEP_ID_PORT2_EMPTY                  0x639
#define STEP_ID_PORT2_LOAD_READY            0x641
#define STEP_ID_PORT2_LOADED               0x649
#define STEP_ID_PORT2_INUSE                  0x651
#define STEP_ID_PORT2_UNLOAD_READY            0x659
#define STEP_ID_PORT2_BLOCKED               0x661
#define STEP_ID_PORT3_EMPTY                  0x63a
#define STEP_ID_PORT3_LOAD_READY            0x642
#define STEP_ID_PORT3_LOADED               0x64a
#define STEP_ID_PORT3_INUSE                  0x652
#define STEP_ID_PORT3_UNLOAD_READY            0x65a
#define STEP_ID_PORT3_BLOCKED               0x662
#define STEP_ID_PORT4_EMPTY                  0x63b
#define STEP_ID_PORT4_LOAD_READY            0x643
#define STEP_ID_PORT4_LOADED               0x64b
#define STEP_ID_PORT4_INUSE                  0x653
#define STEP_ID_PORT4_UNLOAD_READY            0x65b
#define STEP_ID_PORT4_BLOCKED               0x663
#define STEP_ID_PROT1_TYPE_CHANGE_REPLY         0x670
#define STEP_ID_PROT2_TYPE_CHANGE_REPLY         0x671
#define STEP_ID_PROT3_TYPE_CHANGE_REPLY         0x672
#define STEP_ID_PROT4_TYPE_CHANGE_REPLY         0x673
#define STEP_ID_PROT1_MODE_CHANGE_REPLY         0x678
#define STEP_ID_PROT2_MODE_CHANGE_REPLY         0x679
#define STEP_ID_PROT3_MODE_CHANGE_REPLY         0x67A
#define STEP_ID_PROT4_MODE_CHANGE_REPLY         0x67B
#define STEP_ID_PROT1_TRANSFER_MODE_CHANGE_REPLY   0x680
#define STEP_ID_PROT2_TRANSFER_MODE_CHANGE_REPLY   0x681
#define STEP_ID_PROT3_TRANSFER_MODE_CHANGE_REPLY   0x682
#define STEP_ID_PROT4_TRANSFER_MODE_CHANGE_REPLY   0x683
#define STEP_ID_PROT1_ENABLE_MODE_CHANGE_REPLY      0x688
#define STEP_ID_PROT2_ENABLE_MODE_CHANGE_REPLY      0x689
#define STEP_ID_PROT3_ENABLE_MODE_CHANGE_REPLY      0x68A
#define STEP_ID_PROT4_ENABLE_MODE_CHANGE_REPLY      0x68B
#define STEP_ID_PROT1_TYPE_AUTO_CHANGE_REPLY      0x690
#define STEP_ID_PROT2_TYPE_AUTO_CHANGE_REPLY      0x691
#define STEP_ID_PROT3_TYPE_AUTO_CHANGE_REPLY      0x692
#define STEP_ID_PROT4_TYPE_AUTO_CHANGE_REPLY      0x693
#define STEP_ID_PROT1_CASSETTE_TYPE_CHANGE_REPLY   0x698
#define STEP_ID_PROT2_CASSETTE_TYPE_CHANGE_REPLY   0x699
#define STEP_ID_PROT3_CASSETTE_TYPE_CHANGE_REPLY   0x69A
#define STEP_ID_PROT4_CASSETTE_TYPE_CHANGE_REPLY   0x69B
#define STEP_ID_PROT1_CASSETTE_CTR_CMD_REPLY      0x6A0
#define STEP_ID_PROT2_CASSETTE_CTR_CMD_REPLY      0x6A1
#define STEP_ID_PROT3_CASSETTE_CTR_CMD_REPLY      0x6A2
#define STEP_ID_PROT4_CASSETTE_CTR_CMD_REPLY      0x6A3
#define STEP_ID_ROBOT_CMD_REPLY                  0x6b0
/* base alarm */
@@ -273,16 +478,12 @@
/* 流程控制相关代码 */
#define FLOW_REJECT               0x0
#define FLOW_ACCEPT               0x1
#define FLOW_TEST               0x1000
#define FLOW_SIGNAL               0x1001
#define FLOW_DATA               0x1002
#define FLOW_MOVE_MATERIAL         0x1003
/* Port Status */
#define PORT_LOAD_READY            1
#define PORT_LOAD_REQUEST         PORT_LOAD_READY
#define PORT_LOADED               2
#define PORT_INUSE               3
#define PORT_LOAD_COMPLETE         PORT_INUSE
@@ -350,3 +551,34 @@
#define RT_REQUEST_FROM_EAS      4
 /* Robot Task Status */
#define ROBOT_EVENT_CREATE      0   // 新任务创建
#define ROBOT_EVENT_FINISH      1   // 正常完成
#define ROBOT_EVENT_ERROR      2   // 出现错误
#define ROBOT_EVENT_ABORT      3   // 人为中止
#define ROBOT_EVENT_RESTORE      4   // 回撤
/* PPID名字最大长度 */
#define PPID_NAME_MAX         80
/* 解除警告 按钮 */
#define BTN_ALARM_OFF_FRAME_NORMAL      RGB(88, 88, 88)
#define BTN_ALARM_OFF_FRAME_HOVER      RGB(88, 88, 88)
#define BTN_ALARM_OFF_FRAME_PRESS      RGB(88, 88, 88)
#define BTN_ALARM_OFF_BKGND_NORMAL      RGB(255, 127, 39)
#define BTN_ALARM_OFF_BKGND_HOVER      RGB(255, 157, 59)
#define BTN_ALARM_OFF_BKGND_PRESS      RGB(255, 100, 29)
/* 静音按钮 */
#define BTN_SOUND_OFF_FRAME_NORMAL      RGB(88, 88, 88)
#define BTN_SOUND_OFF_FRAME_HOVER      RGB(88, 88, 88)
#define BTN_SOUND_OFF_FRAME_PRESS      RGB(88, 88, 88)
#define BTN_SOUND_OFF_BKGND_NORMAL      RGB(255, 127, 39)
#define BTN_SOUND_OFF_BKGND_HOVER      RGB(255, 157, 59)
#define BTN_SOUND_OFF_BKGND_PRESS      RGB(255, 100, 29)
#define BTN_SOUND_ON_BKGND_NORMAL      RGB(100, 200, 100)
#define BTN_SOUND_ON_BKGND_HOVER      RGB(150, 250, 150)
#define BTN_SOUND_ON_BKGND_PRESS      RGB(50, 150, 50)