12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #pragma once
- #include "CModule.h"
- #include "CForceControl.h"
- #include "CLookUpCalib.h"
- #include "CRCalib.h"
- #include "CXYCalib.h"
- #include "CNozzleTable.h"
- #include "CTemperature.h"
- #include "CBondHead.h"
- /*
- 超声头:和固晶头相比,固晶时,需加热,控制超声IO
- */
- class __declspec(dllexport) CUltraHead :
- public CBondHead
- {
- public:
- CUltraHead(MODULE_LIST eModuleType);
- ~CUltraHead();
- void SetUltraDo(CIO* output) { m_pUltraIO = output; }
- LONG AllocateIo(vector<CIO*> vecIo);
- virtual void SetDataChangFunction() override;
- virtual LONG SetParam() override;
- virtual LONG GetParam() override;
- // virtual LONG ToHome() override;
- // virtual LONG ToSafePosition() override;
- virtual LONG InitResource() override;
- virtual void DataChangNotice(string strDbName, string strTableName) override;
- virtual void SetPickHTestIndex(int index);
- virtual void SetBondHTestIndex(int index);
- virtual LONG PickHighTest();//调用之前先SetIndex
- virtual LONG AllBondHighTest();
- virtual LONG BongHighTest();
- //virtual LONG VacuumOn(); //真空开
- //virtual LONG VacuumOff(); //真空关
- //virtual LONG StrongOn(); //强吹开
- //virtual LONG StrongOff(); //强吹关
- virtual LONG UltraOn(int iUltraValue); //超声开
- virtual LONG UltraOff(); //超声关
-
- //上视拍照
- LONG XYZToLookUpGrabPos();
- LONG LookUpGrab(int index,X_Y_ANGLE_STRUCT& result);//移动到上视拍照位,拍照结果放到结构体中
- //吸嘴固晶
- LONG PlaceDie(int index, X_Y_ANGLE_STRUCT lookUpOffsetPixel);
- LONG MoveToBondPos(int index);
- LONG BondGrab(int index, X_Y_ANGLE_STRUCT& result); //返回的拍照结果为物理单位
- LONG ToBondPos_AddOffset(int index, X_Y_ANGLE_STRUCT bondOffset, X_Y_ANGLE_STRUCT lookUpOffset, bool waitDone = true);//传入物理位置
- LONG BondDieDown(int index);//传入物理位置
- LONG BondDieUp(bool waitDone = true);
- LONG CreateTemplate_LowCamera(SEARCH_OUT eResultSelect, UINT& iTemplateId);
- LONG SearchTemplate(UINT iTemplateId, X_Y_ANGLE_STRUCT& stOffset);
- //LONG MoveTo(double x,double y, double z);
- private:
- CIO* m_pUltraIO = nullptr;
-
- //超声值
- int m_nUltraValue = 0x0; //超声值
- long m_lUltraDelay = 1000; //超声延时 ms
- //温控器
- LONG WaitTemprature(double dMinTempelature, double dMaxTempelature, long lTimeOut);
- bool m_BnormallyOpen = false; //是否常开
- double m_nBondTempelature = 0; //固晶温度
- double m_nPreTempelature = 0; //预备温度
- std::string m_sTemperatureCtrlPort = "192.168.1.10";
- int m_nAddress = 0x5;
- Temperature_Ctltype m_nTemCtrlType = GLTC;
- CTemperature* m_pTempCtrl = nullptr;
- };
|