广告

利用Simblee蓝牙控制系统DIY一个智能百叶窗

2017-09-15 Duane Benson 阅读:
苦命的上班族工作日不得不早早起床,要在规定的时间赶到办公室,哪怕多睡一分钟都是奢望。好不容易盼到周末,本想睡到日上三竿,却被透过窗帘的日光扰了清梦,好不烦恼。当我们的美国工程师遇到同样的问题时,就在家里的百叶窗上装了一个Simblee蓝牙控制系统,窗帘可以在预设的时间自动打开或关闭了......

灵感来得很突然。在一个星期六的早上,我想多睡一会儿(事实上每天我都想多睡几分钟,但只有星期六才可以这样任性)。然而事与愿违,我的百叶窗太差了,根本就遮不住光,我感觉光线透过百叶窗后更加刺眼了。下面的图像尽可能准确地显示了光线的亮度级别。左边是实际亮度,右边是我期望的亮度。7YCednc

Simblee_F1_20170915

(来源: Duane Benson)7YCednc

7YCednc

我决定用安卓版的Simblee应用程序来解决这个问题。Simblee是与Arduino兼容的蓝牙控制系统,使用Arduino IDE进行编程,与iPhone或Android应用程序配合使用,就可以轻松地对小设备进行复杂的无线控制。7YCednc

硬件

我打算用Simblee控制与遮光百叶窗连接的步进电机。我在Simblee的哥们给了我一些芯片和印刷电路板,还有我自己的Adafruit电机扩展板,另外我还设计了一个带3至5伏线路电平转换器的通过Simblee连接的Arduino扩展板。7YCednc

最初我设计的是一个不带线级电平转换器的部分功能板,只使用了开漏线路电平转换器芯片,把上拉电阻给忘了。7YCednc

新的版本在I2C线路上使用了更传统的推挽转换器芯片(Ti TXB0108)作为数字I/O、两个MOSFET和四个电阻转换器。在第三版中,我将Simblee模块直接放在具有Arduino外形的PC板上。这就是带Simblee蓝牙控制功能的独立Arduino。7YCednc

下图是我用到的组件。从顶部中间按顺时针方向,这些组件分别是:7YCednc

* Adafruit电机扩展板和步进电机
* 用DS3231 RTC(实时[**时钟**](http://pubads.g.doubleclick.net/gampad/clk?id=4417008426&iu=/122049170/TEXT_AD))设计的多传感器扩展板
* Simblee RFD22122 RGB LED /按钮扩展板
* Simblee RFD22121 USB编程扩展板
* Simblee RFD77201 7-GPIO分线板
* 具有Arduino外形尺寸通过Simblee连接的扩展板
* 不带Atmega328P MCU的Arduino Uno

Simblee_F2_20170915

(来源: Duane Benson)7YCednc

7YCednc

你也许会好奇最后一个组件为什么要用不带微控制器的Arduino。实际上Simblee自带32位MCU,我会用它执行所有的计算,所以就用不着Arduino了。 但是这些组件中没有5伏电源,所以使用Uno板作为电源。通过Simblee连接的扩展板需要一个电源输入连接器以及3V和5V电压调节器。3.3V电源已经有了,但是没有外部调节5伏电源,如果不使用无MCU的Arduino,会很麻烦。7YCednc

下图中所有组件叠装在一起了。7YCednc

Simblee_F3_20170915

(来源: Duane Benson)7YCednc

7YCednc

它的基本作用是在晚上自动关下百叶窗,并在不同的日子里,在早上不同的时间拉开窗帘。工作日的早上会早点开窗,周末就会让我睡会儿懒觉,上午10:00或11:00再开窗。窗帘开关的时间由RTC控制,手机上安装的应用程序用于控制百叶窗打开的程度,可以全开,也可以半开,这样我就不用下床啦。7YCednc

Simblee通过蓝牙协议栈与手机通信,它使用其I2C接口与电机扩展板通话。Simblee还能够与基于云的应用和网站进行通信,因此一旦可以用了,我就会设置远程控制和调度,不过这是另外一个故事了…...7YCednc

软件

Simblee使用Arduino IDE编程,包括Simblee的微控制器功能和手机上的UI(用户界面)。微控制器组件与标准Arduino代码大致相同并兼容。手机UI也在Arduino IDE中编码。7YCednc

例如,下面是在手机上创建向上箭头控制的代码:7YCednc

uibuttonUp = SimbleeForMobile.drawButton(120,100,100,“Blinds up”);7YCednc

下面是按下按钮时调用函数的代码:7YCednc

SimbleeForMobile.setEvents(uibuttonUp,EVENTPRESS);7YCednc

Simblee Arduino兼容代码有三个模块:SimbleeForMobile,用于与手机通话; SimbleeCOM,用于Simblee到Simblee通信;SimbleeCloud,用于与网络连接。目前我只用了SimbleeForMobile,需要基于Web的远程控制功能时,就可使用SimbleeCloud。7YCednc

不得不说Simblee与Arduino的兼容性相当不错。Adafruit的电机扩展板和RTC代码根本不需修改,复制再粘贴就可以使用。没有比这更省事的了。7YCednc

安装

安装很容易,如下图。在窗帘的一侧装一个标准支架;在另一侧,用一小段软管将步进轴连到百页窗,它将作为安装和驱动轴。最后,用小接近传感器作为百叶窗移动的限位开关。7YCednc

Simblee_F4_20170915

(来源: Duane Benson)7YCednc

7YCednc

将电机轴连到百叶窗的滚轴并安装光传感器,一切准备就绪。然后需要稍微调整一下步进电机的安装位置。启动之后,它的轰鸣声好像一辆卡车正向我撵来。7YCednc

读者朋友,看了这篇文章,你有没有想要一试身手的冲动呢?7YCednc

原文刊登在EDN姊妹网站Embedded,参考链接Using Simblee Bluetooth to improve one's sleep,由Jenny Liao编译整理。7YCednc

201606300001237YCednc

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • 手工焊接表面贴装器件 到一定阶段,你一定会用到并手工焊接表面贴装元件(SMD)。你可以等到不能逃避时才学,也可以用热情和激情来拥抱竞争。
  • 13所中国高校被美国列入实体清单,为何没有清华北大? 继华为被列入之后,美国表示将在“实体清单”中增加33家中国企业和机构,其中包含了13所中国的高校。但为何中国最著名的两所大学,北京大学和清华大学并不在这份名单之内。
  • LED灯不停地自动开、关,问题出在哪? 一年以后,我发现其中一个LED灯每次开灯约30分钟后,隔几分钟自己就会开关一次。我拆开灯泡,发现导热膏有点少。补了一些导热膏却没什么变化。难道是控制电路的问题?我迫切想知道怎样才能修好它……
  • 美国工程师发挥天才想像力,设计了几款呼吸机 疫情初期,由于急缺呼吸机,那些原本可以活下去的生命丧失了生的机会。美国国防部专门发起了自制呼吸机的挑战赛,欲借众人的智慧与专长,解决这一严峻问题。本文精选的6款呼吸机设计令人脑洞大开,尤其是将吸奶器改造成呼吸机……
  • 3D打印如何帮助抗击新冠疫情? Omar Badar得知他的朋友在COVID-19抗疫前线,利用3D打印技术帮助医护人员制作面罩时,就产生了一个创意。
  • 美国工程师巧手修电视 2007年,我兄弟买了一台支持高清的LG 26LC7R电视,我们把那台用了20年的CRT电视收起来了(其实还能用)。 新电视有模拟和两个HDMI输入。 现在,十年过去了...
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告
    向右滑动:上一篇 向左滑动:下一篇 我知道了