数控车床子程序返回指令为

数控车床子程序返回指令为,第1张

参考点是CNC机床上的固定点,可以利用参考点返回指令将刀架移动到该点。可以设置最多四个参考点,各参考点的位置利用参数事先设置。接通电源后必须先进行第一参考点返回,否则不能进行其它 *** 作。参考点返回有两种方法:

(1)手动参考点返回。

(2)自动参考点返回。该功能是用于接通电源已进行手动参考点返回后,在程序中需要返回参考点进行换刀时使用的自动参考点返回功能。

自动参考点返回时需要用到如下指令:

(1)返回参考点检查G27

G27用于检验X轴与Z轴是否正确返回参考点。指令格式为:

G27 X(U)____  Z(W)____

X(U)、Z(W)为参考点的坐标。执行G27指令的前提是机床通电后必须手动渣族搏返回一次如祥参考点。

执行该指令时,各轴按指令中给定的坐标值快速定位,且系统内部检查检验参考点的行程开关信号。如果定位结束后检测到开关信号发令正确,则参考点的指示灯亮,说明滑板正确回到了穗早参考点位置;如果检测到的信号不正确,系统报警,说明程序中指令的参考点坐标值不对或机床定位误差过大。

(2)参考点返回指令G28、G30

 G28 X(U) ____ Z(W) ____;    第一参考点返回,其中X(U)、Z(W)为参考点返回时的中间点,X、Z为绝对坐标,U、W为相对坐标。参考点返回过程如图3-14所示。

 G30 P2 X(U)____  Z(W)____;    第二参考点返回,P2可省略

 G30 P3 X(U)____  Z (W)____;    第三参考点返回

 G30 P4 X(U)____ Z(W)____;    第四参考点返回

 第二、第三和第四参考点返回中的X(U)、Z (W)的含义与G28中的相同。

如图3-14所示为刀具返回参考点的过程,刀具从当前位置经过中间点(190,50)返回参考点,其指令为:

G30 X190 Z50;

G30 U100 W30;

如图3-14中的虚线路径所示,如果参考点返回时不经过中间点,则刀具会与工件发碰撞,引起事故。

子程序的调用和返回是一对互逆 *** 作,也是一种特殊的转移 *** 作。

一方面,之所以说是转移,是因为当调用一个子程序时,程序的执行顺序被改变,CPU将转而信哪执行滑念码子程序中的高亮指令序列,在这方面,调用子程序的 *** 作含有转移指令的功能,子程序的返回指令的转移特性与此类似;

另一方面,转移指令是一种“一去不复返”的 *** 作,而当子程序完后,还要求CPU能转而执行调用指令之下的指令,它是一种“有去有回”的 *** 作。

为了满足子程序调用和返回 *** 作的特殊性,在指令系统中设置了相应的特定指令。

调用指令(CALL)

调用子程序指令的格式如下:

CALL 子程序名/Reg/Mem

子程序的调用指令分为近(near)调用和远(far)调用。如果被调用子程序的属性是近的,那么,CALL指令将产生一个近调用,它把该指令之后地址的偏移量(用一个字来表示的)压栈,把被调用子程序入口地址的偏移量送给指令指针寄存器IP即可实现执行程序的转移。近调用指令的堆栈 *** 作.

如果被调用子程序的属性是远的,那么,CALL指令将产生一个远调用。这时,调用指令不仅要把该指令之后地址的偏移量压进栈,而且也要把段寄存器CS的值压进栈。在此之后,再把被调用子程序入口地址的偏移量和段值分别送给IP和CS,这样完成了子程序的远调用 *** 作。远调用指令的堆栈 *** 。

子程序调用指令本身的执行不影响任何标志位,但子程序体中指令的执行会改变标志位,所以,如果希望子程序的执行不能改变调用指令前后的标志位,那么,就要在子程序的开始处保护标志位,在子程序的返回前恢复标志位。

例如:

CALL DISPLAYDISPLAY是子程序名

CALL BXBX的内容是子程序的偏移量

CALL WORD1WORD1是内存字变量,其值是子程序的偏移量

CALL DWORD1DWORD1是双字变量,其值是子程序的偏移量和段值

CALL word ptr [BX]BX所指内存字单元的值是子程序的偏移量

CALL dword ptr [BX]BX所指内存双字单元的值是子程序的偏移量和段值

子程序与主程序间肆宏的参数传递 用高级语言实现的程序,其主程序与子程序之间的参数传递方法是由编译系统来规定的。 一般是采用堆栈或者参数区(地址表)来进行参数的传递。 * 子程序总结: 1.主程序用CALL指令调用子程序,子程序执行完后用RET指令返回到主程序的CALL指令的下一条指令2.主程序有段内调用(NEAR)和段间调用(FAR),子程序返回对应有段内返回和段间返回3.主程序可通过寄存器﹑堆栈﹑地址表以及约定的内存变量向子程序传递参数4.凡在子程序中用到的寄存器必须先送堆栈,返回前按送栈相反的次序出栈5.注意子程序调用时堆栈指针的变化* 8.4 系统服务子程序 除用户设计的子程序外, *** 作系统还提供大量的系统服裂行册务子程序,通常称为中断服务程序带颤。 这类程序通常用于完成必要的输入/输出功能和一些必要的系统 *** 作。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12474256.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-24
下一篇2023-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存