处理FlySight GPS飞行日志的辅助库。
项目描述
pyflysight
处理FlySight GPS飞行日志的辅助库。支持V1和V2硬件版本,有关两个版本之间差异的描述,请参阅:硬件版本。
安装
使用您喜欢的pip
命令从PyPi安装
$ pip install pyflysight
您可以通过pyflysight
CLI确认安装是否正确
$ pyflysight --help
Usage: pyflysight [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
device FlySight device utilities.
log_convert FlySight V2 log conversion.
logs FlySight device log utilities.
trim FlySight log trimming.
程序性访问
有关库文档,请参阅:https://sco1.github.io/pyflysight/
pyflysight
提供了从CSV表示形式解析您的飞行数据到Polars数据框的辅助工具。所有数据框都推导出一个elapsed_time
列,该列是数据文件中第一行时间戳与首次出现的时间戳之间的差值。所有GPS数据框都从北向和东向GPS速度分量计算出groundspeed
列。
FlySight V1
pyflysight.flysight_proc.load_flysight
将GPS轨迹日志解析为数据框,从CSV的第一行推断列名;单位信息被丢弃。
pyflysight.flysight_proc.batch_load_flysight
对 pyflysight.flysight_proc.load_flysight
进行包装,以批量将日志目录加载到数据框字典中。由于FlySight V1硬件按日期分组日志,且日志CSV名称不包含日期信息,日期从日志父目录名称推断,输出字典形式为 {日志日期: {日志时间: DataFrame}}
。
FlySight V2
文件 SENSOR.CSV
和 TRACK.CSV
具有类似的数据格式:一系列标题行后面跟着一系列数据行。正如文件名所暗示的,SENSOR.CSV
包含所有机载传感器信息,而 TRACK.CSV
包含GPS航迹。RAW.UBX
是来自机载u-blox硬件的原始二进制数据流;目前此文件被忽略。
pyflysight.flysight_proc.parse_v2_log_directory
旨在成为主用户界面,它包装数据解析管道并输出 pyflysight.flysight_proc.FlysightV2FlightLog
容器类的实例。
交互式日志裁剪
🚨 注意:日志裁剪目前仅适用于FlySight V2数据。🚨
pyflysight.trim_app.windowtrim_flight_log
允许用户通过时间与压力高度的关系图交互式裁剪FlySight日志数据。裁剪后的数据可以可选地写入磁盘到以当前飞行会话命名的文件目录中。为每个传感器创建一个CSV文件,以及GPS航迹和设备信息。
.
└── device/
└── session/
├── BARO.CSV
├── device_info.json
├── IMU.CSV
├── TRACK.CSV
└── ...
数据裁剪和CSV导出由 pyflysight.flysight_proc.FlysightV2FlightLog
的方法程序化处理。CSV输出设计为可双向转换。
硬件版本
FlySight在2023年夏季发布了一个新的硬件版本,与原始版本相比有很多改进,包括添加额外的传感器。除了FlySight V1记录的GPS信息外,FlySight V2还为您飞行日志添加了IMU和环境影响数据流。主要用户界面变化是日志输出的差异。
FlySight V1日志输出看起来像
.
└── 24-04-20/
└── 04-20-00.CSV
FlySight V2日志输出看起来像
.
└── 24-04-20/
└── 04-20-00/
├── RAW.UBX
├── SENSOR.CSV
└── TRACK.CSV
项目详情
下载文件
下载您平台上的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。