npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

signalk-polar-performance-plugin

v0.0.49

Published

A plugin that calculates performance information based on a (CSV) polar diagram.

Downloads

152

Readme

Polar performance plugin

Generate performance information based on a polar diagram.

Data correctness

It's assumed data is already corrected when it's read by this plugin. This can be sometimes be done by the sensor, sometimes upon entry into SignalK using the calibration plugin.

Data sources

The following paths are read

  • navigation.speedThroughWater
  • environment.wind.speedTrue
  • environment.wind.angleTrueWater
  • navigation.speedOverGround (optional)

Plugin configuration

Polar diagram

The polar diagram can be configured through CSV notation as used on ORC sailboat data.

The resulting polar after processing can be seen here in the WebApp, looking something like:

Plugin options

In the plugin configuration you can toggle the following options:

  • Enable calculation/sending of beat/upwind and run/gybe/downwind angle
  • Enable calculation/sending of beat/upwind and run/gybe/downwind VMG
  • Enable sending Target TWA
  • Enable calculation of Optimum Wind Angle (difference between TWA and beat/run angle (depends on beat/run angle)
  • Enable sending of maximum speed angle and boat speed for a given TWS
  • Enable calculation of Optimum Wind Angle (difference between TWA and beat/run angle (depends on beat/run angle)

Calculated performance data

Currently supported

  • Upwind / beat angle (performance.beatAngle)
  • Downwind / run / gybe angle (performance.gybeAngle)
  • Upwind / beat VMG (performance.beatAngleVelocityMadeGood)
  • Downwind / run / gybe VMG (performance.gybeAngleVelocityMadeGood)
  • Target TWA (performance.targetAngle) (equals upwind or downwind angle)
  • Optimal Wind Angle (diff between TWA and environment.wind.directionTrue)
  • Polar Boat Speed (performance.polarSpeed)
  • Polar Speed Ratio (performance.polarSpeedRatio)
  • Plugin option to use SOG as boat speed
  • Wind angle for maximum speed at this wind speed
  • Fill up the ends of the polar diagram
  • Visualisation of the polar diagram
  • Configurable damping alorithm on inputs
  • Extrapolation of polar data towards 0
  • Configurable overall performance adjustment ratio
  • Dots in webapp indicating Polar Speed and Boat Speed
  • Use highest polar speed when going north of Polar

To-do list

  • Improved interpolation
  • Make moment to do calculation smarter/configurable
  • API to see JSON of polar
  • Create polar from live data -- Save polar info to file -- Save new record speed for angle in polar -- Determine if we're on a steady course to avoid fake records -- Configure the resolution of the polar diagram
  • Support multiple polar diagrams
  • Capture heel in polar diagram

MFD configuration

B&G

To get the values calculated by this plugin from SignalK to your B&G MFD/Triton2, you need to install the B&G performance plugin and select at least the following values:

  • Polar Speed (Polar Speed - POL SPD)
  • Polar Speed Ratio (Polar Performance - POL PERF))
  • Target TWA (TARG TWA)

To see lay lines you need to set:

  • Settings -> Chart -> Laylines -> Targets... -> True wind angle to 'Actual'

  • SailSteer screen -> Long press tile to add 'Performance -> Target TWA -> decollapse, choose SignalK'

Now the Target TWA is coming from SignalK and the laylines will be drawn based on it's value.

Raymarine

If you have a Raymarine MFD and can tell more about this, please add to the README or tell me.