回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

《蚕的一生》赛道设计 简单

头像 四画 2019.06.09 957 0

麦昆小车赛道设计大赛,设计赛道是一个很需要脑洞的活动,这让我不禁想起一个游戏,名字叫《三国杀》,许多人通过玩这个游戏而记住了三国的历史人物和历史事件,给了我一定的启发,我就想如何能通过一个赛道游戏,也让玩儿这个游戏的人有所收获呢。苏教版科学四年级下册第2单元《蚕的一生》这个单元对于有养蚕经历的人来说是很简单的一课,但是对于大多数城市的孩子没有养蚕经历,那么这2单元就有点抽象难理解了

project-image
project-image
project-image

如何能将这些科学学科内容和steam教育相结合,是我一直在思考的内容,我就想如果把蚕的一生设计成赛道,通过完成这个赛道,将科学学科内容很好的掌握内化,从而达到教学目标,这不是一个两全其美的想法吗?于是我开始先用毛笔和宣纸画了一个草图。

project-image

这个图基本上没有任何美感,原本是想用国粹元素体现,没想到毛笔蘸上墨汁一碰宣纸,就成一大片,所以我又重新选购材料。

材料清单

  • 书皮纸 X3
  • 铅笔 X6
  • 毛笔 X1
  • 墨汁 X1
  • 麦昆小车 X1
  • 可乐瓶 X1
  • 空药盒 X1
  • 空茶叶盒 X1
  • 胶带 X1

这是我自己制作的画赛道的笔

project-image

3张包书皮纸用胶带贴在一起,变成一张大纸

project-image

先用一张宣纸试试

project-image

用花纹面还是用白面,用麦昆小车的巡线传感器试了试,这个花纹面没问题,能被识别为1。果断采用花纹面。

project-image

先用自制画笔画出轮廓,再用毛笔蘸墨汁描出来,这可是个细活。极其考验耐心和细心。

project-image

下面这个图是不是就有点意思了,什么都在于装饰。

project-image

       上图中的结茧部分的是用可乐瓶,剪掉头尾,然后用胶带交叉贴出来网状,就是比拟蚕吐丝结的茧。最后羽化成蝶是要飞的,可是麦昆小车是飞不起来的,所以就想着用一道35度的斜坡来代替飞起来了。

project-image

手工部分就是这样,接下来是编写程序。首先是巡线程序:

project-image

彩灯程序:

project-image

小蚕蠕动画面程序:

project-image

主程序:

project-image

以下是完成视频:

       大家可仔细看最后这个跑马换色灯,这个的意思是羽华成蝶后再次产卵。这个跑马灯做起来比较费事,因为麦昆小车的四个全彩RGB灯的管脚不能用变量,所以是一个一个编写的。不能用变量真是累啊!

代码
#include <Maqueen_Motor.h>
#include <DFRobot_NeoPixel.h>
#include <Microbit_Matrix.h>

Maqueen_Motor motor;
DFRobot_NeoPixel  rgb_display_15;
void df_line();

void df_line()
{
	if (((digitalRead(14) == 1) && (digitalRead(13) == 1))) {
		motor.motorRun(motor.LEFT,motor.CW,0);
		motor.motorRun(motor.RIGHT,motor.CW,0);
		delay(1000);
	}
	else {
		if (((digitalRead(14) == 1) && (digitalRead(13) == 0))) {
			while ((!(digitalRead(14) == 0))) {
				motor.motorRun(motor.LEFT,motor.CW,10);
				motor.motorRun(motor.RIGHT,motor.CW,250);
			}
		}
		else {
			if (((digitalRead(14) == 0) && (digitalRead(13) == 1))) {
				while ((!(digitalRead(13) == 0))) {
					motor.motorRun(motor.LEFT,motor.CW,250);
					motor.motorRun(motor.RIGHT,motor.CW,10);
				}
			}
			else {
				if (((digitalRead(14) == 0) && (digitalRead(13) == 0))) {
					motor.motorRun(motor.LEFT,motor.CW,30);
					motor.motorRun(motor.RIGHT,motor.CW,30);
				}
				else {
				}
			}
		}
	}
}


void setup() {
	while (!((Button_A.isPressed() && !Button_B.isPressed()))) {
	}
	delay(500);
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,100);
	delay(2600);
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,0);
	delay(100);
	rgb_display_15.begin(15, 4, 255);
	rgb_display_15.setRangeColor(0, 0, 0xFF7D00);
	MMatrix.print("1");
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,100);
	delay(2600);
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,0);
	delay(100);
	rgb_display_15.setRangeColor(3, 3, 0x00ff00);
	MMatrix.print("2");
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,100);
	delay(2600);
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,0);
	delay(100);
	rgb_display_15.setRangeColor(1, 1, 0x0000ff);
	MMatrix.print("3");
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,100);
	delay(2600);
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,0);
	delay(100);
	rgb_display_15.setRangeColor(2, 2, 0xffff00);
	MMatrix.print("4");
	motor.motorRun(motor.LEFT,motor.CW,200);
	motor.motorRun(motor.RIGHT,motor.CW,200);
	delay(100);
	motor.motorRun(motor.LEFT,motor.CW,0);
	motor.motorRun(motor.RIGHT,motor.CW,0);
	delay(300);
	while ((!false)) {
		df_line();
	}
}

void loop() {

}

至此,这个赛道设计算是完成了,每次完成一个项目,都需要耗费大量脑力,体力,精力和时间,这个又是整整两天才完成的,整个手工是我完成的,程序的编写是儿子完成,包括拍摄的视频都是儿子完成的,儿子在学校的校园电视台还是学会了好多技能,这次的视频我觉得拍的也很有水平,又是近景又是远景好像还有什么镜头切换,有些我也不太懂,总之儿子长大了,是个好帮手了。这次的这个项目还是比较喜欢的,因为把学科和STEAM有效的融合起来了,以后有机会还是要去尝试这种学科融合。

评论

user-avatar