增加CNC运行停顿时间。

This commit is contained in:
TEST Machine
2014-02-12 23:32:48 +08:00
parent a4ba2c6a6f
commit e8d5f45614
7 changed files with 55 additions and 36 deletions
@@ -3288,3 +3288,8 @@ Init:Open device succeed .
Construct Cso7_Proto.
Init:Open device succeed .
_start_machine
Exit: Exit_SO7Usb
@@ -16,7 +16,7 @@
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// Chinese (Simplified, PRC) resources
// 中文(简体,中国) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
@@ -798,19 +798,21 @@ BEGIN
PUSHBUTTON "Y",IDC_BUTTON_PROGRAM_SET_ZERO_Y,427,64,27,21
PUSHBUTTON "Z",IDC_BUTTON_PROGRAM_SET_ZERO_Z,427,87,27,21
GROUPBOX "CNC Program",IDC_STATIC,15,11,140,130
PUSHBUTTON "Add CNC Point",IDC_BUTTON_SO7_PROGRAM_ADD_CNC_PROGRAM,22,107,53,21
PUSHBUTTON "Run",IDC_BUTTON_SO7_PROGRAM_RUN_CNC,88,89,60,32
PUSHBUTTON "Add CNC Point",IDC_BUTTON_SO7_PROGRAM_ADD_CNC_PROGRAM,22,113,53,21
PUSHBUTTON "Run",IDC_BUTTON_SO7_PROGRAM_RUN_CNC,87,115,53,21
EDITTEXT IDC_EDIT_SO7_PROGRAM_MSG_OUTPUT,17,276,554,77,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
EDITTEXT IDC_EDIT_READOUT_X,459,42,113,22,ES_RIGHT | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER
EDITTEXT IDC_EDIT_READOUT_Z,459,85,113,22,ES_RIGHT | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER
EDITTEXT IDC_EDIT_READOUT_Y,459,63,113,22,ES_RIGHT | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER
PUSHBUTTON "New",IDC_BUTTON_SO7_PROGRAM_NEW_CNC,22,29,53,21
PUSHBUTTON "Save as...",IDC_BUTTON_SO7_PROGRAM_SAVE_CNC_FILE,22,81,53,21
PUSHBUTTON "Open",IDC_BUTTON_SO7_PROGRAM_OPEN_CNC,22,55,53,21
EDITTEXT IDC_EDIT_SO7_PROGEAM_CNC_RUING_TIMES,97,59,40,14,ES_AUTOHSCROLL
PUSHBUTTON "Save as...",IDC_BUTTON_SO7_PROGRAM_SAVE_CNC_FILE,22,85,53,21
PUSHBUTTON "Open",IDC_BUTTON_SO7_PROGRAM_OPEN_CNC,22,57,53,21
EDITTEXT IDC_EDIT_SO7_PROGEAM_CNC_RUING_TIMES,97,49,40,14,ES_AUTOHSCROLL
CONTROL "Infinite",IDC_CHECK_SO7_RUNING_PROGRAM_RUNING_INFINITE,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,42,39,10
GROUPBOX "Times",IDC_STATIC,91,25,54,56
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,100,34,39,10
GROUPBOX "Times",IDC_STATIC,89,22,56,47
GROUPBOX "Interval(ms)",IDC_STATIC,89,72,56,39
EDITTEXT IDC_EDIT_SO7_PROGEAM_INTERCAL_TIME_PER_CNC,97,86,40,14,ES_AUTOHSCROLL
END
IDD_DIALOG_TESA_STAR_E DIALOGEX 0, 0, 403, 284
@@ -1407,12 +1409,12 @@ IDB_BITMAP_Z_DOWN BITMAP "res\\bmp\\Z_DOWN.bmp"
IDB_BITMAP_Z_UP BITMAP "res\\bmp\\Z_UP.bmp"
IDB_BITMAP_X_LEFT BITMAP "res\\bmp\\X_LEFT.BMP"
IDB_BITMAP_X_RIGHT BITMAP "res\\bmp\\X_RIGHT.bmp"
#endif // Chinese (Simplified, PRC) resources
#endif // 中文(简体,中国) resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// English (United States) resources
// 英语(美国) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
@@ -2355,7 +2357,7 @@ BEGIN
IDS_SO7_ABOUTBOX "&About Utility for SO7..."
END
#endif // English (United States) resources
#endif // 英语(美国) resources
/////////////////////////////////////////////////////////////////////////////
@@ -42,6 +42,7 @@ CSo7_Util_Program::CSo7_Util_Program(CWnd* pParent /*=NULL*/)
m_FinishTime=0;
m_duration=0.0;
m_RuningCNCTimes=1;
m_IntervalTimePerCNC=0;
}
CSo7_Util_Program::~CSo7_Util_Program()
@@ -52,20 +53,20 @@ void CSo7_Util_Program::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT_READOUT_X, m_csXPos);
DDX_Text(pDX, IDC_EDIT_READOUT_Y, m_csYPos);
DDX_Text(pDX, IDC_EDIT_READOUT_Z, m_csZPos);
DDX_Text(pDX, IDC_EDIT_READOUT_X, m_csXPos);
DDX_Text(pDX, IDC_EDIT_READOUT_Y, m_csYPos);
DDX_Text(pDX, IDC_EDIT_READOUT_Z, m_csZPos);
DDX_Control(pDX, IDC_LIST_REPORT_OUTPUT, m_RptListCtrl);
DDX_Control(pDX, IDC_LIST_REPORT_OUTPUT, m_RptListCtrl);
DDX_Control(pDX, IDC_EDIT_SO7_PROGRAM_MSG_OUTPUT, m_edMSG);
DDX_Control(pDX, IDC_EDIT_SO7_PROGRAM_MSG_OUTPUT, m_edMSG);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_X_LEFT, m_Button_MoveX_Left);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_X_RIGHT, m_Button_MoveX_Right);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Y_FRONTWARD, m_Button_MoveY_Front);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Y_BACKWARD, m_Button_MoveY_Back);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Z_UP, m_Button_MoveZ_Up);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Z_DOWN, m_Button_MoveZ_Down);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_X_LEFT, m_Button_MoveX_Left);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_X_RIGHT, m_Button_MoveX_Right);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Y_FRONTWARD, m_Button_MoveY_Front);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Y_BACKWARD, m_Button_MoveY_Back);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Z_UP, m_Button_MoveZ_Up);
DDX_Control(pDX, IDC_MFCBUTTON_SO7_PROGRAM_Z_DOWN, m_Button_MoveZ_Down);
}
@@ -91,6 +92,7 @@ BEGIN_MESSAGE_MAP(CSo7_Util_Program, CDialog)
ON_BN_CLICKED(IIDC_RADIO_SO7_PROGRAM_MOVE_TO, &CSo7_Util_Program::OnBnClickedRadioSo7ProgramMoveTo)
ON_EN_KILLFOCUS(IDC_EDIT_SO7_PROGEAM_CNC_RUING_TIMES, &CSo7_Util_Program::OnEnKillfocusEditSo7ProgeamCncRuingTimes)
ON_BN_CLICKED(IDC_CHECK_SO7_RUNING_PROGRAM_RUNING_INFINITE, &CSo7_Util_Program::OnBnClickedCheckSo7RuningProgramRuningInfinite)
ON_EN_KILLFOCUS(IDC_EDIT_SO7_PROGEAM_INTERCAL_TIME_PER_CNC, &CSo7_Util_Program::OnEnKillfocusEditSo7ProgeamIntercalTimePerCnc)
END_MESSAGE_MAP()
@@ -98,9 +100,7 @@ END_MESSAGE_MAP()
//================================================================================================
BOOL CSo7_Util_Program::OnInitDialog()
{
CDialog::OnInitDialog();
CDialog::OnInitDialog();
{
m_Thread_State = THREAD_RUNNING_STATE;
m_hTriggerEvent = CreateEvent(NULL,FALSE,NULL,NULL);
@@ -119,6 +119,8 @@ BOOL CSo7_Util_Program::OnInitDialog()
m_pSO7_Proto->g_machine.z._Move_Speed_Gear=3;
(GetDlgItem(IDC_EDIT_SO7_PROGEAM_CNC_RUING_TIMES))->SetWindowTextW(_T("1"));
(GetDlgItem(IDC_EDIT_SO7_PROGEAM_INTERCAL_TIME_PER_CNC))->SetWindowTextW(_T("0"));
((CButton *)GetDlgItem(IDC_RADIO_SO7_PROGRAM_MOVE))->SetCheck(1);
((CButton *)GetDlgItem(IIDC_RADIO_SO7_PROGRAM_MOVE_TO))->SetCheck(0);
(GetDlgItem(IDC_EDIT_SO7_PROGRAM_X_MOVETO))->SetWindowTextW(_T("10"));
@@ -423,6 +425,17 @@ void CSo7_Util_Program::OnEnKillfocusEditSo7ProgeamCncRuingTimes()
const char* cTmp=T2A(csTmp);
m_RuningCNCTimes =static_cast<unsigned int>( atoi(cTmp));
}
//===================================================
void CSo7_Util_Program::OnEnKillfocusEditSo7ProgeamIntercalTimePerCnc()
{
UpdateData(TRUE);
USES_CONVERSION;
CString csTmp;
(GetDlgItem(IDC_EDIT_SO7_PROGEAM_INTERCAL_TIME_PER_CNC))->GetWindowText(csTmp);
const char* cTmp=T2A(csTmp);
m_IntervalTimePerCNC =static_cast<unsigned int>( atoi(cTmp));
}
//===================================================
void CSo7_Util_Program::OnBnClickedCheckSo7RuningProgramRuningInfinite()
{
@@ -501,6 +514,7 @@ BOOL CSo7_Util_Program::RunCNC()
m_pSo7_CNC_Program->m_CNC_element.at(m_RuningCNCIndex)->GetPoint(0,0,0,NULL,m_pnt);
m_pSO7_Proto->so7_motion_set_position_xyz(m_pnt.x,m_pnt.y,m_pnt.z,true);
m_RuningCNCIndex++;
Sleep(m_IntervalTimePerCNC);
}
if (m_IsRuningCNC)
{
@@ -651,9 +665,4 @@ void CSo7_Util_Program::OutputWithScroll(const CString &strNewText,CEdit &edtOut
edtOutput.LineScroll(iLine, 0);
edtOutput.SetSel(iCount, iCount);
edtOutput.SetRedraw(TRUE);
}
}
@@ -48,6 +48,7 @@ protected:
clock_t m_StartTime, m_FinishTime;
double m_duration;
unsigned int m_RuningCNCTimes;
unsigned int m_IntervalTimePerCNC;
BOOL m_IsRuningCNC;
int m_RuningCNCIndex;
int m_RptCol;
@@ -81,4 +82,5 @@ public:
afx_msg void OnBnClickedRadioSo7ProgramMoveTo();
afx_msg void OnEnKillfocusEditSo7ProgeamCncRuingTimes();
afx_msg void OnBnClickedCheckSo7RuningProgramRuningInfinite();
afx_msg void OnEnKillfocusEditSo7ProgeamIntercalTimePerCnc();
};
@@ -883,18 +883,17 @@
#define IDC_CHECK_SO7_MOTION_AUTO_SET_ZERO 1819
#define IDC_LIST_SO7_MOTION_CONFIG 1820
#define IDC_EDIT_SO7_MOTION_CONFIG_MSGOUT 1821
#define IDC_EDIT_SO7_PROGEAM_INTERCAL_TIME_PER_CNC 1822
#define IDC_BUTTON_DIY_EXIT_BUTTON 32740
#define ID_EDIT_SO7_CONFIG_MOTION 32741
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 189
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 1822
#define _APS_NEXT_CONTROL_VALUE 1823
#define _APS_NEXT_SYMED_VALUE 104
#endif
#endif