用ArduBlock编程做一个自动变速风扇
本帖最后由 丄帝De咗臂 于 2015-6-26 14:00 编辑(一)方案
方案一:利用超声波传感器测距,在某个范围内,距离越大,风扇转动速度越大;距离越小,风扇转动速度越小。
方案二:利用热释电红外传感器检测人,当有人时利用超声波传感器测距,在某个范围内,距离越大,风扇转动速度越大;距离越小,风扇转动速度越小
方案三:利用红外距离传感器测距,在某个范围内,距离越大,风扇转动速度越大;距离越小,风扇转动速度越小
方案四:利用温度传感器控制风扇,温度高于一定值时,风扇开启,温度越高,风扇转动越快
这里以方案一为例(最简单的一个,不过适合一节课的教学)
(二)器材
Romeo、HC-SR04超声波传感器、风扇、直流电机
(三)接线
(四)编程
若超声波传感器测得距离小于40cm,则自动变速,否则风扇停止转动。ArduBlock程序如下
说明:超声波探测范围是2-450cm,所以程序中映射下界为2。
(五)教学实践
在实际教学中,本课题主要通过以下四个环节完成的:复习旧知,引入新课;问题分析,激发兴趣;自主学习,解决问题;拓展提升,课堂总结。1、复习旧知,引入新课本环节主要是通过带领学生回顾以前做过的Arduino控制LED和风扇的各种作品,引导学生从自动控制和人工控制的角度去分析与总结,为学生打开畅想之窗,以便于本课教学的展开。2、问题分析,激发兴趣本环节首先向学生介绍本课题的自动变速风扇的工作原理,然后引导学生讨论:使用哪种传感器可以检测距离。从而引出当前进行高精度测距时主要使用三种方法:激光测距,红外测距和超声波测距。然后讲解它们测距的原理是相同的,即对准需要测距的障碍物发射一束激光(红外线或超声波),检测接收到其反射回来所用的时间,再用光速(或声速)乘以时间,再除以2,则可以得出距离值。接下来介绍一下本课题用到的HC-SR04超声波传感器的使用,此时要特别强调它有四根线,其中两根是连接数字针脚的。同时向学生说明在ArduBlock中超声波传感器有相关的模块。学生在认识了超声波传感器之后,请学生将设备线路连接好。然后继续提出问题:如何制作自动变速风扇。引导学生讨论得出结果,首先需要利用串口监视器读取超声波传感器检测到的距离值,然后利用距离值制作自动变速风扇。指导学生编写读取超声波传感器值的程序,也是本课题的基础任务一:利用串口读取超声波传感器测到的距离值。由于学生已经比较熟悉ArduBlock中串口监视器的使用,这里笔者只是为学生简单介绍了超声波测距模块的使用。经实践,只要学生在连接超声波传感器时接线没有错误,程序一般都不会出错的。3、自主学习,解决问题本环节主要是在前一环节的基础上,以学生小组合作为主,进行自主探究学习。首先笔者向学生介绍本课题中自动变速风扇的具体含义,即通过感知人与风扇的距离,改变风扇的速度,比如人离风扇比较近的时候,风扇转动很慢,甚至静止,距离越远,转动越快。当然,如果我们离风扇很远时(测距值大于某个值,比如40cm时),风扇也会停止转动。在这里笔者提示学生,需要解决的核心问题是实现距离值和风扇转动速度值的一一对应,这样学生便自然地想到了映射。然后布置本课题的基础任务二:制作自动变速风扇。同时请学生以小组合作的形式完成任务。4、拓展提升,课堂总结学完本课题,为鼓励学生产生一些创意想法,笔者为学生提供了一份表格供学生参考,如下表所示。同时提示学生,这份表格只供参考,任何有创意的想法都可以,也可以通过网络手段查询,但是必须要做的是把创意作品的设计思路写下来。
创意维度描述举例
距离控制风扇通过距离对风扇的控制还可以有哪些利用红外距离传感器测距,实现对风扇转动方向和转动速度方面的控制
…………
测量距离测距机器人可以应用在哪些方面将超声波传感器安装在小车上,制作成测距小车,帮助人们在恶劣的环境中测量距离
…………
自动控制生活中还可以制作哪些自动控制的机器人呢利用土壤湿度传感器检测盆栽的土壤湿度,实现自动浇水的花盆
…………
最后对本课题进行总结:Arduino机器人中的控制可分为自动控制和人工控制,其实生活中也有很多类似的控制,尤其对一些恶劣环境中的操作,自动控制显得尤为重要。我们学习本课题最主要的是希望大家可以从这两个方面出发去思考,如何设计我们的机器人会更有创意、更有生活意义,或者我们还可以设计出哪些更有生活意义的机器人。
注:本课题为《自动变速风扇》教学实践与反思 的文章,发表在《教育科学与研究》2014年第6期,感兴趣的老师可以去看下,主要是课程教学,并非技术应用。
这个我做过 不过用的是mblock来写的 大连林海 发表于 2015-6-27 13:17
这个我做过 不过用的是mblock来写的
加个红外热释电的,检测人 夏天到了
技术宅都不需要担心没风扇吹~ 上面的编程软件是什么? lhfzl 发表于 2015-7-2 08:51
上面的编程软件是什么?
ArduBlock 在用串口监视器监控超声波距离的时候,数值是准确的,但是一旦开始写具体的变速风扇编程,效果就会变得很奇怪。风扇并非随着距离的增大而速度变快,反而是当超声波传感器处于某个角度时,风扇会转,然后不是那个角度的话,风扇基本就会停了。想请问有没有人知道这是为什么??谢谢! Ardublock用哪个版本? lfclixing 发表于 2018-1-2 11:29
Ardublock用哪个版本?
教育版 好创意,赞一个
页:
[1]