IOT实验-Arduino蓝牙模块控制小灯

正文

一、实验要求

在面向智能家居的物联网系统场景中,一般要提供对日光灯的无线控制。本实验旨在构建一个蓝牙遥控灯原型。本实验基于Arduino开发套件、蓝牙模块,运用App Inventor快速开发一个遥控APP,实现对Arduino驱动的发光二极管的开关控制。APP至少设计四个按钮,分别控制3种不同的发光二极管,一个控制跑马灯效果。

二、学习内容

1. 蓝牙模块技术参数

2. Arduino电路连接蓝牙模块的方法

3. 进一步掌握Arduino程序编写方法

三、技术原理

蓝牙参数特点

1.蓝牙核心模块使用HC-06从模块,引出接口包括VCC,GND,TXD,RXD,预留LED状态输出脚,单片机可通过该脚状态判断蓝牙是否已经连接

2.LED指示蓝牙连接状态,闪烁表示没有蓝牙连接,常亮表示蓝牙已连接并打开了端口

3.输入电压3.6~6V,未配对时电流约30mA,配对后约10mA,输入电压禁止超过7V!

4.可以直接连接各种单片机(51,AVR,PIC,ARM,MSP430等),5V单片机也可直接连接

5.在未建立蓝牙连接时支持通过AT指令设置波特率、名称、配对密码,设置的参数掉电保存。蓝牙连接以后自动切换到透传模式

6.该蓝牙为从机,从机能与各种带蓝牙功能的电脑、蓝牙主机、大部分带蓝牙的手机、Android、PDA、PSP等智能终端配对,从机之间不能配对。

IOT实验-Arduino蓝牙模块控制小灯_第1张图片

Arduino 与蓝牙模块连接方法

VCC:接Arduino的5V。
GND:接Arduino的GND。

TXD:发送端,一般表示为自己的发送端,接Arduino的RX。
RXD:接收端,一般表示为自己的接收端,接Arduino的TX。
正常通信时候本身的TXD永远接设备的RXD!正常通信时RXD接其他设备的TXD,

自收自发:顾名思义,就是自己接收自己发送的数据,即自身的TXD直接连接到RXD,用来测试本身的发送和接收是否正常,是最快最简单的测试方法,当出现问题时首先做该测试确定是否产品故障。也称回环测试。

线接好后,把Arduino上电后,蓝牙的指示灯是闪烁的,表明没有设备连接上。


实验电路连接

IOT实验-Arduino蓝牙模块控制小灯_第2张图片

注意

TXD:发送端,一般表示为自己的发送端,接Arduino的RX。
RXD:接收端,一般表示为自己的接收端,接Arduino的TX。
正常通信时候本身的TXD永远接设备的RXD!正常通信时RXD接其他设备的TXD,

遥控App设计

Appinventor

组件设计

IOT实验-Arduino蓝牙模块控制小灯_第3张图片

逻辑设计

IOT实验-Arduino蓝牙模块控制小灯_第4张图片

实验程序代码

int ledpin10=10;   //红灯10接口
int ledpin9=9;      //黄灯9接口
int ledpin8=8;     //绿灯8接口
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  pinMode(ledpin10,OUTPUT);
  pinMode(ledpin9,OUTPUT);
  pinMode(ledpin8,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  while(Serial.available()){
  int n=Serial.read();
  
if(n==10){     //红灯闪烁
  digitalWrite(ledpin10,HIGH);
  delay(1000);
  digitalWrite(ledpin10,LOW);
  }
  
if(n==9){       //黄灯闪烁
  digitalWrite(ledpin9,HIGH);
  delay(1000);
  digitalWrite(ledpin9,LOW);  
}
 
 if(n==8){      //绿灯闪烁
  digitalWrite(ledpin8,HIGH);
  delay(1000);
  digitalWrite(ledpin8,LOW);
  }
  
if(n==7){        //跑马灯
  while(1){
  digitalWrite(ledpin10,HIGH);
  delay(1000);
  digitalWrite(ledpin10,LOW);
  digitalWrite(ledpin9,HIGH);
  delay(1000);
  digitalWrite(ledpin9,LOW);
  digitalWrite(ledpin8,HIGH);
  delay(1000);
  digitalWrite(ledpin8,LOW);
  } }
}}

写好代码之后要上传到组件中,操作如下:

要保证要相关驱动才行,没有驱动的话,可以用驱动精灵安装,然后选择COM4

然后上传。

打开手机蓝牙,与蓝牙模块配对,即可。

这个实验比较简单,就这样啦。

你可能感兴趣的:(IoT)