总体介绍
这款机器人用两个大型电机带动左右两个履带来控制推土机的前进、后退和转弯。另外用一个中型电机控制前面铲刀的上升和下降。一共有两个传感器:触动传感器用于手动控制模式(开机时的缺省模式)和自动控制模式的来回转换(自己用手按一下就行)。手动模式下可用遥控器控制推土机前进、后退和转弯(使用通道1,方式和之前的升降机BOBB3E相同)以及铲刀的上下(通道4,左上是升起铲刀,左下是放下铲刀)。在自动模式下,推土机会一直朝前走,离前方障碍物有一定距离时,推土机倒车,右转一个角度继续前行……。红外传感器在手动模式下用于接收遥控器控制信号;在自动模式下,用于探测前方障碍物的距离。
需要注意的地方
尽量使用无线方式(如蓝牙)的方式下载程序。由于这个机器人将EV程序块放在下面,USB口被铲刀挡住了。如果只能用USB下载程序最好在搭建前就下载好,如果搭建后修改了程序,就只能拆下铲刀再联USB线了。 按下铲刀下降的按钮时,铲刀会向下运动。铲刀接触地面后,如果继续按按钮,铲刀会把履带上两个前轮顶起来(见下图) 按下铲刀上升按钮时,铲刀会向上运动。但到了最高点后,又会向下运动。
操作感受
和升降机BOBB3E相比有两大不同,一个是要想升降铲刀,必须将遥控器的通道调成通道4,要想让推土机行进,又要调回通道1。但避免了升降机BOBB3E在升降货叉时履带会先动一下的问题。另一个是增加了自动运行模式,按一下触动传感器,就可以在两个模式之间切换。
应该说还有一个特殊的功能就是在程序运行时,按一下EV3程序块的中间按钮,程序就会退出。但这个功能用处不大,按一下旁边的返回按钮可以达到同样的效果。
程序简要说明
推土机的程序比升降机BOBB3E的复杂些,主程序主要是一个大循环中套了两个小循环,一个小循环是手动模式,另一个小循环是自动模式。两个小循环的退出条件都是触动传感器被按下。手动模式里有两个自定义的模块:RemoteDrive模块负责检测遥控器通道1下是否有按钮被按下。如果有,控制两个大型电机控制推土机行进。RaiseLower模块负责检测遥控器通道4下左边两个按键是否被按下,如果是,控制中型电机升高或降低铲刀。自动模式下,推土机直行,当红外传感器探测到前方有障碍物时,停1秒钟,向后退1秒钟(功率为30%),原地转弯1秒钟(功率为50%,实际效果右转不到90度)。此时如果前方没有障碍物则直行;若有障碍物,继续后退,右转。
同时还有一个进程不停地检测EV3程序块的中间按钮是否被按下,如果有则整个程序将退出。(和按下返回按钮的作用一样)。
扩展
乐高官网提供的项目文件里没有“挑战”这一页。为了避免铲刀过分下降将前轮顶起,我做了一点改进,见下图。上面是改进过的,向左移动了1个孔,同时最右边3孔的梁改成了2孔的。这样,铲刀下降到一定程度会被左移的梁限制,从而避免了铲刀将推土机前部顶起。
其他例子探究 BOBB3E(升降机)
|