This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Onboard Data Processing

On-board maths and signal processing — turns raw acceleration and GPS into a small wave-energy / period / direction payload that fits inside an Iridium short-burst message.

The on-board processing pipeline takes raw accelerometer and GPS samples captured by the buoy and reduces them — on the buoy itself — into a compact summary that fits inside an Iridium short-burst-data message: significant wave height, peak period, directional spectrum, energy bands.

Doing the maths on the buoy (rather than transmitting raw samples) is what makes long-duration polar deployments practical — satellite bandwidth is expensive, power-hungry, and unreliable.

The maths code is written in C and compiles for any Linux. On the buoy it runs on the Maths Control host (a low-power Linux board woken briefly to do the calculation), described below.

  • Maths control — Linux services, Raspberry Pi image, debug web UI, and the automation around the maths-CPU that schedules wakes, runs the C code, and packages the output for the Iridium uplink.

Wave-motion mathematics

The wave-motion mathematics — significant wave height, peak period, spectral and directional analysis — was developed by Dr Alison Kohout (NIWA) and collaborators, and is the scientific core of the WII project. Her work is documented and partly open at:

Waves in Ice — Alison Kohout’s project page

Covers the WIIOS sensor design, data collection from SIPEX II, PIPERS, and JARE61, the data analysis approach, and the publications that came out of it.

The peer-reviewed papers — including the 2014 Nature paper on storm-induced sea-ice breakup — are mirrored locally at Data → Publications.

The WII5 buoys carry an implementation of those algorithms tuned to the constraints of on-buoy computation (memory, CPU, wake-cycle budget). The underlying mathematics is hers.

Status: placeholder. WII5 maths source release is pending assessment.

1 - Maths Control

Linux Maths Control — runs on Raspberry Pi, BeagleBone Black, Intel Edison, and other embedded Linux options. Services, automation, and a Node debug web app.

The Linux Maths Control package runs on Raspberry Pi, BeagleBone Black, Intel Edison, and other embedded Linux options. It’s a distribution image plus a set of services, scripts, and a Node web app. It’s commonly called the Maths CPU because the maths code hasn’t been optimised for smaller CPUs — it needs more memory and CPU power than the AVR can offer.

Any of these embedded Linux hosts is fairly power-hungry, so the Maths CPU is only powered up for two reasons:

  • Briefly to calculate the maths — turn raw data into something small enough to send over satellite.
  • For debugging — the interactive web service shows and graphs real-time data while the host is online.

Components:

  • Linux distribution image (Raspberry Pi, BeagleBone Black, Intel Edison, or other)
  • Shell scripts and services
  • C applications (e.g. raw SD-card access)
  • Node application for debugging
  • Web UI for real-time graphing

Status: placeholder. Image and source to be released.