您好!欢迎光临工博士商城

ABB机器人_代理商

产品:40    
联系我们
联系方式
  • 联系人:刘彬
  • 电话:18621383607
  • 邮件:liub@gongboshi.com
  • 手机:18621383607
新闻分类
友情链接
首页 > 新闻中心 > ABB机器人FOR指令和WHILE指令讲解大全
新闻中心
ABB机器人FOR指令和WHILE指令讲解大全
发布时间:2019-05-05        浏览次数:20320        返回列表
 编程是机器人使用的重要一个环节,整个机器人的灵魂都会在这里体现,今天教教大家如何用编程指令改变机器人的方法

目录:

一、WHILE指令

1、WHILE指令结构定义

2、WHILE举例说明

3、WHILE无限循环

二、FOR指令

1、FOR指令结构定义

2、FOR举例说明

3、FOR指令要点

4、FOR指令变量i的举例说明

一、WHILE条件判断循环指令

1、WHILE指令结构定义

1)While指令的结构:

WHILE <EXP> DO  这里<EXP>是条件部分

<SMT>       这里<SMT>是指令输入地方

ENDWHILE

<SMT>是指令输入地方,一般光标选中<SMT>,然后添加指令。<EXP>是条件,光标选中以后单击进去输入表达式;一般条件<EXP>部分可以是表达是,也可以是多个表达是之间的与或异或求余等关系,条件的结果只有对错,如下所示:

=1=true=ON

=0=false=OFF

2)执行过程

WHILE条件判断循环指令一般用于根据特定条件而重复执行相关内容,即只要WHILE后面条件<EXP>成立则一直执行WHILE和ENDWHILE之间的指令片段,直到WHILE后面条件<EXP>不成立时程序指针才跳出到ENDWHILE的下一条指令继续往下运行,而且一般WHILE后面的条件变化要放在WHILE和ENDWHILE指令之间。

2、while举例说明

举例一:

reg1 := 1;

WHILE reg1 <= 10 DO

reg1 := reg1 + 1;

ENDWHILE

执行说明:初始化reg1=1,执行while指令时候,先判断reg1<=10的条件是否成立,如果条件成立则执行循环语句内的内容,while中每次执行一次reg1:=reg1+1,即reg1自加一;执行完一轮以后程序指针又跳到while指令去第二次判断reg1<=10条件是否成立,条件成立则又继续执行循环语句内的内容reg1:=reg1+1,即reg1又自加一一次;这样重复判断条件重复执行while中指令,直到条件reg1<=10不成立,即reg1=11时候,程序执行指针才会跳转到endwhile指令后面,结束while指令,往下继续运行。

举例二:累加计算

PROC rWHILE2()

a := 0;

i := 1;

WHILE i <= 100 DO

a := a + i;

i := i + 1;

ENDWHILE

WaitTime 3;

ENDPROC

程序图片:

程序数据图片:

3、WHILE无限循环

WHILE TRUE DO

<SMT>

ENDWHILE

执行说明:while指令的条件是true,即条件一直成立,所以程序指针执行到while指令以后,程序就会一直永远地执行while指令,程序指针不会跳出到endwhile指令后面继续往下运行,所以这里的while就是一个死循环,即无限循环。一般可以用在编写程序正常自动运行部分,让机器人正常工作时候处于永远执行。

二、FOR重复执行判断指令

1、FOR指令结构定义

1FOR指令结构

FOR <ID> FROM <EXP> TO <EXP> STEP <EXP> DO

<SMT>

ENDFOR

<ID>:循环判断变量

**个<EXP>:变量起始值,**次运行变量等于这个值;

第二个<EXP>:变量终止值,或者叫*末尾值;

第三个<EXP>:变量的步长,每运行一次FOR里面语句变量值自加这个步长值,在默认情况下,step <EXP>是隐藏的,是可选变元项。

(2)FOR指令执行过程

FOR重复执行判断指令一般用于重复执行特定次数的程序内容。程序指针执行到FOR指令时候,**次运行时,变量<ID>的值等于**个<EXP>的值,然后执行FOR和ENDFOR指令的指令片段,执行完以后变量<ID>的值自动加上步长第三个<EXP>的值;然后程序指针跳去FOR指令,开始第二次判断变量<ID>的值是否在**个<EXP>起始值和第二个<EXP>末端值之间,如果判断结果成立,则程序指针继续第二次执行FOR和ENDFOR指令的指令片段,同样执行完后变量<ID>的值继续自动加上步长第三个<EXP>的值;然后程序指针又跳去FOR指令,开始第三次判断变量是否在起始值和末端值之间,如果条件成立则又重复执行FOR里面指令,变量又自动加上步长值;直到当判断出变量<ID>的值不在起始值和末端值时候,程序指针才跳到ENDFOR后面继续往下执行。

2、for举例说明

X := 0;

FOR i FROM 6 TO 10 STEP 2 DO

X := X + i;

ENDFOR

执行说明:

初始化X := 0,然后程序进入FOR重复判断执行指令;

**次执行时候i的值等于6,然后程序执行for里面语句,即X := X + i指令,**次执行后X的值等于6;执行完for里面指令后变量i的值自动加上步长2,即i=i+2=6+2=8;

然后程序指针又跳到FOR指令,进行第二次判断i的值是否属于起始值6和末端值10之间,因为8是大于6和小于10,故判断条件结果成立,程序指针继续第二次执行FOR和ENDFOR之间指令片段,即X := X + i指令第二次执行,X=6+8=14;执行完for里面指令后变量i的值自动加上步长2,即i=i+2=8+2=10;

然后程序指针又跳到FOR指令,进行第三次判断,因为i=10,属于6到10的范围,故判断条件结果成立,程序指针又进入FOR指令,执行X := X + i语句,即X= X + i=14+10=24;执行完for里面指令后变量i的值自动加上步长2,即i=i+2=10+2=12;

然后程序指针跳到FOR指令,第四次判断条件,因为i=12不属于6到10的范围,所以判断条件结果不成立,此时程序指针才跳到ENDFOR指令后面继续往下运行,结束FOR指令执行。

总结:上面举例的FOR指令总共执行了3次,第四次判断以后条件不成立,结束FOR指令执行。

3、FOR指令要点

1FOR指令结构要认识(同上);

2)FOR指令定义执行过程:FOR指令是重复判断执行,条件会自动加上步长,条件里面变量的范围可以自己指定,具体执行过程(同上);

3FOR指令里面的变量i特点:

**个特点:**次执行for指令,i的值等于起始值;

第二个特点:i的值在默认情况下,每次循环执行完for里面指令以后,i的值加1,即步长默认情况下为1;

第三个特点:i的值每次循环执行完for里面指令以后,自动加上步长step <EXP>指定的<EXP>的值;

第四个特点:i变量在for指令当中是特殊的变量存在:

for指令结构中可以直接使用而不用预先定义,而且i在for当中的值,就等于for指定的起始值,每次运行完一次for里面指令,自动加上步长值,i在for中的值就是和在for外面的值互不影响;

i在for指令结构外面,则必须遵循先定义后使用,遵循变量、可变量和常量规则等;

i在for中的值可以和i在for外面的值互不影响,i在for结构中遵循for变量特点,i在for外面则遵循正常编程规则;

4、for指令变量i的举例说明

1)程序

PROC rFOR3()

X := 0;

i := 100;

FOR i FROM 1 TO 3 DO

X := X + i;

ENDFOR

i := i + 1;

WaitTime 3;

ENDPROC

 

(2).嘿嘿,没有2,但是你想了解更多的ABB机器人的话请点击一下链接

 

ABB机器人

 

 

 




 

联系热线:18621383607 联系人:刘彬 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 ABB机器人_代理商

返回
顶部