增加CNC运行测试

This commit is contained in:
TAO Cheng
2013-07-11 22:08:30 +08:00
parent d5bfc97a9a
commit 2e237bf90f
43 changed files with 4393 additions and 48 deletions
@@ -13,6 +13,7 @@ CKeyence_Laser::CKeyence_Laser()
m_StoredDataNumber=0;
m_NeedStorageDataNumber=0;
m_StorageCycle=LKIF_STORAGECYCLE_100;
m_ProgramNO=1;
}
CKeyence_Laser::~CKeyence_Laser()
@@ -38,6 +39,14 @@ void CKeyence_Laser::KeyenceLaserInit(void)
m_pDataStorageGetStatus=(pLKIF_DataStorageGetStatus)GetProcAddress(m_hLkif,"LKIF_DataStorageGetStatus");
m_pSetDataStorage=(pLKIF_SetDataStorage)GetProcAddress(m_hLkif,"LKIF_SetDataStorage");
m_pSetProgramNo=(pLKIF_SETPROGRAMNO)GetProcAddress(m_hLkif,"LKIF_SetProgramNo");
m_pSetScaling=(pLKIF_SetScaling)GetProcAddress(m_hLkif,"LKIF_SetScaling");
m_pGetScaling=(pLKIF_GetScaling)GetProcAddress(m_hLkif,"LKIF_GetScaling");
m_pSetDisplayUnit=(pLKIF_SetDisplayUnit)GetProcAddress(m_hLkif,"LKIF_SetDisplayUnit");
m_pGetDisplayUnit=(pLKIF_GetDisplayUnit)GetProcAddress(m_hLkif,"LKIF_GetDisplayUnit");
m_pSetPanel=(pLKIF_SetPanel)GetProcAddress(m_hLkif,"LKIF_SetPanel");
m_pSetMeasureMode=(pLKIF_SetMeasureMode)GetProcAddress(m_hLkif,"LKIF_SetMeasureMode");
m_pSetCalcMethod=(pLKIF_SetCalcMethod)GetProcAddress(m_hLkif,"LKIF_SetCalcMethod");
m_pSetMutualInterferencePrevention=(pLKIF_SetMutualInterferencePrevention)GetProcAddress(m_hLkif,"LKIF_SetMutualInterferencePrevention");
}
else
{
@@ -250,5 +259,74 @@ BOOL CKeyence_Laser::SetProgramNO(int ProNO)
{
BOOL bStatus(FALSE);
bStatus=m_pSetProgramNo(ProNO);
m_ProgramNO=ProNO;
return bStatus;
};
//==============================================
BOOL CKeyence_Laser::SetOutValueScaling(double _CalibVal)
{
BOOL bStatus(FALSE);
double DisplayUnit(0.0001);
bStatus=m_pSetDisplayUnit(0,LKIF_DISPLAYUNIT_00_0001MM);
bStatus=m_pSetDisplayUnit(1,LKIF_DISPLAYUNIT_00_0001MM);
int InputValue1(0),OutputValue1(0),InputValue2(10000),OutputValue2(10000);
bStatus=m_pSetScaling(0,0,InputValue1,OutputValue1,InputValue2,OutputValue2);
bStatus=m_pSetScaling(1,1,InputValue1,OutputValue1,InputValue2,OutputValue2);
Sleep(20);
float OutValue1(0.0),OutValue2(0.0);
Get_KeyenceLaserData(&OutValue1,&OutValue2);
InputValue2=static_cast<int>((static_cast<double>(OutValue1))/DisplayUnit);
OutputValue2=static_cast<int>((_CalibVal)/DisplayUnit);
bStatus=m_pSetScaling(0,0,InputValue1,OutputValue1,InputValue2,OutputValue2);
InputValue2=static_cast<int>((static_cast<double>(OutValue2))/DisplayUnit);
bStatus=m_pSetScaling(1,1,InputValue1,OutputValue1,InputValue2,OutputValue2);
return bStatus;
};
//==============================================
BOOL CKeyence_Laser::GetOutValueScaling(double* _CalibratedScale)
{
BOOL bStatus(FALSE);
double DisplayUnit(0.0001);
bStatus=m_pSetDisplayUnit(0,LKIF_DISPLAYUNIT_00_0001MM);
bStatus=m_pSetDisplayUnit(1,LKIF_DISPLAYUNIT_00_0001MM);
int InputValue1(0),OutputValue1(0),InputValue2(0),OutputValue2(0);
bStatus=m_pGetScaling(0,0,&InputValue1,&OutputValue1,&InputValue2,&OutputValue2);
_CalibratedScale[0]=static_cast<double>(InputValue1)*DisplayUnit;
_CalibratedScale[1]=static_cast<double>(OutputValue1)*DisplayUnit;
_CalibratedScale[2]=static_cast<double>(InputValue2)*DisplayUnit;
_CalibratedScale[3]=static_cast<double>(OutputValue2)*DisplayUnit;
Sleep(20);
bStatus=m_pGetScaling(1,1,&InputValue1,&OutputValue1,&InputValue2,&OutputValue2);
_CalibratedScale[4]=static_cast<double>(InputValue1)*DisplayUnit;
_CalibratedScale[5]=static_cast<double>(OutputValue1)*DisplayUnit;
_CalibratedScale[6]=static_cast<double>(InputValue2)*DisplayUnit;
_CalibratedScale[7]=static_cast<double>(OutputValue2)*DisplayUnit;
return bStatus;
};
//==============================================
BOOL CKeyence_Laser::SetProgram(char _MeasureMode)
{
BOOL bStatus(FALSE);
switch(_MeasureMode)
{
case 1:
{
bStatus=m_pSetPanel(2);
bStatus=m_pSetMeasureMode(0,LKIF_MEASUREMODE_TRAN_2);
bStatus=m_pSetMeasureMode(1,LKIF_MEASUREMODE_TRAN_2);
bStatus=m_pSetCalcMethod(0,LKIF_CALCMETHOD_HEAD_HEADA_TRANSPARENT,LKIF_CALCTARGET_PEAK_1_2);
bStatus=m_pSetCalcMethod(1,LKIF_CALCMETHOD_HEAD_HEADB_TRANSPARENT,LKIF_CALCTARGET_PEAK_1_2);
bStatus=m_pSetMutualInterferencePrevention(TRUE);
break;
}
default:
break;
}
return bStatus;
}