从一盏灯开始,打造你的智能家居系统

智能家居大概是早几年被热炒的概念,但事实上到现在也未真正进入智能家居时代。原因有许多,个人觉得主要原因是功能还没那么接地气,其次是设备难以标准化成规模生产以形成良性的市场循环云云……总之,讨论其未能大规模普及的原因,有的没的总能凑上一篇又长又臭的论文,何况这不是本文要讨论的重点。
话说回来,无论如何,自己动手打造一个简单的智能家居系统,也不是太难和太昂贵的事情,而且还极富有GEEK精神。
因此,我们将从最简单功能开始尝试,打造我们的智能家居系统。我们的第一个目标是做一盏可以无线控制的灯:通过手机蓝牙,控制无线控制电灯。需要说明的是,无线控制不等于智能家居,但一定是智能家居实现的基本途径。
在此,不得不提醒的是,在您准备好材料准备开干之前,请认真学习一些电工基本常识——触电从来不是一件闹着玩的事。

工具及材料
Arduino 主控板
蓝牙模块
继电器模块
灯泡及灯座
杜邦线及面包线若干
面包板
导线及插头
剪刀
安卓手机

面包板
Arduino mega 2560

继电器模块
杜邦线

电灯及灯座

电线及插头

蓝牙模块

实现思路
实现手机蓝牙控制电灯,我们需要一台安卓手机通过蓝牙向控制电路发送指令,控制电路收到指令后进行判断,确认指令正确后控制继电器(相当于电灯的开关)闭合或断开,实现电灯接通或者关闭。

电路模拟图:

简单介绍一下Arduino :Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的arduino板)和软件(arduino IDE)。它使用起来简单方便,价格也逐渐走低,且在网络上能找到相当多的学习资源,适用于艺术家、设计师、爱好者和对于“互动”有兴趣的朋友们。
由于身边只有一块Arduino mega2560控制板,因此我用这块控制板为例来实现这个电路。事实上arduino有一系列型号可以用,每个型号都有各自的特点,但是基本应用都是类似的。读者可以根据自己的需求选择arduino型号。

搭建控制器

连接面包板

为了后面其他零件的供电,我们将控制器的5V和GND(地)端口分别引出接在面包板上——红色一边代表5V,蓝色一边代表GND,在后面的零件需要供电时可直接在从这面包板上这两排插孔上取电。

连接蓝牙模块

将蓝牙接收板插在面包板上固定,蓝牙模块有四个引脚VCC和GND为模块提供电源,TXD和RXD与主控板进行串口通讯。用面包线或杜邦线将蓝牙模块的四个引脚与对应的端口连接起来:


VCC端连接面包板的红色一边
GND端连接面包板的蓝色一边
TXD端连接Arduino的RX1
RXD端连接Arduino的TX1

连接完的蓝牙模块

连接继电器模块

将Arduino的22号端口与继电器模块的IN1端口连接起来


将继电器模块的VCC和GND分别接在面包板上的供电端。这样,当Arduino的22号端口发出高电平信号的时候,继电器将闭合,接通连接在上面的电路;当Arduino输出的是低电平信号的时候,继电器将断开。

安装电灯

将电线的线头剥开,露出线头,安装在灯座的两个接线柱上

安装好,并将电灯装上
电线的另一头是一个两舌的插头

连接完电灯的电路之后,我们做一下电灯的通电小测试:将插头插在220V的市电上,测试电灯是否能正常工作。主要用电安全。

电灯工作正常。
拔下电源,进行下一步的制作:
将电灯的供电线剥开一点外皮,然后将其中一条电线剪断,剥开绝缘层,露出铜线。

将铜线接在继电器上:
继电器有三个端口,将准备好的两个线头接常开端口,如上图的的左边两个端口。
至此,我们的接线工作全部完成。

编写及烧写程序
在编写程序之前,我们需要下载编写程序的软件。在Arduino的官方网站上我们可以非常方便得下载到编写环境:http://arduino.cc/en/Main/Software
安装完Arduino后,电脑桌面上会出现这个图标,启动,进入程序编写环境。

启动界面

编程环境

将程序敲入软件的编辑框上,并将电路板的USB端口与电脑的USB端口连接。选择菜单栏,工具》板卡》arduino mega2560 or mega ADK

点击红圈标志的按键,进行程序烧写(就是把程序下载到电路板上让它运行啦~)


完成之后,软件下方提示下载完成。

安装手机控制端

首先我们需要下载安装蓝牙串口APP

启动软件
软件会请求蓝牙权限,点击是:
进入软件页面,可以注意到手机任务栏上已经显示蓝牙已经启动了。
点击右上角的连接

像平常连接蓝牙设备一样,配对好设备之后,选中你的蓝牙设备连接。

拖动到软件界面到,第三页键盘页,选择一个按键,设置内容

名称:电灯(可自定义)
字符
消息:l(小写L)
点击确定。软件的键盘上出现一个按键。

测试:
保持电路板与电脑的USB连接(或者用充电器给电路板供电),将电灯的插头接在220V市电上,确保蓝牙模块连接正常,按键盘,控制电灯的开关。


主控板代码:
int flag=0;

void setup()
{
Serial1.begin(9600);
pinMode(22,OUTPUT);//relay
digitalWrite(22,LOW);
}

void loop()
{

int val;
val=Serial1.read();
if(val=='l')
{
flag=~flag;
digitalWrite(22,flag);
}}


  • 8-JUWF3m69CJ1O8jnhtOvTQboOnpJ3lMpnlwO0h3wWnBAAAARwEAAFBO.png
  • QlJXcaj8RSBtd_bce0Galz51yZbLy5DUDLs9Q6pHPX_FAAAABwEAAFBO.png
  • zEC0_bZHkgotduTvATxPVngq07UtvcGy5ssIQKAeDBHSAAAAegEAAFBO.png
  • paitQcL4gM7ng6kGxWpvt28mxKX75z15IzOyScxSF5PDAAAASAEAAFBO.png
  • HYjR6wQo_g-Pr6BAYKIgB_ZbXHmjJjyY5UwMBK5psdTEAAAAUAEAAFBO.png
  • RmeyjCRRdzw1QBM2xURITHNYTZzsoOnvjeYubWM8hia-AAAAMAAAAFBO.png
  • mR8yTUB-o6l8Ngb_WMDMiECOnbwq1vhdCq7SLIQGTfjrAQAAkAAAAFBO.png
  • 9J8t9gzpwzxt0On_tE_MdU2bzZJXD-5Yo2gIOEXnvmT0AQAAWAIAAFBO.png
  • 8A4ZnWye9F52IxOMmYi4vkwaB_sGHMGkbh2QrWs8al30AQAAWAIAAFBO.png
  • Irodfds4li3dUwro2aCI5f7Lesqsfk9S_ncYreqcqrP0AQAAWAIAAFBO.png
  • RvM5gvuhRxFBCpqEvcO71VyrAXW15v4z08zo6fcrSqAIAgAALAEAAFBO.png
  • PAkzaZlL9m-3JpTMya7xJLI68cSPgZGiVFq78y5zDANdAAAAWAAAAFBO.png
  • SEmXZDzYdbMQBPnZDGGOim3AWbWKNgxxUY_9_UJFJONqAAAAXQAAAFBO.png
  • cjJUA5m1K8R3JYr1aSr87dfcpqdJ6oNzJ1eFxoWT-unNAAAAvwAAAFBO.png

回复数 7 切换时间排序
需登录后查阅, 加载中......

目前注册实行审核/邀请制,欢迎灯友邀请好友注册,下载币奖励
邀请注册

为什么注册要审核

目前新版公测中,有任何BUG问题都可以联系我们
提交问题

或如无法回复,请访问此地址
提交问题