CCalibrationConfig.h 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. #pragma once
  2. #include "CDataBaseOperate.H"
  3. #include "CConfigBase.h"
  4. #ifdef CALIB_CONFIG_DLL
  5. #define DLL_CALIB_CONFIG_API __declspec(dllexport)
  6. #else
  7. #define DLL_CALIB_CONFIG_API
  8. #endif
  9. #define CALIBCONFIG_DATABASE_NAME ROOT_PATH##"\\db\\MachineCalibration.db"
  10. #define CALIB_CTD_TABLE_NAME "Calib_CameraTipDis"
  11. #define CALIB_XY_TABLE_NAME "Calib_XY"
  12. #define CALIB_R_TABLE_NAME "Calib_R"
  13. #define CALIB_STEP_R_RESULT_TABLE_NAME "Calib_R_Result"
  14. #define FORCE_CONTROL_TABLE_NAME "Force_Control"
  15. #define HORIZONTAL_MEASURE_TABLE_NAME "Horizontal_Measure"
  16. #define VERTICAL_MEASURE_TABLE_NAME "Vertical_Measure"
  17. #define CALIB_TIP_RESULT "Tip_R_CTD_CalibResult"
  18. //#define BOND_LOW_CAMERA_CALIB_TABLE_NAME "BondLowCamera"
  19. //#define BOND_HIGH_CAMERA_CALIB_TABLE_NAME "BondHighCamera"
  20. //#define BOND_WAFFLE_CAMERA_CALIB_TABLE_NAME "WaffleCamera"
  21. //#define BOND_WAFER_CAMERA_CALIB_TABLE_NAME "WaferCamera"
  22. //#define BOND_LOOKUP_CAMERA_CALIB_TABLE_NAME "BHLookUpCamera"
  23. namespace ns_db
  24. {
  25. //struct NozzleCalibParam
  26. //{
  27. // int nNozzleId = 0;
  28. // XY_DOUBLE_STRUCT stRotCenter = { 0,0 }; //吸嘴对应的旋转中心X
  29. // XY_DOUBLE_STRUCT stBHHighCameraToNozzle = { 0,0 };
  30. // XY_DOUBLE_STRUCT stBHLowCameraToNozzle = { 0,0 };
  31. // XY_DOUBLE_STRUCT stWHCameraToNozzle = { 0,0 };
  32. // bool bIsRotationCalib = false; //已校准标记
  33. // bool bIsHighCTDCalib = false; //已校准标记
  34. // bool bIsLowCTDCalib = false; //已校准标记
  35. // int nRTempID = 0; //旋转中心标定吸嘴模板ID
  36. // //int nCTDBHLookUpTempID = 0; //CTD标定上视模板ID
  37. // //int nCTDHighBondTempID = 0; //CTD标定固晶相机模板ID
  38. // //int nCTDLowBondTempID = 0; //CTD标定固晶相机模板ID
  39. // int nCTDWHNozzleTempID = 0; //华夫盒取晶头上视相机
  40. //};
  41. class DLL_CALIB_CONFIG_API CCalibrationConfig : public CDataBaseOperate
  42. {
  43. public:
  44. CCalibrationConfig();
  45. LONG GetConfigParam(string strTableName, vector<MODULE_CONFIG_STRUCT>& vecConfig);
  46. LONG GetConfigParam(string strTableName, vector<CONFIG_BASE_STRUCT>& vecConfig);
  47. LONG SetConfigParam(string strTableName, vector<MODULE_CONFIG_STRUCT> vecconfig);
  48. LONG SetConfigParam(string strTableName, vector<CONFIG_BASE_STRUCT> vecconfig);
  49. private:
  50. std::unique_ptr<CConfigBase> m_ConfigBaseDb;
  51. LONG SaveDB() override;
  52. LONG LoadDB() override;
  53. static std::mutex m_mutex;
  54. #pragma region XYCALIB
  55. private:
  56. std::vector<CONFIG_BASE_STRUCT> m_vecXYCalibParam;
  57. public:
  58. LONG GetXYCalibParam(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  59. vector<CONFIG_BASE_STRUCT> GetXYCalibParam() { return m_vecXYCalibParam; }
  60. LONG SetXYCalibParam(vector<MODULE_CONFIG_STRUCT> vecconfig);
  61. LONG SetXYCalibParam(vector<CONFIG_BASE_STRUCT> vecconfig);
  62. #pragma endregion
  63. #pragma region LookUpCalib
  64. private:
  65. std::vector<CONFIG_BASE_STRUCT> m_vecCTDCalibParam;
  66. public:
  67. LONG GetCTDCalibParam(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  68. vector<CONFIG_BASE_STRUCT> GetCTDCalibParam() { return m_vecCTDCalibParam; }
  69. LONG SetCTDCalibParam(vector<MODULE_CONFIG_STRUCT> vecconfig);
  70. LONG SetCTDCalibParam(vector<CONFIG_BASE_STRUCT> vecconfig);
  71. #pragma endregion
  72. #pragma region RCalib
  73. private:
  74. std::vector<CONFIG_BASE_STRUCT> m_vecRCalibParam;
  75. public:
  76. LONG GetRCalibParam(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  77. vector<CONFIG_BASE_STRUCT> GetRCalibParam() { return m_vecRCalibParam; }
  78. LONG SetRCalibParam(vector<MODULE_CONFIG_STRUCT> vecconfig);
  79. LONG SetRCalibParam(vector<CONFIG_BASE_STRUCT> vecconfig);
  80. #pragma endregion
  81. #pragma region ForceCalib
  82. private:
  83. std::vector<CONFIG_BASE_STRUCT> m_vecForceCalib;
  84. public:
  85. LONG GetForceCalibParam(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  86. vector<CONFIG_BASE_STRUCT> GetForceCalibParam() { return m_vecForceCalib; }
  87. LONG SetForceCalibParam(vector<MODULE_CONFIG_STRUCT> vecconfig);
  88. LONG SetForceCalibParam(vector<CONFIG_BASE_STRUCT> vecconfig);
  89. #pragma endregion
  90. #pragma region 吸嘴相关标定结果
  91. //vector<NozzleCalibParam> m_vetNozzleCalibParam;
  92. //LONG LoadNozzleCalibParam(vector<NozzleCalibParam>& nozzleParam);
  93. //LONG SaveCalibForceParam();
  94. ////LONG SaveCalibForceParam(int headID, string name, FORCE_CONTROL VecCalib_R);
  95. //LONG GetNozzleCalibParam(int index, NozzleCalibParam& param);
  96. //LONG SetNozzleCalibParam(int index, NozzleCalibParam param);
  97. #pragma endregion
  98. //#pragma region BondHighCamera
  99. // private:
  100. // std::vector<CONFIG_BASE_STRUCT> m_vecConfig_BondHighCamera;
  101. // public:
  102. // LONG GetConfigParam_BondHighCamera(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  103. // vector<CONFIG_BASE_STRUCT> GetConfigParam_BondHighCamera() { return m_vecConfig_BondHighCamera; };
  104. // LONG SetConfigParam_BondHighCamera(vector<CONFIG_BASE_STRUCT> vecconfig);
  105. // LONG SetConfigParam_BondHighCamera(vector<MODULE_CONFIG_STRUCT> vecconfig);
  106. //#pragma endregion
  107. //
  108. //#pragma region BondLowCamera
  109. // private:
  110. // std::vector<CONFIG_BASE_STRUCT> m_vecConfig_BondLowCamera;
  111. // public:
  112. // LONG GetConfigParam_BondLowCamera(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  113. // vector<CONFIG_BASE_STRUCT> GetConfigParam_BondLowCamera() { return m_vecConfig_BondLowCamera; };
  114. // LONG SetConfigParam_BondLowCamera(vector<CONFIG_BASE_STRUCT> vecconfig);
  115. // LONG SetConfigParam_BondLowCamera(vector<MODULE_CONFIG_STRUCT> vecconfig);
  116. //#pragma endregion
  117. //
  118. //#pragma region WaferCamera
  119. // private:
  120. // std::vector<CONFIG_BASE_STRUCT> m_vecConfig_WaferCamera;
  121. // public:
  122. // LONG GetConfigParam_WaferCamera(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  123. // vector<CONFIG_BASE_STRUCT> GetConfigParam_WaferCamera() { return m_vecConfig_WaferCamera; };
  124. // LONG SetConfigParam_WaferCamera(vector<CONFIG_BASE_STRUCT> vecconfig);
  125. // LONG SetConfigParam_WaferCamera(vector<MODULE_CONFIG_STRUCT> vecconfig);
  126. //#pragma endregion
  127. //
  128. //#pragma region WaffleCamera
  129. // private:
  130. // std::vector<CONFIG_BASE_STRUCT> m_vecConfig_WaffleCamera;
  131. // public:
  132. // LONG GetConfigParam_WaffleCamera(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  133. // vector<CONFIG_BASE_STRUCT> GetConfigParam_WaffleCamera() { return m_vecConfig_WaffleCamera; };
  134. // LONG SetConfigParam_WaffleCamera(vector<CONFIG_BASE_STRUCT> vecconfig);
  135. // LONG SetConfigParam_WaffleCamera(vector<MODULE_CONFIG_STRUCT> vecconfig);
  136. //#pragma endregion
  137. //
  138. //#pragma region BHLookUpCamera
  139. // private:
  140. // std::vector<CONFIG_BASE_STRUCT> m_vecConfig_BHLookUpCamera;
  141. // public:
  142. // LONG GetConfigParam_BHLookUpCamera(vector<MODULE_CONFIG_STRUCT>* vecconfig);
  143. // vector<CONFIG_BASE_STRUCT> GetConfigParam_BHLookUpCamera() { return m_vecConfig_BHLookUpCamera; };
  144. // LONG SetConfigParam_BHLookUpCamera(vector<CONFIG_BASE_STRUCT> vecconfig);
  145. // LONG SetConfigParam_BHLookUpCamera(vector<MODULE_CONFIG_STRUCT> vecconfig);
  146. //#pragma endregion
  147. };
  148. }