如果我們想在發那科機器人編程中對一定的內容進行多次重複執行,可以用什麼指令來滿足?
一般來講,介於FOR和ENDFOR指令中間的程序內容可以實現多次重複執行,FOR和ENDFOR是一組成對出現的指令,缺一不可,在專業上稱之為循環指令。
? FOR 代表循環指令的開始;通過 FOR指定的值來確定循環的次數。
? ENDFOR 代表循環指令的結束。
FOR 指令的格式如下:
計數器使用的是暫存器(R[i]),用於記錄循環的次數。
初始值可以使用常數(Constant)、暫存器(R[i])、自變量(AR[i]),常數可以給定的範圍:-32767 到 32766 的整數。
目標值可以使用常數(Constant)、暫存器(R[i])、自變量(AR[i]),常數可以給定的範圍:-32767 到 32766 的整數。
當指定 TO 時,初始值 < 目標值,其意思是每循環一次使得計數器的值增加 1,直到條件不再滿足的時候才結束該循環指令,也就時說初始值與目標值決定了循環的次數;
Eg:初始值為1,目標值為3,則循環執行三次該內容。
執行 FOR 指令時,在計數器的值中代入的是初始值。
計數器使用的是暫存器(R[i]),用於記錄循環的次數。
初始值可以使用常數(Constant)、暫存器(R[i])、自變量(AR[i])。常數可以給定的範圍:-32767 到 32766 的整數。
目標值可以使用常數(Constant)、暫存器(R[i])、自變量(AR[i])。常數可以給定的範圍:-32767 到 32766 的整數。
當指定 DOWNTO 時,初始值 > 目標值,其意思是每循環一次使得計數器的值減1,直到條件不再滿足的時候才結束該循環指令,也就時說初始值與目標值決定了循環的次數;
Eg:初始值為3,目標值為1,則循環執行三次該內容。
執行 FOR 指令時,在計數器的值中代入的是初始值。
ENDFOR指令的格式如下:
執行 ENDFOR 指令時,只要滿足如下條件,就可以反覆執行 FOR與ENDFOR 之間的內容。
?指定 TO 時,初始值 < 目標值。
?指定 DOWNTO 時,初始值 > 目標值。
當條件不滿足時,指針移到對應ENDFOR 指令的後續行,此時就不再執行 FOR/ENDFOR 區間。
如圖1-5所示,對介於FOR和ENDFOR指令中間的程序內容反覆執行3次後再執行第八行的指令。
報警說明
FOR和ENDFOR 指令在如下狀況下會發生錯誤報警:
? 在 FOR/ENDFOR 區間中進行嵌套循環,最多可以嵌套 10 個層級。超出 10 個層 級,程序執行時會發生錯誤報警。
? FOR和 ENDFOR 指令必須存在相同程序內且FOR和 ENDFOR數量相同。任一個不足時,執行程序會發生報警。
? 在執行 FOR 指令時,初始值或者目標值中使用整數以外的數值,程序會發生錯誤報警。
? 在執行 ENDFOR 指令時,計數器的值或者目標值中使用整數以外的數值,程序會發生錯誤報警。
好啦,關於Fnauc機器人循環指令就介紹到此結束啦 (●ˇ?ˇ●)
閱讀更多 技皆知 的文章