机器人教程.doc

上传人:b****2 文档编号:1511231 上传时间:2022-10-22 格式:DOC 页数:47 大小:885.05KB
下载 相关 举报
机器人教程.doc_第1页
第1页 / 共47页
机器人教程.doc_第2页
第2页 / 共47页
机器人教程.doc_第3页
第3页 / 共47页
机器人教程.doc_第4页
第4页 / 共47页
机器人教程.doc_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

机器人教程.doc

《机器人教程.doc》由会员分享,可在线阅读,更多相关《机器人教程.doc(47页珍藏版)》请在冰豆网上搜索。

机器人教程.doc

流程控制模块——If模块

 

If语句与if-else语句

   if——“如果,假如”;

   else——“否则”。

   在C语言中,if语句测试一个特定的条件。

如果该条件为真(即条件成立),一条或一组指令将被执行;否则,这一条或一组指令将不被执行。

   if-else语句测试一个特定的条件。

如果该条件为真(即条件成立),执行if所指向的某一条或一组指令;否则,将执行else语句指向的某一条或一组指令。

 

If模块的使用

   在RoboEXP中,我们使用If模块来实现C语言中的if和if-else语句。

If模块图标由If图标和Endif图标组成。

只要把If模块拖动到编程区,编程区中就会自动出现If图标和EndIf图标。

   使用If模块实现C语言中的if语句,只需通过若干线和模块图标把If图标的右边与EndIf图标的左边连接起来就行了。

举一个简单的例子:

如果测试的条件为真(即条件成立),执行Calculate模块对应的指令;否则不执行Calculate模块对应的指令。

编程区如下图:

   使用If模块实现C语言中的if-else语句,只需在上述基础上把If图标与EndIf图标的下边连接起来就行了。

举一个简单的例子:

如果测试的条件为真(即条件成立),执行Calculate模块对应累加1的指令;否则执行Calculate模块对应累加2指令。

编程区如下图:

与C语言的if和if-else语句相似,If模块所测试的特定条件是一个逻辑运算或比较运算的表达式(条件表达式),其运算结果只有真和假两种。

与C语言一样,在RoboEXP中用1表示真,0表示假。

 

If模块的运算符:

   If模块中用到的运算符有比较运算符和逻辑运算符。

   在RoboEXP中,用到的算术运算符有五种:

+、-、*、/、%,用到的比较运算符有六种:

<、<=、>=、>、==、!

=,用到的逻辑运算符有两种:

逻辑与&&、逻辑或||。

这些运算符的使用与C语言相同,详情如下表:

运算

结果

X+Y

计算X和Y的和

X-Y

计算X和Y的差

X*Y

计算X和Y的积

X/Y

计算X和Y的商

X%Y

计算X除以Y的余数

X

如果X小于Y,则为真,否则为假

X<=Y

如果X小于或等于Y,则为真,否则为假

X>=Y

如果X大于或等于Y,则为真,否则为假

X>Y

如果X大于Y,则为真,否则为假

X==Y

如果X等于Y,则为真,否则为假

X!

=Y

如果X不等于Y,则为真,否则为假

X&&Y

如果X和Y均为真,则为真,否则为假

X||Y

如果X或Y为真,则为真,否则为假

注:

如果两个数都是整数,那么“/”表示的是整除的意思,即只保留运算结果的整数部分而舍弃小数部分。

例如21/6的结果不是3.5而是3。

  取模运算符“%”用于计算两个数相除后得到的余数,它只适用于两个整数之间的计算。

例如21%6的结果是3,21%7的结果是0。

If模块的设置

   当If模块的条件表达式为空时,默认测试的条件是1(即默认为真)即必定执行if后模块。

要修改If模块的测试条件,双击If图标,在属性对话框中显示if模块属性,或点击“视图”→“属性窗口”,进入如下对话框:

   条件表达式编辑框   条件表达式由运算符和变量组成,它们可以直接输入,也可以点击窗口中的运算符、选择变量进行输入,检验表达式的语法正误。

条件表达式编辑框中输入表达式的同时,在图形窗口区域内直接出现该表达式。

   变量选择窗口   该窗口下拉菜单的变量为已经定义过的局部变量或全局变量,表达式中的变量必须是已经定义过的变量。

   提示窗口   提示窗口中输入的信息,并不会在If图标中直接显示出来,而是当鼠标移动到If图标时,显示该提示信息。

注意:

当在条件表达式编辑框中输入未被定义过的变量时,用检验表达式的语法正误不会检查出错误,但编译时无法编译成功,因为该变量没有定义过。

 

If模块应用实例

   用If模块编辑一个实际的例子程序。

该程序是判断一变量j值是否等于0,如果i增加10,否则i减少10。

程序的编辑步骤如下:

1)新建图形化应用程序;

2)各拖动一个If模块、两个calculate模块到编程区,然后按下图连线:

3)参阅定义变量的章节,定义一个unsignedchar类型的变量i、j并设置calculate模块信息,详参照calculate模块设置;

4)设置If模块。

双击If图标,在右侧属性栏设置属性。

在条件表达式窗口中直接输入j==0,提示窗口中输入相关提示信息,便于程序理解;

5)这样,程序就完成了;如图所示:

6)参阅编译的章节,编译该程序,并保存。

流程控制模块——While模块

 

   在某些情况下,我们可能需要反复处理一组事件。

为了反复处理这一组事件,我们可能需要重复地编写一组相同的代码。

但是,这样的工作既烦琐又辛苦,而且编写的代码难以维护和修改。

为了减少这种重复性的操作,程序设计语言提供了循环语句,它允许程序重复执行某一组指令。

While语句

   while——“当……的时候”。

   C语言提供while语句来重复执行某一组指令。

在C语言中,while语句测试某个特定条件,若特定条件为真(条件成立),程序就重复执行while循环体内的指令,直到特定条件为假(条件不成立)时才退出循环。

   在执行循环体内指令的过程中,如果无法导致特定条件变为假,那么程序将无法从循环中退出。

这就是通常所说的“死循环”。

巧妙地利用“死循环”,能够达到一些特殊的效果。

While模块的使用

   在RoboEXP中,我们使用While模块来实现C语言中while语句。

While模块的图标是由While图标和EndWhile图标组成。

   只要把While模块拖动到编程区,编程区中就会自动出现While图标和EndWhile图标。

   使用While模块实现C语言中的while语句,只需通过若干线和模块图标把While图标的右边与EndWhile图标的左边连接起来就行了。

举一个简单的例子:

如果测试的条件为真(即条件成立),默认情况下,while条件衡为真,循环执行test=test+1,直到条件变为假(即条件不成立)才退出循环,该程序为死循环。

编程区如下图:

   与C语言的while语句相似,While模块所测试的特定条件是一个逻辑运算或比较运算的表达式(条件表达式),其运算结果只有真和假两种。

与C语言一样,在RoboEXP中用1表示真,0表示假。

While模块的运算符

   While模块中用到的运算符有比较运算符和逻辑运算符。

具体说明请参阅If模块。

While模块的设置

   当While模块的条件表达式为空时,默认测试的条件是1(即默认为真)。

要修改While模块的测试条件时,您只需双击While图标,然后在弹出的对话框中编辑条件表达式。

   While模块的设置与If模块的设置相似。

While模块的应用示例

   在这里,我们将会用While模块编辑一个实际的应用函数。

该程序是一变量test,初始值为0,每次加5递增,如果test的值大于100则退出。

程序的编辑步骤如下:

1)新建一个图形化应用程序。

2)拖动一个While模块、一个Calculate模块图标到编程区,然后按下图连线:

3)参阅定义变量的章节,定义一个unsignedchar类型的变量test。

4)对Calculate模块图标设置,与If模块的设置相似,如下图:

5)设置While模块。

双击While图标,载右侧出现属性对话框。

先在变量选择框选中变量test,然后在比较选择框选中运算符<=,接着在操作数输入框中输入100并按回车键(Enter),如下图:

6)参阅编译的章节,编译该程序,并保存。

流程控制模块——For模块

 

For语句

   c语言中的for语句使用与while语句相似,都表示循环,它不仅可以用于循环次数已经确定的情况,而且还可以用于循环次数不确定而只给出循环结束条件的情况。

但是在RoboEXP中,for语句只用于循环次数已经确定的情况,这点与c语言稍有不同。

   当给定循环次数时,每执行一次for语句所包含的指令,循环次数减少一次,直到循环次数为0为止。

 

For模块的使用

   在RobotEXP中,使用For模块来实现c语言中的for语句,For模块的图标由和图标组成。

   只要把For模块拖动到编程区,编程区中就会自动出现For模块图标。

使用For模块实现c语言中For语句,只需通过若干线和模块图标把For图标和其他图标连接起来。

 

For模块的设置

   单击For模块图标,for模块的属性出现在属性对话框中。

   “提示”——可输入对该for循环的提示信息,点击最右侧图标,进入如图对话框设置提示信息,例:

                 当鼠标移到for模块图标上时,自动显示该提示信息;

   “循环次数”——输入该循环的循环次数,输入一个正整数。

 

For模块应用实例

   对变量var0累加10次,循环满10次时退出。

步骤如下:

1)新建一个图形化应用程序;

2)拖动一for模块、Calculate模块到编程区,并如图连接起来;

3)定义一个int类型的局部变量var0,并赋初值1;

4)设置For模块,输入提示信息和循环次数10;

5)设置Calculate模块,参考Calculate模块设置;

6)编译该程序,并保存。

流程控制模块——Calculate模块

 

   calculate——“计算”。

 

算术表达式与赋值表达式

   由参与运算的数据和算术运算符按一定语法形式组成的符号序列,就是算术表达式。

用圆括号括住的算术表达式仍是算术表达式。

两个或两个以上的表达式可以通过算术运算符和圆括号连接,组成新的更复杂的算术表达式。

算术表达式跟数学上的四则运算十分相似,其求值次序也相同:

先计算括号内的表达式,再计算括号外的表达式;先乘除、后加减;从左到右进行计算。

例如:

variable

45

a*(b+11)

都是合法的算术表达式。

   程序执行过程中,算术表达式的运算结果有时会是错误的或没有定义的数值。

这种特殊情况叫运算异常。

这种异常的产生,可能是因为算术运算本身(如除零),也可能是因为计算机的结构(如数据溢出)。

将算术表达式的运算结果赋值给某个变量,这样就成了一个赋值表达式。

变量的值主要通过赋值运算改变。

与数学算式不同,在赋值表达式中,被赋值的变量放在赋值运算符(在C语言中,赋值运算符是“=”)左边,算术表达式放在赋值运算符右边。

例如:

variable=45

variable=a*(b+11)

都是合法的赋值表达式。

其中variable=a*(b+11)就是将算术表达式a*(b+11)的运算结果赋值给变量variable。

 

Calculate模块的应用

在机器人快车中,我们使用Calculate模块来给变量赋值。

把Calculate模块从流程控制库拖动到编程区,然后用线把Calculate图标的左右两边跟其它图标连接起来,如下图:

 

Calculate模块的设置

   在设置Calculate模块之前,Calculate模块的算术表达式是空的,它对程序没有任何影响。

只需双击Calculate图标,在编程区右侧会出现该模块的属性窗口,然后就能在弹出的属性对话框中编辑算术表达式。

如下图:

    Calcul

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 实习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1