This project manages a ledger of moving objects, such as aircraft or ships, that can be used for pointing a camera at the object.
In more detail, the object ledger subscribes to MQTT message topics for ADS-B messages, which provide aircraft position and velocity, and AIS messages, which provide ship position and velocity. Each messages corresponds to a uniquely identifiable object which is used to update a ledger by unique identifier. A figure of merit is computed for each object, and one object selected for tracking. The ledger is maintained in a Pandas DataFrame, which is serialized to local storage so that the history of objects selected for tracking can be used by the figure of merit calculation. All object ledger parameters can be customized through environment variables, or using an MQTT message published to a configuration topic. Units of measure are meters, seconds, and degrees, and operation of the object ledger is extensively logged.
This module is designed to be used in concert with other modules to build a complete tracking system. SkyScan, which tracks aircraft using ADS-B transmissions, is an example of the type of system that can be built.
Checkout the docker-compose.yml
in that repo to see how these modules
can be connected together. The configuration for the system is stored in .env
environment files. Examples of the different environment files
are included in the SkyScan repo and can be configured them to match your setup.
- TBA
See the open issues for a full list of proposed features (and known issues).
- Fork the Project
- Create your Feature Branch (
git checkout -b dev
) - Commit your Changes (
git commit -m 'adding some feature'
) - Run (and make sure they pass):
black --diff --check *.py
pylint --disable=all --enable=unused-import *.py
mypy --allow-untyped-decorators --ignore-missing-imports --no-warn-return-any --strict --allow-subclassing-any *.py
If you do not have them installed, you can install them with pip install "black<23" pylint==v3.0.0a3 mypy==v0.991
.
- Push to the Branch (
git push origin dev
) - Open a Pull Request
See CONTRIBUTING.md
for more information.
Distributed under the Apache
2.0. See
LICENSE.txt
for more information.
- Twitter: @iqtlabs
- Email: labsinfo@iqt.org
See our other projects: https://github.com/IQTLabs/