Hello,我起爱的伙计们,好久不见了。已经两个多月没有更新文章了,看到大家还在,鄙人心里是十分的感动啊! 由于前段时间在忙一些项目(搞不好要蹚一下智能家居的浑水),最近呢又忙着给我的学员备课(关于网络安全编程的,感兴趣的可以讨论一下)一直没来更新文章,对于私信也都没来得及回。 还请伙计们海涵!鄙人不周到之处还请恕罪恕罪... 现在“智能家居”这个词是很火热,各大厂家也都纷纷推出了自己的产品,那作为平民的我们,买的时候还是会考虑一下,家里的老设备,食之乏味弃之可惜,那能不能改装一下呢? 没错,答案是能,而且很简单(要求不复杂的情况下),我们今天就来实现改造一台废旧的风扇。原理也简单,代码也简单。 上演示视频:如果亲爱的伙计们,你们感觉有意思的话,那么这篇文章可以继续看下去了。 做一些简单的实验,可以让没入门的小兄弟感受到创客的奇妙,说不定就进了改造世界的坑了呢~ 准备工具:
设计初衷:有伙计可能问,你改造啥不好,偏偏改造这么个玩意。 其实呢,前段时间回老家。我母亲跟我讲,家里的风扇坏掉了,天热了,你看看能不能找人去修理一下子。 要换做现在的年轻人,那没得说。破风扇还修啥?开空调多好,不行买个新的也行啊。 可我老母亲,简朴了一辈子,省点钱都是为了儿女,这么热的天也就开个风扇。一时心酸,我就回答道,不用了,这点小事我来就行了,找人修还得花钱。 于是就有了今天的文章。 拆卸分析:把风扇拆开之后,测了测电路板,推断应该是电容不行了。家里又没有,淘宝一个吧又不值当的,一想,抽屉里还有几块arduino的开发板,还有几个继电器没用,那合得来了,改装一下吧。 当然,如果你的风扇的PCB板子不是这样的也没关系,找到关键点就行,其实都差不多构造。 板子上有四个点,分别对应着高中低四个风速以及一个摆头。 虽然电容坏掉了,但如果直接把风扇的电源接到上图四个点上,风扇同样可以工作。那这就放心了,直接在这几个点与电机的连接上加一个继电器不就可以控制了嘛。 继电器: 继电器模块 这里我们再来补充一下关于继电器的一些小知识:
因为继电器里面是线圈,是通过上电后吸合来来控制导通的,所以我们可以用单片机供给高低电平来控制。 继电器上的IN:接收单片机管脚传来的高低电平,高或低电平控制继电器吸合。
接线:(接线图) 以上是花的草图,大体上表示的就那么个意思。 注: 由于继电器有常开常闭两个端,且有一端通电导通,我们的风扇由于考虑到控制问题所以接常开,上电才能工作。 其次,继电器不能全部导通,比如我们要调到抵挡的风速,那么中高档的继电器需要断开,否则容易烧坏风扇,其它档位同理。 继电器说完了,接下来就是arduino跟蓝牙串口通讯了。 串口通讯:(连接HC-05) 由于Arduino跟蓝牙模块的通讯是串口模式,所以arduino的RX/TX要接蓝牙模块的TX/RX(注意是反着的) 然后就是arduino串口读取蓝牙模块串口的数据了,这里我们用到Serial.available() 这个方法:
一个简单的串口通讯程序就写出来啦,是不是很简单。 接下来我们说几个常见的函数做拓扑就直接上代码了。
注意:由于单片机的引脚有的加了上拉,所以初始状态下,不一定都是低电平(导致都是低电平效果有的继电器导通,有的不导通),这个自己测试。 代码:(上部分) (下部分) 我们将代码通过arduinoIDE烧录上去之后,然后用安卓手机打开蓝牙调试工具(这个随便下载一个即可)推荐Amarino挺好用的。 (Amarino蓝牙助手) 然后连接蓝牙模块(HC-05默认的密码为:1234),之后就发送ABCDE来测试效果就OK了。 测试:简陋的APP 顺便自己写了一个简陋的APP来控制,效果还是可以的,我这边一天24小时运行,开了好多天了。稳定性不错! 后续:有些人很不待见arduino这个平台,这里简单表示下鄙人的看法。作为一个新兴的平台,我觉得arduino的存在是很好的,它十分轻便容易上手,在一些企业产品的架构阶段,有很多人都喜欢用arduino来实现功能。 毕竟现在市场竞争越来越大,很多中小企业追求的是产品开发上架的速度,如果把握不好,很可能就被别人抢占市场。再加上现在的很多芯片厂商都喜欢跟arduino沾点边,一些厂商直接标识“支持arduino编程”,可见arduino已经慢慢开始走向台面。 这就跟当年python不受开发者待见一样,未来的发展好坏谁也不能预测,大家喜欢就去深究吧。 |
|