BlackSquareDrone¶
BlackSquareDrone
¶
logger
module-attribute
¶
https://ardupilot.org/copter/docs/logmessages.html
BlackSquareDrone
¶
Loader for BlackSquare drone ArduPilot log files.
Parses ArduPilot binary log format and provides access to sensor data.
Initialize BlackSquareDrone loader.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
Union[str, Path]
|
Path to ArduPilot log file. |
required |
Source code in pils/drones/BlackSquareDrone.py
load_data
¶
Load all sensor data from ArduPilot log file.
Populates instance attributes with DataFrames for each sensor type.
Source code in pils/drones/BlackSquareDrone.py
compute_datetime
¶
Compute datetime from GPS week and milliseconds.
Converts GPS time to UTC by subtracting leap seconds.
Source code in pils/drones/BlackSquareDrone.py
messages_to_df
¶
Convert ArduPilot log messages to Polars DataFrame.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
messages
|
List[List[str]]
|
List of message rows (each row is list of string values). |
required |
columns
|
List[str]
|
Column names for the DataFrame. |
required |
format_str
|
str
|
Format string specifying data types (ArduPilot format codes). |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
Polars DataFrame with converted message data. |
Source code in pils/drones/BlackSquareDrone.py
read_msgs
¶
Read ArduPilot log file and parse messages into DataFrames.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
Union[str, Path]
|
Path to ArduPilot log file. |
required |
Returns:
| Type | Description |
|---|---|
Dict[str, DataFrame]
|
Dictionary mapping message types to DataFrames. |
Raises:
| Type | Description |
|---|---|
FileNotFoundError
|
If log file not found. |
Source code in pils/drones/BlackSquareDrone.py
generate_log_file
¶
Generate log file from lines.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
lines
|
List[str]
|
List of log file lines. |
required |
Returns:
| Type | Description |
|---|---|
Dict[str, Any]
|
Dictionary with log file information. |
Source code in pils/drones/BlackSquareDrone.py
get_leapseconds
¶
Calculate number of leap seconds for given date.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
year
|
int
|
Year (e.g., 2024). |
required |
month
|
int
|
Month (1-12). |
required |
Returns:
| Type | Description |
|---|---|
int
|
Number of leap seconds to subtract from GPS time. |