关注
25
粉丝
122
帖子

教学设计|剪刀石头布--超声波版


【适用年级】小学三四年级

【课时】1

【教学目标】

1、了解超波测距的原理;

2、了解随机数的概念;

3、学习列表的初步知识。

4、使用“画图”工具将图片转换为128*64格式的bmp图片,学会图片取模的方法

学会将取模的图片显示到OLED屏幕上

【学习重点】列表与随机

【学习难点】小图片取模

【器材准备】

掌控板 1

掌控宝 1

超声波传感器 1

纸板剪刀画笔 1


一、【课程导入】

超声波是意大利科学家斯帕拉捷通过研究蝙蝠发现的。


《夜晚的实验 》— 出自苏教版语文六年级下册

意大利科学家斯帕拉捷习惯晚饭后到附近的街道上散步。他常常看到,很多蝙蝠灵活的在空中飞来飞去,却从不会撞到墙壁上。这个现象引起了他的好奇:蝙蝠凭什么特殊本领在夜空中自由自在的飞行呢?

1793年夏天,一个晴朗的夜晚,喧腾热闹的城市渐渐平静下来。斯帕拉捷匆匆吃完饭,便走出街头,把笼子里的蝙蝠放了出去。当他看到放出去的几只蝙蝠轻盈敏捷地来回飞翔时,不由得尖叫起来。因为那几只蝙蝠,眼睛全被他蒙上了,都是“瞎子”呀。

斯帕拉捷为什么要把蝙蝠的眼睛蒙起来呢?原来,每当他看到蝙蝠在夜晚自由自在的飞翔时,总认为这些小精灵一定长着一双特别敏锐的眼睛,就不可能在黑夜中灵巧的多过各种障碍物,并且敏捷的捕捉飞蛾了。然而事实完全出乎他的意料。斯帕拉捷很奇怪:不用眼睛,蝙蝠凭什么来辨别前方的物体,捕捉灵活的飞蛾呢?

于是,他把蝙蝠的鼻子堵住.结果,蝙蝠在空中还是飞的那么敏捷、轻松。“难道他薄膜似的翅膀,不仅能够飞翔,而且能在夜间洞察一切吗?”斯帕拉捷这样猜想。他又捉来几只蝙蝠,用油漆涂满它们的全身,然而还是没有影响到它们飞行。

最后,斯帕拉捷堵住蝙蝠的耳朵,把他们放到夜空中。这次,蝙蝠可没有了先前的神气。他们像无头苍蝇一样在空中东碰西撞,很快就跌落在地。

啊!蝙蝠在夜间飞行,捕捉食物,原来是靠听觉来辨别方向、确认目标的!

斯帕拉捷的实验,揭开了蝙蝠飞行的秘密,促使很多人进一步思考:蝙蝠的耳朵又怎么能“穿透”黑夜,“听”到没有声音的物体呢?

后来人们继续研究,终于弄清了其中的奥秘。原来,蝙蝠靠喉咙发出人耳听不见的“超声波”,这种声音沿着直线传播,一碰到物体就像光照到镜子上那样反射回来。蝙蝠用耳朵接受到这种“超声波”,就能迅速做出判断,灵巧的自由飞翔,捕捉食物。

现在,人们利用超声波来为飞机、轮船导航,寻找地下的宝藏。超声波就像一位无声的功臣,广泛地应用于工业、农业、医疗和军事等领域。斯帕拉捷怎么也不会想到,自己的实验,会给人类带来如此巨大的恩惠。

超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。


(超声波在空气中的传播速度为340m/s,根据计时器记录的时间t(秒),就可以计算出发射点距障碍物的距离(s),即:s=340t/2)

二、【任务清单】

利用超声波传感器测距,对着传感器做剪刀石头布手势,掌控板随机出手势显示在屏幕,进行人机对战。可以加上灯光和声音。

小组讨论,任务分解。

1、三张小图片取模,做图片列表。

2、当手势进入测定的距离范围内时,掌控板随机显示图片,人机对战。




老师讲解图片取模的方法。

图片处理

1 OLED屏幕只能显示颜色深度为1或者就是黑白模式的bmp格式,您可以使用Photoshop、“画图”或者其他图片显示软件进行转换。下面以“画图”工具为例。

2 转换好格式的图片需要使用取模工具对图片进行取模

3 转换的图片大小应该为128*24,也就是掌控板屏幕的大小。

4 所选的图片线条要分明,且颜色不能太过丰富。

第一步

首先我们需要对图片进行转换,选择图片后右键点击,点击编辑打开画图工具,在画图工具栏中点击“重新调整大小”,在“保持纵横比”的条件下,设置图片的像素,将“垂直”改为64,“水平”改为128。


第二步

将图片保存为bmp格式。


第三步

接下来使用取模工具对转换格式后的图片进行取模。网上有PCtoLCD、lcd image converter等取模软件,可根据自己喜好自行选择。以下使用的是Img2Lcd工具 。

这里我们提供1张图片作为示例图片,您也可以按照贴士里提到的标准制作您自己喜欢的图片进行转换。

Img2Lcd工具下载:https://mpython.readthedocs.io/zh/master/_downloads/5e5ffffa77ef66c6a2d73d92ed8198a7/Image2Lcd.zip

步骤1.打开格式为bmp的图片

步骤2.选择参数,输出数据类型[C语言数组]、 扫描模式[水平扫描]、输出灰度[单色]、宽高[128*64],可以适当亮度、对比度,直到图片显示清晰。

步骤3.点击保存,打开保存的”.c”后缀的文件


第四步

将保存的文件用记事本程序打开,去掉红色标记的首尾两行。复制中间的16进制图像数据,这些数组就代表着图片的像素点。


第五步

将复制的16进制图像数据粘贴在下列指令的空格处。

描述:OLED绘制16进制数组图像。


将16进制数据转换成图像显示在oled屏幕的指定位置处。


【小提示:图片取模过程一定要仔细演示,交待清楚练习要点】

附:取模得到的三个64X64的”.c”后缀的文件。





【参考程序】






【拓展任务】

1、优化程序,加入声光效果。

2、增加3个9g180舵机,改成舵机版,该如何改进。

点赞

251 次阅读2 条评论2 人订阅
2条评论