您的位置 少儿编程网 > 乐高编程

乐高EV3编程之数据线的操作教程

数据线使您可以使用来自程序中其他模块的输出值,为编程模块提供输入值。这使您可以在模块之间创建交互,并为机器人创建更复杂的行为。
示例

此程序使用数据线将来自颜色传感器模块的“光线”输出连接到移动转向模块的“功率”输入。这会使机器人驱动的速度由颜色传感器检测到的光线强度确定。该过程在循环中重复执行,以便基于新传感器读数持续更新功率。
提示和技巧
如果尝试对颜色传感器向下指向地面附近的机器人执行上面的程序,则机器人的速度会随其驱动通过不同颜色而更改。
数据线类型
数据线将值从一个模块承载至另一个模块。每条数据线都具有类型,该类型由数据线开始处模块的输出类型确定。这也是数据线承载的值的类型。有关不同类型的更多信息,请参见数据类型。
数据线、模块输入和模块输出根据其类型具有不同外观,如下表所示。
类型 模块输入 模块输出 模块输出 数据线
逻辑
数字
文本
数字排列
逻辑排列

创建数据线
要创建数据线,请从某个编程模块的输出拖动到另一个编程模块的输入,如以下步骤所示。
步骤 动作 示例
1 从某个模块输出开始
2 从左向右拖动
3 在某个模块输入结束。

提示和技巧
具有输出(数据线的起始)的模块必须在程序中位于具有输入(数据线的结束)的模块之前。
模块输出和模块输入必须具有相同数据类型,或对于数据线转换兼容。

数据线会替换直接输入到模块中的输入值。在上面的示例中,“功率”输入值 50 由数据线替换。移动转向模块现在从数据线获取“功率”输入。
删除数据线
要删除数据线,请单击数据线结束处的模块输入。会删除数据线,并会还原直接输入到模块中的输入值。再次单击模块输入可输入新输入值。
对多条数据线使用模块输出
可以使用模块的输出作为多条数据线的起始点,如下图所示。要再次使用输出,只需拖动另一条数据线。
提示和技巧
不能将多条输入数据线连接到相同输入。

数据线转换
数据线必须连接相同类型的模块输出和模块输入,或是类型必须对于下面允许的自动转换之一兼容。
起始类型 结束类型 结果
逻辑 数字 伪 = 0
真 = 1
逻辑 文本 伪 = "0"
真 = "1"
逻辑 逻辑排列 包含一个元素的排列
逻辑 数字排列 包含一个元素(0 或 1)的排列
数字 文本 代表数字的文本 
(例如,"3.5")
数字 数字排列 包含一个元素的排列
逻辑排列 数字排列 具有相同大小并且元素等于 0 或 1 的排列

显示数据线值
如果在程序运行时 EV3 程序块连接到计算机(通过 USB、蓝牙或 Wi-Fi),则可以在程序运行时显示数据线的值。要显示数据线值,只需将鼠标光标置于数据线上。值会显示在数据线附近的小窗口中。
示例

在下面的程序中,数据线在获取图像时的值为 30。在此示例中,因为模块处于循环中,所以每当颜色传感器模块执行时,数据线的值都可能更改。显示会持续更新以显示最新值。
提示和技巧
显示数据线值可以帮助了解程序的运行方式。查找与期望不同的值有助于查找程序中的问题原因。例如,如果创建上面的程序但是意外地使用了颜色传感器的“测量 - 颜色”模式而不是“测量 - 反射光线强度”模式,则数据线仅显示范围 0-7 中的值,而不会按预期显示范围 0-100(请参见使用颜色传感器)。

关于作者: 少儿编程网

热门文章

留言与评论(共有 0 条评论)
   
验证码: