Difference between revisions of "TrueWind"

From wiki.bastelbude.grade.de
Jump to: navigation, search
(signalk-derived-data (assuming COG=H))
(signalk-derived-data groundWind.js)
Line 68: Line 68:
 
* https://github.com/SignalK/signalk-derived-data/blob/master/calcs/groundWind.js
 
* https://github.com/SignalK/signalk-derived-data/blob/master/calcs/groundWind.js
 
* <b>SOG</b> Speed Over Ground <b>navigation.speedOverGround</b>
 
* <b>SOG</b> Speed Over Ground <b>navigation.speedOverGround</b>
* <b>AWA</b> Apparent Wind Angle (relative to H) <b>environment.wind.angleApparent</b>
+
* <b>AWA</b> Apparent Wind Angle (relative to HDG) <b>environment.wind.angleApparent</b>
 
* <b>AWS</b> Apparent Wind Speed <b>environment.wind.speedApparent</b>
 
* <b>AWS</b> Apparent Wind Speed <b>environment.wind.speedApparent</b>
 
** <code>AWx = AWS * Cos (AWA)</code>
 
** <code>AWx = AWS * Cos (AWA)</code>
Line 76: Line 76:
 
** <b>GWS</b> Ground Wind Speed (relative to ground) <b>environment.wind.speedOverGround</b>
 
** <b>GWS</b> Ground Wind Speed (relative to ground) <b>environment.wind.speedOverGround</b>
 
** <code>GWS = SQRT (POWER(AWy,2) POWER(-SOG + AWx,2))</code>
 
** <code>GWS = SQRT (POWER(AWy,2) POWER(-SOG + AWx,2))</code>
 +
 +
== signalk-derived-data windDirection.js ==
 +
* https://github.com/SignalK/signalk-derived-data/blob/master/calcs/windDirection.js
 +
* <b>HDG</b> Heading
 +
** <b>HDT</b> Heading (relative to true north) <b>navigation.headingTrue</b>
 +
** <b>HDM</b> Heading (relative to magnetic north) <b>navigation.headingMagnetic</b>
 +
* <b>AWA</b> Apparent Wind Angle (relative to HDG) <b>environment.wind.angleApparent</b>
 +
** <b>AWD</b> Apparent Wind Direction
 +
** <code>AWD =  HDG + AWA</code><br><code>if (AWD > Math.PI * 2) AWD -= Math.PI * 2</code><br><code>else if (AWD < 0) AWD += Math.PI * 2</code>
  
 
== Sensors ==
 
== Sensors ==

Revision as of 13:18, 31 October 2018

see also

Terms

vessel's Movement and Orientation

  • SOG Speed Over Ground navigation.speedOverGround
  • COG Course Over Ground (relative to true north) navigation.courseOverGroundTrue
  • COG Course Over Ground (relative to magnetic north) navigation.courseOverGroundMagnetic
  • STW Speed Trough Water navigation.speedThroughWater
  • HDG Heading
    • HDT Heading (relative to true north) navigation.headingTrue
    • HDM Heading (relative to magnetic north) navigation.headingMagnetic

Wind

  • AW Apparent Wind (relative to vessel)
    • AWS Apparent Wind Speed environment.wind.speedApparent
    • AWD Apparent Wind Direction (relative to true north) environment.wind.directionTrue directionApparantTrue
    • AWD Apparent Wind Direction (relative to magnetic north) environment.wind.directionMagnetic directionApparantMagnetic
    • AWA Apparent Wind Angle (relative to HDG) environment.wind.angleApparent
  • TW True Wind (relative to surface of the water)
    • TWS True Wind Speed environment.wind.speedTrue speedWater
    • TWD True Wind Direction (relative to true north) add: environment.wind.directionWaterTrue
    • TWD True Wind Direction (relative to magnetic north) add: environment.wind.directionWaterMagnetic
    • TWA True Wind Angle (relative to HDG) environment.wind.angleTrueWater angleWater
  • GW Ground Wind (relative to ground) used in weather forecasts and reports
    • GWS Ground Wind Speed environment.wind.speedOverGround
    • GWD Ground Wind Direction (relative to true north) add: environment.wind.directionOverGroundTrue
    • GWD Ground Wind Direction (relative to magnetic north) add: environment.wind.directionOverGroundMagnetic
    • GWA Ground Wind Angle (relative to HDG) environment.wind.angleTrueGround angleOverGround

Current

  • DFT Current Drift (speed relative to ground) environment.current.drift
  • SET Current Set (direction relative to true north) environment.current.setTrue
  • SET Current Set (direction relative to magnetic north) environment.current.setMagnetic

calculate True Wind from Apparent Wind

  • AWA Apparent Wind Angle (relative to H) environment.wind.angleApparent
  • H Heading (relative to true north) navigation.headingTrue
    • AWD Apparent Wind Direction (relative to true north) environment.wind.directionTrue
    • AWD = MOD(H+AWA;360)
  • AWS Apparent Wind Speed environment.wind.speedApparent
  • COG Course Over Ground navigation.courseOverGroundTrue
  • SOG Speed Over Ground navigation.speedOverGround
    • TWS True Wind Speed (relative to ground) environment.wind.speedOverGround
    • TWx = OGx - AWx = SOG * Sin (COG) - AWS * Sin (AWD)
    • TWy = OGy - AWy = SOG * Cos (COG) - AWS * Cos (AWD)
    • TWS= SQRT (TWx*TWx + TWy*TWy)
    • TWD True Wind Direction (relative to true north) ???
    • TWD = ATAN ( TWx / TWy )
  • S Speed over ground in direction of H
    • DFT Drift (speed relative to ground) ???
    • DFTx = OGx - SHx = SOG * Sin (COG) - S * Sin (H)
    • DFTy = OGy - SHy = SOG * Cos (COG) - S * Cos (H)
    • DFT= SQRT (DFTx*DFTx + DFTy*DFTy)
    • SET Set (direction relative to true north) ???
    • SET = ATAN ( DFTx / DFTy )

Wind 1.jpg

signalk-derived-data groundWind.js

  • https://github.com/SignalK/signalk-derived-data/blob/master/calcs/groundWind.js
  • SOG Speed Over Ground navigation.speedOverGround
  • AWA Apparent Wind Angle (relative to HDG) environment.wind.angleApparent
  • AWS Apparent Wind Speed environment.wind.speedApparent
    • AWx = AWS * Cos (AWA)
    • AWy = AWS * Sin (AWA)
    • GWA Ground Wind Angle (relative to HDG) environment.wind.angleTrueGround
    • GWA = ATAN2(AWy, -SOG + AWx)
    • GWS Ground Wind Speed (relative to ground) environment.wind.speedOverGround
    • GWS = SQRT (POWER(AWy,2) POWER(-SOG + AWx,2))

signalk-derived-data windDirection.js

  • https://github.com/SignalK/signalk-derived-data/blob/master/calcs/windDirection.js
  • HDG Heading
    • HDT Heading (relative to true north) navigation.headingTrue
    • HDM Heading (relative to magnetic north) navigation.headingMagnetic
  • AWA Apparent Wind Angle (relative to HDG) environment.wind.angleApparent
    • AWD Apparent Wind Direction
    • AWD = HDG + AWA
      if (AWD > Math.PI * 2) AWD -= Math.PI * 2
      else if (AWD < 0) AWD += Math.PI * 2

Sensors

Heading

SOG and COG

  • GPS receiver

STW

AWS and AWA