Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Python 3.x code examples

This folder contains a Python 3 .x code examples to demonstrate very basic communication with Navtech Radar hardware that communicates with the Colossus protocol. The Colossus Protocol documentation can be found here, Radar SDK which facilitates the connection to a radar, bi directional bidirectional message handling, and examples of common functionality of the SDK. Communication uses the Colossus protocol; documentation can be found here,

Note

This code is targetted at a linux platform, and is not currently supported within Windows

...

Requirements

This version of the SDK was developed on Ubuntu 20.04, using Python version 3.11.3. The SDK has been designed with backwards compatability in mind, so previous Python versions may also work.

...

Directory structure

.
├── client
│   ├── init.py
│   └── radar_client.py
├── custom_message_types
│   ├── init.py
│   ├── navigation_rotation_message.py
│   ├── radar_bscan_image_message.py
│   └── radar_cartesian_image_message.py
├── LICENSE.txt
├── logger
│   ├── init.py
│   └── logger.py
├── message_base
│   └── base_radar_message.py
├── message_handling
│   ├── custom_messages.py
│   ├── init.py
│   ├── messages_from_radar.py
│   └── messages_to_radar.py
├── messages_from_radar
│   ├── configuration_message.py
│   ├── fft_message_16_bit.py
│   ├── fft_message_8_bit.py
│   ├── health_message.py
│   ├── init.py
│   ├── navigation_configuration_message.py
│   └── navigation_data_message.py
├── protobuf
│   ├── healthinfo_pb2.py
│   ├── health_pb2.py
│   ├── init.py
│   └── networkinfo_pb2.py
└── ├── usage_examples
│   ├── cfar_peak_detection_one_azimuth_fft_data.py
│   ├── data
│   │   └── one_azimuth_of_fft_data.csv
│   ├── navigation_mode_peak_detection_one_azimuth_fft_data.py
│   ├── read_azimuth_of_fft_data.py
│   ├── read_health_data.py
│   ├── read_rotation_of_navigation_data.py
│   ├── read_single_azimuth_of_navigation_data.py
│   ├── read_single_radar_bscan_image.py
│   ├── read_single_radar_cartesian_image.py
│   ├── test_cfar.py
│   └── test_connect_disconnect_radar.py
└── utils
├── cfar.py
├── init.py
└── navigation_mode.py

...

client

Contains the actual radar client class, which is multi process and handles connection to the radar, as well as message reading and sending.

...

Contains examples of how to use the key functionality that the Python radar SDK provides.

utils

Contains utility functions for use with the radar data. Includes peak detection and CFAR

...

Explanation of key SDK functionality

...

The SDK comes with eight example projects, designed to demonstrate the key functionality of the Python radar SDK.

cfar_peak_detection_one_azimuth_fft_data

This example does not connect directly to a radar. It demonstrates how to read fft data from a file, and how to apply the cell averaging CFAR algorithm to the data, to detect high return values.

navigation_mode_peak_detection_one_azimuth_fft_data

...