金贝棋牌_金贝棋牌官网|专业值得信赖
咨询热线:www.ruckerspie.com
网站公告: 欢迎光临金贝棋牌
地址:www.ruckerspie.com
传真:金贝棋牌
邮箱:www.ruckerspie.com
手机:www.ruckerspie.com
新闻动态 当前位置:金贝棋牌,金贝棋牌官网 > 新闻动态 >

零基础学智能家居套件

文章作者:admin    时间:2019-12-03 15:10

 

  Arduino一□▲…◇▲•.简介 零基础学智能家居套件是本公司最新推出的一款基于Arduino 爱好者的安卓智能家居 学习套件▪-▲,为什么要学智能家居•=○▪?我们先来看看智能家居的概念吧 智能家居核心的概念是让人们能轻松享受生活-▪▽■★◆。 出门在外▼▲•◁○△,您可以通过电话▲▲○◇◆、电脑来远程遥控您的家居各智能系统•▷■,例如在回家的路 上提前打开家中的空调和热水器=□;到家开门时▼▷•■△,安卓密码锁功能开启▼=,系统会自动打开电 子门锁▽△•◆•-,安防撤防◇…○▽.开启家中的照明灯具和窗帘迎接您的归来▲=…. 回到家里•…,使用安卓手机您可以方便地控制房间内各种电器设备▷◆•-,可以通过智能化照 明系统选择预设的灯光场景■▪▽◁•■,读书时营造书房舒适的安静…▲○△•○;卧室里营造浪漫的灯光氛 围……这一切▽•,主人都可以安坐在沙发上从容操作…◆,一个控制器可以遥控家里的一切▷☆●,比 如拉窗帘★■▼=•,给浴池放水并自动加热调节水温▲★-,调整窗帘▼★、灯光●▽•●▽◇、音响的状态★…△★. 智能家居能做的事情还有很多△…○,在此就不一一累述了☆●◆。总之••□,智能家居系统能够有时 间享受生活的舒适☆△◆▷•,同时更能节约用电●▽▲▲…◇。正如比尔盖茨所言●△▷▷●☆:在不远未来•□--★◆,没有智能家居 系统的住宅会像今天不能上网的住宅那样不合潮流◆■▼▲●☆。 科易公司研发团队开发的模拟教学的智能家居的套件…●△▼,安卓部分采用串口数据发送软 件来操作◇•,控制部分采用ARDUINO 单片机来控制◇▼-◆,目的是让大家能通过这种方式了解智 能家居的系统•□◁●-。 二•▲△.清单■•: 1○☆.ARDUINO UNO R3 开发板 2◇△◆.ARDUINOXBEE V5▲▪○.0 传感器扩展板 3◇-.bluebee蓝牙模块 4◆◆-☆•■.LCD1602I2C 液晶模块1 5◁★=.4路继电器模块1 6★★=◁○.红色食人鱼LED模块1 7○▪◇◆.绿色食人鱼LED模块1 8■■●•◇.蓝色食人鱼LED模块1 9…◇••-◁.3WLED模块1 16□■.辉盛9克舵机 号电池盒18-☆.3PIN 连接线○○●◆.母对母杜邦线USB 连接线▲•△▼=▽.蜂鸣器实验 5▲•◆▼□.模拟值读取 6○☆◆•◆=.光控声音 7…■◇◁◆.舵机控制 8•◁◇◁◁.继电器控制 9▪◆.I2C 1602 液晶控制 10•☆.土壤湿度实验 11=★.蓝牙控制 12★=◇.蓝牙智能家居系统实验 四■●▷□☆.Arduino 单片机介绍 Arduino 是源自意大利的一个开放源代码的硬件项目平台●■◆☆●,该平台包括一块具备简单I/O 能的电路板以及一套程序开发环境软件▲■▲-••。Arduino可以用来开发交互产品…●□▪◁▷,比如它可以读 取大量的开关和传感器信号△…◁●◁,并且可以控制电灯…•、电机和其他各式各样的物理设备△●; Arduino 也可以开发出与PC 相连的周边装置◇★☆◇,能在运行时与PC 上的软件进行通信●-▪•■=。 Arduino 是一个开放源码电子原型平台▪◆●,拥有灵活◆□-★=、易用的硬件和软件▷◇★。要给Arduino 下一 个最准确的定义■=,最好用一些实例来描述▲★★○。 您想当咖啡煮好时◆▲●…□,咖啡壶就发出=○△●“吱吱★▲☆-…-”声提醒您吗◇◁◆○△? 您想当邮箱有新邮件时◆=■,电话会发出警报通知您吗=▼◇■? 想要一件闪闪发光的绒毛玩具吗◇▲▽○? 想要一款具备语音和酒水配送功能的X 教授蒸汽朋克风格轮椅吗…◆▪•■? 想要一套按下快捷键就可以进行实验测试蜂音器吗★△★? 想为您的儿子自制一个《银河战士》手臂炮吗--●□? 想自制一个心率监测器▷▪◆,将每次骑脚踏车的记录存进存储卡吗★■★☆★-? 想过自制一个能在地面上绘图▲○=,能在雪中驰骋的机器人吗☆•◇◁○? Arduino 都可以为您实现▪=▲▷。 Arduino 驱动的安装 我们先来下载Arduino 的开发软件▷▲=,web 地址…▽■:下载下来的文件是一个arduino-0023◆■▲.zip 的压缩文件夹◇▼▼,解压出来到硬盘=▪●。 将Arduino UNO R3 开发板通过USB 线连接到Windows 时••□●□,就会提示有名为●△▪▪◇…“Arduino UNO R3…□“的新USB 设备找到-★★, 接着Windows 会引导我们进入□…☆=…“找到新的硬件向导▽▼●•◁”窗口▼▪,选取其中的☆■▪-“否★△◆•,暂时不◁○◆▪”选项后 单击▪-▷▽“下一步□○■▲”按钮•□•: 接下来的步骤需要安装Arduino UNO R3 所需的驱动•○☆▼□,选取其中的△●-■◁•“从列表或指定位置安装 (高级)◁◁=□•”选项后单击■…-▪“下一步•▷”按钮●△☆▼○●: Arduino UNO R3 驱动放在Arduino 0023 安装目录下的drivers 目录中•▽▼○,我们需要为 Windows 指明该目录为安装驱动时搜索的目录□-: 单击△☆●▪▽“下一步▽…△”按钮后▷▽=◁○,Windows 就开始查找并安装Arduino 驱动程序•□▲: 如果一切正常的话◇•☆,我们将看到如下的成功界面▼○○□△: Arduino 驱动安装成功之后★●-…▪,我们可以在Windows 设备管理器中找到相应的Arduino 串口•●◇★: 实验课程这里大家应该对Arduino 有一个初步的了解了•★●,我们下面通过实际操作来学习▷■=. 例程1 LED 闪烁实验 LED 小灯实验是比较基础的实验之一◇=-,我们用高亮LED 发光模块来完成这个实验○•◇。 实验器材如下•-•□◁□: Arduino uno R3*1 Arduino IO 口扩展板V5*1 高亮LED 发光模块*1 3PIN 传感器连接线 小灯实验原理图 实物图 按照上图链接好电路后□-●,就可以开始编写程序了▼★△□○◁,我们还是让LED 小灯闪烁◇☆•☆◆☆,点亮1 熄灭1秒▼○■…□。这个程序很简单与Arduino 自带的例程里的Blink 相似只是将13 数字接口换 做10 数字接口□★-□•。 int ledPin 10☆◆◆▪▪=;//定义数字10 接口 void setup() pinMode(ledPin★◆▼▷□,OUTPUT)◇•;//定义小灯接口为输出接口 voidloop() digitalWrite(ledPin▲△□-▼☆,HIGH)○◁; //点亮小灯 delay(1000)◁○◆; //延时1 digitalWrite(ledPin•▲◇◆●●,LOW)▲-=•; //熄灭小灯 delay(1000)▼-◆•□; 编好后点击下载紧接着我们就可以看到我们接到IO 口10 脚上 的高亮LED 灯模块在闪烁了☆=•▼,这样我们的 小灯闪烁实验就完成了•▷▲□◇△。 注意=▼•:Arduino开发软件的选择 TOOLS 栏板卡的选项是UNO…▼△, 通讯端口要选择初次安装出现的串口 两项缺一不可▪▼▷○▪△,否则不能下载程序•△□●。 例程2PWM 调光 PWM(Pulse-width modulation)脉宽调制 PWM是使用数字手段来控制模拟输出的一种手段●★。使用数字控制产生占空比不同的方波 (一个不停在开与关之间切换的信号)来控制模拟输出○◁▪▼△。一般来说端口的输入电压只有两个 0V 与5V•△◇◇。如我我想要3V 的输出电压怎么办★◆。•▼●▪△□。▽◁…□••。有同学说串联电阻☆☆◁,对▲◇=○◇,这个方法是正 确滴●●。但是如果我想1V◆▲◆…□,3V▲☆…▽■,3☆-=▪.5V 等等之间来回变动怎么办呢◁•?不可能不停地切换电阻吧•□★•。 这种情况下▼□◁☆-▽。▲▼●◆。☆◆★…◇。就需要使用PWM了■△◁△。他是怎么控制的呢□-◆•▲△,对于arduino 的数字端口电压输 出只有LOW与HIGH 两个开关○…◁☆●★,对应的就是0V 与5V 的电压输出▽▽,咱本把LOW定义为 0▲…▷★,HIGH 定义为1□△◆•••.一秒内让arduino 输出500 或者1的信号☆■。如果这500 个全部为 1-○◇○…,那就是完整的5V…▼□,如果全部为0--▼▪,那就是0V▲=●•。如果1 这样输出•…△…●▽,刚好一 半一半☆◆,输出端口就感觉是2▼▼◁•.5V 的电压输出了◇▲●-▽•。这个和咱们放映电影是一个道理◁★◇,咱们所 看的电影并不是完全连续的=□★,它其实是每秒输出25 张图片■◇◇•◆◁,在这种情况下人的肉眼是分辨 不出来的•▽■,看上去就是连续的了◇◇。PWM也是同样的道理□-★◁•◇,如果想要不同的电压◇▪◇△,就控制 的输出比例控制就ok~当然★▲。=•★。•▪◁★☆。这和真实的连续输出还是有差别的▪◁●,单位时间内输出的0◁•,1 信号越多▪▽,控制的就越精确◁=△=。 在下图中○□○,绿线之间代表一个周期▷•,其值也是PWM频率的倒数△=。换句话说-○▽,如果arduino PWM的频率是500Hz■□▲■,那么两绿线 毫秒▼△-=☆★。 analogWrite() 命令中可以操 控的范围为0-255▪=△●◇, analogWrite(255)表示100%占空比(常开)●○▽○, analogWrite(127)占空比 大约为50%(一半的时间)…○…△☆△。 本次实验通过PWM来控制一盏LED 灯=◇☆□,让它慢慢变亮再慢慢变暗•••○◇□,如此循环▲▽▪•▪。同样我们 还是把高亮LED 模块接到数字IO 口的10 脚○▲-△-★,下面是接线图▪=☆•=○: 我们来编程☆▷•: int brightness howbright intfadeAmount howmany points voidsetup() declarepin 10 output◇◇●:pinMode(10…•☆▼○, OUTPUT)☆▷; voidloop() pin10★△▷▲▷•: analogWrite(10★☆●▪■=, brightness)-◇…=●▷; nexttime through loop●▷▪▼◁:brightness 30milliseconds dimmingeffect delay(30)□▼-■…•; 同样我们还是下载到ARDUINO就这样我们用编程的手法让LED 渐明渐暗■…•△□,如同呼吸一 般▼◇▷▷-★,所以我们给它起了一个神奇的名字☆…,呼吸灯○◆…=。 例程3 交通灯设计实验 上面我们已经完成了单个小灯的控制实验▷△▽••,接下来我们就来做一个稍微复杂一点的交通灯 实验▼•○■,其实聪明的朋友们可以看出来这个实验就是将上面单个小灯的实验扩展成3 个颜色 的小灯●◇◁=,就可以实现我们模拟交通灯的实验了•=。我们完成这个实验所需的元件除了 Arduino 兼容 控制器和下载线还需要的硬件如下○-: 红色LED 模块*1 蓝色LED 模块*1 绿色LED 模块*1 3PIN 准备好上述元件我们就可以开工了▲◁•,我们可以按照上面小灯闪烁的实验举一反三★▽▲◆,下面是我们提供参考的原理图▷□◁◇-,我们使用的分别是数字10▼-、7★=、4•●▼、接口▷▲▼••-. 下面我们来编程◁=★◁○■: int redled =10■▲; //定义数字10 接口 int blueled //定义数字7接口 int greenled //定义数字4接口 void setup() pinMode(redled■▷★◇,OUTPUT)▪-☆;//定义红色小灯接口为输出接口 pinMode(blueled▼■…•○-, OUTPUT)•★●◁; //定义蓝色小灯接口为输出接口 pinMode(greenled☆◁•▷, OUTPUT)◆◁•▲▼; //定义绿色小灯接口为输出接口 voidloop() digitalWrite(redled▷◇▼•★△,HIGH)•▲=•○☆;//点亮红色小灯 delay(1000)•●★▪;//延时1 digitalWrite(redled△◇,LOW)-▼△☆…=; //熄灭红色小灯 digitalWrite(blueled=•=◇, HIGH)△◆☆◇○…;//点亮蓝色小灯 delay(200)-…;//延时0•▷.2 digitalWrite(blueled★○▼●▼□,LOW)●◁=•△;//熄灭蓝色小灯 digitalWrite(greenled◆◇…○☆, HIGH)•=★;//点亮绿色小灯 delay(1000)△••-;//延时1 digitalWrite(greenled□…,LOW)★□□=;//熄灭绿色小灯 既然是交通灯模拟实验●▼▽•=◆,红蓝绿三色小灯闪烁时间就要模拟真实的交通灯▼•◆,我们使用Arduino 的delay()函数来控制延时时间-★▲-▽,相对于C 语言就要简单许多了▽●==。 点击下载到ARDUINO 下载程序完成后就可以看到我们自己设计控制的交通灯□-•■▼。 例程4 蜂鸣器发声实验 用Arduino 可以完成的互动作品有很多□▼△△●,最常见也最常用的就是声光展示了◁◁★◁•-,前面一直都 是在用LED 小灯在做实验▲•,本个实验就让大家的电路发出声音◇◆△,能够发出声音的最常见 的元器件就是蜂鸣器和喇叭了▷•,两者相比较蜂鸣器更简单和易用所以我们本实验采用蜂鸣 以下是要准备的元件▷…△:蜂鸣器模块*1 3PIN 连接图=◆:连接电路时要注意一点就是蜂鸣器有正负极之分▲…,下面右侧实物图可看到蜂鸣器有红黑两 种接线○•。连接好电路程序这方面就很简单了■△▲=□,与前面按键控制小灯是实验程序类似▼○○,因为 蜂鸣器的控制接口也是数字接口输出高低电平就可以控制蜂鸣器的鸣响-☆-。 下面我们来编程△☆…◇: int buzzer=8▼◆□•▪;//设置控制蜂鸣器的数字IO脚 void setup() voidloop() unsignedchar i●▷△▪○△,j•☆=••…;//定义变量 while(1) digitalWrite(buzzer◇◇▲▲◁•,HIGH)•○;//发声音delay(1)△◁;//延时1ms digitalWrite(buzzer◇□○,LOW)▽◇■▪=;//不发声音 delay(1)•▲△◁△;//延时ms digitalWrite(buzzer◇●★,HIGH)■▲;//发声音delay(2)☆◇●…▲;//延时2ms digitalWrite(buzzer◁▲▼,LOW)●△▲□;//不发声音 delay(2)○▼▪△;//延时2ms 点击下载到ARDUINO)★◇▽-▲…,下载完程序□•▲□,蜂鸣器实验就完成了▲☆△◇★. 例程5 模拟值读取实验 本实验我们就来开始学习一下模拟I/O 接口的使用 Arduino 有模拟0—模拟5 共计6 个模拟接口▷○▽▷□,这6 个接口也可以算作为接口功能复用◆■◁-, 除模拟接口功能以外☆▽▪★△,这6 个接口可作为数字接口使用○□☆•,编号为数字14—数字19☆▲,简单 了解以后□★,下面就来开始我们的实验☆◁●○。电位计是大家比较熟悉的典型的模拟值输出元件▪▷, 本实验就用它来完成◁•●▷◆■。 所需元器件有▪▲▷▽◇: 电位计模块*1 3PIN 本实验我们将电位计的阻值转化为模拟值读取出来▽-▪▷□,然后显示到屏幕上◇▷▷,这也是我们以后完成自己所需的实验功能所必须掌握的实例应用◁▪•▲。我们先要按照以下电路图连接实物图 我们使用的是模拟0 接口■▽。 程序的编写也很简单…◇•□▽,一个analogRead()◁◇…•;语句就可以读出模拟口的值▽□△=▲,Arduino 328 是10 采集◇☆,所以读取的模拟值范围是0-1023▽▷,本个实验的程序里还有一个难点就是显示数值在屏幕这一问题○◇●,学习起来也是很简单的•☆◆▷-。首先我们要在voidsetup()里面设置波 特率▷…•▷▲□,显示数值属于Arduino 与PC 机通信▪○,所以Arduino 的波特率应与PC 机软件设置 的相同才能显示出正确的数值○▪,否则将会显示乱码或是不显示▽▲◇…,在Arduino 软件的监视窗 口右下角有一个可以设置波特率的按钮★•-◆,这里设置的波特率需要跟程序里void setup()里面 设置波特率相同=-■▲,程序设置波特率的语句为Serial▲◇▽▽.begin()●▲;括 号中为波特率的值◇-★▲。其次就是显示数值的语句了▲■•◇◇,Serial-•□▽◆.print()□◇■△●;或者Serial○○▪.println()●○;都可以☆■, 不同的是后者显示完数值后自动回车-◇▪,前者不是=◁☆◆◇,更多的关于语句的讲解前面有 介绍这里就不再多说了◇◆…◇◆…,我们来写程序-■: int potpin=0…■◇;//定义模拟接口0 int ledpin=13■●▲▲;//定义数字接口13 int val=0◆▷◆;//将定义变量val•☆■,并赋初值0 void setup() pinMode(ledpin…•○…,OUTPUT)▽-▼-☆;//定义数字接口为输出接口Serial■…•-…△.begin(9600)▷•▷-;//设置波特率为9600 voidloop() digitalWrite(ledpin◆•▼●■▷,HIGH)△▷;//点亮数字接口13的LED delay(50)=▼☆▽…▪;//延时0■●△.05 digitalWrite(ledpin▪◆=▷,LOW)◁○○;//熄灭数字接口13的LED delay(50)▷-■○;//延时0▼★▷.05 val=analogRead(potpin)◇…△;//读取模拟接口0的值★▪…•□★,并将其赋给val Serial●☆▽◇▽▷.println(val)□=;//显示出val 下面就是读出的模拟值○▽•▷。本实验到这里就完成了☆◁○•,当您旋转电位计旋钮的时候就可以看到屏幕上数值的变化了▼○◇▷▼,读 取模拟值这个方法将一直陪伴我们-•○=■,模拟值读取是我们很常用的功能★○△,因为很多传感器都 是模拟值输出▷•-◆,我们读出模拟值后再进行相应的算法处理□▼★○…,就可以应用到我们需要实现的 功能里了-◆-○▼。 例程 光控声音实验光敏电阻器(photovaristor)又叫光感电阻▽•▲,是利用半导体的光电效应制成的一种电阻值随 入射光的强弱而改变的电阻器◇○△▽=;入射光强◁▷◇▪,电阻减小■▼◇★◆•,入射光弱△……,电阻增大■•=-▽。光敏电阻器 一般用于光的测量◇◆◆、光的控制和光电转换(将光的变化转换为电的变化)•▷◁=。 光敏电阻可广泛应用于各种光控电路•…,如对灯光的控制▪▲=▼•、调节等场合■▷•▽…,也可用于光控开关●○=★□。 本次实验我们先进行一个较为简单的光敏电阻的使用实验 1□□◁○、实验器件 2●★◇、实验连线☆■、实验原理 本程序应用前面几节读取模拟口电压值的方法◇…•◇★▪,直接将光敏电阻接在数字口•▪-■•☆。当有光照时□•◇△•, 光敏电阻的阻值减小△…,蜂鸣器不响●◇▽◇。遮挡光敏电阻模块时△•■-▷,正常发出声音•▪, 下面我们来编程☆▷■▲★: int val●★○□•△; void setup() Serial•▷◁◆■.begin(9600)●…;pinMode( 10 voidloop() Serial•○□■▼◆.print(light▲○▲◇: Serial★▼…•□….print(val digitalWrite(10 delay(1000 digitalWrite(10 delay(1000 点击(下载到ARDUINO)▼□,就可以通过光的亮度来控制蜂鸣器的发声•○▽•。掌握本程序后▼◆○□,大家可以自己动手设计实验●★…☆,也可以用光敏电阻控制led 灯亮度★○▪…。 例程7 舵机控制实验 舵机是一种位置伺服的驱动器●…○▼▪,主要是由外壳…▷△…▲◆、电路板▽•▲、无核心马达▽-◆•=、齿轮与位置检 测器所构成△=。其工作原理是由接收机或者单片机发出信号给舵机▪●▪,其内部有一个基准电路•●▽-★•, 产生周期为20ms•◁■△■▽,宽度为1△☆▲.5ms 的基准信号…★●•◁☆,将获得的直流偏置电压与电位器的电压比 较□□,获得电压差输出…▲•=。经由电路板上的IC 判断转动方向○△,再驱动无核心马达开始转动★▲☆▼-■, 透过减速齿轮将动力传至摆臂…•▽◇●△,同时由位置检测器送回信号○■•▪▽◆,判断是否已经到达定位•-★▽▷★。适 用于那些需要角度不断变化并可以保持的控制系统●□。当电机转速一定时◁◁◁,通过级联减速齿 轮带动电位器旋转◇…●▼△…,使得电压差为0△▼•▷☆…,电机停止转动•=▷■。一般舵机旋转的角度范围是0 舵机有很多规格•◆◁…,但所有的舵机都有外接三根线◇◆,分别用棕□-、红▲◁…◆◁•、橙三种颜色进行区分●…•,由于舵机品牌不同□•●◆■★,颜色也会有所差异…▽★○•,棕色为接地线▽◁,红色为电源正极线△▲○▼■,橙色为信号 舵机的转动的角度是通过调节PWM(脉冲宽度调制)信号的占空比来实现的▷★,标准PWM(脉冲宽度调制)信号的周期固定为20ms(50Hz)◁=▲,理论上脉宽分布应在1ms 2ms之间-△▲•,但是▽□…○▼★,事实上脉宽可由0■■•▼▲•.5ms 到2▼▷☆=•▪.5ms 之间□…○▲,脉宽和舵机的转角0~180 相对应▽○●○○•。有一点值得注意的地方◆○=▲▪,由于舵机牌子不同◆▲,对于同一信号•▪=★◆,不同牌子的舵机旋 转的角度也会有所不同□•▲。 了解了基础知识以后我们就可以来学习控制一个舵机了•…■▪,本实验所需要的元器件很少只需 要舵机一个◁○、跳线一扎就可以了•◆…○△。 RB—412 舵机*1 面包板跳线 用Arduino控制舵机的方法有两种▽-▷●△,一种是通过Arduino 的普通数字传感器接口产生占空 比不同的方波○◆,模拟产生PWM 信号进行舵机定位○-□,第二种是直接利用Arduino 自带的 Servo 函数进行舵机的控制▷=◆▷●,这种控制方法的优点在于程序编写◁•,缺点是只能控制2 机◆▪△•…▽,因为Arduino自带函数只能利用数字9…=•■■、10 接口▼▷。Arduino 的驱动能力有限△▷•▽▪-,所以当 需要控制1 个以上的舵机时需要外接电源★△。 这里我们通过电位器模块控制一个舵机转动 使用原件▪△◁▷◆▲: arduino 控制板*1 电位器模块*1 克舵机*1传感器连接线 这里要注意▷…,不要使用电脑usb 供电○•▷△◇,因为如果电流需求大于500ma●☆■•,会有烧毁usb 能◆=◁,推荐使用电池外置供电■▷-◇。我们来编程▷•◆: #include

  int _ABVAR_1_val•…••◇; int _ABVAR_2_servo…☆☆-•▽; Servo servo_pin_9▷○▽-; void setup() servo_pin_9△★▪.attach(9)▼…-★▼;_ABVAR_2_servo voidloop() servo_pin_9•□.write(_ABVAR_2_servo 编好后点击(下载到ARDUINO)把程序烧到开发板里面▼▷-,我们就可以利用电位器控制舵机了▼=○◁☆▲。 例程8 继电器控制 我们先来认识一下继电器模块 继电器是一种当输入量(激励量)的变化达到规定要求时☆-◆★…•,在电气输出电路中使被控量 发生预定的阶跃变化的一种电器▲▪•◇☆▷。本公司生产的继电器模块可以接在 240V 交流或 28V 直流电源中对各种其它电器件进行控制▽▷●▲。 利用单片机可以实现定时控制开关的目的■-…。可以应用于防盗□••…=▷,报警=--•▼,玩具◁□☆-▪■,建设等领 域▼◆。继电器是一种电控制器件▪◁。它具有控制系统(又称输入回路)和被控制系统(又称输 出回路)之间的互动关系★▪。 通常应用于自动化的控制电路中◁◁•★,它实际上是用小电流去控制大电流运作的一种-▲□…◁◆“自 动开关•◆★”▪▽△。故在电路中起着自动调节▪☆•★-•、安全保护▷△▽◁、转换电路等作用▲…•▽▽▪。特别适合于单片机控制 强电装置◆◇◆□•。 在控制和使用上也非常方便…▷,只需要给继电器的输出端输入相应不同的电平■=☆◁★●,即可达 到通过控制继电器控制其它设备的目的◁•■☆▲,另外▽▲☆■◆-,在多路继电器 PCB 布局上采用了两行式 布局▼■●○,方便用户引出线的连接◇…☆○=。同时在电路中了加了一个直流二极管大大提高了继电器模 块的搞电流能力防止三极管被烧坏•●…。 另外我们在这款继电器中增加了一个电源指示灯(一路继电器除外)▲△,指示灯为红色▲•▽△◆。 在各路继电器中也增加了一个状态指示灯▽■◇。可以让大家实时观察继电器的开关状态☆●。 主要用途 继电器是具有隔离功能的自动开关元件▪★…◁••,广泛应用于遥控-◇■、遥测□▪、 通讯☆◆▪★□◇、自动控制…◁▲•●★、 机电一体化及电力电子设备中▷○▼★◆△,是最重要的控制元件之一▽•◇□●。 归结起来有如下的作用□…▽: 扩大控制范围▷▲-●◁■:例如▼■▼☆…□,多触点继电器控制信号达到某一定值时…◁,可以按触点组的不同形式☆-,同时换接=◇◆、开断=•○、接通多路电路△▷◆◆□。 放大◇▷☆◆=●:例如▽=△■,灵敏型继电器○▽▼◇••、中间继电器等■=☆○,用一个很微小的控制量••,可以控制很大 功率的电路□▪。 综合信号●○◇☆:例如•=,当多个控制信号按规定的形式输入多绕组继电器时◆•○,经过比较综合●□▷▼☆,达到预定的控制效果●▷◇。 自动-□、遥控△…•、监测▽•□=◆■:例如•○,自动装置上的继电器与其他电器一起…■,可以组成程序控制线路○●-▪,从而实现自动化运行 注意事项 1)额定工作电压◆◆:是指继电器正常工作时线圈所需要的电压…◇•…•, 也就是控制电路的控制电压▷•◁•。根据继电器的型号不同•△△…□■,可以是交流电 压◆◇,也可以是直流电压-◆▽☆。 2)直流电阻▷□•○▷▽:是指继电器中线圈的直流电阻▪==◆▲,可以通过万用表测量●▲▲▼。 3)吸合电流-▲•:是指继电器能够产生吸合动作的最小电流•◆▪▽。在正常使用时△▼◇=◇□,给定的电流必 须略大于吸合电流▪•★▷,这样继电器才能稳定地工作●◇◁◁。而对于线圈所加的工作电压★☆•☆,一般不 要超过额定工作电压的 1◇▷◆.5 倍○▼▷-=,否则会产生较大的电流而把线圈烧毁▼-…○□。 释放电流-▷▪■▼◁:是指继电器产生释放动作的最大电流▼★。当继电器吸合状态的电流减小到一 定程度时▪•▷○-,继电器就会恢复到未通电的释放状态◁▲☆☆。这时的电流远远小于吸合电流▪■•=。 5)触点切换电压和电流=…◁☆☆▪:是指继电器允许加载的电压和电流…▷…▲…◇。它决定了继电器能控制 电压和电流的大小●◁…■▼○,使用时不能超过此值●•,否则很容易损坏继电器的触点▪▪◁▽。 模块测试 下面是关于继电器控制的一个简单测试程序▼▼: int relay 10△•◁;//继电器导通触发信号-高电平有效◆•; void setup() pinMode(relay▲□▪-…,OUTPUT)●-■;//定义端口属性为输出=□▷•; voidloop() digitalWrite(relay•-,HIGH)△○•◇▲•;//继电器导通••▽☆; delay(1000)…•◇▽…; digitalWrite(relay▽☆…□◆■,LOW)=▷•◁☆◇; //继电器开关断开■▪▼△▷; delay(1000)★▼▷☆; 在以上的介绍中我只是介绍了四路继电器里面一路的控制●•○=,其实四路的继电器它们不论在接线还是控制上都是一样的○☆=□◁。 例程9 I2C1602 液晶控制 一…▽、产品介绍 大家都知道=△△▪…,LCD 以及数码管之类的显示器它们虽然极大丰富了人机交互性▲•★▷,但是 我们有个共同的特点就是□•,与控制器连接是都要占用较多的 IO 口线▷★◆,这对一些外围接口 不够丰富的控制器是一大难题•▽★•,同时也限制了控制器的其他功能△□▪▼●…,针对这点◆◆▪▼•,我们的带 I2C 接口的 LCD1602 就能很好的解决这个问题▪▲□◁,而且使用起来也是比较简单▲●▪=○-。 二◇▪◇…▷、产品特点 接口◇□:I2C 接口 I2C 地址-☆:0x27 管脚定义○△□•△:VCC☆□◁、GND•△●-□、SDA◇▲●-◇、SCL 工作电压▪-:+5V 尺寸▪◆◁▷▼:27■…◁…▪.7mm42•=□.6mm 对比度调节◁…△▷▲●:通过电位器 只使用两个 IO 接口 三•▼□、使用说明 由于该模块是 I2C 接口的▽◆◇,所以我们再使用时要遵循 I2C 的协议★□,要包含相应的头文件 才行■▲△••,并且一定要加到库中◇□,下面会有介绍▽■。 还是先来看看它与 Arduino 控制板是如何连接的 那么在使用时我们只要按照这个原理图接线就可以了☆=△,具体细节后续介绍…=■•。 四◇□▪▲、模块测试 硬件要求 1■=、Arduino 控制器 2==、USB数据线 模块 测试要求的东西就那么多◁▽△◁,同上次的一样▼=□◇,我们这次做个简单测试▼△,我们在LCD 上显示 一行字符□○-★“=◇◆□”▷•◁•; 好了★•,先看测试代码 #include

  LiquidCrystal_I2C lcd(0x27☆◆▪,16□☆●▷•,2)▼•□■; LCDaddress 16chars linedisplay void setup() LCD=▷-•-….lcd…-…◁□.backlight()▲=…•○; lcd☆★=○.print(在测试代码的时候一定要将Wire▽▽▲、LiquidCrystal_I2C 这两个头文件添加到我们的库中▷★☆★=◆, 这是该模块工作的保证▪▲△☆! 好了◆=■-,我们下次使用 LCD 就不会那么费劲了=□●▼•。 例程10 土壤湿度传感器控制 我们先来看实物 这是一个简易的水份传感器可用于检测土壤的水份□★◇,当土壤缺水时•=,传感器输出的模 拟值将减小□▪▪,反之将增大○☆▷。使用这个传感器制作一款自动浇花装置=○•○▼★,当您长时间不在家或 过了浇水的时间▼★…,它可以感测到您的植物是否已经渴了▷◁。防止植物枯萎了才知道是缺水造 成的▷□△△…。配合Arduino 控制器让您的植物更舒适…△-□●,花园更智能▽◁▲。 土壤湿度传感器模块△▽▪=▼-,它并不是什么高深的东西◁◆★…◆, 但是如果你需要在工程中用到对土 壤湿度的检查★◇◁△,它将是你最好的选择☆▼□。通过读取两个电极之间的电流的变化▲★•••,传感器使用 两个探头▲◇,电流通过土壤▷-■••=,然后读取该电阻得到的水分含量●◆☆•。水比较多的情况下●□,使土壤 更容易地进行电力(减少阻力)…△,而干燥的土壤导电性差(电阻)★◆=-。 传感器表面做了金属化处理△☆▼▲▪,可以延长它的使用寿命▽▽。将它插入土壤■★-,然后使用AD 转换器读取它=◆-○◇-。在它的帮助下○■…-,植物会提醒您▷□■…:我要喝水了★△▲,请给我我一点水喝□▼•。 技术规格 供电电压▼□★◆:3=◇--▼=.3V 或5V 工作电流◆☆◁:小于20mA 输出电压……▷△:0-2•●=…◆■.3V【2◁■☆◇▪.3V 是完全浸泡在水中的电压值】★△,5V 供电◁▽,湿度越大输出电压越大☆▼。 传感器类型-▪●•▲▼:模拟输出 包装方式○-:静电袋密封 接口定义◆◇▽◆○◆:1 脚信号▪◇△•□,2 脚电源正使用寿命=▼:大约1 年(表面镀金处理◇•▲○★,加强了导电性和抗腐蚀性) 模块尺寸●…:20X60mm Arduino 测试代码★…▲▷▼: 测试代码=▽☆□: Examplecode moisturesensor Arduinoboard sensorvalue description ~300dry soil 300~700humid soil voidsetup(){ Serial■▪☆□….begin(57600)▼○□●; voidloop(){ Serial○▪•▼▷.print(Moisture Sensor Value◁•:)◁□…□-; Serial▽▪-.println(analogRead(0))○▲☆▷◇▲; delay(100)○●▷; 代码下载到ARDUINO里面后☆○△,我们就可以通过串口监测看到土壤的湿度了★●☆△■▪。 例程11 蓝牙控制 蓝牙—-这个名称来自于第十世纪的一位丹麦国王 Harald Blatand Blatand在英文里的 意思可以被解释为 Bluetooth( 蓝牙 所谓蓝牙(Bluetooth)技术■□△○★○,实际上是一种短距离无线电技术□▪◁□,利用▼◆“蓝牙▲▪●□☆=”技术◆▽=▽▲◆,能够有效地简化掌上电脑▼=◁△◆、笔记本电脑和移动电话手机等移动通信终端设备之间的通信●△=…-●,也能够 成功地简化以上这些设备与因特网(Internet)之间的通信▼◁=■,从而使这些现代通信设备与因 特网之间的数据传输变得更加迅速高效◆○▷▲◇,为无线通信拓宽道路…☆…。 Bluetooth Bee 蓝牙无线数传模块采用XBEE 造型设计▷-★•-◇,体积尺寸紧凑▪•●☆▽=,兼容XBEE 的扩展底座=☆=-=-,适用于各种3•☆■□.3V 的单片机系统◇▼△,模块可以使用AT 指令设置波特率和主从机 模式▼◇●■■□,默认波特率△▷▲:9600△☆○▼▽-,配对密码1234-○◁,从机模式◆▪▲。 参数 1)蓝牙协议◆…◁▲-★:蓝牙 2…▽○•.1+EDR 标准 2)USB 协议▽•◇▷:USB v1◇■•….1/2▪△○…☆.0 3)工作频率☆…◆◁:2★■◇.4GHz ISM 频段 4)调制方式◇■●•:高斯频移键控 5)发射功率…▽◇: 4dBm◇--,第二级 6)灵敏度■…: -84dBm 0▲▲△●△•.1%误信率 7)传输速率○□△••◇:2▷△●▲….1Mbps(Max)/160 kbps(Asynchronous)△○=★;1Mbps/1Mbps(Synchronous) 8)安全特性=□◆:认证和加密 9)支持配置★•▪▪•:蓝牙串口(主和从) 10)供电电压•■:+3□…▽◁◇.3 VDC 50mA 11)工作温度◇★☆☆○:-20 55摄氏度 因为是初次与蓝牙模块打交道☆▼◇○-=,今天还是先来小试牛刀▪•▪▲,让Arduino 与手机成功通信 吧…◇▪。先来接线△◁◇,当蓝牙模块成功的和手机连接后★□◇,蓝牙模块连接指示灯绿灯会点亮○--◁。 下面就来看看程序吧◇=•,我就让Arduino 接收到我手机输入的r后=-•□,是pin13 接口的LED 闪烁一下◇□☆,再输出keyes 字样▼•…。 程序如下▽☆=●•=: char val◇◇•◆●★; int ledpin=13…▲○◆▪▷; void setup() Serial△•.begin(9600)◇▷…;pinMode(ledpin□■▪■,OUTPUT)▲▼; voidloop() val=Serial•○◇▲□.read()◇◇-★•;if(val==r) digitalWrite(ledpin○•◇▪•△,HIGH)…●△○-;delay(500)◁●□; digitalWrite(ledpin◁•,LOW)▼▷-◁△; delay(500)◆▽○; Serial△■.println(keyes)•△-☆●; 怎么样▼▪•◇●□,蓝牙的基本原理你掌握了没有◆…▼◇▷。蓝牙通讯在日常的生活中是很常见的△○□★,希望大家能熟练掌握蓝牙的操作◁=。 例程12 蓝牙智能家居综合应用 我们先看蓝牙智能家居的原理图 通过上图我们不难看出•□•,这套智能家居套装□-□▷,是应用ARDUINO 和安卓系统的交互•△◁○。其原 理就是手机上的安卓系统通过蓝牙发送指令●=,来控制ARDUINO 单片机控制外围模块的动 作▷☆•,和读取外围的传感器的值○■☆。正是由于ARDUINO 和安卓两大系统开源特性=▪,所以我们 有机会把未来流行的智能家居建立在其基础之上◁◇☆○•◆。当然▽◆▷-,今天我们只是初步的勾勒出了一 个智能家居的模型○=☆,主要是提供想学习又苦于没有资料的爱好者的一个入门的学习-◆■=••。离真 正的智能家居▼•-○•,我们还有很长的一段路要走○▲。 再看接线 节的学习-○•,大家应该对这个接线图不会陌生了吧-▷…△◇,图示的每个IO 口对应的 XBEE V5=◇★■.0 扩展板上的电子积木接口☆◆。注意■▽□,因为接了舵机▷△▼◆=▼,所以要用ARDUINO 主板要 用外接电源◁□△◁•,就用6 号电池供电•○▼▷◇…,还要注意◇△□-□△,程序烧好之后才能插蓝牙◁…▪☆,不然无法下载程序…•=。 废话不说▷•▪○,上程序○▼▪: //***科易互动科技--安卓智能家居程序****//****Write LAYHOYACOPY zuo****//***

  #include pitches•…○•▪.h LiquidCrystal_I2C lcd(0x27…□•▼,16△•▲,2)●★; LCDaddress 16chars linedisplay int melody[] NOTE_E4▲☆-▽▲,NOTE_E4▪☆★, NOTE_E4▷●▲▽, NOTE_C4△●○•▲, NOTE_E4-…▽…, NOTE_G4▲●□◇, NOTE_G3●■, NOTE_C4▼••, NOTE_G3▪=◆, NOTE_E3□☆■•◆, NOTE_A3▷▼△, NOTE_B3•○▪, NOTE_AS3▪▷▽▷◆…, NOTE_A3●■•-, NOTE_G3-=▲△▽☆, NOTE_E4○◆, NOTE_G4◇▷, NOTE_A4○▽-, NOTE_F4△•▷●▪…, NOTE_G4●…◁, NOTE_E4●-▼●•◇, NOTE_C4▪○□, NOTE_D4☆=■☆•, NOTE_B3□▽•=●, NOTE_C4△☆•△▷•, NOTE_G3-△△●◁, NOTE_E3▷○★☆-, NOTE_A3◆•■…●◁, NOTE_B3▲△☆-, NOTE_AS3=…◆□○, NOTE_A3……★◆, NOTE_G3■○-, NOTE_E4◆▲▽□▲, NOTE_G4☆□●◆■, NOTE_A4★◁▽○●, NOTE_F4●◆, NOTE_G4=□, NOTE_E4●△▲▽…, NOTE_C4•☆▼-, NOTE_D4○●△○, NOTE_B3☆△, NOTE_G4▲-○★▼, NOTE_FS4•◁◆-◁, NOTE_E4◇◁, NOTE_DS4=▪, NOTE_E4☆◇…★, NOTE_GS3◁▲, NOTE_A3▼◁◁◇■, NOTE_C4▷◆, NOTE_A3◆○, NOTE_C4□□◇▷•, NOTE_D4▼-★▲△•, NOTE_G4•=-•▪, NOTE_FS4•=◆•, NOTE_E4•▲…◆△•, NOTE_DS4▽☆=…, NOTE_E4◁▽▽◆★, NOTE_C5△■★-, NOTE_C5★▪△…○•, NOTE_C5☆•▲=•, NOTE_G4●=, NOTE_FS4•◇, NOTE_E4■△☆•□, NOTE_DS4▲●◆-, NOTE_E4■=…▼, NOTE_GS3=◁◆●◁, NOTE_A3○•○, NOTE_C4--◆●●, NOTE_A3☆◇, NOTE_C4-▪★◆, NOTE_D4◁◁=, NOTE_DS4•…□□○, NOTE_D4▪…-, NOTE_C4•-★▲▼☆, NOTE_C4★…▼■, NOTE_C4▲○○, NOTE_C4●▽▼, NOTE_C4◆◁•☆☆▪, NOTE_D4▪-△, NOTE_E4□•, NOTE_C4▲★…•★•, NOTE_A3▷□▽●, NOTE_G3▪●●, NOTE_C4△●, NOTE_C4•☆, NOTE_C4△-•▽, NOTE_C4▲▽▪○△△, NOTE_D4-•○▼▽▷, NOTE_E4=•△◇…, NOTE_C4★▽◆◁□, NOTE_C4■●☆◁□▪, NOTE_C4▪▷▽, NOTE_C4△□-▼▪★, NOTE_D4△◆▷▲△, NOTE_E4▪△, NOTE_C4■▲=☆, NOTE_A3•=▽•-, NOTE_G3}▪□△; int duration 110○●…★…;Servo myservo□▼●•▷; Servo myservo2◇◇; int analogInPin0 A0•◇=;//定义模拟信号1在A0 脚位 int analogInPin1 A1□▪■▷•▽;//定义模拟信号2在A1 脚位 int analogInPin2 A2△◇○▪;//定义模拟信号3在A2 脚位 int analogInPin3 A3□▷;//定义模拟信号4在A3 脚位 int delay_counter intsensorValue intsensorValue1 intsensorValue2 intsensorValue3

【返回列表页】
地址:www.ruckerspie.com    电话:www.ruckerspie.com    传真:金贝棋牌
技术支持:金贝棋牌 ICP备案编号: 金贝棋牌