尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

PX4 统计飞行日志分析:Flight Review 公共日志数据集与批量处理实践

发布时间:2026/9/24 16:44:38

资讯中心
01
ARTICLE

PX4 统计飞行日志分析:Flight Review 公共日志数据集与批量处理实践

PX4 统计飞行日志分析:Flight Review 公共日志数据集与批量处理实践
嵌入式物联网机器人自动驾驶智能硬件【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址https://gitcode.com/gh_mirrors/px/PX4-Autopilot点击查看免费下载导读PX4 的统计飞行日志分析Statistical Flight Log Analysis建立在 Flight Review 托管的大规模公开 ULog 数据集之上开发者可以利用这些真实飞行日志开展统计研究、机器学习训练、算法回归测试与故障模式分析。本文以官方统计日志分析文档为主线完整介绍公共日志数据集的构成与许可、基于download_logs.py的批量下载工作流、基于pyulog的日志解析与二次开发方法并结合本仓库PX4-Autopilot中的上传、下载与 EKF 分析脚本给出可直接落地的实践方案。统计飞行日志分析为什么要用公开日志单次飞行的日志分析解决的是这一架次飞得如何的问题而**统计性statistical**日志分析解决的是一整批飞行数据的规律是什么的问题。后者的典型场景包括对比不同机架、不同固件版本的振动分布评估硬件与滤波配置的整体表现统计 EKF 估计器在大量飞行中的传感器融合失败率定位共性问题为机器学习模型准备带标签的真实飞行样本如正常/异常分类在固件发布前用历史日志批量回归验证控制与估计性能。围绕这一目标PX4 官方提供了一条完整的工具链Flight Review 在线平台负责托管与展示日志download_logs.py负责批量获取日志pyulog负责程序化解析日志而本仓库中的 Tools/ecl_ekf/analyse_logdata_ekf.py 等脚本则展示了基于这些能力构建具体分析流水线的完整范例。Flight Review 公共日志数据集Flight Review 在线工具 是 PX4 官方的网页版日志分析与分享平台它同时托管了一个大型公开日志库供统计分析和机器学习等用途免费取用。这部分正是 统计飞行日志分析文档 的核心内容。该数据集的覆盖范围包括多种维度维度说明机型vehicle types多旋翼、固定翼、垂直起降VTOL、无人车等不同机型PX4 版本稳定版本以及开发版本main 分支中间产物硬件板卡boards不同飞控硬件平台上录制的日志飞行模式手动、自稳、任务、返航等不同模式下的数据所有日志通过 Flight Review 的浏览页面按时间倒序提供访问并采用CC-BY PX4知识共享署名 4.0许可发布这意味着在保留署名的情况下可以自由复制、分发、改编用于统计研究与再发布。数据集的来源与贡献机制是闭环的使用者既可以通过网页界面上传日志也可以使用本仓库中的 Tools/upload_log.py 脚本批量上传.ulg文件到 Flight Review 服务器脚本支持--type flightreport|personal、--public、--description、--rating等参数上传成功后返回可分享的分析报告 URL从而不断扩充这个公共数据集。批量下载日志download_logs.py对于统计研究而言手动逐个下载日志是不可行的。Flight Review 项目提供了专用的download_logs.py批量下载脚本该脚本维护在 flight_review 代码仓库中与 PX4-Autopilot 仓库是不同项目它具备以下关键能力按属性过滤支持按飞行模式、机架名称airframe name或机架类型airframe type等属性筛选日志只下载你关心的子集完整参数列表使用--help标志即可查看脚本支持的全部过滤与输出参数最新优先默认从最新上传的日志开始下载便于始终拿到最新固件版本的数据断点续传下载过程可以随时中断之后重新运行脚本即可从断点继续无需从头开始。一个典型的工作流是先用--help确认可用的过滤参数构造一条只包含某型号多旋翼 某 PX4 版本的下载命令把数 GB 的公开日志拉取到本地再交给下面的解析工具链处理。补充说明本仓库中的 Tools/log_encryption/download_logs.py 是另一个方向的日志获取工具——它通过 MAVLink 协议LOG_REQUEST_LIST/LOG_REQUEST_DATA消息直接从飞行器或 GCS 下载机载日志并支持自动识别加密日志.ulge。如果你的目标是从自己的飞机上批量取日志可以参考它如果目标是从公共数据集批量取日志则使用 Flight Review 的download_logs.py。用 pyulog 解析 ULog拿到日志后需要程序化解析才能做统计分析。官方推荐的解析库是pyulog——一个用于读取 ULog 文件的 Python 包同时提供一组命令行脚本用于提取、展示和转换 ULog 信息。详细介绍见 飞行日志分析。核心命令行脚本pyulog 安装后会注册为系统级命令前提是本机装有 Python所有脚本都支持-h查看用法脚本用途ulog_info显示 ULog 文件的基本信息时长、丢弃点、消息与数据点统计ulog_messages显示日志中记录的调试与状态消息ulog_params从 ULog 文件中提取参数ulog2csv将 ULog 转换为多个CSV 文件ulog2kml将 ULog 转换为多个KML 文件例如查看一条日志的信息$ ulog_info sample.ulg Logging start time: 0:01:52, duration: 0:01:08 Dropouts: count: 4, total duration: 0.1 s, max: 62 ms, mean: 29 ms Info Messages: sys_name: PX4 time_ref_utc: 0 ver_hw: AUAX_X21 ver_sw: fd483321a5cf50ead91164356d15aa474643aa73 Name (multi id, message size in bytes) number of data points, total bytes actuator_controls_0 (0, 48) 3269 156912 actuator_outputs (0, 76) 1311 99636 commander_state (0, 9) 678 6102 control_state (0, 122) 3268 398696 cpuload (0, 16) 69 1104 ekf2_innovations (0, 140) 3271 457940 estimator_status (0, 309) 1311 405099 sensor_combined (0, 72) 17070 1229040 sensor_preflight (0, 16) 17072 273152 telemetry_status (0, 36) 70 2520 vehicle_attitude (0, 36) 6461 232596 vehicle_attitude_setpoint (0, 55) 3272 179960 vehicle_local_position (0, 123) 678 83394 vehicle_rates_setpoint (0, 24) 6448 154752 vehicle_status (0, 45) 294 13230Dropouts一行直接给出日志记录过程中产生的数据丢失统计次数、总时长、最大/最长的单次间隔这正是 Flight Review 使用指南 中采样规律性Sampling Regularity图表所关注的指标来源。ver_hw/ver_sw字段则标明了录制日志的硬件与固件版本——当你要按PX4 版本过滤数据集做统计对比时这个字段就是关键依据。在 Python 中编程使用pyulog 同样可以作为库导入使用本仓库中的 EKF 分析工具就把它作为基础依赖。例如 Tools/ecl_ekf/analyse_logdata_ekf.py 顶部直接from pyulog import ULog随后通过ulog.get_dataset(estimator_states, multi_instance).data等方式读取 EKF 估计器状态、状态标志与创新量等数据集配合起飞检测器InAirDetector与指标计算模块批量生成 EKF 健康度检查报告。这说明公共日志数据集 pyulog 自研分析脚本可以组成可复用的统计流水线对成千上万条日志做统一口径的自动评估。从统计到结论结合 Flight Review 图表解读批量统计的价值最终要落到如何解读指标。当统计结果指出某类机架振动偏高或 EKF 融合异常时可以回到 Log Analysis using Flight Review 中逐图定位根因Actuator Controls FFT 与 Acceleration Power Spectral Density用于评估振动水平与滤波配置健康的频谱应在低频段之外保持平坦Raw Acceleration悬停或慢速飞行时 z 轴波形不应与 x/y 轴波形交叠Estimator Watchdog应恒为 0非零表示估计器检测到传感器问题如磁罗盘干扰Sampling Regularity丢包过多说明日志缓冲区过小、记录速率过高或 SD 卡质量不足这直接影响统计数据集的可用性。需要注意的是公共日志来自大量不同用户与硬件配置统计结论的边界条件机型、版本、板卡、飞行模式必须在报告中显式标注才能保证可复现与可比对。延伸阅读飞行日志分析工具总览包含 Data Comets、FlightPlot、Flight Review、PlotJuggler、pyulog、PX4Tools 等全量工具对比Log Analysis using Flight ReviewFlight Review 各图表的逐项解读与问题定位方法PlotJuggler 日志分析桌面端深度可视化分析ULog 文件格式理解日志内部结构便于自定义解析日志记录Logging了解 SDLOG_PROFILE 等记录配置保证数据质量Tools/upload_log.py向公共数据集贡献日志的官方脚本Tools/log_encryption/download_logs.pyMAVLink 方式批量下载机载日志的参考实现。赞分享嵌入式物联网机器人自动驾驶智能硬件【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址https://gitcode.com/gh_mirrors/px/PX4-Autopilot点击查看免费下载相关推荐Flight Review 飞行日志分析平台深度解析Flight Review 飞行日志分析平台深度解析 Flight Review 是一款基于网页的专业飞行日志分析工具专门用于处理和分析无人机飞行数据。该项目后端数据分析数据可视化Notablog核心功能解析Notion表格转静态博客的终极解决方案Notablog核心功能解析Notion表格转静态博客的终极解决方案 Notablog是一款基于Node.js开发的开源工具能够将Notion表格无缝转换为图像转文本只要3分钟RapidOCR OCR 完整上手指南图像转文本只要3分钟RapidOCR OCR 完整上手指南 RapidOCR 是一款免费的开源 OCR 工具包用一行代码就能把图片里的文字提取出来支持 1人工智能计算机视觉OCR上一篇AlphaZero五子棋AI深度解析从理论到实战的完整指南下一篇终极指南如何在macOS上运行Windows软件和游戏创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。