Files
2021-12-03 11:25:35 +08:00

46 lines
2.6 KiB
C

#pragma once
#ifdef MACHINEINTERFACEDLL_EXPORTS
#define EXP_IMP __declspec(dllexport)
#else
#define EXP_IMP __declspec(dllimport)
#endif
#include "..\..\..\SevenOcean\SO7_Proto_Def.h"
extern "C"
{
///////////////////////////////////////////////////////////////////////////////////
EXP_IMP SSI_STATUS_MOTION Machine_Startup(bool bOfflineOnly,EHOME_MACHINE_MODE cHomeMachineMode);
EXP_IMP SSI_STATUS_MOTION Machine_Shutdown();
//=================================================================================
//===============================Motion============================================
EXP_IMP SSI_STATUS_MOTION Motion_DCCHomeXYZ(EHOME_MACHINE_MODE cHomeMachineMode);
EXP_IMP SSI_STATUS_MOTION Motion_IsHomedXYZ(bool &bHomed);
//Units:mm
EXP_IMP SSI_STATUS_MOTION Motion_GetPositionXYZ(double &PositionX, double &PositionY, double &PositionZ);
EXP_IMP SSI_STATUS_MOTION Motion_SetPositionXYZ(double PositionX, double PositionY, double PositionZ,bool bWait);
EXP_IMP SSI_STATUS_MOTION Motion_IsFinishedXYZ(bool &bFinished);
//SpeedGear:1,2,3,4(Faster)
EXP_IMP SSI_STATUS_MOTION Motion_SetSpeedXYZ(EMACHINE_AXIS cAxis,char cSpeedGear,char Acce,char cHoldSpeed,char cStartSpeed,char cRefreshCycle,double dBufferDis);
//SpeedGear:1,2,3,4(Faster)
EXP_IMP SSI_STATUS_MOTION Motion_Jog(EMACHINE_AXIS cAxis,char cSpeedGear);
EXP_IMP SSI_STATUS_MOTION Motion_Stop();
//===================================Rotary Table==================================
EXP_IMP SSI_STATUS_MOTION Motion_DCCHomeR();
EXP_IMP SSI_STATUS_MOTION Motion_IsHomedR(bool &bHomed);
//Units:Rad
EXP_IMP SSI_STATUS_MOTION Motion_GetPositionR(double& dPos);
EXP_IMP SSI_STATUS_MOTION Motion_SetPositionR(double dAbsolutePos,bool bWait);
EXP_IMP SSI_STATUS_MOTION Motion_IsFinishedR(bool &bFinished);
//==============================Illumination=======================================
//Range value:0.0-100.0
EXP_IMP SSI_STATUS_MOTION Illumination_SetLampState(double dTopLightPercent,double dBottomLightPercent,double dCoaxialLightPercent,double dReservedLightPercent,double dRingLightPercent,char cOuterRingLightSwitch,char cInnerRingLightSwitch);
//==============================IO================================================
EXP_IMP SSI_STATUS_MOTION Machine_GetDIO(EIO_PORT Channel,BYTE& bDISts);
EXP_IMP SSI_STATUS_MOTION Machine_SetDO(EIO_PORT Channel,BYTE bDOSts);
//==============================CMD================================================
EXP_IMP SSI_STATUS_MOTION SEND_SYS_COMMAND(char Cmd,char SubCmd,char Type,char Data);
}