控制器和循环
在比赛中,团队使用控制器无线控制他们的机器人。 控制器被编程为根据用户的输入更新机器人。 项目中使用了循环,以便机器人重复检查更新的输入信息。 循环允许项目快速检查哪些按钮被按下,或者操纵杆被推了多远。 一旦检查完毕,这些信息就会快速转发给机器人,以便它快速响应控制器的指令。
上图显示了 VEXcode IQ 中的 Clawbot Control 示例项目。 该项目中的永远循环会永远检查轴 A 和 D 的位置,以设置电机的速度。
即使对于没有控制器的自主编程,循环也很重要。 循环有助于简化和组织项目内的重复命令。
激发讨论 - 循环行为
点击 此链接与学生一起回顾今年的 VEX IQ 竞赛游戏。 或者,根据往年的比赛进行以下讨论。
问: 机器人在比赛中可能会重复哪些行为?
A: 学生可能会立即做出动作响应,但该项目不太可能使用循环进行动作,而是使用循环来检查传感器。
问: 你会如何让这些重复的行为变成一个循环?
A: 无论重复什么行为,将块拖动到循环内都是必需的步骤。 学生需要在循环块内轻松地嵌套块。
问: 询问学生 VEXcode IQ 中的哪个模块可以帮助他们对机器人进行编程,使其在按下单个控制器按钮后表现出行为。 另外,询问它属于哪一组块。
A: 该块称为 When 控制器按钮块,位于 VEXcode IQ 中的事件块下。
扩展您的学习 - 查看示例项目
为了扩展此活动,请您的学生探索街机控制和坦克控制之间的差异。 学生可以按照 VEXcode IQ 中的示例项目进行操作。 有四个示例项目:Left Arcade、Right Arcade、Split Arcade 和 Tank Drive。
讨论程序中的循环如何工作,以及每种控制类型的优缺点。
为了将此活动与数学联系起来,请使用上面的左/右街机(一个操纵杆)和拆分街机/坦克驱动器(两个操纵杆)项目来讨论 X 轴和 Y 轴在项目中的作用。 X 轴位置的读数捕获操纵杆的左右、水平运动,而 Y 轴位置的读数捕获操纵杆的上下、垂直运动。