EV3 Lab 指南

EV3 Lab 指南 > 编程模块 > 高级模块 > 消息传递模块

消息传递模块

消息传递模块

消息传递模块用于在 EV3 程序块之间发送蓝牙消息。要发送或接收消息,必 须先通过程序块蓝牙菜单或通过蓝牙连接模块连接 EV3 程序块。

有关更多信息,请参见蓝牙连接模块部分。

消息传递模块

使用模式选择器可选择所需消息传递模块工作方式。选择模式之后, 可以为输入选择值。可用输入会 因模式而异。下面介绍了模式和输入。

模式:发送、接收、比较 消息以三个组件为特征

1. 在其之间传递消息的程序块

2. 标识消息的消息标题

3. “消息”值。这可能是文本、数字或逻辑


消息传递模式

发送

消息传递模块

“发送”模式(文本、数字或逻辑) 通过蓝牙将消息发送到连接的 EV3 程序块。可以使用接收程序块 名称输入选择要将消息发送到的 EV3 程序块。 消息标题用于唯一地标识所发送的消息。

使用的输入:接收程序块名称、消息

接收

消息传递模块

“接收”模式(文本、数字或逻辑)通过蓝牙从连接的 EV3 程序块接收消息。 接收的消息输出在接收了消息之前为 “伪”。可从消息输出获取接收的消息。

消息标题用于唯一地标识所接收的消息。 使用的输入和输出:接收的消息、消息

示例

EV3 程序块(名为 Leo)收集一个颜色传感器读数并将其发送到另一个 EV3 程序块(名 为 Kim)。Kim 会等待,直到收到消息。此消息随后会显示在其显示屏上。

Leo 的程序部分

消息传递模块

Kim 的程序部分

消息传递模块

通过消息标题可以在 EV3 程序块之间发送多个信息流。例如,一个程序块可以在相同程 序中发送名为“Color”和“Rotations”的消息。

比较

消息传递模块

“ 比较”模式(文本、数字或逻辑) 将接收的消息与现有值进行比较。如果满足条件, 则比较结果输出 为“真”。如果不满足条件,则比较结果输出为“伪”。

数字:接收的消息根据以下逻辑运算符之一与阈值进行比较。

• 等于 (0)

• 不等于 (1)

• 大于 (2)

• 大于或等于 (3)

• 小于 (4)

• 小于或等于 (5)

文本:接收的消息根据以下逻辑运算符之一与比较文本进行比较。 • 等于 (0)

• 不等于 (1)

逻辑:接收的消息在“ 比较结果” 中输出


输入与输出

消息传递模块的输入控制消息传递工作方式的详细信息。可以将输入值直接输入到模块中。或者, 可 以通过数据线从其他编程模块的输出提供值。可用输入及其功能取决于选择的模式。

输入

类型

备注

消息标题

文本

 

接收程序块名称

文本

如果此字段保留为空,则会广播消息。

消息

文本、数字或逻辑

 

比较类型

数字

具有阈值或比较文本的消息比较模式比较类型。 0:=(等于)

1:≠(不等于) 2:>(大于)

3:≥(大于或等于) 4:<(小于)

5:≤(小于或等于)

阈值

数字

 

比较文本

文本

 

可用输出取决于所选模式。要使用某个输出,请使用数据线将该输出连接到另一个编程模块。

输出

类型

备注

消息

文本、数字或逻辑

比较类型的结果

比较结果

文本、数字或逻辑

比较类型的结果