|
|
|
@@ -2,6 +2,7 @@
|
|
|
|
|
#include "afxwin.h"
|
|
|
|
|
#include "resource.h"
|
|
|
|
|
#include "afxdialogex.h"
|
|
|
|
|
#include <math.h>
|
|
|
|
|
#include "..\..\..\SevenOcean\CMMIO_SERIAL.H"
|
|
|
|
|
#include "..\..\..\SevenOcean\SO7_Proto.h"
|
|
|
|
|
#include "..\..\..\SevenOcean\CAutoZoom.h"
|
|
|
|
@@ -49,7 +50,7 @@ IMPLEMENT_DYNAMIC(CSO7_UtilDlg, CDialog)
|
|
|
|
|
m_ZsignalPosX=0;
|
|
|
|
|
m_ZsignalPosY=0;
|
|
|
|
|
m_ZsignalPosZ=0;
|
|
|
|
|
|
|
|
|
|
m_bEnProbe=false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CSO7_UtilDlg::~CSO7_UtilDlg()
|
|
|
|
@@ -375,6 +376,7 @@ void CSO7_UtilDlg::OnBnClickedButtonTermSo7usb()
|
|
|
|
|
void CSO7_UtilDlg::OnBnClickedButtonStartSo7machine()
|
|
|
|
|
{
|
|
|
|
|
OnBnClickedButtonInitSo7usb();
|
|
|
|
|
m_pSO7_Proto->Load_So7_Config();
|
|
|
|
|
//m_pSO7_Proto->so7_motion_startup(0.5, 0.5, 0.5);
|
|
|
|
|
m_pSO7_Proto->_start_machine();
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_GET_RESET_FLAG();
|
|
|
|
@@ -385,8 +387,7 @@ void CSO7_UtilDlg::OnBnClickedButtonStartSo7machine()
|
|
|
|
|
csTmp.Format(("Firmware Version:[%s]"),m_pSO7_Proto->g_machine.FirmwareInfo);
|
|
|
|
|
m_OutMessage=csTmp;
|
|
|
|
|
OutputWithScroll(m_OutMessage,m_edMSG);
|
|
|
|
|
m_pSO7_Proto->g_machine.GetInterruptMsgMethod=E_GET_INTERRUPT_MSG_INQUIRY;
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_SET_GET_INTERRUPT_MSG_METHOD(m_pSO7_Proto->g_machine.GetInterruptMsgMethod);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_SET_GET_INTERRUPT_MSG_METHOD(m_pSO7_Proto->g_machine.s_machine_config.motion.GetInterruptMsgMethod);
|
|
|
|
|
}
|
|
|
|
|
UpdateCtrlsStatus(true);
|
|
|
|
|
SetTimer(1, 150, 0);
|
|
|
|
@@ -522,14 +523,25 @@ void CSO7_UtilDlg::OnBnClickedButtonSo7ReadAxisXyz()
|
|
|
|
|
//=====================================================================
|
|
|
|
|
void CSO7_UtilDlg::OnBnClickedButtonReadProbe()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_PROBE_XYZ();
|
|
|
|
|
m_X_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.x._scale_probe));
|
|
|
|
|
GetDlgItem(IDC_EDIT_X_POSITION_59)->SetWindowText(m_X_Pos);
|
|
|
|
|
m_Y_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.y._scale_probe));
|
|
|
|
|
GetDlgItem(IDC_EDIT_Y_POSITION_59)->SetWindowText(m_Y_Pos);
|
|
|
|
|
m_Z_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.z._scale_probe));
|
|
|
|
|
GetDlgItem(IDC_EDIT_Z_POSITION_59)->SetWindowText(m_Z_Pos);
|
|
|
|
|
if(!m_bEnProbe)
|
|
|
|
|
{
|
|
|
|
|
m_bEnProbe=true;
|
|
|
|
|
m_pSO7_Proto->so7_motion_probe_on_off_(true);
|
|
|
|
|
GetDlgItem(IDC_BUTTON_READ_PROBE)->SetWindowText(_T("EnProbe ON"));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
m_bEnProbe=false;
|
|
|
|
|
m_pSO7_Proto->so7_motion_probe_on_off_(false);
|
|
|
|
|
GetDlgItem(IDC_BUTTON_READ_PROBE)->SetWindowText(_T("EnProbe OFF"));
|
|
|
|
|
}
|
|
|
|
|
//m_pSO7_Proto->_send_cmd_SO7_CMD_READ_PROBE_XYZ();
|
|
|
|
|
//m_X_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.x._scale_probe));
|
|
|
|
|
//GetDlgItem(IDC_EDIT_X_POSITION_59)->SetWindowText(m_X_Pos);
|
|
|
|
|
//m_Y_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.y._scale_probe));
|
|
|
|
|
//GetDlgItem(IDC_EDIT_Y_POSITION_59)->SetWindowText(m_Y_Pos);
|
|
|
|
|
//m_Z_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.z._scale_probe));
|
|
|
|
|
//GetDlgItem(IDC_EDIT_Z_POSITION_59)->SetWindowText(m_Z_Pos);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void CSO7_UtilDlg::OnBnClickedButtonSo7ReadAxisV()
|
|
|
|
@@ -856,7 +868,6 @@ void CSO7_UtilDlg::OnBnClickedButtonMotionParameter()
|
|
|
|
|
void CSO7_UtilDlg::OnBnClickedButtonSetupSo7config()
|
|
|
|
|
{
|
|
|
|
|
KillTimer(1);
|
|
|
|
|
m_pSO7_Proto->Load_So7_Config();
|
|
|
|
|
if (!m_pSO7_AutoZoom)
|
|
|
|
|
m_pSO7_AutoZoom = new CAutoZoom();
|
|
|
|
|
|
|
|
|
@@ -898,9 +909,55 @@ void CSO7_UtilDlg::OnBnClickedButtonSo7TestZSignal()
|
|
|
|
|
}
|
|
|
|
|
void CSO7_UtilDlg::TestZSignal()
|
|
|
|
|
{
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_X();
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_Y();
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_Z();
|
|
|
|
|
if (((CButton *)GetDlgItem(IDC_CHECK_SO7_OUT_PORT))->GetCheck())
|
|
|
|
|
{
|
|
|
|
|
BYTE cdata[3]={0};
|
|
|
|
|
//x
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(2,6);
|
|
|
|
|
cdata[0]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(2,7);
|
|
|
|
|
cdata[1]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(2,8);
|
|
|
|
|
cdata[2]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->g_machine.x._ZSignal_pos._char_[2] = cdata[2];
|
|
|
|
|
m_pSO7_Proto->g_machine.x._ZSignal_pos._char_[1] = cdata[1];
|
|
|
|
|
m_pSO7_Proto->g_machine.x._ZSignal_pos._char_[0] = cdata[0];
|
|
|
|
|
m_pSO7_Proto->g_machine.x._ZSignal_pos._char_[3] = 0;
|
|
|
|
|
if (m_pSO7_Proto->g_machine.x._ZSignal_pos._long_ > 8388608)
|
|
|
|
|
m_pSO7_Proto->g_machine.x._ZSignal_pos._long_=m_pSO7_Proto->g_machine.x._ZSignal_pos._long_-16777216;
|
|
|
|
|
//y
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(1,6);
|
|
|
|
|
cdata[0]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(1,7);
|
|
|
|
|
cdata[1]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(1,8);
|
|
|
|
|
cdata[2]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->g_machine.y._ZSignal_pos._char_[2] = cdata[2];
|
|
|
|
|
m_pSO7_Proto->g_machine.y._ZSignal_pos._char_[1] = cdata[1];
|
|
|
|
|
m_pSO7_Proto->g_machine.y._ZSignal_pos._char_[0] = cdata[0];
|
|
|
|
|
m_pSO7_Proto->g_machine.y._ZSignal_pos._char_[3] = 0;
|
|
|
|
|
if (m_pSO7_Proto->g_machine.y._ZSignal_pos._long_ > 8388608)
|
|
|
|
|
m_pSO7_Proto->g_machine.y._ZSignal_pos._long_=m_pSO7_Proto->g_machine.y._ZSignal_pos._long_-16777216;
|
|
|
|
|
//z
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(3,6);
|
|
|
|
|
cdata[0]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(3,7);
|
|
|
|
|
cdata[1]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_DATA_FROM_FPGA(3,8);
|
|
|
|
|
cdata[2]=static_cast<BYTE>(m_pSO7_Proto->g_machine.FPGAData);
|
|
|
|
|
m_pSO7_Proto->g_machine.z._ZSignal_pos._char_[2] = cdata[2];
|
|
|
|
|
m_pSO7_Proto->g_machine.z._ZSignal_pos._char_[1] = cdata[1];
|
|
|
|
|
m_pSO7_Proto->g_machine.z._ZSignal_pos._char_[0] = cdata[0];
|
|
|
|
|
m_pSO7_Proto->g_machine.z._ZSignal_pos._char_[3] = 0;
|
|
|
|
|
if (m_pSO7_Proto->g_machine.z._ZSignal_pos._long_ > 8388608)
|
|
|
|
|
m_pSO7_Proto->g_machine.z._ZSignal_pos._long_=m_pSO7_Proto->g_machine.z._ZSignal_pos._long_-16777216;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_X();
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_Y();
|
|
|
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_READ_ZSIGNAL_POS_Z();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_X_Pos.Format(_T("%8ld"),(m_pSO7_Proto->g_machine.x._ZSignal_pos._long_));
|
|
|
|
|
GetDlgItem(IDC_EDIT_X_POSITION_59)->SetWindowText(m_X_Pos);
|
|
|
|
@@ -910,25 +967,63 @@ void CSO7_UtilDlg::TestZSignal()
|
|
|
|
|
GetDlgItem(IDC_EDIT_Z_POSITION_59)->SetWindowText(m_Z_Pos);
|
|
|
|
|
|
|
|
|
|
double dTmp1(0.0),dTmp2(0.0);
|
|
|
|
|
double dScaleResult(0.0);
|
|
|
|
|
if (labs(m_pSO7_Proto->g_machine.x._ZSignal_pos._long_-m_ZsignalPosX)>5)
|
|
|
|
|
{
|
|
|
|
|
dTmp1=m_pSO7_Proto->ScaleToMM(m_ZsignalPosX,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
|
|
|
|
dTmp2=m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.x._ZSignal_pos._long_,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution);
|
|
|
|
|
m_OutMessage.Format(_T("[ZSignal-X] From: %-3.4f To: %-3.4f Dis: %-3.4f"),dTmp1,dTmp2,dTmp2-dTmp1);
|
|
|
|
|
|
|
|
|
|
dScaleResult=(dTmp2-dTmp1);
|
|
|
|
|
while ((fabs(dScaleResult)-fabs(m_pSO7_Proto->g_machine.dRotaryCirclDis))>1.0)
|
|
|
|
|
{
|
|
|
|
|
if (dScaleResult<-0.00001)
|
|
|
|
|
{
|
|
|
|
|
dScaleResult+=(m_pSO7_Proto->ScaleToMM(8388608,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
dScaleResult-=(m_pSO7_Proto->ScaleToMM(8388608,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
m_OutMessage.Format(_T("[ZSignal-X] From: %-3.4f To: %-3.4f Dis: %-3.4f"),dTmp1,dTmp2,dScaleResult);
|
|
|
|
|
OutputWithScroll(m_OutMessage,m_edMSG);
|
|
|
|
|
}
|
|
|
|
|
if (labs(m_pSO7_Proto->g_machine.y._ZSignal_pos._long_-m_ZsignalPosY)>5)
|
|
|
|
|
{
|
|
|
|
|
dTmp1=m_pSO7_Proto->ScaleToMM(m_ZsignalPosY,m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
|
|
|
|
dTmp2=m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.y._ZSignal_pos._long_,m_pSO7_Proto->g_machine.s_machine_config.y_axis._scale_resolution);
|
|
|
|
|
m_OutMessage.Format(_T("[ZSignal-Y] From: %-3.4f To: %-3.4f Dis: %-3.4f"),dTmp1,dTmp2,dTmp2-dTmp1);
|
|
|
|
|
dScaleResult=(dTmp2-dTmp1);
|
|
|
|
|
while ((fabs(dScaleResult)-fabs(m_pSO7_Proto->g_machine.dRotaryCirclDis))>1.0)
|
|
|
|
|
{
|
|
|
|
|
if (dScaleResult<-0.00001)
|
|
|
|
|
{
|
|
|
|
|
dScaleResult+=(m_pSO7_Proto->ScaleToMM(8388608,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
dScaleResult-=(m_pSO7_Proto->ScaleToMM(8388608,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
m_OutMessage.Format(_T("[ZSignal-Y] From: %-3.4f To: %-3.4f Dis: %-3.4f"),dTmp1,dTmp2,dScaleResult);
|
|
|
|
|
OutputWithScroll(m_OutMessage,m_edMSG);
|
|
|
|
|
}
|
|
|
|
|
if (labs(m_pSO7_Proto->g_machine.z._ZSignal_pos._long_-m_ZsignalPosZ)>5)
|
|
|
|
|
{
|
|
|
|
|
dTmp1=m_pSO7_Proto->ScaleToMM(m_ZsignalPosZ,m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
|
|
|
|
dTmp2=m_pSO7_Proto->ScaleToMM(m_pSO7_Proto->g_machine.z._ZSignal_pos._long_,m_pSO7_Proto->g_machine.s_machine_config.z_axis._scale_resolution);
|
|
|
|
|
m_OutMessage.Format(_T("[ZSignal-Z] From: %-3.4f To: %-3.4f Dis: %-3.4f"),dTmp1,dTmp2,dTmp2-dTmp1);
|
|
|
|
|
dScaleResult=(dTmp2-dTmp1);
|
|
|
|
|
while ((fabs(dScaleResult)-fabs(m_pSO7_Proto->g_machine.dRotaryCirclDis))>1.0)
|
|
|
|
|
{
|
|
|
|
|
if (dScaleResult<-0.00001)
|
|
|
|
|
{
|
|
|
|
|
dScaleResult+=(m_pSO7_Proto->ScaleToMM(8388608,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
dScaleResult-=(m_pSO7_Proto->ScaleToMM(8388608,m_pSO7_Proto->g_machine.s_machine_config.x_axis._scale_resolution));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
m_OutMessage.Format(_T("[ZSignal-Z] From: %-3.4f To: %-3.4f Dis: %-3.4f"),dTmp1,dTmp2,dScaleResult);
|
|
|
|
|
OutputWithScroll(m_OutMessage,m_edMSG);
|
|
|
|
|
}
|
|
|
|
|
m_ZsignalPosX=m_pSO7_Proto->g_machine.x._ZSignal_pos._long_;
|
|
|
|
|