Arduino R3 控制系统:通过蓝牙模块实现手机远程监控超声波传感器数据并控制LED灯

项目主题Arduino R3 控制系统:通过蓝牙模块实现手机远程监控超声波传感器数据并控制LED"

  • 使用Arduino R3作为主控制器。
  • 集成了蓝牙模块,允许手机设备远程连接。
  • 超声波模块用于收集距离数据。
  • LED灯的开关状态可以通过手机发送的指令控制。
  • 手机可以接收并显示超声波模块的数据。

以下是项目的详细所需准备的材料与软件

第一步先准备好Arduino IDE软件并将Arduino主板通过数据线接上电脑通过Arduino IDE软件进行设置

第二步材料清单(材料链接在材料清单下面)

  1. ArduinoR3主板+数据线 A链接
  2. LED B链接
  3. 杜邦线 C 链接
  4. HC-05蓝牙模块(带主板HC-05主从一体蓝牙模块) D链接
  5. 超声波测距模块HC-SR04(新版支持电压3.3V-5VE链接

A:https://m.tb.cn/h.gSGEdLcVqYoUY70?tk=NmwX3bWsz0PZH4920  B:https://m.tb.cn/h.gS0gTO1apevojma?tk=AhFG3bWHQHy CZ0002

Chttps://m.tb.cn/h.gSGvAKn4mpGuAlA?tk=JgBM3bWIHZn

D: https://m.tb.cn/h.gS7HomiruiUiIVX?tk=44Xw3bWGB0R

E: https://m.tb.cn/h.gSGxMKDEdyXfKU7?tk=6hpy3bWGrca ZH4920

第三部:将蓝牙模块接上Arduino R3通过数据线接上电脑通过Arduino IDE软件将代码上传到Arduino R3板上(下方的红色字体为详细步骤

通过Arduino R3与蓝牙模块的AT模式配置:实现串口监视器数据传输及状态验证"

这个标题涵盖了以下要点:

  • 使用Arduino R3作为主控制器。
  • 连接并配置蓝牙模块进入AT模式。
  • 通过串口监视器验证蓝牙模块的状态。
  • 设置串口参数(如波特率和输出格式)以确保正确的数据传输。
  • 显示蓝牙模块已准备好的状态信息。

第一步蓝牙模块的RXD(接收数据)引脚 应该连接到Arduino R3的数字引脚11。这意味着蓝牙模块将通过此引脚接收来自Arduino的数据。

蓝牙模块的TXD(发送数据)引脚 应该连接到Arduino R3的数字引脚10。这样,Arduino R3将通过此引脚向蓝牙模块发送数据。

蓝牙模块的VCC(电源正极)引脚 应该连接到Arduino R35V引脚。这为蓝牙模块提供必要的5伏特电源。

蓝牙模块的GND(接地)引脚 应该连接到Arduino R3GND引脚。这是为了保证整个电路的电位参考一致,避免出现电位差导致的信号干扰或损坏。

第二部将以下的代码通过数据线连接ArduinoR3的主板连接电脑使用Arduino IDE软件上传到ArduinoR3主板上后出现bluetooth is ready!进入蓝牙的AT模式详细步骤一下(蓝色字体)(代码是绿色字体以下)

(蓝牙模块代码):#include <SoftwareSerial.h>

// Pin10HC05TXD

// Pin1HC05RXD

SoftwareSerial BT(10, 11);

char val;

 

void setup() {

  Serial.begin(38400);

  Serial.println("bluetooth is ready!");

  BT.begin(38400);

}

 

void loop() {

  if (Serial.available()) {

    val = Serial.read();

    BT.print(val);

  }

 

  if (BT.available()) {

    val = BT.read();

    Serial.print(val);

  }

}

Arduino断电:首先,确保Arduino R3没有连接电源,这样可以避免在配置过程中出现意外的电流冲击。
按住蓝牙模块上的黑色按钮:找到蓝牙模块上的一个小的黑色按钮(通常标记为“AT”“MODE”),并持续按住它。
重新给Arduino通电:在按住按钮的同时,将Arduino R3连接到电源或USB。蓝牙模块应该会在几秒钟内启动,并在启动过程中检测到你按下的按钮。
观察蓝牙模块的指示灯:如果一切正常,蓝牙模块的指示灯应该开始以慢速闪烁(大约每2秒闪烁一次)。这表明蓝牙模块已成功进入AT模式,准备接收AT命令。
打开Arduino IDE的串口监视器:在Arduino IDE中,选择正确的串行端口,这通常是与你的Arduino连接的COM端口(如COM3COM4等)。确保将输出格式设置为“Both NL & CR”,这表示新行和回车,以确保命令的正确格式。
设置波特率为38400:这是蓝牙模块的默认波特率,用于串口通信。确保在串口监视器中设置相同的波特率,以确保数据的正确传输。
验证AT模式:一旦配置完成,你可以在串口监视器中看到“bluetooth is ready!”的消息,这表明蓝牙模块已经准备好接收AT命令。  此时,你可以开始发送AT命令来配置蓝牙模块。
 
进入AT的指令是AT+ORGL:此命令用于恢复蓝牙模块的出厂设置。当你不确定模块的当前设置或设置混乱时,使用此命令可以将所有参数重置为初始状态,便于重新开始配置。
AT+NAME:查询当前蓝牙模块的名称。发送此命令后,模块会返回当前设置的蓝牙名称。
AT+NAME=HC-05:设置蓝牙模块的名称为“HC-05”。这有助于在多个蓝牙设备中区分此模块,特别是在配对和连接的过程中。
AT+ROLE=0:设置蓝牙模块的角色为从模式(Slave Mode)。这意味着模块将等待其他主设备(Master)的连接请求,而不是主动发起连接。对于大多数Arduino项目,从模式是最常见的设置。
AT+CMODE=1:设置蓝牙模块的工作模式为任意设备连接模式(Any Device Connectable Mode)。这意味着任何设备都可以尝试连接到此模块,而无需事先配对。这增加了模块的可用性和灵活性。
AT+PSWD=1234:设置蓝牙模块的配对密码为“1234”。在尝试与模块建立连接时,任何设备都必须输入正确的密码才能成功配对。这为蓝牙连接提供了一定程度的安全保障。
 
进入发送AT指令后Arduino IDE的串口监视器会显示OK  会接受的啊OK一般就是成功进入AT模式
一下是具体的截图
 

第三部下载蓝牙调试器进行配对连接 手机是否配对成功蓝牙HC-05

  1. HC-SR04超声波模块连接ArduinoR3板上讲解超声波模块的Trig2引脚,超声波模块的Echo3引脚,超声波模块的GNDGND引脚,超声波模块的VCC3.3V引脚。以下是详细讲解
  2. 超声波模块的Trig(触发)引脚 应该连接到Arduino R3的数字引脚2。这个引脚将用于发送触发脉冲给超声波模块,启动距离测量过程。
  3. 超声波模块的Echo(回声)引脚 应该连接到Arduino R3的数字引脚3。这个引脚将用于接收从目标反射回来的超声波信号,从而计算出距离。
  4. 超声波模块的GND(接地)引脚 应该连接到Arduino R3GND引脚。这是为了确保模块和Arduino有共同的参考地电平,防止信号干扰和确保电路的稳定工作。
  5. 超声波模块的VCC(电源正极)引脚 最好连接到Arduino R33.3V引脚,而不是5V引脚。这是因为虽然HC-SR04模块可以接受3.3V5V的电源电压,但使用3.3V可以减少功耗并降低发热,同时确保与3.3V逻辑电平兼容的微控制器(如一些Arduino板上的芯片)的兼容性。然而,对于标准的Arduino Uno R3,由于其I/O引脚为5V逻辑电平,实际上连接到5V引脚也是可行的,但需注意可能的功耗和发热问题。

第四步LED灯的正极接到Arduino R35引脚,LED灯的负极接到Arduino R3GND引脚。

第五步上传Arduino R3 控制系统:通过蓝牙模块实现手机远程监控超声波传感器数据并控制LED"的代码在下方(棕色字体)

#include <SoftwareSerial.h>

SoftwareSerial BT(10, 11);

const int Trigpin = 2;

const int Echopin = 3;

const int Ledpin = 5;

char bluetoothData = '0';

void setup() {

BT.begin(9600);

BT.println("Bluetooth is ready!");

pinMode(Ledpin, OUTPUT);

pinMode(Trigpin, OUTPUT);

pinMode(Echopin, INPUT);

}

void loop() {

if (BT.available() > 0) {

bluetoothData = BT.read();

BT.println(bluetoothData);

}

float distance = Get_Distance();

if ((distance >= 8 && distance <= 30) || bluetoothData == '1') { // 当距离在8cm到10cm之间或蓝牙接收'1'时,点亮LED

digitalWrite(Ledpin, HIGH);

}else{ // 否则,关闭LED

digitalWrite(Ledpin, LOW);

}

BT.print("Distance: ");

BT.print(distance);

BT.print(" cm\n"); delay(1000);

}

float Get_Distance() {

digitalWrite(Trigpin, LOW);

delayMicroseconds(2);

digitalWrite(Trigpin, HIGH);

delayMicroseconds(10);

digitalWrite(Trigpin, LOW);

unsigned long duration = pulseIn(Echopin, HIGH);

float dist = duration / 58.0;

return dist;

}

第五步将HC-05蓝牙模块成功配对手机后下载蓝牙调试器后使用蓝牙调试器连接HC-05蓝牙模块可以发现蓝牙调试器APP在手机显示器上显示数据当通过蓝牙调试器APP发送数字1是接受到数字1蓝牙模块发送信号到主板会亮。通过超声波模块检测到距离8~10区间或大于30这个区间时候LED灯会亮,发送数字一被接受到后LED灯会亮,否则不亮。

以下是蓝牙调试器连接成功示例:

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值