報(bào)名人數(shù)298782
資訊中心 > 課程相關(guān)資訊 > 機(jī)器人培訓(xùn) > 機(jī)器人培訓(xùn) >? 流程控制類(lèi)指令Compact IF、IF指令, FOR指令,WHILE指令

流程控制類(lèi)指令Compact IF、IF指令, FOR指令,WHILE指令

時(shí)間:2021-06-01 17:03 來(lái)源:


1.1 Compact IF、IF指令

專(zhuān)注工業(yè)機(jī)器人培訓(xùn)幾十年的老師表示,Compact IF、IF都是條件判斷指令,但是在使用上,它們有很大的區(qū)別。

 

1. Compact IF-如果滿足條件,那么

Compact IF也被稱為“緊湊型”條件判斷指令,因?yàn)樗鶕?jù)判斷只能執(zhí)行一個(gè)指令。指令的使用格式為:

IF <條件表達(dá)式><指令>;

使用實(shí)例1

IF count>8 set do1;  

說(shuō)明:如果count>8,則置位do1信號(hào)。

 

使用實(shí)例2

IF flag1=TRUE GOTO LI;

說(shuō)明:如果flag1=TRUE,則跳轉(zhuǎn)至標(biāo)簽LI;

 

2. IF-如果滿足條件,那么;否則

IF條件判斷指令可以進(jìn)行多重判斷,根據(jù)不同的滿足條件,執(zhí)行相對(duì)應(yīng)的指令。指令的使用格式為:

 

IF <條件表達(dá)式>THEN

<指令>

    ELSEIF<條件表達(dá)式>THEN

<指令>

ELSE

<指令>

ENDIF

使用實(shí)例1

IF reg1 > 0 AND reg1<10 THEN

  Set do1;

ELSEIF reg1>=10 THEN

Reset do1;

ENDIF

說(shuō)明:如果reg1大于0小于10,則把do11;如果reg1大于等于10則重置do1。

 

使用實(shí)例2

IF flag1 =TRUE THEN

reg1:=reg1+1;

ENDIF

說(shuō)明:如果flag1等于true,則reg11。

 

1.2 FOR指令

FOR-重復(fù)給定的次數(shù)

FOR指令也稱為循環(huán)指令,當(dāng)一個(gè)或多個(gè)指令重復(fù)多次時(shí)使用。其的使用格式如下:FOR <循環(huán)計(jì)數(shù)器數(shù)據(jù)名稱>FROM <起始值> TO<結(jié)束值> [STEP <步長(zhǎng)值>]DO

<指令>

ENDFOR

來(lái)自智通工業(yè)機(jī)器人培訓(xùn)專(zhuān)家的一則小貼士:
       循環(huán)計(jì)數(shù)器的數(shù)據(jù)名稱不需要提前定義,其為num型數(shù)據(jù)。


使用實(shí)例1

FOR i FROM 1 TO 10 DO

routine1;

ENDFOR

說(shuō)明:重復(fù)例行程序routine1 10,其中步長(zhǎng)值step默認(rèn)為1

 

使用實(shí)例2

FOR p FROM 2 TO 10 step 2 DO

routine1;

ENDFOR

說(shuō)明:例行程序routine1重復(fù)5,因?yàn)椴介L(zhǎng)值step2,所以p的值依次為2、4、6、8、10。

 

使用實(shí)例3

FOR p FROM 10 TO 2 step -2 DO

routine1;

ENDFOR

說(shuō)明:重復(fù)例行程序routine1 5,因?yàn)椴介L(zhǎng)值step-2,所以p的值依次為10、8、6、4、2。

來(lái)自智通工業(yè)機(jī)器人培訓(xùn)專(zhuān)家的一則小貼士:
如果循環(huán)計(jì)數(shù)器的數(shù)值在起始值和結(jié)束值的范圍之外,則指針跳出POR循環(huán),程序繼續(xù)執(zhí)行緊接ENDFOR的指令。

1.3 WHILE指令

WHILE-只要便重復(fù)

只要給定條件表達(dá)式評(píng)估為TRUE值,當(dāng)循環(huán)執(zhí)行一些指令時(shí),使用WHILE。該指令的使用格式如下:

WHILE <條件表達(dá)式> DO

……

ENDWHILE


使用實(shí)例1

WHILE reg1<8 DO

  …..

reg1:=reg1+1;

ENDWHILE

說(shuō)明:只要reg1<8條件成立,則一直執(zhí)行循環(huán)內(nèi)的語(yǔ)句,否則跳出WHILE循環(huán)。

 

使用實(shí)例2

WHILE TRUE DO

  ……

ENDWHILE

說(shuō)明:如果條件一直處于成立狀態(tài),則循環(huán)內(nèi)語(yǔ)句無(wú)限循環(huán)。這種使用實(shí)例經(jīng)常被用于與初始化程序進(jìn)行隔離。


來(lái)自智通工業(yè)機(jī)器人培訓(xùn)專(zhuān)家的一則小貼士:
    如果表達(dá)式值在開(kāi)始時(shí)即為FALSE,則不執(zhí)行WHILE內(nèi)的語(yǔ)句。如果可以確定重復(fù)的次數(shù),也可以使用FOR指令。