(SKU:RB-03T008)RB无线蓝牙模块

来自ALSROBOT WiKi
2016年6月4日 (六) 09:47Arduino77讨论 | 贡献的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索
RB03T00801.png

目录

产品介绍

RB Bluetooth Transceiver是一款简单易用、小巧轻便、性价比较高的蓝牙无线通信模块,与国外同类产品相比,不但体积小,功能强,而且设计巧妙具有以下特点:夹层板独创设计,可避免蓝牙芯片因使用者身上产生的静电而损坏;二、供 电范围宽 DC+3.3V/+5V~+12V,适用于各种单片机、Arduino、BS2 等微控制器;三、LED指示灯通过微型拨码开关选通(ON 开/OFF 关为省电模式),节约电能,Search(Power)/Connect 指示灯清晰简明,工作状态易于判断;四、双列插针接口,人性化设计,为二次开发提供便利,可选择安装直排针、弯排针、直排座、排线,适合各种开发板、控制器等产品。

规格参数

  1. 蓝牙芯片: CSR BC417143
  2. 蓝牙协议规格:Bluetooth Specification v2.0+EDR
  3. 传输频率:2.4~2.48GHz unlicensed ISM band
  4. USB 协议:USB v1.1/2.0
  5. 调制方式:GFSK(Gaussian Frequency Shift Keying)
  6. 发射功率:≤4dBm, Class 2
  7. 传输距离:20~30m in free space
  8. 收讯灵敏度:≤-84dBm at 0.1% BER
  9. 传输速率:Asynchronous: 2.1Mbps(Max) / 160 kbps;Synchronous: 1Mbps/1Mbps
  10. 安全特性:Authentication and encryption
  11. 支持 profiles:Bluetooth serial port
  12. 串口默认设置:115200/N/ 8/1(可调)
  13. LED 指示灯:Search(Power)/Connect
  14. 输入电源:+5V~+12VDC/+3.3VDC 50mA
  15. 工作温度:–20°C~+55°C
  16. 尺寸大小:30mm x 30mm
  17. 重量大小:7g

模块设置

需要软件下载

1.Accessport 串口调试助手
2.Arduino Mini USB适配器驱动下载

拨码开关说明

RB—Bluetooth 蓝牙模块支持 AT 指令设置波特率和主从机模式。模块有一个 2 位拨码开关

  • 1 号开关是 Connect 灯的开关,可以关闭 Connect 省电,拨到 ON 为开,拨到 1 端为关
  • 2 号开关是 AT 命令模式开关,拨到 ON 进入 AT 命令模式,拨到 2 端退出 AT 命令模式,重新上电后设置才生效。

配置步骤

1.设置 RB—Bluetooth 蓝牙模块需要借助 Arduino Mini USB适配器或 Mini USB 下载器模块,然后将 2 号开关拨到 ON 端,使用 38400波特率进入 AT 状态,再将蓝牙模块连接到 Mini USB 适配器上。

蓝牙模块 USB - TTL适配器
5V 5V
GND GND
TX RX
RX TX


2.打开串口调试助手,选择 USB to Serial 对应的 COM 口,设置波特率为 38400,其它默认。

注意:在 AT 模式中波特率默认为 38400,和通讯时设置的波特率无关。
Wtgd2.jpg
指令结构:指令后面需要有回车换行符作为结束符,也就是十六进制的0X0D,0X0A,如果使用串口助手,就是 AT 后面敲一下 ENTER 键,然后发送指令。

AT 指令集说明

AT 指令不区分大小写,均以回车、换行字符结尾
1.测试指令:

指令 响应 参数
AT OK


2.模块复位:

指令 响应 参数
AT+RESET OK


3.设置和查询模块角色:

指令 响应 参数
AT+ROLE? OK
AT+ROLE=<Param> ROLE:<Param>
OK
Param:参数取值如下:

0 — 从角色(Slave)
1 — 主角色(Master)
2 — 回还角色(Slave - Loop)


模块角色说明:

  • Slave(从角色)——被动连接,可以和任意蓝牙适配器配对使用;
  • Master(主角色)——查询周围从设备,并主动发起连接,从而建立主、从蓝牙设备间的透明数据传输通道。
  • Slave——Loop(回环角色)——被动连接,接收远程蓝牙主设备数据,并将数据原样返回给远程蓝牙主设备。

4.设置和查询配对码:

指令 响应 参数
AT+PSWD=<Param> OK Param:配对码
AT+PSWD=? PSWD:<Param>

OK

Param:配对码


5.设置和查询配对模式:

指令 响应 参数
AT+CMODE=<Param> OK Param:配对模式
取值如下:
0 制定模式
1 任意配对模式
AT+CMODE=? Param:配对模式 配对模式


6.设置和查询串口参数

指令 响应 参数
AT+UART=<Param1>,<Param2>,<Param3> OK Param1:波特率

常用取值如下:4800,9600,19200,38400,57600,115200
Param2:停止位
0—1位
1—2位
Param1:校验位
0—None
1—Odd
2—Even

AT+UART=? UART:<Param1>,<Param2>,<Param3>

OK

波特率,停止位,校验位


默认设置

蓝牙模块出厂默认设置为:

  • AT + UART = 115200,0,0\r\n 波特率115200,无校验位和停止位
  • AT + PSWD = 1234 蓝牙配对码为1234
  • AT + NAME = RobotBase 蓝牙名称为RobotBase
  • AT + CMODE = 1 蓝牙配对模式为任意配对模式
  • AT + ROLE = 0 默认蓝牙为从机模式

使用方法

需要软件

千月 Blue Soleil 空间蓝牙软件下载
FT232 驱动程序下载

需要硬件

  1. Arduino 控制器×1
  2. Arduino 传感器扩展板×1
  3. 蓝牙模块 ×1
  4. 蓝牙适配器×1
  5. USB 数据通信线×2
Wtgd8.jpg

例子程序

将程序下载到 Arduino 控制器中。下载完程序之后在将蓝牙模块插接到 Arduino 传感器扩展板的蓝牙接口上。如果先将蓝牙插接到 Arduino 传感器扩展板的蓝牙接口上,在下载程序时会出错。

char val;            //定义字符变量 val 
int ledpin=13;      //定义 ledpin 引脚为 13 
void setup() 
{ 
Serial.begin(115200);          //设定波特率为 115200 
pinMode(ledpin,OUTPUT);   //设定 ledpin 引脚为输出状态 
} 
void loop() 
{ 
int val=Serial.read();            //读串口接收到的数据 
if(val=='r') 
{
digitalWrite(ledpin,HIGH);   //ledpin 引脚写入高电平 
delay(500);                      //延时 0.5 秒 
digitalWrite(ledpin,LOW);   //ledpin 引脚写入低电平 
delay(500);                      //延时 0.5 秒 
Serial.println("www.robotbase.cn");     //串口打印 www.robotbase.cn 
}  

连接适配器

使用蓝牙适配器和 RB—Bluetooth 配对时,RB—Bluetooth 必须设置为从模块,蓝牙适配器不需要驱动程序,可配合笔记本电脑、PDA、蓝牙手机等设备直接使用, 配对密码“1234 ”
RB—Bluetooth蓝牙模块基于蓝牙2.0 规范,兼容蓝牙1.1、蓝牙1.2。使用蓝牙适配器建议安装一个蓝牙软件 BlueSoleil,安装后,插上蓝牙适配器便会虚拟2个COM 口出来,但不是我们需要的端口。

Wtgd9.jpg

RB—Bluetooth 蓝牙模块插到舵机控制器或 Arduino 上,蓝牙适配器插到电脑上,打开 BlueSoleil 软件,黄色的球体就是蓝牙适配器,在黄色的球体上双击会自动搜索设备,这时就会出现一个带问号的蓝色球体,这个就是我们的 RB—Bluetooth 蓝牙模块了,双击串口图标会出现下面的界面,正与 COM8 连接,COM8 就是我们所需要的串口,很快会弹出配对的窗口,在蓝牙口令处输入“1234”,点击确定,配对后 POWER指示灯会一闪一闪的。

Wtgd10.jpg
Wtgd11.jpg
Wtgd12.jpg

程序效果

在串口调试助手的发送区域输入“r”,arduino 的数字口 13 的 LED 灯会闪烁一下,然后在串口调试助手的接收区域会显示出“www.robotbase.cn”。

Wtgd13.jpg

蓝牙配对例程

需要硬件

  1. Arduino 控制器×2
  2. Arduino 传感器扩展板×2
  3. 蓝牙模块 ×2
  4. USB 数据通信线×2

主从机模块的使用:

2 个模块成对使用时必须是一主一从,可使用 AT 指令将 2 个模块分别设置为主机和从机。主从成对使用不需要驱动程序,两个模块上电就能传输。
模块上的 Power 灯频闪状态时表示正在配对,Connect 灯常亮表示配对完毕,此时串口功能已经启动。
一主一从成对正 常使用时灯不 会熄灭。如主 机和从机距离太 远而断线,则主机和从机的灯一直闪 ,如果它们距离 在靠近,则又会 找在一起而自动 连上。主机会记忆它配好的从机,一上电给主机就会找它记忆的从机地址。
使用 Arduino 测试主从机通讯,将蓝牙模块插接到 Arduino 的传感器的扩展板上,

如下图所示:

Wtgd14.jpg

主机测试程序

void setup() 
{ 
Serial.begin(115200); //设定波特率为 115200 
} 
void loop() 
{ 
Serial.println("www.robotbase.cn"); //串口输出 www.robotbase.cn 
delay(1000);                                    //延时 1 秒 
}

从机程序代码如下

char val;          //定义字符变量 val 
int ledpin=13;   //定义 ledpin 引脚为 13 
void setup() 
{ 
Serial.begin(115200);   //设定波特率为 115200 
pinMode(ledpin,OUTPUT); //设定 ledpin 引脚为输出状态 
} 
void loop() 
{ 
v al=Serial.read();      //读串口接收到的数据 
if(val!=-1) 
{ 
digitalWrite(ledpin,HIGH);   //ledpin 引脚写入高电平 
delay(500);                          //延时 0.5 秒 
digitalWrite(ledpin,LOW);        //ledpin 引脚写入低电平 
delay(500);                        //延时 0.5 秒 
Serial.print(val);                   //串口打印 val 的值 
} 
} 

程序效果

Wtgd15.jpg
使用串口助手观察结果,串口助手设置串口号为从机的串口号,波特率和程序设置的一致为 115200,其它默认即可,打开串口就可以看见结果。同时从机的数字口 13的 LED 灯会闪烁。

演示视频

Lanyashipin1.png
Lanyashipin2.png


相关推荐

Erweima.png

购买地址

蓝牙模块

周边产品推荐

USB蓝牙适配器
蓝牙4.0

相关问题解答

蓝牙模块通信控制电机转速
6自由度机械臂双足机器人无法连接
蓝牙模块配置问题

相关学习资料

轮式机器人手势操作视频
轮式机器人语音操控视频
奥松机器人技术论坛