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.

123 lines
3.2 KiB
C

#pragma once
#ifdef CARD_DLL_API
#else
#define CARD_DLL_API _declspec(dllimport)
#endif
class CARD_DLL_API MotorAttr
{
public:
MotorAttr(int axisId,
double curPos,
bool isEnable,
double acc,
double dec,
double vel,
double returnAcc,
double returnDec,
double returnHomeStartVel,
double returnHomeEndVel,
double positiveLimit,
double negativeLimit,
bool isHomed,
int findOriginDir,
double originOffset,
int returnHomeMode,
bool isReverse);
MotorAttr();
~MotorAttr();
int AxisId() const { return m_AxisId; }
void AxisId(int val) { m_AxisId = val; }
double CurPos() const { return m_curPos; }
void CurPos(double val) { m_curPos = val; }
bool Enable() const { return m_isEnable; }
void Enable(bool val) { m_isEnable = val; }
double Acc() const { return m_acc; }
void Acc(double val) { m_acc = val; }
double Dec() const { return m_dec; }
void Dec(double val) { m_dec = val; }
double Vel() const { return m_vel; }
void Vel(double val) { m_vel = val; }
double ReturnHomeStartVel() const { return m_returnHomeStartVel; }
void ReturnHomeStartVel(double val) { m_returnHomeStartVel = val; }
double ReturnHomeEndVel() const { return m_returnHomeEndVel; }
void ReturnHomeEndVel(double val) { m_returnHomeEndVel = val; }
double PositiveLimit() const { return m_PositiveLimit; }
void PositiveLimit(double val) { m_PositiveLimit = val; }
double NegativeLimit() const { return m_NegativeLimit; }
void NegativeLimit(double val) { m_NegativeLimit = val; }
bool IsHomed() const { return m_IsHomed; }
void IsHomed(bool val) { m_IsHomed = val; }
int FindOriginDir() const { return m_FindOriginDir; }
void FindOriginDir(int val) { m_FindOriginDir = val; }
double OriginOffset() const { return m_OriginOffset; }
void OriginOffset(double val) { m_OriginOffset = val; }
int ReturnHomeMode() const { return m_ReturnHomeMode; }
void ReturnHomeMode(int val) { m_ReturnHomeMode = val; }
bool IsReverse() const { return m_IsReverse; }
void IsReverse(bool val) { m_IsReverse = val; }
double ReturnAcc() const { return m_returnAcc; }
void ReturnAcc(double val) { m_returnAcc = val; }
double ReturnDec() const { return m_returnDec; }
void ReturnDec(double val) { m_returnDec = val; }
int PulseTo1mm() const { return m_pulseTo1mm; }
void PulseTo1mm(int val) { m_pulseTo1mm = val; }
public:
bool operator==(const MotorAttr &other) const {
return this->m_AxisId == other.m_AxisId;
}
private:
int m_AxisId = -1; //<2F><>ID
double m_curPos = 0.00; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰλ<C7B0><CEBB>
bool m_isEnable = false; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9>
double m_acc; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ٶ<EFBFBD>
double m_dec; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ٶ<EFBFBD>
double m_vel; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD>˶<EFBFBD><CBB6>ٶ<EFBFBD>
double m_returnAcc; //<2F><>ԭ<EFBFBD><D4AD><EFBFBD>ٶ<EFBFBD>
double m_returnDec; //<2F><>ԭ<EFBFBD><D4AD><EFBFBD>ٶ<EFBFBD>
double m_returnHomeStartVel; //<2F><>ԭ<EFBFBD>ʼ<E3BFAA><CABC><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>ٶ<EFBFBD>
double m_returnHomeEndVel; //<2F><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>ٶ<EFBFBD>
double m_PositiveLimit = 1000; //<2F><><EFBFBD><EFBFBD>λ
double m_NegativeLimit = -1000; //<2F><><EFBFBD><EFBFBD>λ
bool m_IsHomed = false; //<2F>Ƿ<EFBFBD><C7B7>ѻ<EFBFBD>ԭ<EFBFBD><D4AD>
int m_FindOriginDir = 1; //<2F><>ԭ<EFBFBD><EFBFBD><E3B7BD>
double m_OriginOffset = 0; //<2F>ص<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>
int m_ReturnHomeMode = 0; //<2F><>ԭ<EFBFBD><D4AD>ģʽ TODO <20><>ԭ<EFBFBD><D4AD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9>
int m_pulseTo1mm = 1000; //1mm<6D><6D>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool m_IsReverse = false; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD> TODO<44><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʲô<CAB2><C3B4>˼<EFBFBD><CBBC>
};