3061| 0
|
[电子电路] #DFRobot2018用手势来控制的小灯 |
本帖最后由 bion19 于 2019-1-29 16:35 编辑 我们4个同学的3D设计链接 https://www.tinkercad.com/things/gUuKyEJcoJz https://www.tinkercad.com/things/5TEG6q10aPJ https://www.tinkercad.com/things/9AaEziBHyMC https://www.tinkercad.com/things/6M5L1jmjcfH 电子电路的作品链接 https://www.tinkercad.com/things/4IChDSLq6Tt 最初的构想源自于自己的懒惰,有人说懒惰能够促使我们进行更多的开发和创造。这一点虽然我不完全赞同,但是对于一个有想法的小组来说,这可能是对的。 冬天到了,在被窝里很舒服。可是我们该如何开灯和关灯呢?睡觉的时候是应该关灯,这样才能让我们睡得更香。于是我们有了一个关灯的计划。 看了看手边的电子电路套件,我们能用什么方法来实现呢?最初我们是用按钮来构思,可是按钮拖了很长的线连接到Arduino主控板上。稍不留意,又把电源线碰掉了,整个电路失去了控制功能。其实促使我们最终放弃这个方案的原因是我们这个通过Arduino主控板来控制的按钮开关和现在墙面上已经有的开关,没有什么区别。 学习电路基础知识过程中,我们在测量电阻数值 可是这一次的失败并没有使我们退缩。我们知道要想创新,必须要知道创新的原理是什么,更加需要知道无法创新的原因是什么?经过学习TINKERCAD网站上提供的电路学习资料,我们在了解了传统电路的基础上,开始使用和测试了大量传感器,目的就是为了通过使用不同传感器的功能,来构思我们可能的创新。 这次我们选择了超声波模块,用于检测障碍物的距离,而根据这个距离来使我们的Arduino主控板感知并采取下一步行为,而这个时候我们发现,使用TINKERCAD的模拟功能,并没有达到我们想要的效果。于是我们开始思考我们的设计原理是否出了问题,下面就让我们一起来看看吧。 我们的学习历程 我们一共使用了两个超声波传感模块。第一个接在11号引脚上,第二个接在10号引脚上。而被我们控制的小灯接在9号引脚上。那么如何让我们的Arduino主控板,明确的知道我们是怎么想的呢? 我们的思路是这样的:如果10号引脚先检测到障碍物,稍等片刻(程序设定为100毫秒)后11号引脚也检测到障碍物,说明我们的障碍物是从右边移到左边(如图所示)。这时我们用状态变量i,来保存障碍物移动的状态。如果11号引脚检测到障碍物,稍等片刻(程序设定为100毫秒)后10号引脚也检测到障碍物,说明我们的障碍物是从左边移动到右边。同样我们用状态变量i,来保存障碍物的状态。最终我们根据状态变量i的数值来设置引脚9的高低电平值以达到来控制灯的开关的目的。 好了,我们用超声波模块来做一次检测吧。根据串口监控显示,我们发现,我们的思维和主控板arduino是不一样的。(后来我们想到了一个解决的办法,但是发现程序代码太长了,而且效果并不理想,不知道哪位大神可以给个解决的办法呢?如果使用超声波模块的话。)经过了多次的尝试和失败后,我们决定更换一个传感器。我们选择了两个PIP传感器,来完成我们现有的创新构思。 我们制作的超声波模块电路实验 这一次,我们经过测试,实际上效果也并不理想,我们调试了不同的延时时长,在功能上实现了我们想要的效果。然而为了能够更好的达到用手势来控制开关灯的效果,我们使用红外数字避障传感器。其在DFrobot的官网首页(https://mc.dfrobot.com.cn/portal.php)的产品资料库中的编号是(SKU:SEN0019),根据之前的设计思路和编程的经验,我们设计了如下的程序,最终较好的实现了我们的设想。 我们的小组成员有:苏新雨,潘雁南,徐奕晓,陈子涵。具体分工如下: 苏新雨:提出创意设计。 潘雁南:设计电路,完成不同电路测试。 徐奕晓:电路理论可行性分析,测试传感器。 陈子涵:完成电路图绘制,动手建立实验模型。 从零开始,尽可能利用每天中午午休时间,我们坚持了近3个月时间,感谢几位同学的辛苦付出。 说明:TINKERCAD为AUTODESK公司的注册商标。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed