#0016: 新增变焦功能的适配
This commit is contained in:
@@ -145,9 +145,8 @@ HSI_API HSI_STATUS WINAPI HSI_SHUTDOWM()
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// MOTION API 运动相关API
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
#pragma region Motion API
|
||||
#pragma region Motion API Phase 1
|
||||
|
||||
#pragma region 第一阶段实现的API功能
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_STARTUP(bool bHome)
|
||||
{
|
||||
@@ -378,12 +377,6 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_IS_SUPPORTED(UINT& Types)
|
||||
}
|
||||
return rStatus;
|
||||
}
|
||||
#pragma endregion
|
||||
|
||||
#define USE_Motion_API
|
||||
#ifdef USE_Motion_API
|
||||
|
||||
#pragma region 后续考虑
|
||||
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_GET_FOCUSSPEED_XYZ(double& Speed)
|
||||
@@ -415,6 +408,15 @@ HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_FOCUSSPEED_XYZ(double Speed)
|
||||
return rStatus;
|
||||
}
|
||||
|
||||
|
||||
#pragma endregion
|
||||
|
||||
#define USE_Motion_API
|
||||
#ifdef USE_Motion_API
|
||||
|
||||
#pragma region 后续考虑
|
||||
|
||||
|
||||
//===========================================================================
|
||||
HSI_API HSI_STATUS WINAPI HSI_MOTION_SET_SPEED_XYZ(double Speed)
|
||||
{
|
||||
|
||||
@@ -122,6 +122,9 @@ copy "$(TargetDir)$(ProjectName).dll" "D:\HSI_Sevenocean_EF3.dll" </Command>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ClassDiagram1.cd" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
|
||||
@@ -22,4 +22,7 @@
|
||||
<ClInclude Include="SevenOcean\CMMIO_SERIAL.H" />
|
||||
<ClInclude Include="ACS\ACSC.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ClassDiagram1.cd" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
+2442
-2432
File diff suppressed because it is too large
Load Diff
@@ -70,7 +70,7 @@ enum MOTOR_CMD //第二级指令
|
||||
CT_MOTOR_UPDATE, // up date all the aixs
|
||||
};
|
||||
|
||||
enum MOTOR_START_POSOTION //
|
||||
enum MOTOR_START_POSOTION //
|
||||
{
|
||||
INTERPOLATION = 0x61,
|
||||
//插补
|
||||
@@ -154,14 +154,14 @@ public:
|
||||
HSI_STATUS Startup(HWND _hWnd, bool _bOfflineOnly) override;
|
||||
/**
|
||||
* \brief 获取EF3固件版本
|
||||
* \param version
|
||||
* \return
|
||||
* \param version
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS GetFirmwareVersion(byte* version);
|
||||
/**
|
||||
* \brief 判断机台是否回家,如果没有,则执行回家动作
|
||||
* \param bHomed
|
||||
* \return
|
||||
* \param bHomed
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS HomeMachine(bool bHomed);
|
||||
HSI_STATUS HomeMachineOld(bool bHomed);
|
||||
@@ -172,15 +172,15 @@ public:
|
||||
/**
|
||||
* \brief 判断机台是否回家,仅获取是否回家的状态
|
||||
* \param bHomed 是否回家标志位
|
||||
* \return
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS IsHomed(bool& bHomed);
|
||||
HSI_STATUS IsHomedOld(bool& bHomed);
|
||||
/**
|
||||
* \brief 获取单轴运动速度
|
||||
* \param AxisNum
|
||||
* \param Speed
|
||||
* \return
|
||||
* \param AxisNum
|
||||
* \param Speed
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS GetSpeedXyz(int AxisNum, double& Speed);
|
||||
HSI_STATUS GetSpeedXyzOld(int AxisNum, double& Speed);
|
||||
@@ -191,8 +191,13 @@ public:
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS SetSpeedXyz(double Speed);
|
||||
// 获取变焦速度
|
||||
HSI_STATUS GetFocusSpeedOld(double& Speed);
|
||||
HSI_STATUS GetFocusSpeed(double& Speed);
|
||||
// 设置变焦速度
|
||||
HSI_STATUS SetFocusSpeedOld(double Speed);
|
||||
HSI_STATUS SetFocusSpeed(double Speed);
|
||||
|
||||
HSI_STATUS GetAccelerationXyz(double& AccelX, double& AccelY, double& AccelZ);
|
||||
HSI_STATUS SetAccelerationXyz(double AccelX, double AccelY, double AccelZ);
|
||||
HSI_STATUS GetSpeedR(double& Speed);
|
||||
@@ -203,27 +208,27 @@ public:
|
||||
HSI_STATUS GetRefreshDeadBand(double& Deadband);
|
||||
/**
|
||||
* \brief Jog运动,挡位只有在JOG才有,CNC运行的速度是合成速度
|
||||
* \param AxisTypes
|
||||
* \param Speed
|
||||
* \return
|
||||
* \param AxisTypes
|
||||
* \param Speed
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS Jog(UINT AxisTypes, double Speed);
|
||||
HSI_STATUS JogOld(UINT AxisTypes, double Speed);
|
||||
HSI_STATUS JoyStick(UINT AxisTypes, long Speed);
|
||||
/**
|
||||
* \brief
|
||||
* \return
|
||||
* \brief
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS StopJog();
|
||||
HSI_STATUS StopJogOld();
|
||||
HSI_STATUS StopJogEx(UINT AxisTypes);
|
||||
/**
|
||||
* \brief
|
||||
* \param AxisTypes
|
||||
* \param EncPos
|
||||
* \param PrfPos
|
||||
* \param Count
|
||||
* \return
|
||||
* \brief
|
||||
* \param AxisTypes
|
||||
* \param EncPos
|
||||
* \param PrfPos
|
||||
* \param Count
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS GetPositionEncPrfMulti(UINT AxisTypes, double* EncPos, double* PrfPos, int Count);
|
||||
HSI_STATUS GetPositionEncPrfMultiOld(UINT AxisTypes, double* EncPos, double* PrfPos, int Count);
|
||||
@@ -233,13 +238,13 @@ public:
|
||||
* \param PositionX X坐标
|
||||
* \param PositionY Y坐标
|
||||
* \param PositionZ Z坐标
|
||||
* \param Time
|
||||
* \return
|
||||
* \param Time
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS GetPositionXyz(UINT AxisTypes, double& PositionX, double& PositionY, double& PositionZ, double& Time);
|
||||
HSI_STATUS GetPositionXyzOld(UINT AxisTypes, double& PositionX, double& PositionY, double& PositionZ, double& Time);
|
||||
HSI_STATUS GetPositionXyzaProbe(UINT AxisTypes, double& PositionX, double& PositionY, double& PositionZ,
|
||||
double& PositionA);
|
||||
double& PositionA);
|
||||
HSI_STATUS GetEncoderXyz(long* lEncoderVal);//获取编码器位置
|
||||
HSI_STATUS GetEncoderXyzOld(long* lEncoderVal);
|
||||
HSI_STATUS JogProbe(UINT AxisTypes, double Speed);
|
||||
@@ -247,12 +252,12 @@ public:
|
||||
int CaculateStepMotorACC(int pos, int maxacc, int minacc);
|
||||
/**
|
||||
* \brief 求各轴运动配置参数
|
||||
* \param AXIS
|
||||
* \param motionParam
|
||||
* \return
|
||||
* \param AXIS
|
||||
* \param motionParam
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS HSI_Motion::GetSingleAxisParam(int AXIS, double motionParam[5]); //获取单轴运动参数
|
||||
HSI_STATUS HSI_Motion::SetSingleAxisParam(int AXIS, double motionParam[5]); //设置单轴运动参数
|
||||
HSI_STATUS GetSingleAxisParam(int AXIS, double motionParam[5]); //获取单轴运动参数
|
||||
HSI_STATUS SetSingleAxisParam(int AXIS, double motionParam[5]); //设置单轴运动参数
|
||||
/**
|
||||
* \brief 运行到指定位置
|
||||
* \param AxisTypes 轴号
|
||||
@@ -260,15 +265,15 @@ public:
|
||||
* \param PositionY Y坐标
|
||||
* \param PositionZ Z坐标
|
||||
* \param eType 运动模式,
|
||||
* \param dFlyRadius
|
||||
* \return
|
||||
* \param dFlyRadius
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS SetPositionXyz(UINT AxisTypes, double PositionX, double PositionY, double PositionZ,
|
||||
HSI_MOTION_MOVE_TYPE eType, double dFlyRadius);
|
||||
HSI_MOTION_MOVE_TYPE eType, double dFlyRadius);
|
||||
HSI_STATUS SetPositionXyzOld(UINT AxisTypes, double PositionX, double PositionY, double PositionZ,
|
||||
HSI_MOTION_MOVE_TYPE eType, double dFlyRadius);
|
||||
HSI_MOTION_MOVE_TYPE eType, double dFlyRadius);
|
||||
HSI_STATUS SetPositionXyza(UINT AxisTypes, double PositionX, double PositionY, double PositionZ, double PositionA,
|
||||
HSI_MOTION_MOVE_TYPE eType, double dFlyRadius);
|
||||
HSI_MOTION_MOVE_TYPE eType, double dFlyRadius);
|
||||
HSI_STATUS SetPositionXyzCache(UINT AxisTypes, HSI_MOTION_MOVE_TYPE eType, int DataCount, Point* CacheData);
|
||||
HSI_STATUS GetPositionXyzCache(unsigned char* CacheData, int& DataCount);
|
||||
HSI_STATUS GetPositionR(UINT AxisTypes, double& PositionR, double& Time);
|
||||
@@ -277,32 +282,32 @@ public:
|
||||
HSI_STATUS Load_EF3_Motion_Inifile(CString GoogolIniFile);
|
||||
HSI_STATUS Load_EF3_Config_Inifile(CString GoogolIniFile);
|
||||
/**
|
||||
* \brief
|
||||
* \return
|
||||
* \brief
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS AbortMotion();
|
||||
HSI_STATUS AbortMotionOld();
|
||||
/**
|
||||
* \brief
|
||||
* \param IOChannel
|
||||
* \param _Status
|
||||
* \return
|
||||
* \brief
|
||||
* \param IOChannel
|
||||
* \param _Status
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS GetDIO(UINT IOChannel, UINT& _Status);
|
||||
HSI_STATUS GetDIOOld(UINT IOChannel, UINT& _Status);
|
||||
/**
|
||||
* \brief
|
||||
* \param IOChannel
|
||||
* \param _Status
|
||||
* \return
|
||||
* \brief
|
||||
* \param IOChannel
|
||||
* \param _Status
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS SetDIO(UINT IOChannel, UINT _Status);
|
||||
HSI_STATUS SetDIOOld(UINT IOChannel, UINT _Status);
|
||||
HSI_STATUS GetAxisStatus(int* _Status);
|
||||
HSI_STATUS GetAppPath(CString& Path);
|
||||
/**
|
||||
* \brief
|
||||
* \return
|
||||
* \brief
|
||||
* \return
|
||||
*/
|
||||
HSI_STATUS Shutdown() override;
|
||||
HSI_STATUS IsSupportedEx(UINT AxisTypes, UINT& Types);
|
||||
@@ -319,7 +324,7 @@ public:
|
||||
HSI_STATUS GetAccelerationEx(UINT AxisTypes, double& Accel);
|
||||
HSI_STATUS SetAccelerationEx(UINT AxisTypes, double Accel);
|
||||
HSI_STATUS SetTriggerLight(int triggleNum, int delayLighting, int delayLightBefor, int triggleMode,
|
||||
double* Intensities);
|
||||
double* Intensities);
|
||||
HSI_STATUS DCCPPStartPoint(double* startPoint);
|
||||
|
||||
HSI_STATUS DCCScanSetData(UINT AxisTypes, HSI_SCAN_MOTION_TYPE eType, UINT lTrigNumber, double* dTrigDis);// 下发触发间距,轴、等间距或者等时间、触发数量、间距
|
||||
@@ -334,16 +339,16 @@ public:
|
||||
HSI_STATUS DCCScanSetDataWithPoints(UINT AxisTypes, double speed, Point3D* points, UINT numPoints); // 直线电机平台新增,三轴轨迹规划
|
||||
HSI_STATUS DCCForLightPlate();
|
||||
HSI_STATUS IOStep(bool RunSts);
|
||||
|
||||
|
||||
HSI_STATUS IOprogram(byte* SendData, int length);
|
||||
HSI_STATUS FindOriginTest(bool state);
|
||||
|
||||
|
||||
HSI_STATUS StartPlcJob(int* CamerasDis, int* BinsDis, int SubArea, int filterTime1, int filterTime2,
|
||||
int pluseSumDis);
|
||||
int pluseSumDis);
|
||||
HSI_STATUS SendBinResult(int* BinResult);
|
||||
HSI_STATUS GetTriggleCount(int* nCount, int& nArea);
|
||||
HSI_STATUS GluePPSpnts(int* ppsDir, double* gluePPSPos, int* delayLightBefore, int* lightTime, double* lightData,
|
||||
int num);
|
||||
int num);
|
||||
HSI_STATUS GlueDispenser(int* index, int* cirdirection, double* gluePos, int num);
|
||||
HSI_STATUS GlueDispenserStart(double xOffset, double yOffset, double qOffset);
|
||||
HSI_STATUS GetPntsDistance(double& ptpDistance, int& spTimeCount);
|
||||
@@ -441,7 +446,7 @@ public:
|
||||
UINT m_ForStatus;
|
||||
int m_Set_XYZA_Reserve; //XYZA轴方向
|
||||
int m_motorType; //电机类型 1为伺服电机 0为步进电机
|
||||
int m_setPositionDelay; //设置定位超时
|
||||
int m_setPositionDelay; //设置定位超时
|
||||
int m_setPositionPrecision; //设置定位精度
|
||||
int m_setPositionNum;
|
||||
CString m_AppPath;//MST软件运行标志,trueMST软件已经启动,falseMST软件停止
|
||||
@@ -482,7 +487,7 @@ public:
|
||||
long m_ProbeCapturePos[5]; //锁存各轴的位置
|
||||
double m_ProbeReturnPos; //探针触发时,调试时返回的距离mm,点击启动按钮时不起作用,默认10.0mm
|
||||
int m_ProbeReturnSpeed; //探针触发后,轴的回退速度
|
||||
int m_isOKGlint; //是否开启ok/ng 闪烁
|
||||
int m_isOKGlint; //是否开启ok/ng 闪烁
|
||||
int m_ETIPort; //外部触发拍照输入端口号
|
||||
int m_axisStatus; //运动各轴的状态
|
||||
int m_axisAlarmStatus; //轴报警状态
|
||||
@@ -494,7 +499,7 @@ public:
|
||||
int m_IsCollectPos; //是否通过串口打印位置,与摇杆2互斥
|
||||
int m_IsCloseRocker;
|
||||
int m_IsLightDebug; //是否不回家也能调试灯光 0为不启用 1为启用 默认为0
|
||||
int m_rockerHStartSpeed[4]; //摇杆XYZ轴高初始速度
|
||||
int m_rockerHStartSpeed[4]; //摇杆XYZ轴高初始速度
|
||||
int m_rockerHDriveSpeed[4]; //摇杆XYZ轴高驱动速度
|
||||
int m_rockerLStartSpeed[4]; //摇杆XYZ轴低初始速度
|
||||
int m_rockerLDriveSpeed[4]; //摇杆XYZ轴低驱动速度
|
||||
@@ -511,7 +516,7 @@ public:
|
||||
bool jogMoving;
|
||||
bool jogDirFlag;
|
||||
bool m_bEmergencyState;
|
||||
bool bUseGlueDispenser; //是否开启点胶
|
||||
bool bUseGlueDispenser; //是否开启点胶
|
||||
int m_iGlueStartSpeed;
|
||||
int m_iGlueDriveSpeed;
|
||||
int m_iGlueAccSpeed;
|
||||
@@ -598,38 +603,38 @@ public:
|
||||
VOID EventCallback(sHSIEventProperties& sEventProp);
|
||||
/**
|
||||
* \brief 界面挡位获取速度
|
||||
* \param AxisNum
|
||||
* \param Speed
|
||||
* \param DriveSpeed
|
||||
* \param StartSpeed
|
||||
* \param AccLine
|
||||
* \param DecLine
|
||||
* \param AccCurve
|
||||
* \param DecCurve
|
||||
* \return
|
||||
* \param AxisNum
|
||||
* \param Speed
|
||||
* \param DriveSpeed
|
||||
* \param StartSpeed
|
||||
* \param AccLine
|
||||
* \param DecLine
|
||||
* \param AccCurve
|
||||
* \param DecCurve
|
||||
* \return
|
||||
*/
|
||||
int SpeedPercent(int AxisNum, double& Speed, int& DriveSpeed, int& StartSpeed, int& AccLine, int& DecLine,
|
||||
int& AccCurve, int& DecCurve);
|
||||
int& AccCurve, int& DecCurve);
|
||||
/**
|
||||
* \brief 摇杆切换的运动速度, 与上面那个互锁,动了界面的 摇杆就会失能;
|
||||
* \param AxisNum
|
||||
* \param Speed
|
||||
* \param DriveSpeed
|
||||
* \param StartSpeed
|
||||
* \param AccLine
|
||||
* \param DecLine
|
||||
* \param AccCurve
|
||||
* \param DecCurve
|
||||
* \return
|
||||
* \param AxisNum
|
||||
* \param Speed
|
||||
* \param DriveSpeed
|
||||
* \param StartSpeed
|
||||
* \param AccLine
|
||||
* \param DecLine
|
||||
* \param AccCurve
|
||||
* \param DecCurve
|
||||
* \return
|
||||
*/
|
||||
bool SpeedPercentJoyStick(int AxisNum, long& Speed, int& DriveSpeed, int& StartSpeed, int& AccLine, int& DecLine,
|
||||
int& AccCurve, int& DecCurve);
|
||||
int& AccCurve, int& DecCurve);
|
||||
void HomeJogGearsChoice(int AxisType, int JogGears, int& DriveSpeed, int& StartSpeed, int& AccLine, int& DecLine,
|
||||
int& AccCurve, int& DecCurve);
|
||||
int& AccCurve, int& DecCurve);
|
||||
/**
|
||||
* \brief
|
||||
* \param AxisTypes
|
||||
* \return
|
||||
* \brief
|
||||
* \param AxisTypes
|
||||
* \return
|
||||
*/
|
||||
short AxisConvertIndex(UINT AxisTypes);
|
||||
short IndexConvertAxis(int Index);
|
||||
|
||||
@@ -12,5 +12,5 @@
|
||||
#define HSI_VERSION_REVNUM
|
||||
#define HSI_VERSION_BUILD_DATE _T(__DATE__ )
|
||||
#define HSI_VERSION_BUILD_TIME _T(__TIME__ )
|
||||
#define HSI_FILE_DESCRIPTION "周四 2.24.08 / 13:09 "
|
||||
#define HSI_FILE_CSDESCRIPTION _T("周四 2.24.08 / 13:09 ")
|
||||
#define HSI_FILE_DESCRIPTION "2024.12.23 / 13:41 "
|
||||
#define HSI_FILE_CSDESCRIPTION _T("2024.12.23 / 13:41 ")
|
||||
|
||||
Reference in New Issue
Block a user