public MVacuum(CObjectInfo objInfo, IIO pIO, CVacuumData data) : base(objInfo) { m_IO = pIO; SetData(data); }
int CreateVacuum(CObjectInfo objInfo, CVacuumData data, int objIndex, out IVacuum pVacuum) { int iResult = SUCCESS; data.Time = m_DataManager.SystemData_Vacuum.VacuumTimer[objIndex]; pVacuum = new MVacuum(objInfo, m_IO, data); return(iResult); }
public int Initialize(CMainFrame form1 = null) { TestFunction_BeforeInit(); //////////////////////////////////////////////////////////////////////// // 0. Common Class //////////////////////////////////////////////////////////////////////// // init data file name CDBInfo dbInfo; InitDataFileNames(out dbInfo); CObjectInfo.DBInfo = dbInfo; MLog.DBInfo = dbInfo; CObjectInfo objInfo; m_SystemInfo = new MSystemInfo(); // self set MLWDicer m_SystemInfo.GetObjectInfo(0, out objInfo); this.ObjInfo = objInfo; // DataManager m_SystemInfo.GetObjectInfo(1, out objInfo); m_DataManager = new MDataManager(objInfo, dbInfo); //////////////////////////////////////////////////////////////////////// // 1. Hardware Layer //////////////////////////////////////////////////////////////////////// // Motion m_SystemInfo.GetObjectInfo(2, out objInfo); CreateYMCBoard(objInfo); // MultiAxes CreateMultiAxes_YMC(); m_AxUpperHandler.UpdateAxisStatus(); // IO m_SystemInfo.GetObjectInfo(6, out objInfo); m_IO = new MIO_YMC(objInfo); m_IO.OutputOn(oUHandler_Self_Vac_On); // Cylinder // UHandlerUDCyl CCylinderData cylData = new CCylinderData(); cylData.CylinderType = ECylinderType.UP_DOWN; cylData.SolenoidType = ESolenoidType.DOUBLE_SOLENOID; cylData.UpSensor[0] = iUHandler_Up1; cylData.DownSensor[0] = iUHandler_Down1; cylData.Solenoid[0] = oUHandler_Up1; cylData.Solenoid[1] = oUHandler_Down1; m_SystemInfo.GetObjectInfo(100, out objInfo); CreateCylinder(objInfo, cylData, (int)EObjectCylinder.UHANDLER_UD, out m_UHandlerUDCyl); // UHandlerUDCyl2 cylData = new CCylinderData(); cylData.CylinderType = ECylinderType.UP_DOWN; cylData.SolenoidType = ESolenoidType.DOUBLE_SOLENOID; cylData.UpSensor[0] = iUHandler_Up1; cylData.DownSensor[0] = iUHandler_Down2; cylData.Solenoid[0] = oUHandler_Up1; cylData.Solenoid[1] = oUHandler_Down2; m_SystemInfo.GetObjectInfo(101, out objInfo); CreateCylinder(objInfo, cylData, (int)EObjectCylinder.UHANDLER_UD2, out m_UHandlerUDCyl2); // Vacuum // Stage1 Vacuum CVacuumData vacData = new CVacuumData(); vacData.VacuumType = EVacuumType.SINGLE_VACUUM_WBLOW; vacData.Sensor[0] = iStage1_Vac_On; vacData.Solenoid[0] = oStage1_Vac_On; vacData.Solenoid[1] = oStage1_Vac_Off; m_SystemInfo.GetObjectInfo(150, out objInfo); CreateVacuum(objInfo, vacData, (int)EObjectVacuum.STAGE1, out m_Stage1Vac); // UHandler Self Vacuum vacData = new CVacuumData(); vacData.VacuumType = EVacuumType.SINGLE_VACUUM_WBLOW; vacData.Sensor[0] = iUHandler_Self_Vac_On; vacData.Solenoid[0] = oUHandler_Self_Vac_On; vacData.Solenoid[1] = oUHandler_Self_Vac_Off; m_SystemInfo.GetObjectInfo(151, out objInfo); CreateVacuum(objInfo, vacData, (int)EObjectVacuum.UHANDLER_SELF, out m_UHandlerSelfVac); // Polygon Scanner Serial Com Port m_SystemInfo.GetObjectInfo(30, out objInfo); CreatePolygonSerialPort(objInfo, out m_PolygonComPort); CPolygonIni PolygonIni = new CPolygonIni(); m_SystemInfo.GetObjectInfo(200, out objInfo); CreatePolygonScanner(objInfo, PolygonIni, (int)EObjectScanner.SCANNER1, m_PolygonComPort); // Vision System m_SystemInfo.GetObjectInfo(40, out objInfo); CreateVisionSystem(objInfo); // Vision Camera m_SystemInfo.GetObjectInfo(42, out objInfo); CreateVisionCamera(objInfo); // Vision Display m_SystemInfo.GetObjectInfo(46, out objInfo); MVisionView(objInfo); //////////////////////////////////////////////////////////////////////// // 2. Mechanical Layer //////////////////////////////////////////////////////////////////////// // Cassette Loader m_SystemInfo.GetObjectInfo(310, out objInfo); CreateMeElevator(objInfo); // Handler m_SystemInfo.GetObjectInfo(318, out objInfo); CreateMeUpperHandler(objInfo); m_SystemInfo.GetObjectInfo(319, out objInfo); CreateMeLowerHandler(objInfo); // Stage m_SystemInfo.GetObjectInfo(325, out objInfo); CreateMeStage(objInfo); // Vision m_SystemInfo.GetObjectInfo(340, out objInfo); CreateVision(objInfo); //////////////////////////////////////////////////////////////////////// // 3. Control Layer //////////////////////////////////////////////////////////////////////// m_SystemInfo.GetObjectInfo(351, out objInfo); CreateCtrlLoader(objInfo); m_SystemInfo.GetObjectInfo(352, out objInfo); CreateCtrlPushPull(objInfo); m_SystemInfo.GetObjectInfo(353, out objInfo); CreateCtrlStage1(objInfo); m_SystemInfo.GetObjectInfo(354, out objInfo); CreateCtrlHandler(objInfo); //////////////////////////////////////////////////////////////////////// // 4. Process Layer //////////////////////////////////////////////////////////////////////// m_SystemInfo.GetObjectInfo(401, out objInfo); CreateTrsLoader(objInfo); m_SystemInfo.GetObjectInfo(402, out objInfo); CreateTrsPushPull(objInfo); m_SystemInfo.GetObjectInfo(403, out objInfo); CreateTrsStage1(objInfo); m_SystemInfo.GetObjectInfo(400, out objInfo); CreateTrsAutoManager(objInfo); // temporary set windows m_trsLoader.SetWindows_Form1(form1); m_trsPushPull.SetWindows_Form1(form1); m_trsStage1.SetWindows_Form1(form1); m_trsAutoManager.SetWindows_Form1(form1); //////////////////////////////////////////////////////////////////////// // 5. Set Data //////////////////////////////////////////////////////////////////////// SetSystemDataToComponent(); SetModelDataToComponent(); SetPositionDataToComponent(); //////////////////////////////////////////////////////////////////////// // 6. Start Thread & System //////////////////////////////////////////////////////////////////////// m_YMC.ThreadStart(); SetThreadChannel(); StartThreads(); TestFunction_AfterInit(); return(SUCCESS); }
public int GetData(out CVacuumData target) { target = ObjectExtensions.Copy(m_Data); return(SUCCESS); }
public int SetData(CVacuumData source) { m_Data = ObjectExtensions.Copy(source); return(SUCCESS); }