Algemeen forum ontrent de ontwikkelng, design en hosting van weergerelateerde websites (dit laatste om een beetje on topic te blijven)
Door Weerstation Heinenoord
#69307
Sinds kort heb ik die mooie klokjes van Mark Crossley's Steel Series aan Weatherlink kunnen koppelen. Het meeste is gelukt, alleen die ledjes in de klokjes blijven nog een mysterie voor me. Is er iemand die weet waar ze voor bedoeld zijn en hoe ze aangestuurd kunnen worden?

Mvg,

Peter

Weerstation Heinenoord
Door T.J.
#69311
De LED is een indicator dat er een bepaalde grens bereikt cq. overschreden wordt, de zg. threshhold.
Dus bij wind bijv. wordt de gemiddelde of de vlaag windsnelheid geregistreerd als hoogste.
Dan kan de LED gaan knipperen.
Even Googlen dan is er wel veel te vinden.
Of kijk op harmonicblogspot.

Gr. Tjeerd
Door Weerstation Heinenoord
#69357
Tjeerd,

Bedankt voor de tips. Met "threshold" erbij leverde het zoeken op harmonicblogspot een stuk meer op. Hier wordt ook de waarde voor de threshold steeds duidelijk gedefineerd. Bijvoorbeeld:

var radial1 = new steelseries.Radial(
'canvas1', // the canvas element
steelseries.GaugeType.TYPE4, // type of gauge
200, // size of gauge
0, // minimum value
100, // maximum value
50, // threshold
sections, // sections


Maar in "gauges.js" of "steelseries_tween.min.js" kan ik niets vinden dat de threshold waarden in de meters lijkt te bepalen, zoals ze te zien zijn.

Is er iemand die mij nog wat verder kan helpen?
Door wvdkuil
#69359
In de versie 2.5 van gauges.js kan ik ook geen aparte instelling voor de threshold vinden voor iedere gauge.
De threshold wordt wel aangezet bij de meeste gauges, maar zonder thresholdvalue.

In de steelseries.js wordt dan een standaard waarde berekend:
https://github.com/HanSolo/SteelSeries- ... lseries.js Regel 46-47
Code: Selecteer alles
threshold = (undefined === parameters.threshold ? (maxValue - minValue) / 2 + minValue: parameters.threshold),
thresholdRising = (undefined === parameters.thresholdRising ? true : parameters.thresholdRising
Dus
Als er bij de definitie van een "gauge" een thresholdvalue wordt opgegeven, dan blinkt de led bij die waarde.

Als er geen waarde is ingesteld (zoals in de versie 2.5 gauges.js) dan blinkt de led als de pointer in het rechter deel van de min-max value range staat. Die min/max waardes staan in gauges.js vanaf regel 111

Bijvoorbeeld:
luchtdruk => maxvalue 1030 minvalue 990, led blinkt boven 1010 hPa
temperatuur/dauwpunt => 40, -20, dus led blinkt boven 10 graden
zonnestraling => 1000 , 0, rode led blinkt boven 500.
Er is ook een userled bij zonnestraling, die heeft wel een threshold, zie gauges.js regel 109
Code: Selecteer alles
sunshineThreshold     : 50,    // the value in W/m² above which we can consider the Sun to be shining, *if* the current value exceeds...
sunshineThresholdPct  : 75,    // the percentage of theoretical solar irradiance above which we consider the Sun to be shining
en wordt dus geel boven 50 w/m2 of boven 75% van de max w/m2 voor deze dag
Door T.J.
#69363
Goedendag.

Ik ben nu een tijdje bezig met de LED, ik heb nu het volgende ingesteld.
De threshold kan wel degelijk als een statisch getal als ook een varierende waarde worden gegeven.
Ik heb nu in de wind gauge de threshold zo gezet dat deze de hoogste waarde van de avgwind aanhoudt, komt de wind daarboven dan gaat de LED knipperen, ook heb ik de LED een gele kleur gegeven, waarde ledColor.
Voor een statische waarde kan de threshold op bijv 50 gezet worden:

unction drawWind() {
// create wind speed radial gauge
if (document.getElementById('canvas_wind')) {
gauge_wind = new steelseries.Radial(
'canvas_wind', {
size : g_size,
gaugeType : steelseries.GaugeType.TYPE2,
area : g_wind.areas,
minValue : 0,
maxValue : g_wind.maxValue,
section : [],
thresholdVisible : true,
threshold: 50,
minMeasuredValueVisible : false,
maxMeasuredValueVisible : true,
ledVisible : true,
ledBlinking : true,
ledColor: steelseries.LedColor.YELLOW_LED,
titleString : g_wind.title,
unitString : g_windunit,
lcdDecimals : 1,
frameDesign : g_frameDesign,
backgroundColor : g_background,
foregroundType : g_foreground,
pointerType : g_pointer,
pointerColor : g_pointerColour,
knobType : g_knob,
knobStyle : g_knobStyle,
lcdColor : g_lcdColour,
digitalFont : g_digitalFont,
tickLabelOrientation: g_tickLabelOrientation,
labelNumberFormat : g_labelFormat
});
gauge_wind.setMaxMeasuredValue(g_wind.maxMeasured);
gauge_wind.setValue(g_wind.value);
}
} // eof drawWind

Of gebruik de functie:
g_wind.setThreshold, dit wordt dan aangegeven bij doWind:

function doWind() {
g_wind.value = extractDecimal(data.wlatest);
g_wind.valuebft = extractDecimal(data.wlatestbft);
g_wind.average = extractDecimal(data.wspeed);
g_wind.gust = extractDecimal(data.wgust);
g_wind.maxGustToday = extractDecimal(data.wgustTM);
g_wind.maxGustTodayBft = extractDecimal(data.wgustTMBft);
g_wind.maxAvgToday = extractDecimal(data.windTM);

switch (g_windunit) {
case 'mph':
case 'kts':
g_wind.maxValue = Math.max(Math.ceil(g_wind.maxGustToday / 10) * 10, 20);
break;
case 'm/s':
g_wind.maxValue = Math.max(Math.ceil(g_wind.maxGustToday / 5) * 5, 10);
break;
default:
g_wind.maxValue = Math.max(Math.ceil(g_wind.maxGustToday / 20) * 20, 30);
}
g_wind.areas = [
steelseries.Section(0, +g_wind.average, 'rgba(40,255,40,0.4)'),
steelseries.Section(+g_wind.average, +g_wind.gust, 'rgba(255,0,0,0.6)')
];
if (g_wind.maxValue !== gauge_wind.getMaxValue()) {
gauge_wind.setMaxValue(g_wind.maxValue);
}

gauge_wind.setArea(g_wind.areas);
gauge_wind.setMaxMeasuredValue(g_wind.maxGustToday);
gauge_wind.setValueAnimated(g_wind.value);
gauge_wind.setThreshold(g_wind.gust);

Ik heb hierboven nog wat waarden in bft aangegeven, deze worden in de pop up gebruikt.
(g_wind.maxGustTodayBft = extractDecimal(data.wgustTMBft)) is daar eenn van.

Er is nog een LED beschikbaar, de Userled, de LED aan de linkerkant, hier ga ik binnenkort nog wat mee bezig.
Er zijn nog meer mogelijkheden zoals alarm geluid afspelen etc.
Het enige wat ik nu bij windstil weer heb is dat de LED knippert bij geen wind, de threshold is immers 0.

Succes en ik hoop dat je hier wat aan hebt.

Groeten Tjeerd
Door engelbert
#69983
Goedemorgen,

Mijn vraag;
Hoe krijg ik berichten in de canvas status van de steelseries. Nu heb ik "conditions updated". In welk bestand moet ik dit zoeken?
Graag advies.
Zie voorbeeld www.weerstationbijdetoren.nl

Alvast bedankt

Gr Engelbert
Door giantocr
#69984
Hoi Engelbert,

Die gegevens komen uit/van de Davis Vantage Pro2 weerstation.
Dus als jij die niet gebruikt werkt dat niet.

Vr groet,

Piet

engelbert schrijft:
Goedemorgen,

Mijn vraag;
Hoe krijg ik berichten in de canvas status van de steelseries. Nu heb ik "conditions updated". In welk bestand moet ik dit zoeken?
Graag advies.
Zie voorbeeld www.weerstationbijdetoren.nl

Alvast bedankt

Gr Engelbert