#对专机2的支持,新增每次都回家配置;当配置该项后,原回家标志位即使为真,仍会回家
This commit is contained in:
@@ -1132,7 +1132,8 @@ HSI_STATUS HSI_Motion::HomeMachine(bool bHomed)
|
|||||||
//判断是否需要回家
|
//判断是否需要回家
|
||||||
bool home(false);
|
bool home(false);
|
||||||
IsHomed(home);
|
IsHomed(home);
|
||||||
if (home == true)
|
|
||||||
|
if (home == true && !m_IsHomeEveryTime) //不需要每次都回家,且已经回家了
|
||||||
{
|
{
|
||||||
g_pLogger->SendAndFlushWithTime(L"[HomeMachine] IsHomed No Need Go Home\n");
|
g_pLogger->SendAndFlushWithTime(L"[HomeMachine] IsHomed No Need Go Home\n");
|
||||||
return HSI_STATUS_NORMAL;
|
return HSI_STATUS_NORMAL;
|
||||||
@@ -3616,30 +3617,38 @@ HSI_STATUS HSI_Motion::SetPositionXyz(UINT AxisTypes, double PositionX, double P
|
|||||||
//开始运动到指定位置,多轴运动
|
//开始运动到指定位置,多轴运动
|
||||||
double Points[] = { PositionX, PositionY, PositionZ }; //目标位置点
|
double Points[] = { PositionX, PositionY, PositionZ }; //目标位置点
|
||||||
|
|
||||||
//if (!acsc_ToPointM(handleACS, 0, ACSAxisNumbers, Points, nullptr)) //移动到绝对位置
|
|
||||||
//{
|
if (m_isSynchronized ==1)
|
||||||
// g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] ACS Multi Motion Error\n");
|
|
||||||
// ErrorsHandler();
|
|
||||||
//}
|
|
||||||
|
|
||||||
//使用三个轴的分别运动,替代整体运动 acsc_ToPointM,来解决多轴不同速度运动的问题
|
|
||||||
if (!acsc_ToPoint(handleACS, 0, ACSAxisNumbers[0], PositionX, nullptr)) //移动到绝对位置
|
|
||||||
{
|
{
|
||||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] X轴移动出错 \n");
|
//使用三个轴的分别运动,替代整体运动 acsc_ToPointM,来解决多轴不同速度运动的问题
|
||||||
ErrorsHandler();
|
if (!acsc_ToPoint(handleACS, 0, ACSAxisNumbers[0], PositionX, nullptr)) //移动到绝对位置
|
||||||
|
{
|
||||||
|
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] X轴移动出错 \n");
|
||||||
|
ErrorsHandler();
|
||||||
|
}
|
||||||
|
if (!acsc_ToPoint(handleACS, 0, ACSAxisNumbers[1], PositionY, nullptr)) //移动到绝对位置
|
||||||
|
{
|
||||||
|
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Y轴移动出错\n");
|
||||||
|
ErrorsHandler();
|
||||||
|
}
|
||||||
|
if (!acsc_ToPoint(handleACS, 0, ACSAxisNumbers[2], PositionZ, nullptr)) //移动到绝对位置
|
||||||
|
{
|
||||||
|
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Z轴移动出错\n");
|
||||||
|
ErrorsHandler();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!acsc_ToPoint(handleACS, 0, ACSAxisNumbers[1], PositionY, nullptr)) //移动到绝对位置
|
else
|
||||||
{
|
{
|
||||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Y轴移动出错\n");
|
if (!acsc_ToPointM(handleACS, 0, ACSAxisNumbers, Points, nullptr)) //移动到绝对位置
|
||||||
ErrorsHandler();
|
{
|
||||||
}
|
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] ACS Multi Motion Error\n");
|
||||||
if (!acsc_ToPoint(handleACS, 0, ACSAxisNumbers[2], PositionZ, nullptr)) //移动到绝对位置
|
ErrorsHandler();
|
||||||
{
|
}
|
||||||
g_pLogger->SendAndFlushWithTime(L"[SetPositionXyz] Z轴移动出错\n");
|
|
||||||
ErrorsHandler();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//状态更新
|
//状态更新
|
||||||
if (eType == HSI_MOTION_MOVE_NOWAIT) //非等待
|
if (eType == HSI_MOTION_MOVE_NOWAIT) //非等待
|
||||||
{
|
{
|
||||||
@@ -4299,7 +4308,16 @@ HSI_STATUS HSI_Motion::Load_EF3_Config_Inifile(CString GoogolIniFile)
|
|||||||
m_IsUseEF3 = GetPrivateProfileInt(L"EF3", L"IS_USEEF3", 0, csAppPath);
|
m_IsUseEF3 = GetPrivateProfileInt(L"EF3", L"IS_USEEF3", 0, csAppPath);
|
||||||
m_IsUseACS = GetPrivateProfileInt(L"EF3", L"IS_USEACS", 0, csAppPath);
|
m_IsUseACS = GetPrivateProfileInt(L"EF3", L"IS_USEACS", 0, csAppPath);
|
||||||
m_IsUseSimulator = GetPrivateProfileInt(L"EF3", L"IS_USE_SIMULATOR", 0, csAppPath);
|
m_IsUseSimulator = GetPrivateProfileInt(L"EF3", L"IS_USE_SIMULATOR", 0, csAppPath);
|
||||||
|
m_isSynchronized = GetPrivateProfileInt(L"EF3", L"IS_Synchronized", 1, csAppPath);
|
||||||
|
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Config_Inifile] m_IsUseEF3: %d, m_IsUseACS: %d, m_IsUseSimulator: %d, m_isSynchronized: %d\n",
|
||||||
|
m_IsUseEF3, m_IsUseACS, m_IsUseSimulator, m_isSynchronized);
|
||||||
|
|
||||||
|
// 定义变量,保存 是否每次都回家
|
||||||
|
m_IsHomeEveryTime = GetPrivateProfileInt(L"EF3", L"IS_HOME_EVERYTIME", 1, csAppPath);
|
||||||
|
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Config_Inifile] m_IsHomeEveryTime: %d\n", m_IsHomeEveryTime);
|
||||||
|
|
||||||
m_ForSoft = GetPrivateProfileInt(L"SOFTWARE", L"USE_SOFTWARE", 0, csAppPath);
|
m_ForSoft = GetPrivateProfileInt(L"SOFTWARE", L"USE_SOFTWARE", 0, csAppPath);
|
||||||
|
|
||||||
|
|
||||||
// 从配置文件中读取IP地址
|
// 从配置文件中读取IP地址
|
||||||
TCHAR buffer[50];
|
TCHAR buffer[50];
|
||||||
@@ -4308,7 +4326,7 @@ HSI_STATUS HSI_Motion::Load_EF3_Config_Inifile(CString GoogolIniFile)
|
|||||||
// 将TCHAR类型的buffer转换为char类型的m_ACS_IPAddresses
|
// 将TCHAR类型的buffer转换为char类型的m_ACS_IPAddresses
|
||||||
size_t convertedChars = 0;
|
size_t convertedChars = 0;
|
||||||
wcstombs_s(&convertedChars, m_ACS_IPAddresses, buffer, _TRUNCATE);
|
wcstombs_s(&convertedChars, m_ACS_IPAddresses, buffer, _TRUNCATE);
|
||||||
g_pLogger->SendAndFlushWithTime(L"ACS IP Address: %S\n", m_ACS_IPAddresses);
|
g_pLogger->SendAndFlushWithTime(L"[Load_EF3_Config_Inifile] ACS IP Address: %S\n", m_ACS_IPAddresses);
|
||||||
|
|
||||||
m_IsUse_HSICompensation = GetPrivateProfileInt(L"ASIX", L"IS_USE_HSICOMPENSATION", 0, csAppPath);
|
m_IsUse_HSICompensation = GetPrivateProfileInt(L"ASIX", L"IS_USE_HSICOMPENSATION", 0, csAppPath);
|
||||||
m_Compensation_Pluse = GetPrivateProfileInt(L"ASIX", L"COMPENSATE_PLUSE", 20, csAppPath);
|
m_Compensation_Pluse = GetPrivateProfileInt(L"ASIX", L"COMPENSATE_PLUSE", 20, csAppPath);
|
||||||
|
|||||||
@@ -482,6 +482,8 @@ public:
|
|||||||
int m_IsUseSimulator; //是否启用模拟器
|
int m_IsUseSimulator; //是否启用模拟器
|
||||||
char m_ACS_IPAddresses[50]; // 定义字符串,存储ACS IP地址
|
char m_ACS_IPAddresses[50]; // 定义字符串,存储ACS IP地址
|
||||||
|
|
||||||
|
int m_isSynchronized ; //是否启用同步 0为不启用 1为启用 默认为0
|
||||||
|
int m_IsHomeEveryTime; //是否每次都回原点 0为不启用 1为启用 默认为0
|
||||||
int m_DeviceType; //设备类型,0为通用设备,1为三激光, 2为大视野,3为转盘设备 默认为0
|
int m_DeviceType; //设备类型,0为通用设备,1为三激光, 2为大视野,3为转盘设备 默认为0
|
||||||
int m_UseAxisNum; //转盘设备使用轴号
|
int m_UseAxisNum; //转盘设备使用轴号
|
||||||
int m_IbinCount; //记录获取到的分bin数
|
int m_IbinCount; //记录获取到的分bin数
|
||||||
|
|||||||
@@ -12,5 +12,5 @@
|
|||||||
#define HSI_VERSION_REVNUM
|
#define HSI_VERSION_REVNUM
|
||||||
#define HSI_VERSION_BUILD_DATE _T(__DATE__ )
|
#define HSI_VERSION_BUILD_DATE _T(__DATE__ )
|
||||||
#define HSI_VERSION_BUILD_TIME _T(__TIME__ )
|
#define HSI_VERSION_BUILD_TIME _T(__TIME__ )
|
||||||
#define HSI_FILE_DESCRIPTION "2025.05.23 / 16:01 "
|
#define HSI_FILE_DESCRIPTION "2025.08.12 / 13:17 "
|
||||||
#define HSI_FILE_CSDESCRIPTION _T("2025.05.23 / 16:01 ")
|
#define HSI_FILE_CSDESCRIPTION _T("2025.08.12 / 13:17 ")
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user