(5)按钮输入

文章目录

前言

1 基础设置

2 数字逻辑/模拟电压设置

3 PWM输入设置

4 额外设置


前言

连接到自动驾驶仪的最多四个外部按钮或开关可以被配置为触发辅助功能(Auxiliary Functions),类似于 RC 通道开关的触发方式。这些按钮输入可以被配置为使用数字逻辑电平电压输入(拉到地或拉到高)或 PWM 信号输入。


Note

一些辅助功能(auxiliary function)有一个中间位置(如"降落伞3位置开关"),但中间位置不能由按钮触发。

1 基础设置

为了使用按钮,自动驾驶仪的引脚必须被配置为 GPIO。许多自动驾驶仪有专门的引脚,但有些没有。在这些情况下,必须将普通的 SERVO/MOTOR 输出配置为 GPIO 引脚,而不是自动驾驶仪输出功能(Autopilot Output Functions)。

对于带有 IOMCU自动驾驶仪(如 PixhawkCubeOrange),外部按钮或开关应连接到自动驾驶仪AUX 输出(而不是 MAIN 输出)。为了便于配置和避免定时器冲突,最好在高端使用辅助输出(如 AUX5AUX6),远离用于电机和伺服的输出。对于没有 IOMCU自动驾驶仪(如pixelracer 等),可以使用正常的 SERVO/MOTOR 输出。

  • 设置BTN_ENABLE = 1(启用)并刷新参数;
  • 如果使用 4.2(或更高版本),设置 SERVOx_FUNCTION = -1GPIO),其中"x"是连接到按钮的伺服输出通道。例如,如果带 IOMCU自动驾驶仪上的 AUX6 输出要作为 GPIO 使用,SERVO14_FUNCTION = -1
  • 如果在带有 IOMCU自动驾驶仪上(如 PixhawkCubeOrange)使用 4.1(或更早),将BRD_PWM_COUNT 设置得足够低,以便所需的伺服和所有其他更高的输出可用于GPIO输入。例如,BRD_PWM_COUNT = 4意味着只有AUX输出56可以用作GPIOBRD_PWM_COUNT = 意味着 AUX 输出 16 可以被使用。对于不使用 IOMCU 的板子,BRD_PWM_COUNT小于总输出数,将把那些较高的输出配置为 GPIO

2 数字逻辑/模拟电压设置

数字逻辑电平的模拟电压可用于按钮输入。下面列出的参数变化是针对第 1 个按钮的,但第 2、第和第 4 个按钮也可以进行类似的设置,只需将参数名称中的"1"改为"2"、"3"或"4"。为了确定哪个GPIO 针脚对应于哪个自动驾驶仪SERVO/MOTOR 输出针脚或专用 GPIO 针脚,必须查阅自动驾驶仪hwdef.dat 文件。如何确定,见GPIOs

  • 将 BTN_PIN1 设置为连接到按钮/开关的 GPIO 的编号(例如,"55"="AUXOUT6");
  • 设置 BTN_OPTIONS1 = 0(在比特掩码中没有设置位),在高逻辑电平电压(> 2.4V)上触发,并被辅助功能解释为""位。设置位 1PWM 输入)可以检测高于或低于 1800/1200usPWM,而不是逻辑电平。如果没有检测到 PWM 或小于 800us 或大于 2200us,按钮将被解释为低电平。设置位 2(反相)将高电平状态改变为引脚上的逻辑低电压,或者低于1200us,如果 PWM 输入;
  • 将 BTN_FUNC1 设置为要触发的辅助功能(Auxiliary Function)。如果设置为 0,则不触发任何功能。

该引脚被自动配置为内部上拉,这意味着按钮或开关只需要将电压拉低。

Warning

一些自动驾驶仪在启动时将引脚拉高或拉低,这可能导致辅助功能在启动后不久就被触发。

3 PWM输入设置

PWM 信号可以作为按钮输入。PWM 值> 1800us 或 < 1200us 可用于触发辅助功能。下面列出的参数变化是针对第 1 个按钮的,但第 2、第 3 和第 4 个按钮也可以进行类似的设置。如上所述,要确定哪个 GPIO 引脚与哪个自动驾驶仪SERVO/MOTOR 输出引脚或专用 GPIO 引脚相对应,必须查阅自动驾驶仪hwdef.dat 文件。如何确定,见GPIOs

  • 将 BTN_PIN1 设置为连接到按钮/开关的 GPIO 的编号(例如,"55"="AUXOUT6");
  • 将 BTN_OPTIONS1 = 设为"1",以便被辅助功能解释为 PWM > 1800us 的""位;
  • 将 BTN_OPTIONS1 = 设为"3",在 PWM < 1200us 或缺少信号输入的情况下,辅助功能将被解释为"高"位。PWM > 1800us 将被解释为"LOW"位置;
  • 将 BTN_FUNC1 设置为要触发的辅助功能(Auxiliary Function)。如果设置为 0,则不触发任何功能。

Note

有效的 PWM 输入范围是 800us2200us。如果 PWM 值超出这个范围,或者缺失,则相当于应用 < 1200us。通常这意味着除非设置了 BTN_OPTIONSx 的反转选项,否则辅助功能不会被触发。

4 额外设置

BTN_REPORT_SEND 设置了每次按钮状态改变时向地面控制站发送 BUTTON_CHANGE mavlink2 消息的时间长度。在写这篇文章的时候,我们还不知道有任何 GCS 在使用这个消息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/27165.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

U-Mail反垃圾邮件网关助力企业抵御垃圾邮件,守护邮箱安全

在数字化时代&#xff0c;电子邮件已成为企业沟通不可或缺的工具&#xff0c;它在促进信息流通和提高工作效率方面扮演着关键角色。然而&#xff0c;随着电子邮件使用的普及&#xff0c;垃圾邮件问题也日益凸显&#xff0c;特别是那些携带恶意软件或钓鱼链接的邮件&#xff0c;…

SQL 基础入门教程

目录 什么是 SQL&#xff1f; SQL 的基本操作 数据库的创建和删除 表的创建和删除 数据的插入 数据的查询 数据的更新 数据的删除 SQL 的高级操作 表的连接 聚合函数 分组和排序 子查询 视图 索引 SQL 的数据完整性和约束 总结 SQL&#xff08;Structured Que…

Web前端标记类型:深入剖析HTML、CSS与JavaScript的奥秘

Web前端标记类型&#xff1a;深入剖析HTML、CSS与JavaScript的奥秘 在构建丰富多彩的Web前端世界时&#xff0c;标记类型是至关重要的基石。它们不仅是网页内容的载体&#xff0c;更是实现页面布局、样式和交互的关键。本文将围绕HTML、CSS和JavaScript这三种核心标记类型&…

筛斗数据:如何利用数据提取技术通告能源利用效率

在当前的数字时代&#xff0c;数据提取技术已成为推动能源利用效率提升的重要工具。随着技术的进步和数据分析方法的创新&#xff0c;我们现在能够更精确地监测、分析和优化能源使用&#xff0c;从而实现节能减排和经济效益的双重目标。以下是几种关键的方法来展示如何利用数据…

深度学习(六)——神经网络的基本骨架:nn.Module的使用

一、torch.nn简介 官网地址&#xff1a; torch.nn — PyTorch 2.0 documentation 1. torch.nn中的函数简介 Containers&#xff1a;神经网络的骨架 Convolution Layers&#xff1a;卷积层 Pooling layers&#xff1a;池化层 Padding Layers&#xff1a;Padding Non-linear …

企业数据中台功能介绍

参考视频&#xff1a; 企业级数据中台功能演示_哔哩哔哩_bilibili 具体项目&#xff1a; 平台基础设施: 系统管理,系统监控&#xff08;登录/操作日志&#xff09;,任务调度 元数据管理: 业务系统管理/数据源管理/数据表管理/字段管理 数据源,元数据,数据授权,变更记…

高性能的分布式块存储,得盘率可以超过 100%吗?

得盘率到底是什么&#xff1f;该怎么计算才公平合理&#xff1f; 随着&#xff0c;现在很多企业用户开始关注存储系统的存储效率。但提及存储效率&#xff0c;业界并没有一个统一的衡量指标。 有些厂商强调数据缩减率&#xff0c;有些厂商强调存储单位密度&#xff0c;而有些厂…

MongoDB——写入耗时

mongodb写入10万条数据的耗时差不多是1s import time import pymongo from pymongo import MongoClient# 连接到MongoDB client MongoClient(mongodb://localhost:27017/) db client[test_db] collection db[test_collection]# 生成10万条数据 documents [{"name&quo…

进阶篇04——视图

简介及基本语法 视图的检查选项 可以通过视图进行数据的增删改查操作&#xff0c;但由于视图是一张虚拟表&#xff0c;所以操作的实际上是视图的基表&#xff0c;即创建视图时select语句操作的表 cascaded 自己还测试了一下这种情况&#xff1a;当V1和V2都没有加检查选项&…

硕思LOGO设计师软件最新版下载及详细安装教程

硕思Logo设计师是一款操作灵活简单&#xff0c;且功能强大的logo制作软件。它可以通过简单的点击就可以为网站、博客、论坛和邮件创建专业的logo、条幅、按钮、标题、图标和签名等。 该软件提供了很多精心设计的模板和丰富的资源&#xff0c;为更好的创建logo艺术作品&#xff…

国外有哪些知名的CG网站?CG平台及云渲染平台

动画创作中的灵感涌现往往伴随着挑战&#xff0c;但全球众多顶尖CG网站平台是您创意的加油站。CG技术的革新与云渲染平台的高效算力&#xff0c;为动画师提供了双重助力&#xff0c;让创意的实现更加迅速和高效。本文精选了国内外备受推崇的CG网站和云渲染平台&#xff0c;旨在…

华三HCL模拟器安装及华三防火墙配置

0、前言 最近跟模拟器杠上了&#xff0c;主要是需要运行防火墙&#xff0c;目前已经成功模拟出华为、山石防火墙&#xff0c;而且模拟出来的设备能与物理网络环境进行互联。现在我又盯上华三防火墙了。 首先下载模拟器&#xff1a; 下载地址&#xff1a;H3C网络设备模拟器官方免…

探索Spring虚拟线程:高效并发编程的新选择

目录 什么是虚拟线程虚拟线程的优势Java虚拟线程的历史背景在Spring中使用虚拟线程 配置Spring支持虚拟线程使用虚拟线程执行任务 虚拟线程与传统线程池的对比实战案例&#xff1a;构建高并发Web应用 案例描述项目设置代码实现 性能测试与结果分析最佳实践与注意事项结论参考资…

仰望U8三大黑科技,重新定义智能汽车

文 | 智能相对论 作者 | 雷歌 是时候重新定义中国的“智能汽车”了。 在仰望U8出来以前&#xff0c;普通人对知道的智能汽车的配置认识&#xff0c;智能汽车是智能驾驶智能座舱&#xff0c;硬件上大概是这几样&#xff1a;毫米波雷达激光雷达智驾芯片。 仰望U8出来以后&…

将自己md文件发布到自己的博客园实现文件的持久化存储

上传markdown文件到博客园 目录 【0】需求原因【1】功能【2】环境【最佳实践测试】 &#xff08;1&#xff09;查看 Typora 设置&#xff08;2&#xff09;配置 pycnblog 配置文件 config.yaml&#xff08;3&#xff09;运行 pycnblog 中的文件 cnblog_markdown.cmd&#xff0…

sqlcoder:7b sqlcoder:15b sqlcoder:70b 有什么区别呢?

sqlcoder:7B, sqlcoder:15B, 和 sqlcoder:70B 是不同规模的语言模型&#xff0c;具有不同数量的参数&#xff08;B 代表 billion&#xff0c;即十亿&#xff09;。以下是它们的主要区别及各自的优势&#xff1a; 模型规模 sqlcoder:7B&#xff1a; 参数数量&#xff1a;7 亿。…

教育小程序开发:技术实现与实践案例

随着信息技术的不断进步&#xff0c;教育小程序在教育领域的应用越来越广泛。教育小程序开发不仅可以提高教学效率&#xff0c;还能够提供个性化的学习体验。本文将以技术代码为例&#xff0c;详细介绍教育小程序开发的关键技术和实践案例&#xff0c;帮助开发者更好地理解和实…

深入理解渲染引擎:打造逼真图像的关键

在数字世界中&#xff0c;图像渲染是创造逼真视觉效果的核心技术。渲染引擎&#xff0c;作为这一过程中的关键组件&#xff0c;负责将二维或三维的模型、纹理、光照等数据转化为人们肉眼可见的二维图像。本文将深入探讨渲染引擎的工作原理及其在打造逼真图像中所起的关键作用。…

VRRP跟踪接口及认证(华为)

#交换设备 VRRP跟踪接口及认证 一、相关概念 1.VRRP跟踪接口 当 VRRP 的 Master 设备的上行接口出现问题, 而 Master 设备一直保持 Active 状态&#xff0c;那么就会导致网络出现中断&#xff0c;所以必须要使得 VRRP 的运行状态和上行接口能够关联。在配置了 VRRP 元余的网…

ES6 .entries用法

.entries() 返回数组的可迭代对象itarator,可以通过for of 来遍历数组或对象的值。但是它们的写法不一样。 数组用法 obj [apple,bananer,orange] for(let [i,v] of obj.entries()){console.log(i)console.log(v) } //输出 // 0 // apple // 1 // bananer // 2 //orange对象…