You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
2.6 KiB
C

#pragma once
#include "module.h"
class CPIAK10Motor
{
public:
CPIAK10Motor()
{
m_CurPos = 0;//<2F><>ǰ<EFBFBD><C7B0>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>)
m_BindingPathMotorIdx = 0;//<2F>󶨹<EFBFBD>·<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ(1~8)
m_ChannelIdx = 1;//<2F>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(1~4)
};
public:
int m_CurPos;//<2F><>ǰ<EFBFBD><C7B0>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>)
int m_BindingPathMotorIdx;//<2F>󶨹<EFBFBD>·<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(1~8)
int m_ChannelIdx;//<2F>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(1~4)
int m_SerialNoVal;
};
//<2F><>·΢<C2B7><CEA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
class CKCubeIMotorCtrl
{
public:
CKCubeIMotorCtrl()
{
m_SerialNoVal = 55165114;//<2F><EFBFBD><E8B1B8><EFBFBD>к<EFBFBD>(ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>)
//һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ4<D3A6><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
for(int k=0;k<4;k++)
{
CPIAK10Motor PIAK10Motor;
PIAK10Motor.m_ChannelIdx = k+1;
m_PIAK10MotorVec.push_back(PIAK10Motor);
}
};
void KCubeMoveJog(bool bDir,int MoveVal);
public:
int m_SerialNoVal;//<2F><EFBFBD><E8B1B8><EFBFBD>к<EFBFBD>(ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>)
vector<CPIAK10Motor> m_PIAK10MotorVec;//һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ4<D3A6><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
};
//Thorlabs <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
class CThorlabsKCubeIMotorCtrlMgr :public CModule
{
friend class CSemiSecsCommMgr;
public:
CThorlabsKCubeIMotorCtrlMgr(void);
~CThorlabsKCubeIMotorCtrlMgr(void);
virtual CMFCPropertyGridProperty *CreatGridProperty();
virtual MODULE GetModuleType(){return _PATH_MOTOR_CTRL_PORP;};
virtual CString GetParDirName(){return "KCubeIMotorCtrlMgr";};
virtual void OnAppInitialize();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
void SetJogMovePar(int PathMotorIdx,bool bDir,int MoveVal);
void JogMove();
CPIAK10Motor *GetPIAK10Motor(int PathMotorIdx);
int GetPathMotorPos(int PathMotorIdx);
private:
CMFCPropertyGridProperty* CreatKCubeGridProperty(CKCubeIMotorCtrl &KCubeInertialMotor,CString MotorName,CString ValName);
void UpdatePathMotorPos();
void SavePathMotorPosToFile();
void ReadPathMotorPosFromFile();
private:
vector<CKCubeIMotorCtrl> m_KCubeIMotorCtrlVec;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
vector<int> m_PathMotorPosVec;//<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><>ǰJog move <20>IJ<EFBFBD><C4B2><EFBFBD>
int m_JogMove_MotorIdx;//ת<><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(1~8)
bool m_JogMove_bDir;//<2F>ƶ<EFBFBD><C6B6>ķ<EFBFBD><C4B7><EFBFBD>
int m_JogMove_MoveVal;//ת<><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
};
extern CThorlabsKCubeIMotorCtrlMgr *gThorlabsKCubeIMotorCtrlMgr;