11.PMAC上位机-设置参数

在实际工业程序中,经常需要实时更改当前的参数设置。如对于PMAC运动程序来说,我们可能想在运动的时候在窗口界面改变当前的运动速度,这样就可以完成在PC端控制设备的一切行为。

1.思路

对于如下程序

&1
CLOSE ;确认所有缓冲区被关闭

OPEN PROG 40
CLEAR

TA(200)
TS(20)
F(30)
INC
Linear

p1=1
While (p1 > 0)
  X(20) Y(0)
  Dwell 0
  X(-20) Y(0)
  Dwell 0
EndWhile

CLOSE
如果希望动态改变运动速度,那么将其改造如下:

&1
CLOSE ;确认所有缓冲区被关闭

OPEN PROG 40
CLEAR

TA(200)
TS(20)
F(30)
INC
Linear

p1=1
While (p1 > 0)
  F(p2)
  X(20) Y(0)
  Dwell 0
  F(p2)
  X(-20) Y(0)
  Dwell 0
EndWhile

CLOSE
这样我们在 上位机通过发送命令动态改变p2的值就完成控制运动程序的速度功能了,这就最基本的参数设置思路。再复杂的程序也是通过这种变量控制的方式来完成的,这样的好处在于可以实现规定上下位机交互的变量,直接修改对应的变量值即可,对于自己通过其他方式生成的程序也可以完成参数控制。



2.代码演示

在之前界面上增加参数设置功能,控制运动速度,界面如下:

11.PMAC上位机-设置参数_第1张图片

参数设置代码如下:

void CTest2Dlg::OnSaveSet() 
{
	TCHAR szSpeed[MAX_PATH];

	GetDlgItemText(IDE_SPEED, szSpeed, MAX_PATH);
	SetSpeed(szSpeed);
	
}

void CTest2Dlg::SetSpeed(TCHAR* szSpeed)
{
	TCHAR szRes[MAX_PATH];
	TCHAR szCmd[MAX_PATH];
	
	sprintf(szCmd, "p2=%s", szSpeed);
	PmacGetResponse(0,szRes,MAX_PATH,szCmd);
}
注意这里的状态列表新增参数设置按钮控制。


演示源代码下载链接

原创,转载请注明来自http://blog.csdn.net/wenzhou1219

你可能感兴趣的:(参数,PMAC,PmacGetReponse)