(1)(1.1) Bluetooth

news/2024/4/24 5:21:56/

文章目录

前言

1 连接到自动驾驶仪

2 连接Mission Planner快速入门

3 与Mission Planner的详细连接

4 从安卓地面站连接

5 如何更改波特率、设备名称和设备密码

6 故障排除

7 产品规格


前言

蓝牙数据链路(如 HC-06 模块)(HC-06 module)可用于将你的 Pixhawk(或其他控制器)连接到支持蓝牙的 PCAndroid 地面站,最远距离可达 50m


1 连接到自动驾驶仪

蓝牙数据链配有 DF13 6 针和 65 针连接器,可轻松连接到 Pixhawk Telem1APM2.xTelem 端口。请注意,对于 Pixhawk,虽然推荐使用 Telem1,但 Telem2 或甚至串行 4/5 也可以使用。

连接蓝牙数据链路后,即可为电路板供电。在使用连接到自动驾驶仪的蓝牙模块时,可以使用 USB 连接的电源,因为 USB 连接可以提供足够的电源,但必须使用带微型或迷你 USB 的壁挂式线缆)。

蓝牙数据链路的 LED 指示灯:

  • 红色 LED1hz 的频率闪烁:设备正在工作,未连接;
  • 红色 LED 灯以 0.5hz 闪烁:配对;
  • 红色 LED 常亮:已连接。

2 连接Mission Planner快速入门

如果你熟悉蓝牙,请搜索蓝牙设备 HC-056(有些可能还有 Linvor),与设备配对(代码 12340000),检查其属性并查看服务选项卡。在设备管理器(Windows)中查看,确保有一个蓝牙通信端口,并在通信端口属性中将波特率设为 57600(注意通信端口号)。

Note

为与 Mission Planner 一起使用,请在"配置/调优"选项卡上确保并取消勾选"USB 连接时重置"复选框:

蓝牙模块的默认波特率为 57600(大多数其他模块为 9600),请确保连接时波特率为 57600,并且是在设备管理器中看到的新通信端口。

使用蓝牙启动 PixHawkAPM 时,未连接时模块的红色 LED 灯将以 1hz 的频率闪烁。配对时会以 0.5Hz 的频率闪烁,连接时会稳定亮起。

这样就完成了!现在你可以在大约 50m 的范围内使用蓝牙遥测功能。(根据你所在地区的背景噪声和条件,距离可能会有所不同)

如果你在连接时遇到问题,或者你对蓝牙不太了解,或者你想更改默认波特率或设备名称,请阅读下面的步骤。

3 与Mission Planner的详细连接

许多个人电脑和笔记本电脑都内置了蓝牙适配器,但如果没有,你可以使用通用的 USB 蓝牙加密狗(如上图),或使用通过 FTDI 电缆(FTDI Cable)连接的附加蓝牙数据链路。

首先确保自动驾驶仪电源已打开,电脑的蓝牙加密狗已插入并安装,然后点击 Windows 任务栏右下角的向上小三角(又称"显示隐藏图标")。

应该会出现"隐藏图标框"。用鼠标右键单击蓝牙图标,选择"显示蓝牙设备"。

Windows 会弹出设备框。任何已通过蓝牙连接的设备都会出现在这个框中。如果之前未连接过任何蓝牙设备,则此框为空。选择"添加设备"。

Windows 会为你搜索 BT 设备。如果你打开了任何 BT 设备,它们将显示在这里(比如你的手机),请忽略任何其他设备并选择 HC-05HC-06 (或 Linvor)。

使用设备代码选择配对。

输入设备代码(12340000),这是默认代码。

配对成功后,右键单击设备并选择"属性",选中通信端口 SPP 复选框(同时注意通信端口号)。

在设备管理器中选择通讯端口。

选择上一步中提到的通讯端口。

右击并选择"属性"。

将波特率改为 57600

再次启动 Mission Planner,转到"配置/调优"选项卡,确保勾选 "USB 连接时重置"复选框。

现在,你的蓝牙设备应该已经准备就绪,你可以以 57600 的正确波特率连接到正确的端口(红色 LED 灯稳定亮起且不闪烁)。

4 从安卓地面站连接

这些说明将向你介绍如何使用蓝牙模块从在 NExus 7 平板电脑上运行的 AndroPilotDroidPlanner 2 连接到飞行器。

打开安卓设备的设置程序,打开蓝牙连接(通常是向右滑动滑块)。在同一设置界面点击 "蓝牙",这时会出现可用设备列表。

给飞行器通电,"HC-06"设备就会出现。点击它并输入"1234"或"0000"作为与设备配对的 PIN 码,然后选择确定。

设备将出现在"已配对设备"下。

如果使用 DroidPlanner

  • 打开 Droid Planner 设置,选择遥测连接类型,蓝牙;
  • DroidPlanner 主界面中,选择"连接",然后选择已配对的蓝牙设备。

如果使用 AndroPilot

  • 屏幕上会出现一个"蓝牙"按钮,点击它。

当实时数据出现在屏幕上时,你就可以开始任务规划了。

5 如何更改波特率、设备名称和设备密码

你需要一根 FTDIUSB 电缆来更改设备的任何配置(不提供)。为使你的 BT 设备正常工作,你无需更改任何内容,它将按原样正常工作。仅供参考,为你提供方便!

要更改上述内容,你需要一个"终端"模拟器程序。你不能使用"Putty"(一种流行的串行端口工具),因为它不接受""命令。蓝牙模块以每秒一次的速度读取输入内容,因此你必须使用一个仿真器,允许你在点击"发送"之前输入整行内容。如果你熟悉 Arduino IDE,可以使用它向 COM 端口发送命令。我使用的是"Advanced Serial Port Terminal"(高级串行端口终端),但任何终端仿真器都可以让你在点击发送之前输入一行文本,效果也不错。

更改波特率

命令 AT+BAUD 后的索引与下列波特率相对应:

  • 1—-1200bps
  • 2—-2400bps
  • 3—-4800bps
  • 4—-9600bps
  • 5—-19200bps
  • 6—-38400bps
  • 7—-57600bps
  • 8—-115200bps

还有其他波特率。警告!除非你有特殊的快速 UART 芯片,否则不要设置这些波特率。如果不知道,请不要使用这些波特率,它们超出了标准 PC UART 的速度,一旦设置,就会中断与设备的通信,此后只能使用高速 UART 与设备联系。(这些仅供参考)

  • 9—-230400bps
  • A—-460800bps
  • B—-921600bps
  • C—-1382400bps

波特率的更改在命令发送后立即生效。因此,如果要继续配置蓝牙模块,就需要将终端程序的波特率设置为蓝牙使用的新波特率。要进行测试,请再次发送 AT,你应该会收到"OK"。

更改设备名称

本示例演示如何将蓝牙模块更名为 ArduPilot:在终端程序中发送命令(区分大小写):

AT+NAMEArduPilot

蓝牙应该会回复:

OKsetname

更改设备密码

下面的示例显示了如何将配对代码更改为 5566 在终端程序中,发送命令(区分大小写):

AT+PIN5566

蓝牙应该会回复:

OKsetPIN

6 故障排除

你可以通过从 TXRX 的环回测试设备。

打开终端程序,选择正确的通讯端口,然后在终端中键入任何你想输入的内容。如果显示测试结果,则说明设备工作正常。如果你没有看到键入的文本,而且你选择了正确的通讯端口,设备也已配对和连接(红色 LED 灯亮而不闪),那么你的设备可能有问题。

7 产品规格

  • 尺寸:1.4 英寸 x 0.6 英寸 x 0.17 英寸;
  • 重量:9.6 克(0.3 盎司);
  • 工作电压:3.66 V
  • 输入/输出电平:3.3 V
  • 典型 -80dBm 灵敏度;
  • 射频发射功率高达 +4dBm
  • 带可编程波特率的 UART 接口;
  • 默认波特率 57600
  • 支持的波特率 1200, 2400, 4800, 9600, 19200,38400, 57600, 115200, 230400, 460800
  • 配对代码 12340000
  • 默认情况下自动连接到电源上的最后一个设备;
  • 默认情况下允许配对设备连接;
  • 集成天线;
  • 范围:50m

http://www.ppmy.cn/news/1171369.html

相关文章

100 # mongoose 的使用

mongoose elegant mongodb object modeling for node.js https://mongoosejs.com/ 安装 mongoose npm i mongoose基本示例 const mongoose require("mongoose");// 1、连接 mongodb let conn mongoose.createConnection("mongodb://kaimo313:kaimo313loc…

【milkv】internal codec -- mic

文章目录 一、硬件二、dts三、配置引脚board_initpin 四、makefile五、config六、添加tinyalsa七、测试结果7.1 查看录制device信息7.2 录制音频7.3 pc端获取录制好的设备7.4 使用audacity查看波形 一、硬件 i2s0 —— adc i2s1 —— pdm i2s3 —— dace spk_en存疑 i2s2 ——…

海外ASO优化之如何优化应用页面上的视频

据统计,观看视频的用户,安装应用的可能性增加了3倍。视频因其动态性而更能吸引注意力,并传达更多有关游戏的信息,强调要点和独特功能,这反过来又会影响转化。 1、技巧。 最重要的部分是视频的前几秒钟。因为这决定了用…

029-第三代软件开发-加载本地字体库

第三代软件开发-加载本地字体库 文章目录 第三代软件开发-加载本地字体库项目介绍加载本地字体库 关键字: Qt、 Qml、 QFont、 QFontDatabase、 ttf 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Langu…

IP代理是什么?有什么好处?

IP说简单不简单,说复杂也不复杂,打个比方,IP就好比我们上网的一个门牌号,每家每户都会有一个门牌号,而且是唯一的地址。而代理IP(代理服务器)是一个位于中间的服务器,充当客户端和目…

设置Unity URP管线中的渲染开关

在上一节中,我们添加了外轮廓线,但这个外轮廓线在所有使用该Shader的网格上是始终存在的。 如果我们想做一个开关,决定是否打开外轮廓线时,我们可以使用一个新的Uniform bool值,然后判断bool是否为true来开启外轮廓线…

城市正视图(Urban Elevations, ACM/ICPC World Finals 1992, UVa221)rust解法

如图5-4所示,有n(n≤100)个建筑物。左侧是俯视图(左上角为建筑物编号,右下角为高度),右侧是从南向北看的正视图。 输入每个建筑物左下角坐标(即x、y坐标的最小值)、宽度…

几种基本的高斯分布数学运算,加法、乘法、缩放和卷积及运用场景

文章目录 高斯分布进行乘法运算几种基本的数学运算上述这些运算可以运用与什么场景?高斯分布进行乘法运算 当两个高斯分布进行乘法运算时,这通常是在估计或滤波的上下文中,如在卡尔曼滤波中的更新步骤。为了理解背后的数学原理,我们首先定义两个高斯分布: 当我们将这两个…

介绍Sigmoid函数的平移、平滑和翻转【基于Python可视化分析】

文章目录 简介Sigmoid函数Sigmoid函数曲线调控参数设置python可视化参考 简介 本篇博客介绍了具有S型曲线的Sigmoid函数,以及如何设置、调整Sigmoid函数的参数实现S曲线的平滑、平移和翻转操作。博客给出了Python代码示例,更加深刻形象。😆&…

【已解决】ubuntu耳机单侧有声音

背景 台式机,双系统:win10 ubuntu 20.04;ubuntu 系统当中,左侧耳机有声音,右侧没有; 解决方法 终端输入:alsamixer,显示下面的图片: 调整方法:键盘上下左…

这Bug只能通过压测发现

大家好,我是洋子。之前发布过一篇有关于在性能测试当中发现Bug的文章《因为一个Bug,差点损失了100w》 这篇文章当时还登上了CSDN全站综合热榜TOP1,最近工作在做性能测试时,又发现了几个比较有意思得Bug,本期分享其中的…

Unity中Shader实现UI流光效果

文章目录 前言一、实现思路1:1、采集两张贴图,一张是主纹理,一张是扫光纹理2、在 v2f 定义一个二维变量 “uv2” 来存放 uv 偏移后的值3、在顶点着色器中,仿照之前的 uv 流动效果,与 _Time相乘后存放于 uv2 中4、最后,…

whois人员信息python批处理读入与文本输出

使用pytho读取一个ip列表文本,批量获取whois输出并写入到一个文本 import socketif __name__ __main__:# 江苏电信DNS地址mylog open(whois.log, mode a,encodingutf-8)for line in open("ip.txt"):s socket.socket(socket.AF_INET, socket.SOCK_STR…

基于Django开发的图书管理推荐、电影推荐、课程推荐系统、大众点评店铺推荐系统、健身课程管理系统

基于Django开发的图书管理推荐、电影推荐、课程推荐系统、大众点评店铺推荐系统、健身课程管理系统、资讯推荐系统 一、简介 推荐系统的目的是信息过载所采用的措施,面对海量的数据,从中快速推荐出用户可能喜欢的物品。 推荐系统的方法有以下几种&…

【Python机器学习】零基础掌握QuadraticDiscriminantAnalysis判别分析

如何准确地区分不同种类的水果? 在日常生活中,人们经常面临需要区分不同种类物品的情况。以水果店为例,假设有一个水果店主希望通过水果的颜色、大小、重量和甜度等特征来自动区分出苹果、橙子和香蕉。 解决思路:收集一些水果的样本数据,包括颜色、大小、重量和甜度等。…

Codeforces Round 905 Div 1 (CF1887)

A1. Dances (Easy version) 把 \(a,b\) 序列都从小到大排序,\(a\) 贪心删大的,\(b\) 贪心删小的,二分答案并 \(O(n)\) \(\text{check}\)。 Code cpp const int N1e55; int T,n,m; int a[N],b[N]; il bool check(int mid) { for(int i1,jmid1;…

跨越单线程限制:Thread类的魅力,引领你进入Java并发编程的新纪元

线程的概述 线程是一个程序的多个执行路径,执行调度的单位,依托于进程存在。 线程不仅可以共享进程的内存,而且还拥有一个属于自己的内存空间,这段内存空间也叫做线程栈,是在建立线程时由系统分配的,主要用…

什么是云迁移?迁移到云的基本指南

企业可以执行多种类型的云迁移。一种常见的模型是将数据和应用从本地数据中心传输到公共云。然而,云迁移还可能需要将数据和应用从一个云平台或提供商迁移到另一个云平台或提供商;这种模式称为云到云(C2C)迁移。第三种类型的迁移是反向云迁移、云遣返或云退出&#…

大语言模型(LLM)综述(二):开发大语言模型的公开可用资源

A Survey of Large Language Models 前言3. RESOURCES OF LLMS3.1 公开可用的模型CheckPoints或 API3.2 常用语料库3.3 库资源 前言 随着人工智能和机器学习领域的迅速发展,语言模型已经从简单的词袋模型(Bag-of-Words)和N-gram模型演变为更…

html+js实现自定义弹窗

哈哈 转载 这个还不错 但是我暂时用不到 htmljs实现自定义弹窗_html自定义弹框-CSDN博客 <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>自定义弹窗</title><style>body,P{margin:0;padding:0;}.popup {disp…