剥离第一阶段需要做的函数,梳理关系,新增测试dll工程
This commit is contained in:
+193
-189
@@ -3,9 +3,9 @@
|
||||
#include "HSI_Motion.h"
|
||||
#include "HSI_Sevenocean_EF3.h"
|
||||
#include "SevenOcean\CMMIO_SERIAL.h"
|
||||
#include "HSI_Illumination.h"
|
||||
#include "HSI_Function.h"
|
||||
#include "HSI_JoyStick.h"
|
||||
//#include "HSI_Illumination.h"
|
||||
//#include "HSI_Function.h"
|
||||
//#include "HSI_JoyStick.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
@@ -42,7 +42,7 @@ HSI_API HSI_STATUS WINAPI HSI_STARTUP(HWND _hWnd, bool _bOfflineOnly)
|
||||
g_bOfflineOnly = _bOfflineOnly;
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
//==========================获取机器控制器信息,3代表EF3=================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_GET_MACHINE_INFO(int &_NumMachineTypes)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
@@ -62,7 +62,7 @@ HSI_API HSI_STATUS WINAPI HSI_SET_EVENT_CALLBACK(pEventCallback _pCallback)
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Sevenocean_EF3)
|
||||
{
|
||||
rStatus = g_pHSI_Sevenocean_EF3->SetEventCallback(_pCallback);
|
||||
rStatus = g_pHSI_Sevenocean_EF3->SetEventCallback(_pCallback); //设置事件
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -114,33 +114,50 @@ HSI_API HSI_STATUS WINAPI HSI_SHUTDOWM()
|
||||
#pragma endregion
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// MOTION API
|
||||
// MOTION API 运动相关API
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
#pragma region Motion API
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED(UINT &Types)
|
||||
#pragma region 第一阶段实现的API功能
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_STARTUP(bool bHome)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_bOfflineOnly == 0)
|
||||
{
|
||||
if (!g_pHSI_Motion)
|
||||
{
|
||||
g_pHSI_Motion = new HSI_Motion();
|
||||
}
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->IsSupported(Types);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
}
|
||||
return rStatus;
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_bOfflineOnly == 0)
|
||||
{
|
||||
if (!g_pHSI_Motion)
|
||||
{
|
||||
g_pHSI_Motion = new HSI_Motion();
|
||||
}
|
||||
if (g_pHSI_Motion && g_pHSI_Sevenocean_EF3)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->Startup(g_hWnd, g_bOfflineOnly);
|
||||
if (rStatus == HSI_STATUS_FAILED)
|
||||
{
|
||||
return HSI_STATUS_FAILED;
|
||||
}
|
||||
rStatus = g_pHSI_Motion->HomeMachine(bHome);
|
||||
switch (g_pHSI_Motion->m_iJoyStick)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
//if (!g_pHSI_JoyStick)
|
||||
//{
|
||||
// g_pHSI_JoyStick = new HSI_Joystick(g_pHSI_Motion);
|
||||
// g_pHSI_JoyStick->ResumeJoyStickThread();
|
||||
//}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_FIREWAREVERION(byte *verion)
|
||||
@@ -157,58 +174,130 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_FIREWAREVERION(byte *verion)
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_STARTUP(bool bHome)
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_SHUTDOWN()
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_bOfflineOnly == 0)
|
||||
{
|
||||
if (!g_pHSI_Motion)
|
||||
{
|
||||
g_pHSI_Motion = new HSI_Motion();
|
||||
}
|
||||
if (g_pHSI_Motion && g_pHSI_Sevenocean_EF3)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->Startup(g_hWnd, g_bOfflineOnly);
|
||||
if (rStatus == HSI_STATUS_FAILED)
|
||||
{
|
||||
return HSI_STATUS_FAILED;
|
||||
}
|
||||
rStatus = g_pHSI_Motion->HomeMachine(bHome);
|
||||
switch (g_pHSI_Motion->m_iJoyStick)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
//if (!g_pHSI_JoyStick)
|
||||
//{
|
||||
// g_pHSI_JoyStick = new HSI_Joystick(g_pHSI_Motion);
|
||||
// g_pHSI_JoyStick->ResumeJoyStickThread();
|
||||
//}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
}
|
||||
return rStatus;
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->Shutdown();
|
||||
delete g_pHSI_Motion;
|
||||
g_pHSI_Motion = nullptr;
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_JOG(UINT AxisTypes, double Speed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->Jog(AxisTypes, Speed);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_STOP_JOG()
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->StopJog();
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_XYZ(UINT AxisTypes, double &PositionX, double &PositionY, double &PositionZ, double &Time)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->GetPositionXyz(AxisTypes, PositionX, PositionY, PositionZ, Time);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_XYZ(UINT AxisTypes, double PositionX, double PositionY, double PositionZ, HSI_MOTION_MOVE_TYPE eType, double dSpeedGear)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->SetPositionXyz(AxisTypes, PositionX, PositionY, PositionZ, eType, dSpeedGear);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_ABORT_MOTION()
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->AbortMotion();
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_HOMED(bool &bHomed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->IsHomed(bHomed);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->IsHomed(bHomed);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
#pragma endregion
|
||||
|
||||
#ifdef USE_Motion_API
|
||||
|
||||
#pragma region 后续考虑
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED(UINT &Types)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_bOfflineOnly == 0)
|
||||
{
|
||||
if (!g_pHSI_Motion)
|
||||
{
|
||||
g_pHSI_Motion = new HSI_Motion();
|
||||
}
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->IsSupported(Types);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_EF3MOTION_GET_SPEED_XYZ(int axis,double &Speed)
|
||||
@@ -364,34 +453,6 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_REFRESH_DEADBAND(double &Deadband)
|
||||
return HSI_STATUS_NOT_SUPPORTED;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_JOG(UINT AxisTypes, double Speed)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->Jog(AxisTypes, Speed);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_STOP_JOG()
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->StopJog();
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ENCPRF_MULTI(UINT AxisTypes, double *EncPos, double *PrfPos, int Count)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
@@ -406,20 +467,6 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ENCPRF_MULTI(UINT AxisTypes, double *En
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_POSITION_XYZ(UINT AxisTypes, double &PositionX, double &PositionY, double &PositionZ, double &Time)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->GetPositionXyz(AxisTypes, PositionX, PositionY, PositionZ, Time);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_ENCODER_XYZ(long *lEncVal)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
@@ -461,20 +508,7 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_JOG_PROBE(UINT AxisTypes, double speed)
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_XYZ(UINT AxisTypes, double PositionX, double PositionY, double PositionZ, HSI_MOTION_MOVE_TYPE eType, double dSpeedGear)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->SetPositionXyz(AxisTypes, PositionX, PositionY, PositionZ, eType, dSpeedGear);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_XYZA(UINT AxisTypes, double PositionX, double PositionY, double PositionZ, double PositionA, HSI_MOTION_MOVE_TYPE eType, double dSpeedGear)
|
||||
{
|
||||
@@ -535,20 +569,6 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_POSITION_R(UINT AxisTypes, double Posi
|
||||
return HSI_STATUS_NOT_SUPPORTED;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_ABORT_MOTION()
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->AbortMotion();
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_DIO(UINT IOChannel, UINT& _Status)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
@@ -950,22 +970,7 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_TRIGGLECOUNT(int* nCount, int& nArea)
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_SHUTDOWN()
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->Shutdown();
|
||||
delete g_pHSI_Motion;
|
||||
g_pHSI_Motion = nullptr;
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_FINDORIGINTEST(bool type)
|
||||
{
|
||||
@@ -981,15 +986,31 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_FINDORIGINTEST(bool type)
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_COLLECTPOS(bool isEnable, MOTOR_AXISCHOOES_CMD axis, short cycle)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->CollectPos(isEnable, axis, cycle);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
#pragma endregion
|
||||
#endif // DEBUG
|
||||
|
||||
#pragma endregion
|
||||
|
||||
//²¹¹âµÆ
|
||||
#ifdef USE_ILLUMINATION_API
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// ILLUMINATION API
|
||||
// ILLUMINATION API 补光灯
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef USE_ILLUMINATION_API
|
||||
|
||||
#pragma region // ILLUMINATION API
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_ILLUMINATION_IS_SUPPORTED(UINT &Types)
|
||||
@@ -1161,11 +1182,12 @@ HSI_API HSI_STATUS WINAPI HSI_ILLUMINATION_TESTLIGHT(bool flag)
|
||||
|
||||
#endif // USE_ILLUMINATION_API
|
||||
|
||||
//̽Õë
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Probe API 探针
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
#ifdef USE_Probe_API
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Probe API
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
#pragma region probe
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_TP_STARTUP()
|
||||
@@ -1358,25 +1380,7 @@ HSI_API HSI_STATUS WINAPI HSI_TP_SHUTDOWN()
|
||||
|
||||
#endif // USE_Probe_API
|
||||
|
||||
//²âÊÔ
|
||||
#ifdef Test
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// 测试功能
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#pragma region Test
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_COLLECTPOS(bool isEnable, MOTOR_AXISCHOOES_CMD axis, short cycle)
|
||||
{
|
||||
auto rStatus = HSI_STATUS_NORMAL;
|
||||
if (g_pHSI_Motion)
|
||||
{
|
||||
rStatus = g_pHSI_Motion->CollectPos(isEnable, axis, cycle);
|
||||
}
|
||||
else
|
||||
{
|
||||
rStatus = HSI_STATUS_FAILED;
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
//===========================================================================
|
||||
#pragma endregion
|
||||
|
||||
#endif // Test
|
||||
Reference in New Issue
Block a user