准备工作:
编程前,先添加Maqueen软件包
方法1:
在高级→添加软件包中输入
https://github.com/jhlucky/maqueen
方法2:
下载Maqueen模板.hex程序,并用软件打开
https://pan.baidu.com/s/17fA3RezM1ekfLbkdWclNcg
程序模板二维码:
micro:bit编程板支持“多任务”运行(运行好几个无限循环或者事件结构框),使得Maqueen机器人小车可以同时做很多件事情。
任务1:彩虹色渐变底盘氛围灯
由于Neopixel软件包的版本不同,有些同学是英文版的:
也有中文版的:
任务2:运动控制
任何控制机器人马达的过程,都可以使用“汉堡包法则”!
汉堡包法则:
第一步:控制马达的端口、速度大小、方向
第二步:运动时间(确定的一段时间)或传感器满足条件(不确定的时间,但确定运行条件/跳出条件)
第三步:控制马达的速度为0(马达停止)
汉堡包法则是一种形式上的类比
基于确定时间的运动控制:
前进:
后退:
左转、右转都有三种方式,此处以左转为例:
方法1:左马达反转,右马达正转(原地转)
方法2:左马达不转,右马达正转(绕左轮转)
方法3:左马达反转,右马达不转(绕右轮转)
机器人连续执行2个动作(两个汉堡包)
比如:先前进1秒钟,再左转
这里就需要通过机器人的运动执行情况,来反思、了解函数图标的运行机制了:
绿色的图标设置maqueen机器人马达的端口(左侧、右侧)、旋转方向(正转、反转)、速度(0~255),这种函数图标叫设置图标,由于计算机执行速度飞快,设置图标运行时间极短,就起作用了。
蓝色的图标,让机器人马达运行足够的时间,比如1000毫秒,这种函数图标叫时间图标,让程序等在那里,占用很多时间。
相比时间图标,设置图标可以算是几乎不用时间!(超过1000倍的数量级关系,就可以近似为零)
因此,以上的程序,可以改写为:
运行效果是相同的!
形式上是不是很像一个麦当劳巨无霸汉堡!
利用这种方式,可以更快地理解和掌握控制马达的方法!
任务3:整合任务1、2,实现多任务
程序说明:
①暂停500毫秒,目的是留出充分的时间,等手离开按钮A;
②如果为(非 当按钮A被按下时)执行……为条件循环框,作用是防止由于按钮按的时间过长,导致多次触发,从而错过flag==1的情况,导致机器人不动。
进一步优化——
将初始化(当开机时)与按钮A被按下的动作分离:
设置标志位(flag)变量,防止灯光先点亮;并且使得机器人小车开机后,按下按钮A只会触发机器人运动一次:
接着,继续设计机器人运动的路径,不断将程序扩展下去——
当中也可以加入一些特技动作,例如,机器人S形行驶路径(蛇行方式):
领取专属 10元无门槛券
私享最新 技术干货