3
编者注:本项目编译自创客James Wolf的博客文章Sparkcore Smart Garage。在本文中,James将带领我们一道打造一个利用智能手表控制车库大门的装置。硬创邦对文章有适当编辑。
不管你喜不喜欢,智能手表确实正在慢慢普及,但你想过没有,也许除了看时间、当闹钟和震动提醒之外,作为物联网未来的一部分,智能手表应该有更大用途。如果你已经等不及商家推出更强大的功能了,来看看这个利用智能手表Pebble和Sparkcore 微控制器来打造智能车库的项目吧。只要你在有网络连接的地方,就可以用Pebble轻松实现车库门的开关。Pebble应用写在Pebble.js中,它可以在按钮按下时执行一个Ajax请求。Sparkcore是一个类似于Arduino的微控制器,只是额外有一个带有RESTful接口的板载WiFi,可以轻松处理来自Pebble的Ajax请求。
关于项目的代码、制作说明和走线图解的更多细节,你可以在原作者James Wolf的博客上找到。
事实上,我之前已经用Arduino做好了一个物联网车库门控制装置,但可靠性方面还有一些问题。
所以我决定换些新的东西试试:由Spark.io推出的Sparkcore。Sparkcore对这个项目来说是完美的,使用它,你不需要再纠结于系统的稳定性,从而使你能更专注于你的应用代码,只要有电和合适的证书,它就会一直保持连接。
我添加了一个I2C OLED来显示车库门的状态,以及一个LCC120 数字继电器来模拟按下车库大门的按钮。另外,设备的电力由我先前塞入墙壁里的一个手机USB电源提供。
我将RGB LED上普通的青蓝色指示灯调成了极暗的绿色。一旦设备失去了云连接能力,指示灯就会变成红色。不过我只见过一次它变红了,那次是因为路由器重启了。其它的时间,它都以深绿色告诉我WiFi在正常工作。
我为Sparkcore做了一个定制线路板,这个定制板可以连接OLED、Reed传感器以及用作车库门按钮的数字继电器。Reed传感器是一种在门窗打开时会发出信号的传感器。
我在我的智能车库和门之间装上了电线,这样,Sparkcore就能及时知道门是开着还是关着。Reed开关用一个3.3V的电线连接到一个模拟输入引脚,然后将这个引脚设置成一个数字输入。这样一来,我就能通过这个引脚知道门是开还是关(1或者0)。
线路图设计。
做出电路板,可以看到上面的路径。
那个数字继电器让我不用将Sparkcore直接连接在车库门的电路上,就可以仿真按钮按下的状态。当然,你也可以使用一个光隔离器来实现类似的功能。应用在继电器2个引脚上的电力连接了车库门上按钮的2个引脚。另外2个螺丝接线端用于连接Reed开关和A0引脚(用作一个数字输入)和3V。
图片里,我将Sparkcore和OLED屏幕、LCC120 数字继电器,以及一捆传感器和LED连接器连接在一起。如果你要自己制作一个,图片里列出了每一个零件的所有引脚,我也尽可能地用颜色编码了电线,利用上面这三个图,你应该可以明白焊接的电线和线路。
我用Pebble Steel智能手表对车库大门进行远程操控以及检测它的开关状态。我用JavaScript编写了一个快速应用,这个应用可以查询车库门的状态(利用Sparkcore的RESTful服务)。因为Pebble可以执行JavaScript应用,所以当车库门的按钮按下时,可以轻松的发出一个Ajax请求。
当我按下中间的按钮时,它会给Sparkcore发送一个安全指令询问门的状态。你可以按下按钮来开关门(向上或者向下拨动按钮)。因为Pebble应用程序和Sparkcore是通过设备ID以及Pebble应用程序中内置的AuthorToken连接在一起的,所以他们具有一对一的关系。
在这个项目里,Pebble 智能手表其实并不是必需的。你也可以用一个网络应用程序来执行“开门”的命令。RESTful的界面暗示其实任何设备或者应用程序(比如一个智能手机的应用程序)都可以执行一个操控车库门的HTTP请求。我只是觉得Pebble是一个很好的附加产品,而且我本来已经有了一个Pebble智能手表,我想试试它是否可以整合在一个应用程序中。
运行在Sparkcore上的智能车库模块的代码点这里。
测试中……
Pebble.js 代码可以在Pebble 智能手表上运行。你只需要将设备ID和访问口令转换成你的账户,你可以在CloudPebble.com上轻松实现。
代码是开源的,所有人都可以自由使用。你可以随意根据自己的项目或者设计对它进行调整。如果你要使用这个代码,只需要写明我的版权即可,也请你发给我一个你的项目的链接。
我在SketchUp里设计了智能车库中可以3D打印的三个部分,这样任何人都可以利用3D打印出这个项目里的这些部分(相关文件点击这里下载)。第一部分是主要部分,它搭载了电路、OLED和Sparkcore;PCB跟USB接口点恰当地嵌锁在里面;屏幕则被架置在顶部;前控制面板的标签恰好放置在OLED托槽的后面;整个带有前控制面板的这个主要部分应该用铆钉镶嵌在墙壁里面。
一切准备就绪之后,按如下视频安装各个组件。
接下来就是测试时间了。
2015-2016赛季全球创客马拉松华南农大站已经开赛啦!只要你的创意够新颖、动手能力够强都可以来参加。还在等什么,快来参加吧!关注“硬创邦”(微信号:leiphone_bang),回复“华农”即可参与报名!
雷峰网原创文章,未经授权禁止转载。详情见转载须知。