恭喜,你发布的帖子
发布于 2022-12-29 18:38:35
2楼
看里面的内容来自机床参数和定义的GUD文件。赋值就是参数中设定的,变量也是在GUD中赋的初始值。
asdf6大侠,
感谢回复。
"赋值就是参数中设定的"似乎可以肯定,可是“变量也是在GUD中赋的初始值”,跟我实际情况不太相符,在MGUD文件中,所有变量均定义为‘空’或'零'值,例如:-9999, -1, ...等等,奇怪的是在INITIAL.INI文件中有值,例如:
MGUD中:
.....
;===================================================
;---------------------------------------------------
;------------- GESTIONE DOPPIO CANALE --------------
;---------------------------------------------------
; CONFIGURAZIONE AVVIO CN-->PROGRAMMA CMS_9032.SPF
;---------------------------------------------------
;===================================================
DEF CHAN INT _VCH[10]=REP(-1)
.....
而在INITIAL.INI文件中有值,例如
...
_VCH[0]=-1
_VCH[1]=7
_VCH[2]=-1
_VCH[3]=12
_VCH[4]=19
_VCH[5]=20
_VCH[6]=914
_VCH[7]=-1
_VCH[8]=-1
_VCH[9]=-1
...
这些_VCH[..]数组变量用作另一些变量的下标(通道标记),在系统事件驱动程序中会用到,如果没有初始值,会造成混乱,就是不知道这些变量的初始值如何设置的?
下面是第一次上电必须执行的名为RUN1.SPF程序中开始的一段程序:
GOTOF N505;=========================================
;---------------------------------------------------
;----- IMPOSTAZIONE MACCHINA PRIMO POWER ON --------
;---------------------------------------------------
N100;===============================================
$A_OUT[_VCH[3]]=0 ; AZZERA VAR. PLC PER PRG. ESEGUITO
GOTOF N105;=========================================
假如此时变量_VCH[3]尚未赋值,那就乱套了
是否还有其它方式设置初始值呢?再次感谢!
请填写推广理由:
分享
只看
楼主