模块参考:系统
电池模拟器
资料来源 模块/模拟/电池模拟器
说明
使用方法
battery_simulator <命令> [参数...]
命令
启动
停止
状态 打印状态信息
电池状态
资料来源 模块/电池状态
说明
提供的功能包括
- 读取 ADC 驱动程序的输出(通过 ioctl 接口)并发布
电池状态
.
实施情况
它在自己的主题中运行,并对当前选定的陀螺仪主题进行投票。
使用方法
battery_status <命令> [参数...]
命令
启动
停止
状态 打印状态信息
摄像机反馈
资料来源 模块/摄像机反馈
说明
摄像机反馈模块会发布 相机捕捉
触发图像捕捉时的 UORB 主题。
如果启用了摄像机捕捉功能,则会发布来自摄像机捕捉引脚的触发信息;否则会发布命令摄像机触发时的触发信息(来自 摄像机触发器
模块)。
拍摄的图像
然后(通过流代码)按照 相机捕捉
更新。 相机捕捉
主题也会被记录下来,并可用于地理标记。
实施情况
相机触发器
主题由 摄像机触发器
模块反馈
字段集 错误
)触发图像捕捉时发布,也可以通过 摄像头捕捉
驱动程序(带 反馈
字段集 真
),如果摄像机捕捉引脚已激活。
摄像机反馈
模块订阅了 相机触发器
.它会从 摄像机触发器
模块。对于未被丢弃的主题,它会创建一个 相机捕捉
主题中的时间戳信息 相机触发器
以及来自载具的位置信息。
使用方法
camera_feedback <命令> [参数...]
命令
启动
停止
状态 打印状态信息
cdcacm_autostart
说明
该模块通过 USB 进行监听,并根据接收到的字节自动配置协议。支持的协议有MAVLink、nsh 和 ublox 串行直通。如果参数 SYS_USB_AUTO=2,那么只要检测到 USB VBUS,模块就会尝试启动 mavlink。否则,它将旋转并继续检查 VBUS,一旦检测到 VBUS 就启动 mavlink。
使用方法
cdcacm_autostart <命令> [参数...]
命令
启动
停止
状态 打印状态信息
司令员
资料来源 模块/指挥官
说明
指令模块包含用于模式切换和故障安全行为的状态机。
使用方法
commander <command> [arguments...] [参数...
命令
启动
[-h] 启用 HIL 模式
校准 运行传感器校准
Mag|baro|accel|gyro|level|esc|airspeed 校准类型
快速 快速校准(仅用于加速,不推荐使用)
检查 运行飞行前检查
上膛
[-f] 强制启动(不执行飞行前检查)
缴枪
[-f] 强制撤膛(空中撤膛)
起飞
土地
过渡 VTOL 过渡
模式 改变飞行模式
手动|自动|离机|稳定|高度控制|位置控制|位置:慢速|自动:任务|au
到:悬停|自动:rtl|自动:起飞|自动:着陆|自动:precland|ext1
飞行模式
双人
关厂
开启或关闭锁定
set_ekf_origin
纬度、经度、高度 起源 纬度、经度、高度
lat|lon|alt 原产地 纬度 经度 高度
poweroff 关闭电路板电源(如果支持)
停止
状态 打印状态信息
数据管理员
资料来源 模块/数据管理员
说明
模块,通过 C API 以简单数据库的形式为系统其他部分提供持久存储。支持多个后端:
- 文件(例如 SD 卡上的文件)
- 内存(这显然不是持久性的)
它用于存储不同类型的结构化数据:任务航点、任务状态和地理围栏多边形。每种类型都有特定的类型和固定的最大存储量,因此可以进行快速随机存取。
实施情况
读写单个项目总是原子式的。
使用方法
dataman <命令> [参数...]
命令
启动
[-f <val>] 存储文件
值: <文件>;
[-r] 使用 RAM 后端(非持久性)
选项 -f 和 -r 是互斥的。如果未指定任何选项,文件
使用了 'dataman'。
停止
状态 打印状态信息
dmesg
资料来源 systemcmds/dmesg
说明
显示启动控制台信息的命令行工具。请注意,NuttX'工作队列和系统日志的输出不会被捕获。
实例
继续在后台打印所有信息:
dmesg -f &;
使用方法
dmesg <命令> [参数...]
命令
[-f] 关注:等待新信息
电池
资料来源 模块/电池
说明
该功能使用来自电调状态的信息,并将其发布为电池状态。
使用方法
esc_battery <命令> [参数...]
命令
启动
停止
状态 打印状态信息
陀螺仪校准
说明
简单的在线陀螺仪校准
使用方法
陀螺仪校准 <command> [arguments...] [参数...
命令
启动
停止
状态 打印状态信息
gyro_fft
资料来源 modules/gyro_fft
说明
使用方法
gyro_fft <命令> [参数...]
命令
启动
停止
状态 打印状态信息
加热
资料来源 司机/加热器
说明
在 LP 工作队列中定期运行的后台程序,用于将 IMU 温度调节到设定值。
可通过设置 SENS_EN_THERMAL 或 CLI 在启动时从启动脚本中启动该任务。
使用方法
加热器 <command> [参数...]
命令
启动
停止
状态 打印状态信息
i2c_launcher
说明
根据找到的 I2C 设备启动驱动程序的守护进程。
使用方法
i2c_launcher <命令> [参数...]
命令
启动
-b <val> 总线编号
停止
状态 打印状态信息
土地探测器
说明
模块检测飞行器的自由落体和着陆状态,并发布 载具检测到土地
主题。每种飞行器(多旋翼飞行器、固定翼飞行器、vtol 飞行器......)都有自己的算法,考虑到各种状态,如指令推力、上膛状态和飞行器运动。
实施情况
每种类型都在自己的类中实现,并有一个共同的基类。基类保持一种状态(着陆、可能着陆、地面接触)。每个可能的状态都在派生类中实现。每个内部状态的滞后性和固定优先级决定了实际的降落检测器状态。
多旋翼降落检测器
地面接触GROUND_CONTACT_TRIGGER_TIME_US :推力设定点和 Z 方向的速度必须低于 GROUND_CONTACT_TRIGGER_TIME_US 的时间阈值。检测到地面接触时,位置控制器将关闭机体 x 和 y 方向的推力设定点。
可能着陆触发时间由 MAYBE_LAND_TRIGGER_TIME 确定。当检测到 maybe_landed 时,位置控制器会将推力设定值设为零。
上岸在 LAND_DETECTOR_TRIGGER_TIME_US 时,它要求 maybe_landed 为 true。
该模块在 HP 工作队列中定期运行。
使用方法
land_detector <命令> [参数...]
命令
启动后台任务
选择载具类型
停止
状态 打印状态信息
载入时间
资料来源 modules/load_mon
说明
在低优先级工作队列上定期运行的后台进程,用于计算 CPU 负载和 RAM 使用情况,并发布 cpuload
主题。
在 NuttX 上,它还会检查每个进程的堆栈使用情况,如果低于 300 字节,就会输出警告,该警告也会出现在日志文件中。
使用方法
load_mon <命令> [参数...]
命令
启动后台任务
停止
状态 打印状态信息
记录仪
资料来源 模块/日志
说明
系统日志记录器可记录一组可配置的 uORB 主题和系统 printf 信息 (PX4_WARN
和 PX4_ERR
)转换为 ULog 文件。这些文件可用于系统和飞行性能评估、调整、回放和碰撞分析。
它支持 2 个后端:
- 文件:将 ULog 文件写入文件系统(SD 卡)
- MAVLink:通过 MAVLink 将 ULog 数据流传输到客户端(客户端必须支持此功能)
两个后端可同时启用和使用。
文件后台支持两种类型的日志文件:完整日志(普通日志)和任务日志。任务日志是一个缩小的 ulog 文件,可用于地理标记或载具管理。它可以通过 SDLOG_MISSION 参数启用和配置。正常日志始终是任务日志的超集。
实施情况
执行时使用两个线程:
- 主线程,以固定速率运行(如果使用 -p 启动,则对主题进行轮询)并检查数据更新
- 写入器线程,向文件写入数据
在两者之间有一个可配置大小的写缓冲区(另一个固定大小的缓冲区用于任务日志)。缓冲区应较大,以避免掉线。
实例
典型用法是立即开始记录:
logger start -e -t
或者,如果已经在运行:
记录仪开启
使用方法
logger <command> [arguments...] [参数...
命令
启动
[-m <val>] 后端模式
值:file|mavlink|all, 默认值:all
[-x] 通过 Aux1 RC 通道启用/禁用记录功能
[-a] 日志第一次上膛,直至关闭
[-e] 启动后立即启用日志记录功能,直至解除(否则只有
上膛时)
[-f] 记录直至关闭(意味着 -e)
[-t] 使用日期/时间命名日志目录和文件
[-r <val>]以赫兹为单位的日志速率,0 表示无限制速率
默认值:280
[-b <val>] 日志缓冲区大小(千字节
默认:12
[-p <val>]对一个主题进行民意调查,而不是以固定速率运行(日志速率
如果设置了该选项,则主题时间间隔将被忽略)。
值: <主题名称>;
[-c <val>] 对数速率系数(越高越快)
默认值:1.0
开始记录时,覆盖上膛(记录仪必须正在运行)
关闭 立即停止记录,覆盖上膛(记录仪必须运行)
trigger_watchdog 现在手动触发看门狗
停止
状态 打印状态信息
磁偏差估算器
资料来源 modules/mag_bias_estimator
说明
在线磁强计偏差估算器
使用方法
mag_bias_estimator <命令> [参数...]
命令
启动后台任务
停止
状态 打印状态信息
手动控制
资料来源 模块/手动控制
说明
消耗手动控制输入的模块发布一个手动控制设定点。
使用方法
manual_control <命令> [参数...]
命令
启动
停止
状态 打印状态信息
网民
资料来源 systemcmds/netman
说明
网络配置管理器将网络设置保存在非易失性存储器中。启动时 更新
选项将被运行。如果网络配置不存在。默认设置将保存在非易失性存储器中,并重新启动系统。
更新
网民更新
会自动运行 启动脚本.运行时 更新
选项将检查是否存在 net.cfg
在 SD 卡根目录下。然后将网络设置从 net.cfg
删除非易失性内存中的文件并重启系统。
节省
节省
选项会将设置从非易失性存储器保存到名为 net.cfg
在 SD 卡文件系统上进行编辑。用它来编辑设置。保存 "不会立即应用网络设置;用户必须重启飞行算法池。相比之下 更新
命令由启动脚本运行,将设置提交到非易失性存储器中,并重启飞行控制器(控制器将使用新设置)。
展览
展览
选项将在 net.cfg
到控制台。
实例
$ netman save # 将参数保存到 SD 卡。$ netman show # 显示当前设置。$ netman update -i eth0 # 进行更新
使用方法
netman <命令> [参数...]
命令
show 向控制台显示当前的持续网络设置。
更新 检查 SD 卡中的 net.cfg,更新网络持久性网络
设置
保存 将当前网络参数保存到 SD 卡。
[-i <val>]设置接口名称
默认设置:eth0
pwm_input
资料来源 驱动程序/pwm_输入
说明
通过定时器捕获 ISR 测量 AUX5(或 MAIN5)上的 PWM 输入,并通过 uORB 'pwm_input` 消息发布。
使用方法
pwm_input <command> [arguments...] [参数...
命令
启动
停止
状态 打印状态信息
rc_update
资料来源 modules/rc_update
说明
rc_update 模块处理 RC 通道映射:读取原始输入通道 (input_rc
),然后应用校准,将 RC 通道映射到配置的通道 & 模式开关,然后发布为 rc_channels
和 手动控制输入
.
实施情况
为减少控制延迟,该模块安排在 input_rc 出版物上发布。
使用方法
rc_update <命令> [参数...]
命令
启动
停止
状态 打印状态信息
重放
资料来源 模块/重放
说明
该模块用于重放 ULog 文件。
有 2 个环境变量用于配置: 重放
必须设置为一个 ULog 文件名,即要重放的日志文件。第二个是模式,通过 重放模式
:
replay_mode=ekf2
特定的 EKF2 重放模式。它只能与 EKF2 模块一起使用,但可以让重放尽可能快地运行。- 通用其他方式:可用于重放任何模块,但重放速度与记录日志的速度相同。
该模块通常与 uORB 发布规则一起使用,以指定哪些信息应被重放。重放模块只会发布日志中的所有信息。它还会应用日志中的参数。
重放程序记录在 全系统重播 page.
使用方法
重播 <command> [参数...]
命令
开始重放,使用 ENV 变量 'replay' 中的日志文件;
trystart 与 'start'相同,但如果没有给出日志文件,则静默退出
tryapplyparams 尝试应用日志文件中的参数
停止
状态 打印状态信息
发送事件
资料来源 模块/事件
说明
在 LP 工作队列上定期运行的后台进程,用于执行内务管理任务。目前它只负责 RC 丢失时的音调警报。
任务可通过 CLI 或 uORB 主题(MAVLink 的 vehicle_command 等)启动。
使用方法
send_event <command> [arguments...] [参数...
命令
启动后台任务
停止
状态 打印状态信息
模拟传感器
资料来源 modules/simulation/sensor_airspeed_sim
说明
使用方法
sensor_arispeed_sim <命令> [参数...]
命令
启动
停止
状态 打印状态信息
传感器_巴罗_模拟
资料来源 模块/模拟/传感器_巴罗_模拟
说明
使用方法
sensor_baro_sim <命令> [参数...]
命令
启动
停止
状态 打印状态信息
传感器_gps_sim
资料来源 modules/simulation/sensor_gps_sim
说明
使用方法
sensor_gps_sim <命令> [参数...]
命令
启动
停止
状态 打印状态信息
传感器磁模拟
资料来源 模块/模拟/传感器磁模拟
说明
使用方法
sensor_mag_sim <命令> [参数...]
命令
启动
停止
状态 打印状态信息
传感器
资料来源 模块/传感器
说明
传感器模块是整个系统的核心。它从驱动程序中获取底层输出,将其转化为更有用的形式,并发布给系统的其他部分。
提供的功能包括
- 读取传感器驱动器的输出 (
传感器
等)。如果有多个相同类型,则进行表决和故障切换处理。然后应用电路板旋转和温度校准(如果启用)。最后发布数据;其中一个主题是传感器组合
系统的许多部分都在使用。 - 确保传感器驱动程序在参数更改或启动时获得更新的校准参数(标度&;偏移)。传感器驱动程序使用 ioctl 接口进行参数更新。要使其正常工作,传感器驱动程序必须在下列情况下已在运行
传感器
启动。 - 进行传感器一致性检查并发布
传感器状态
主题。
实施情况
它在自己的主题中运行,并对当前选定的陀螺仪主题进行投票。
使用方法
传感器<命令> [参数...]
命令
启动
[-h] 以 HIL 模式启动
停止
状态 打印状态信息
tattu_can
资料来源 驱动程序/tattu_can
说明
用于从 Tattu 12S 16000mAh 智能电池读取数据的驱动程序。
使用方法
tattu_can <命令> [参数...]
命令
启动
停止
状态 打印状态信息
温度补偿
资料来源 模块/温度补偿
说明
温度补偿模块允许对系统中的所有陀螺仪、加速度计和气压计进行温度补偿。该模块监控来自传感器的数据,并在检测到温度变化时更新相关的传感器校正主题。也可将模块配置为在下次启动时执行系数计算例程,以便在载具进行温度循环时计算热标定系数。
使用方法
temperature_compensation <命令> [参数...]
命令
启动模块,该模块负责监控传感器并更新
传感器校正主题
校准 运行温度校准过程
[-a] 校准加速度
[-g] 校准陀螺仪
[-m] 校准磁力仪
[-b]校准气压计(如果未给出其中任何一项,则全部校准)。
校准)
停止
状态 打印状态信息
调整参数控制
说明
控制 & 的命令行工具;测试(外部)调整参数器。
调整参数用于提供声音通知和警告(例如当系统启动、位置锁定等)。该工具要求运行的驱动程序能够处理 tune_control uorb 主题。
有关调整参数格式和预定义系统调整参数的信息,请点击此处: https://github.com/PX4/PX4-Autopilot/blob/main/src/lib/tunes/tune_definition.desc
实例
播放系统曲调 2:
tune_control play -t 2
使用方法
tune_control <命令> [参数...]
命令
play 播放系统曲调或单个音符。
错误 播放错误曲调
[-t <val>] 播放预定义的系统曲调
默认:1
[-f <val>] 音符频率,单位 Hz(0-22kHz)
[-d<val>]纸币的有效期(以秒为单位
[-s <val>] 音符的音量(响度)(0-100)
默认值:40
[-m <val>]弦乐形式的旋律
值:<字符串> - 例如:"MFT200e8a8a";
libtest 测试库
stop 停止播放(用于重复播放曲调)
uxrce_dds_client
说明
UXRCE-DDS 客户端,用于通过串行或 UDP 与代理进行 uORB 主题通信。
实例
uxrce_dds_client start -t serial -d /dev/ttyS3 -b 921600
uxrce_dds_client start -t udp -h 127.0.0.1 -p 15555
使用方法
uxrce_dds_client <command> [arguments...] [参数...
命令
启动
[-t <val>] 传输协议
值:serial|udp,默认值:udp
[-d <val>] 串行设备
值:<file:dev>;
[-b <val>] 波特率(也可以是 p:<参数名>)。
默认值:0
[-h <val>] 代理 IP。如果未提供,默认为 UXRCE_DDS_AG_IP
值: <IP>;
[-p <val>] 代理监听端口。如果未提供,默认为
UXRCE_DDS_PRT
[-n <val>] 客户端 DDS 命名空间
停止
状态 打印状态信息
工作队列
说明
显示工作队列状态的命令行工具。
使用方法
work_queue <command> [arguments...] [参数...
命令
启动
停止
状态 打印状态信息