(6)蜂鸣器(又称音调报警)

news/2024/7/10 20:37:48 标签: 开源, 无人机, 外设硬件, Copter, ArduPilot

文章目录

6.1 使用有源蜂鸣器而不是无源蜂鸣器

6.2 安装蜂鸣器

6.3 使蜂鸣器安静


蜂鸣器(或音调报警器)可用于以声音指示飞行器的状态变化。根据电路板的能力,它可以是一个有源设备(只需要施加电压来产生一个单一频率的音调),如下图所示,或者是一个由 PWM 驱动的无源压电设备,能够产生可变的音乐音调,如上图。有些板子可以使用这两种类型。

如果将能够产生 PWM 的输出端与无源压电体一起使用,它可以播放各种声音(sounds),包括解锁声音、模式改变声音和丢失飞行器警报(在本页(this page)搜索"丢失旋翼飞机警报",在 RCx_OPTION 中搜索"丢失固定翼",例如 RC5_OPTION,或在辅助功能(Auxiliary Functions)中搜索"丢失无人车")。

Note

为了使用无源压电蜂鸣器来播放音乐通知音,自动驾驶仪固件必须在其构建定义中定义该功能到一个带有定时器的引脚。这不是用户可以通过参数设置添加的功能,不像使用有源单音蜂鸣器那样通过指定任何具有 GPIO 功能的引脚 NTF_BUZZ_PIN

Note

一些自动驾驶仪(大多数 1MB 闪存板)只提供了使用有源蜂鸣器的能力,并将提供一套有限的简单蜂鸣声,而不是音乐音来指示 ARMDISARM 等。有关信息见下一节。然而,有可能创建一个自定义的电路板固件,其中包括音调报警功能。然后,电机输出,可以用来驱动 ArduPilot 全范围内的蜂鸣器,这对于只支持蜂鸣器的板子来说是很方便的。使用的输出必须配置为 SERVOx_FUNCTION = 138 或 = 139,取决于所需的信号极性。

蜂鸣器的选择必须谨慎,因为电机/伺服输出只能提供很小的电流,因此最好使用具有独立电源和放大功能的蜂鸣器,如 HGLRC Soter FPV 无人机蜂鸣器(HGLRC Soter FPV drone buzzer)。选择的蜂鸣器输出需要在一个单独的 PWM 组中,即不能与用于其他功能的输出在同一组中,如 ESC DSHOT

6.1 使用有源蜂鸣器而不是无源蜂鸣器

有源蜂鸣器可以通过两种方式与无源蜂鸣器的电路板设置一起使用。

首先,有源蜂鸣器可以简单地取代设计用于播放音调警报的自动驾驶仪上的无源压电,注意蜂鸣器的极性(与无源压电蜂鸣器不同,有源蜂鸣器需要以正确的极性连接,才能正常工作)。不过,它将播放所有的声音,可能音量较小,而且没有无源蜂鸣器播放的精确音频。

另外,你可以把 NTF_BUZZ_PIN 设置为一个 GPIO 引脚,比如那些用于继电器控制(relay contro)的引脚,并把一个有源蜂鸣器的负极连接到该引脚,然后把电源(通常是 +5V)加到蜂鸣器的正极。这通常是一些自动驾驶飞机上的"BUZZ"或"BUZZ-"输出引脚的使用方法。

如果使用有源蜂鸣器,NTF_BUZZ_ON_LVL 参数决定了激活它所需的引脚电平。

如果使用一个有源蜂鸣器,它可以指示以下内容:

STATUS

Pattern

解锁

3 sec long Beep

解锁失败

Single Beep

加锁

Single Beep

电池失控保护

Single Beep repeating every 3 sec

EKF失败

Beeeep-Beeep-Beep-Beep

丢失无人机

Beep-Beep repeating every 3 sec

Note

对于许多板子来说,GPIO 引脚号码被分配给 PWM 输出,用于交替使用只能通过查看该板子的 hwdef.dat 文件(here)来找到。

6.2 安装蜂鸣器

如果蜂鸣器放在离自动驾驶仪太近的地方,蜂鸣器发出的声音会影响加速度计,这可能导致蜂鸣器启动时高度保持性能不佳。蜂鸣器最好安装在离自动驾驶仪至少 5 厘米的地方,扬声器(即开孔)不应直接指向自动驾驶仪

6.3 使蜂鸣器安静

一些自动驾驶仪(如 HobbyKing PixRacer)有内置的蜂鸣器。我们建议通过设置以下参数禁用这些蜂鸣器:

  • NTF_BUZZ_TYPES 控制哪些类型的蜂鸣器被启用:引脚驱动的蜂鸣器(内置或外置),和/或基于 ESCDShot
  • 4.1 之前的固件中,设置 NTF_BUZZ_ENABLE = 0 以禁用引脚驱动的蜂鸣器。

此外,NTF_BUZZ_VOLUME 可以用来控制音量。


http://www.niftyadmin.cn/n/929198.html

相关文章

给WPF示例图形加上方便查看大小的格子之完善版本

原文:给WPF示例图形加上方便查看大小的格子之完善版本去年10月份, 我曾写过一篇"给WPF示例图形加上方便查看大小的格子"的BLOG(http://blog.csdn.net/johnsuna/archive/2007/10/19/1832994.aspx),这次由于需要,将它完善一下,可以有效地区别100…

深入浅出 1 - AI量化策略快速理解

我们在用AI来编写量化策略过程中,主要用到了机器学习,先来从一张图直观理解什么是机器学习:人类对新问题做出有效决策依靠的是过去积累的许多经验,并对经验进行利用,而对机器来说,“经验”以“数据”方式存…

题解 CF1051F 【The Shortest Statement】

这道题思路比较有意思,第一次做完全没想到点子上。。。 看到题目第一反应是一道最短路裸题,但是数据范围1e5说明完全不可能。 这个时候可以观察到题目给出了一个很有意思的条件,就是说边最多比点多20。 这有什么用呢? 那么我们大胆…

日常工作运维: 渗透测试减少win系统本身的开支

为了提高工作效率: 可以通过运行窗口来调用win组件: 常用的运行msc程序 Services.msc 调用服务 在windows/sys32的文件夹里 devmgmt.msc 调用设备管理器 gpedit.msc 调用组策略 在windows/sys32的文件夹里 Taskmgr 调用任务管理器 Cmd 调用cmd窗口 calc 调用计算器…

渗透人员如何在办公室优雅从容的使用打印机?

笔录印机的书写方向,也就是喷墨方向奇数页和偶数页的问题Abode Acrobat DC做技术的,不了解啥东西,说来什么就来什么 --2021.09.27作为一名渗透人员,需要学会打印机的使用,不然在办公室处境很难受。 公司的打印机联想…

Node.js学习笔记(六) --- Nodejs 的非阻塞 I/O、 异步、 事件驱动

1、 Nodejs 的单线程 非阻塞 I/O 事件驱动在 Java、 PHP 或者.net 等服务器端语言中,会为每一个客户端连接创建一个新的线程。而每个线程需要耗费大约 2MB 内存。也就是说,理论上,一个 8GB 内存的服务器可以同时连接的最大用户数为 4000 个左…

白帽子挖洞作业第V篇作业--那些实用挖洞fofa语句总结

fofa信息收集: fofa支持搜索http头部的内容 二次过滤 比如配合host进一步筛选漏洞主机 host".edu.cn" && header“apache” fofa支持搜索html正文的内容 ,比如 xxx公司 配合host可以找出某个机构or学校的包含xx公司漏洞资产。 或者直…

List、Set、Map集合

1 List接口 我们掌握了Collection接口的使用后,再来看看Collection接口中的子类,他们都具备那些特性呢? 接下来,我们一起学习Collection中的常用几个子类(List集合、Set集合)。 1.1 List接口介绍 查阅API&a…