您的位置: 主页>机器人编程>ROBOLAB编程>ROBOLAB 2.9-高级编程第三章之通信行为程序范例
加盟酷吧机器人 培养孩子核心能力

ROBOLAB 2.9-高级编程第三章之通信行为程序范例

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例邮件数值参数, 像其他普通数值参数一样, 邮件值可以直接被用于其他图标的数值参数,或者直接被显示在 RCX 或者 NXT 上。例如,范例程序:

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例

  Robolab 为邮件设置了完善的结构图标,可以方便的让两个控制之间协同工作起来:ROBOLAB 2.9-高级编程第三章之通信行为程序范例邮件等待图标,程序将等待直到邮箱中的邮件数值等于设定数值才继续后面的图标。

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例关于邮件数值的 loops 循环,当邮件的数值小于(大于)参数数值的时候执行循环内容。

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例关于邮件数值的分支判断图标, 前者根据邮件数值大于或者小于参数数值执行不同的分支,后者根据邮件的数值等于或者不等于参数数值执行不同的分支,通常邮件总是由发送程序设定的特定的数值, 所以关于相等的邮件判断分支使用起来更加的方便。

  程序实例:

  在之前的章节中,我们提到了用触碰传感器控制两个马达的机器人,就像个线操纵的遥控车,现在有了邮件功能,我们可以将机器人的遥控方式升级为无线方式,玩起来更加自如、更加有趣味。

  因为机器人有停止、前进、左转和右转四种状态,所以我们在发射程序中要根据触碰传感器的状态发射 4 个不同数值的邮件, 而在接收程序中要根据邮件的数值对机器人进行相应的操作:

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例

  程序中对应于触碰传感器的状态分别发送“1”——停止、 “2”——右转、 “3”——左转和“4”——前进,只是为了确保 NXT 发射的邮件机器人一定能够收到,所以在每次改变状态的时候都以 0.1 秒为间隔连续发射 10 次控制邮件。

  接收程序:

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例

  除此之外,Robolab 也为邮件功能设置了相应的容器和事件图标

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例将邮件数值存放在容器中,因为在程序过程中只要有人发送邮件,那么邮箱数值就将改变,因此通常不直接使用邮件的值,而是通过容器来暂时保存邮件数值。

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例用这个图标定义关于邮件的事件,当 RCX 或者 NXT 收到邮件时事件响应,这个事件的定义没有事件源,那么意味着无论什么邮件事件都会相应。

  程序范例:

  用这个图标可以玩一个非常激烈、刺激的枪战游戏,因为 RCX 的红外线传输有方向性,所以可以以 RCX 作枪、触碰传感器作为扳机、邮件作为子弹,当有邮件被接收到,则意味着被击中身亡。这的确是个好玩的程序:

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例

  这个程序下载到多个 RCX 中,大家就可以来场刺激的游戏了,只是要小心自己发出的子弹通过墙壁反射回来杀死自己。此外,如果大家的“子弹”设定为不同的数值,则可以在被击中之后通过 RCX 显示袭击者。

  ROBOLAB 2.9-高级编程第三章之通信行为程序范例

  对于 NXT 来说,因为蓝牙传输没有指向性,通常的障碍物都挡不住邮件的发送和接收,所以相比 RCX 它更像是个遥控的炸弹,在这个游戏中也就不好玩了。

欧美思机器人教育加盟 赚钱好项目
上一篇:ROBOLAB 2.9-高级编程第三章之通信行为远程模式
下一篇:ROBOLAB 2.9-高级编程第三章之通信行为
您可能喜欢
回到顶部