通用LOGO语言的基本知识_第1页
通用LOGO语言的基本知识_第2页
通用LOGO语言的基本知识_第3页
通用LOGO语言的基本知识_第4页
通用LOGO语言的基本知识_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通用LOGO语言的基本知识1常数 LOGO语言允许使用十进制数,写法与平常的十进制数相同。 使用的数为整型量,允许值为065535,不能直接使用小数和分数,小数3.14*100可写为314*100/100,计算机会自动取整。2变量 变量名为字母开头的任意长度的字母与数字的组合,但不能使用作为命令的关键字(关键字见附表),变量名前要加:如:A。 变量名中不能有空格,不能使用方括号、圆括号、运算符。 所有变量,除过程参数外,必须先定义后使用。 W0、W1为预定义的字变量(字变量允许值为065535),如使用其他名做字变量,须用。Make 变量名 表达式 定义后使用。 所有变量均为过程变量(只限于本

2、过程中使用),TY0-16 为全程变量(可在整个程序中使用),使用前要定义。3表达式 表达式可以为常量、变量、运算符等。 如果其中使用变量,必须用:变量名 的形式,如:A+B 应写成 :A+:B。 表达式的写法与数学中有些不同,4a+3b-2 应写成4*:A+3*:B-24运算 LOGO语言中有加、减、乘、除四种运算,加号、减号、乘号、除号分别用“+”、“-”、“*”、“/”符号表示。 LOGO语言中没有乘方运算,2可写成2*2*2 运算的次序与数学一样,先乘除后加减,同级运算自左至右顺序计算,要改变顺序,可加圆括号,不能使用方括号和花括号。 LOGO语言中逻辑运算符有三种:AND(与)、OR

3、(或)、NOT(非),逻辑运算符,逻辑运算符前后的表达式要加圆括号,如(:A+:B)AND (:B+:C)。四、通用LOGO语言的基本命令对于在LOGO语言中,输入命令就被立即执行,我们通常称之为“立即方式”,或“命令方式”。1前进命令FORWARD(简写FD)【格式】 FD 步长【功能】命令机器人按当前方向前进指定的步长。 【说明】 在LOGO语言中,命令与数据之间是以空格分隔的。如,在输入的前进命令和步长之间必须用空格分隔。 机器人移动时,要特别注意它的当前位置和方向,当前方向就是它的头所指的方向。 让机器人移动时,是通过步长的长短来控制机器人前进的距离。 步长的具体值就是指距离的长短(机

4、器人的默认值为每1个步长为0.5厘米)。如FD 100中步长值为100,是让机器人前进50厘米。 输入的LOGO命令既可以是大写字母,也可以是小写字母,例如, “fd 100”命令,也可以写成“FD 100”,两种输入方式的执行效果相同2. 右转命令RIGHT(简写RT)【应用】前进100步: 命令方式:FD 100 过程方式: TO QJ FD 100 END2后退命令BACK(简写BK)【格式】 BK 步长【功能】命令机器人按当前方向后退指定的步长。 【说明】 让机器人移动时,是通过步长来控制机器人后退的距离。 机器人移动时,要特别注意它的当前位置和方向,后退方向就是它的头所指的反方向。

5、步长的具体值就是指步长的长短(机器人的默认值为每一步长为0.5厘米)。 前进、后退等命令需要的数据既可以是具体数值,也可以是一个算式,机器人会自动计算算式,再按计算的结果完成任务。在计算机中加号、减号、乘号、除号分别用“+”、“-”、“*”、“/”符号表示。【应用】后退100步: 命令方式:BK 100 过程方式: TO HT BK 100 END3左转命令LEFT(简写LT)【格式】 LT 角度【功能】命令机器人向左 (逆时针方向) 转动指定的角度。 【说明】 让机器人转动时,是通过角度的值来控制机器人向左转动的角度。 LOGO语言中LT 180,此命令的是让机器人左转180度。【应用】向左

6、转动90度: 命令方式:LT 90 过程方式: TO ZZ LT 90 END4右转命令RIGHT(简写RT)【格式】 RT 角度【功能】命令机器人向右 (顺时针方向) 转指定的角度。 【说明】 让机器人转动时,是通过角度的值来控制机器人向右转动的角度。 LOGO语言中RT 90,此命令的意思是机器人右转90度。【应用】向右转动90度: 命令方式:RT 90 过程方式: TO YZ RT 90 END5时间命令WAIT【格式】 WAIT 时间【功能】等待一段时间。 【说明】 在让机器人运动时,可以通过时间命令,调整两个命令间的等待时间。 WAIT 1000 此命令是将等待时间设为1000毫秒(

7、1秒)。【应用】前进100步,等待1秒: 命令方式:FD 100 WAIT 1000 过程方式: TO DD FD 100 WAIT 1000 END6初始化命令DRAW【格式】 DRAW【功能】将LOGO语言系统恢复为启动时的初始状态。【说明】 初始化命令,将系统恢复为启动时的初始状态。 初始化命令,是一个无参数命令。 系统启动时默认为初始状态,可以省略。7落笔命令PD【格式】 PD 【功能】命令机器人落下“画笔”,机器人就又可以画图了。 落笔命令在“仿真”运行时可以使用,落笔后,机器人移动时可以留下移动的轨迹。 安装了画笔模块,机器人就会有一支真正的画笔,这时落笔命令才有作用。 落笔命令P

8、D后面没有参数。 落笔命令要与抬笔命令配合使用,当机器人处于抬笔状态时,移动不会留下痕迹,只有输入落笔命令,机器人移动时可以留下移动的轨迹。【应用】机器人落下画笔,前进100步: 命令方式:PD 过程方式: TO DD PD FD 100 END8抬笔命令PU【格式】PU【功能】命令机器人抬起“画笔”,这时,机器人再移动时,就不会留下痕迹了。【说明】 抬笔命令在“仿真”运行时可以使用,系统默认为抬笔状态。 机器人安装了画笔模块,机器人就会有一支真正的画笔,这时抬笔命令才有作用。 抬笔命令PU后面没有参数。【应用】机器人落下画笔,前进100步,抬起画笔,前进100步: 命令方式:PU 过程方式:

9、 TO DD PD FD 100 PU FD 100 END9重复命令REPEAT【格式】 REPEAT 重复次数需要重复的命令【功能】将方括号内的命令重复执行指定的次数。【说明】 使用重复命令的关键是要找准“需要重复的命令”。画4条线就应重复4次,画一条线的命令就是“需要重复的命令”。 当某些命令需要反复执行多次时,用重复命令,可以简化命令的输入过程。【应用】画正方形: 命令方式:REPEAT 4FD 100 WAIT 500 RT 90 WAIT 500 过程方式: TO ZFXREPEAT 4FD 100 WAIT 500 RT 90 WAIT 500 END10赋值命令MAKE【格式】

10、 MAKE 变量名 表达式 【功能】将表达式的值,赋给指定的变量。【说明】 “”表示赋值对象,后面是变量名。 表达式是赋值内容,执行赋值命令时先计算,然后将值赋给变量名表示 的变量,如MAKE A 8*3/2,执行后A的值就是12.。【应用】给变量赋值(前进200步): 命令方式:MAKE A 100 过程方式: TO QJ MAKE A 100 MAKE B :A+100 FD :BEND11声音命令PLAY【格式】PLAY On C D E F G A B【功能】让机器人按照曲谱演奏音乐。【说明】在PLAY命令的曲谱中,包括音符、音阶、节拍、音速。 音符:在PLAY命令中,简谱的1、2、3

11、、4、5、6、7分别是用字母C、D、E、F、G、A、B表示的。 音阶:在PLAY命令中,用On表示音阶的组别,n为06之间的整数,表示从低到高的7个音阶,系统默认的音阶是O3。 节拍:节拍是指音符发声的长度。在PLAY命令中,Ln指定了音符的节拍,它后面的音符都按规定的节拍演奏。n为节拍代码,它是164之间的整数,系统默认的节拍是L4。常用节拍对照表音符名全音符二分音符四分音符八分音符十六分音符节拍值4拍2拍1拍1/2拍1/4拍简谱示例6-6-666节拍代码124816 音速音速是指机器人演奏乐曲的速度,当我们让机器人演奏欢快的乐曲时,就应设置快些的音速。Tn指定了音速,系统默认的音速是T12

12、0。当n大于120时,演奏速度较慢;当n小于120时,演奏速度较快。 在音符前面的节拍代码,可以单独指定这音符的长度。如,“2E”表示让机器人唱两拍的“3”音,即“3-”。 在音符后面的符号“.”相当于简谱中的符点。如,“2E .”表示三拍的“3”音,即“3-”。 乐曲的末尾出现了休止符,在PLAY命令中,休止符用Pn表示,n的取值与节拍代码相同。如,P8表示八分休止符。【应用】演奏1、2、3、4、5、6、7 命令方式:PLAY O2 C D E F G A B 过程方式: TO MUSIC PLAY O2 C D E F G A B END12条件转移命令1【格式1】 IF 条件表达式 TH

13、EN 命令组 【功能】当条件表达式成立时,先执行THEN后面的命令,再执行下一行命令。当条件表达式不成立时,就直接执行下一行命令。【说明】 条件转移命令使机器人有了判断的能力。根据判断出的结果,机器人可以有选择地进行下一步的工作。在条件表达式中,可以使用下面的关系运算符号:等于大于大于等于小于小于等于=60 :X+25*2 :N=0 都是简单条件。 复杂条件由简单条件进行一些逻辑运算就是复杂条件。 逻辑运算LOGO语言中逻辑运算符有三种:AND(与)、OR(或)、NOT(非),逻辑表达式的运算结果是一个逻辑值。 逻辑运算结果如下:A AND :B 只有A 为真,B为真,逻辑表达式为真。:A O

14、R :B A和B中只要一个为真,逻辑表达式为真。:NOT :N N为真,逻辑表达式值为假; N为假,逻辑表达式值为真。 在逻辑运算、关系运算、数学运算的组合条件判断中,必须使用括号来表明运算顺序。 各种数学运算的范围为:065535,不能超过。除法运算为整数除法,即取商。【应用】躲避前方障碍物过程方式:TO QBZ FD 2 WAIT 2 IF :PIN5=0 THEN RT 90END13条件转移命令2【格式2】 IF THEN ELSE 【功能】当条件表达式成立时,执行THEN后面的“命令1”;当条件表达式不成立时,执行ELSE后面的“命令2”。执行完命令1或命令2后,再执行下一条命令。【

15、说明】条件转移命令IF THEN ELSE 必须写在一行。【应用】躲避前方障碍物过程方式:TO QBZ IF :PIN5=0 THEN RT 90 ELSE FD 2 WAIT 2END14停止命令STOP【格式】 STOP【功能】过程执行中遇到此命令,立即停止执行当前的过程。【应用】躲避前方障碍物过程方式:TO QBZ FD 2 WAIT 2 IF :PIN5=0 THEN STOPEND15返回命令RETURN【格式】 RETURN【功能】返回调用过程命令的下一个命令。五、过程1什么是过程我们把机器人完成一件事情所需要的所有命令放在一起,取个名字保存起来,就形成了一个过程。调用过程时,只要

16、直接调用过程的名字,机器人就会自动完成过程中所有的命令,做完这件事情。LOGO系统有两种执行方式:在LOGO语言下传过程名对话框中,输入命令,进行命令下传后,命令就被立即执行,我们通常称之为“立即工作方式”,或“命令工作方式”;在LOGO语言窗口中编辑的过程,需要被调用后才能执行,我们通常称之为“延迟方式”,或“程序工作方式”。使用过程不仅为LOGO系统增添了新的命令,而且修改起来十分方便,还可以长期保存、随时调用。2过程的组成过程由三部分组成:过程头、过程体、过程尾。【格式】TO 过程名 (过程头)过程体 (完成某一任务的全部命令)END (过程尾)【功能】让机器人做一件事情的所有的命令放在

17、一起就形成了一个过程,只要直接调用过程的名字,机器人就会自动完成过程中所有的命令。【说明】 过程头:过程开始的标志。以“TO”开始,后面是给出的过程名,“TO”与过程名之间用空格分开。 过程名可以是英文字母、英文字母与数字的组合或汉字,但不能与LOGO命令名相同,也不能用、/、等运算符号和空格键。 过程体:完成某一任务的全部命令,我们学过的命令都可以做过程体的内容。 过程尾:过程的最后一行是“END”,表示过程的结束, END必须另起一行。六、输入和输出端口1机器人共有16个双向的I/O(输入输出)口,打开和关闭不同的I/O口,机器人会有不同的反应。2红外线传感器端口机器人配有3个红外线传感器,它们分别是:功能I/O值为0值为1前红外线传感器PIN5发现避障没发现避障左红外线传感器PIN6发现避障没发现避障右红外线传感器PIN7发现避障没发现避障I/O(8-15号端口)的默认值I/O值为0值为1声音PIN8关开电风扇PIN9关开空PIN10画笔PIN11抬笔落笔左火焰传感器PIN12发现火源没发现火源右火焰

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论