找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 18514|回复: 3

【NXT-G中文使用帮助】循环模块

[复制链接]
发表于 2011-8-11 09:33:53 | 显示全部楼层 |阅读模式
使用此模块可重复代码的序列。 设置循环结束的条件: 经过时间、重复次数、逻辑信号或传感器。 也可设置循环永不停止。

显示设置

loop_01.png
loop_02.png

  • 当“循环”模块的动作属性设置为“永久”时,将在模块尾部的底部显示无穷大符号 (∞)。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。 也可以使用当前计数控制循环本身。 (请参见如下“配置循环模块”部分的“计数”设置)。
  • 如果选择一个传感器控制循环,“循环”模块的尾部尺寸将增大,显示所选传感器的图标。 例如,选择了“光线传感器”控制循环,将在模块扩大的部分显示“光线传感器”图标。 此外,任何有关所选属性的相关信息将在模块的底部显示。

向循环模块添加模块

如果在序列束中放置一个“循环”模块,序列束较短的部分将显示在“循环”模块内;拖至序列束此部分上的编程模块将与之对齐。 任何拖入已经含有编程模块的新模块将导致框向两侧扩大。 这将扩大空间以使新的模块与序列束对齐。

移动循环模块

仅可以单击模块本身以选择并移动“循环”模块;单击周围的框或框内的模块没有作用。

配置循环模块

可使用“控制”属性下拉菜单中的五个主要影响循环的条件来进行选择:

永久

loop_03.png

如果选择“永久”,循环内任何编程模块将永久重复,没有中断。
  • 选择“显示计数器”复选框将循环的数量用作另一模块的输入。 (示例: 要增加“电机”模块的电源。)

时间

loop_04.png

如果选择“时间”,循环内的编程模块将重复直至已超过特定的秒数。 在达到时间期限时,循环将结束。
  • 使用此框键入循环将运行的秒数。 例如,如果选择了 5 秒,循环将在经过 5 秒后结束。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

触动传感器

loop_05.png

如果选择“触动传感器”,循环内的编程模块将重复直至触动传感器受到碰撞、按压或释放。 然后循环将结束,程序将继续。
  • 选择触动传感器连接的端口。
  • 使用单选按钮指定是否希望触动传感器受到碰撞、按压或释放时结束循环。 如果希望模块在触动传感器被快速的按压和释放时触发(持续时间不超过 0.5 秒),则选择“碰撞”。 如果希望模块在触动传感器被按压时触发,则选择“按压”。如果希望模块在触动传感器被释放时触发,则选择“释放”。
  • 可使用反馈框测试触动传感器。 当机器人上的传感器被激活时,将在此处显示编号“1”。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

声音传感器

loop_06.png

如果选择“声音传感器”,循环内的编程模块将重复直至声音传感器检测到特定范围内的声音。
  • 选择声音传感器插入的端口。默认情况下,模块会将端口 2 设置给声音传感器。
  • 可使用滑块或在输入框中键入值来指定触发值。 如果希望声音强度高于触发值时结束循环,则选择滑块右侧的单选按钮;如果希望声音强度低于触发值时结束循环,则选择左侧的单选按钮。 也可以使用下拉菜单设置将结束循环的滑块部分。
  • 反馈框显示当前声音读数(0-100%)。 可使用其验证不同的触发值。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

光线传感器

loop_07.png

如果选择“光线传感器”,循环内的编程模块将重复直至光线传感器检测到特定强度的光线。 然后循环将结束,程序将继续。
  • 选择光线传感器插入的端口。默认情况下,模块会将端口 3 设置给光线传感器。
  • 可使用滑块或在输入框中键入值来指定触发值。 如果希望光线强度高于触发值时结束循环,则选择滑块右侧的单选按钮;如果希望光线强度低于触发值时结束循环,则选择左侧的单选按钮。 也可以使用下拉菜单设置将结束循环的滑块部分。
  • 如果选择了“发光”复选框,光线传感器将开启自身小光源并检测是否光被反射回来。
  • 反馈框将显示当前光线读数。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

超声波传感器

loop_08.png

如果选择“超声波传感器”,循环内的编程模块将重复直至超声波传感器检测到特定距离内的物体。
  • 选择超声波传感器插入的端口。默认情况下,模块会将端口 4 设置给超声波传感器。
  • 可使用滑块或在输入框中键入值来指定触发值。 如果希望超声波传感器检测到的物体距离小于触发值时结束循环,则选择滑块右侧的单选按钮;如果希望超声波传感器检测到的物体距离大于触发值时结束循环,则选择左侧的单选按钮。 也可以使用下拉菜单设置将结束循环的滑块部分。
  • 选择读数值,单位:厘米或英寸。
  • 反馈框将显示当前超声波传感器的读数。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

NXT 按钮

loop_09.png

如果选择“NXT 按钮”,循环内的编程模块将重复直至所选 NXT 按钮受到碰撞、按压或释放。
  • 选择哪一个 NXT 按钮在激活时将发出“真”信号(并结束循环)。
  • 如果希望所选按钮在快速按压并释放后激活,则选择“碰撞”。 如果希望所选按钮在按钮被按压时激活,则选择“按压”。如果希望所选按钮在按钮被释放时激活,则选择“释放”。
  • 反馈框将在所选 NXT 按钮碰撞、按压或释放时显示“1”(根据设置的配置)。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

(内置)圈数传感器

loop_10.png

如果选择“读取”圈数传感器,循环内的编程模块将重复直至圈数传感器达到特定值;然后循环将结束且程序将继续。 如果选择“复位”圈数传感器,传感器将在每个循环之后复位为零;模块将继续循环直至圈数传感器在循环中达到触发值。
  • 选择电机连接的端口。
  • 选择读取或复位圈数传感器。
  • 使用单选按钮设置所需的方向: 向前或向后。
  • 使用下拉菜单选择计数“圈数”或“角度”。
  • 键入希望在循环结束前进行的圈数或角度(允许程序继续)。
  • 反馈框将显示当前的圈数或角度。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

计时器

loop_11.png

如果选择“读取”计时器,循环内的编程模块将重复直至 NXT 的一个内置计时器达到特定时间值;然后循环将结束且程序将继续。 如果选择“复位”计时器,计时器将在每个循环之后复位为零;模块将继续循环直至计时器在循环中达到触发值。
  • 选择希望受到监*控的 NXT 计时器。
  • 选择读取或复位计时器。
  • 在输入框中键入时间值(单位:秒)。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

接收消息

loop_12.png

如果选择“接收消息”,循环内的编程模块将重复直至 NXT 收到特定的蓝牙消息。 然后循环将结束,程序将继续。
  • 可使用下拉菜单选择希望收到的消息类型(文本、数字或逻辑)。
  • 要将测试消息与传入的消息进行比较,在输入测试文本或数字(如果已选择文本或数字作为格式),或使用单选按钮选择测试逻辑值(真或伪)。
  • 选择传入消息存入的邮箱号码。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

触动*传感器

loop_15.png

如果选择“触动*传感器”,循环内的编程模块将重复直至触动*传感器受到碰撞、按压或释放。 然后循环将结束,程序将继续。
  • 选择触动*传感器连接的端口。 默认情况下,模块会将端口 1 设置为触动传感器。
  • 使用单选按钮指定是否希望触动传感器受到碰撞、按压或释放时结束循环。 如果希望模块在触动传感器被快速的按压和释放时触发(持续时间不超过 0.5 秒),则选择“碰撞”。 如果希望模块在触动传感器被按压时触发,则选择“按压”。如果希望模块在触动传感器被释放时触发,则选择“释放”。
  • 可使用反馈框测试触动传感器。 当机器人上的传感器被激活时,将在此处显示编号“1”。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

光线*传感器

loop_16.png

如果选择“光线*传感器”,循环内的编程模块将重复直至光线*传感器检测到特定强度的光线。 然后循环将结束,程序将继续。
  • 选择光线*传感器插入的端口。默认情况下,模块会将端口 3 设置给光线*传感器。
  • 可使用滑块或在输入框中键入值来指定触发值。 如果希望光线强度高于触发值时结束循环,则选择滑块右侧的单选按钮;如果希望光线强度低于触发值时结束循环,则选择左侧的单选按钮。 也可以使用下拉菜单设置将结束循环的滑块部分。
  • 反馈框将显示当前光线读数。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

圈数*传感器

loop_17.png

如果选择“读取”圈数*传感器,循环内的编程模块将重复直至圈数传感器达到设定的标度数量(16 标度至一圈);然后循环将结束且程序将继续。 如果选择“复位”圈数*传感器,传感器将在每个循环之后复位为零;模块将继续循环直至圈数*传感器在循环中达到触发值。
  • 选择电机连接的端口。
  • 选择读取或复位圈数*传感器。
  • 使用单选按钮设置所需的方向: 向前或向后。
  • 键入希望在循环结束之间进行的标度(16 标度至一圈)。
  • 反馈框将显示当前的标度数量(16 标度至一圈)。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

温度传感器

loop_18.png

如果选择“温度传感器”,循环内的编程模块将重复直至温度传感器测到特定的温度。 然后循环将结束,程序将继续。
选择温度传感器插入的端口。默认情况下,模块会将端口 4 设置给温度传感器。
  • 可使用滑块或在输入框中键入值来指定触发值。 如果希望温度高于触发值时触发模块,则选择滑块右侧的单选按钮;如果希望温度低于触发值时触发模块,则选择左侧的单选按钮。 也可以使用下拉菜单设置滑块的“真”部分。
  • 选择读数值,单位:摄氏或华氏。
  • 反馈框将显示当前的温度读数。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。

计数

loop_13.png

如果选择“计数”,循环内的编程模块将重复直至计数器达到设定的重复数量。
  • 使用此框键入将结束循环的重复数。 例如,如果键入“2”,循环将在循环中编程模块运行两次后结束循环。
  • 选择“显示计数器”复选框以便可将循环的左侧连接至右侧(这里将显示“计数”接头)。 当左侧与右侧连接时,程序将能够计数完成的循环数量,并在计数达到设定数量时结束循环。

逻辑

loop_14.png

如果选择“逻辑”并将输入数据线连接至“循环”模块的尾部,循环中的任何编程模块将重复直至“循环”模块通过数据线收到真或伪逻辑信号。 当收到指定的逻辑信号,循环将结束。
  • 选择将结束循环的逻辑信号类型,真或伪。
  • 如果选择了配置面板中的“显示计数器”复选框,将显示一个接头,通过该接头可使用完成的循环数量作为程序中其它位置的输入(如果从接头连接数据线至另一模块的数据中心)。



如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2013-3-30 20:06:07 | 显示全部楼层
恩   学习
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复 0 1

使用道具 举报

发表于 2012-1-13 19:33:39 | 显示全部楼层
又学习了一遍!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2013-3-1 01:14:09 | 显示全部楼层
谢谢!会了
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2024-11-23 18:04 , Processed in 0.155196 second(s), 26 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表