Plugin 008

Uit Nodo Wiki
Ga naar: navigatie, zoeken

plugin gegevens

plugin naam AlectoV1
plugin nummer 008
Productnummer Product nummer:SWACDE-8-V10
Versie 1.0
Compatibiliteit Nodo versie 3.6 en hoger
Auteur Martinus van den Broek
Support http://www.nodo-domotica.nl/forum/
Download Plugin_008.c

Toepassing

De Nodo is in staat om van bepaalde Alecto weerstation buitensensoren de temperatuur, regen en windinformatie te ontvangen. De meetwaardes kun je via de WebApp laten bijhouden. Hieronder vind je een beschrijving hoe je dit kunt realiseren.

Funktionele beschrijving

De Alecto buitenunit zendt het signaal door op de 433 MHz band met het OOK protocol. Omdat de Nodo hetzelfde protocol gebruikt op dezelfde frequentie, is het mogelijk om met deze plugin code de signalen te onderscheppen en te decoderen. De meetwaarden worden in de Nodo omgezet naar Nodo uservariabelen en kunnen dan worden doorgezonden naar de WebApp.

Meetwaardes

De Alecto meetwaardes zijn als volgt:

Temperatuur in graden Celcius
Luchtvochtigheid in %relatieve luchtvochtigheid
Regenwaarde in millimeter
Windsnelheid in meter/sec
Windpieksnelheid in meter/sec
Windrichting als numerieke waarde (de webapp heeft geen mogelijkheden om dit anders weer te geven)

Installatie

  1. download de plugin code en plaats deze als bestand 'plugin_008.c' in de directory ../plugins
  2. open het configuratiebestand 'config_nn.c' uit de directory ../Config, waarbij nn het Nodo pluginnuummer is.
  3. voeg de volgende regels toe:
#define PLUGIN_008
#define PLUGIN_008_CORE

Compileer en upload de code naar je Nodo.

Hardware

De Alecto weerstations zijn o.a. te koop bij bouwmarkten en diverse webshops en zijn goed verkrijgbaar. Er is geen hardware aanpassing nodig op de Nodo Sateliet, aangezien alles via de bestaande RF ontvanger gaat.

Ondersteunde weerstations: Alecto WS3500


AlectoWS3500.jpg


Syntax

Het plugin is een input plugin. De configuratie vindt tijdens boot plaats met een commando en bij ontvangst van het signaal worden events gegenereerd. Het commando kan worden gebruikt in scripts, vanaf de command-line of vanuit de eventlist. Het commando kan als volgt worden opgegeven:

AlectoV1 <id>, <variabele>
Parameter: Beschrijving: Bereik: Opmerking:
ID Unit ID van de buitensensor (uniek per unit, wijzigt na plaatsen batterij!) 1..255
Variable Nummer van de 1e variabele waarin de gegevens worden opgeslagen. Alleen de eerste variable (basisvariable) moet ingevoerd worden, de andere 5 (opeenvolgende)worden door de plugin toegekend. (Er worden dus totaal 6 variable gebruikt) Mega: 1 t/m 10, Small: 1 t/m 3

Opmerking over het begrip "basisvariabele: dit is het laagste nummer uit de reeks van zes die worden gevuld. Geef je bijvoorbeeld 5 op, dan worden de variabelen 5 tot en met 10 gevuld.

Als geen commando is gegeven, dan worden binnenkomende events getoond als AlectoV1 <id>,0. Hieraan kun je zien welk ID je moet gebruiken.

Voorbeeld Commando

Eventlistwrite; boot 1; AlectoV1 119,1

Schakelt detectie van unit 119 in en gebruikt:

variabele 1 om de temperatuur in op te slaan
variabele 2 om de luchtvochtigheid in op te slaan
variabele 3 om de regenwaarde in op te slaan
variabele 4 om de windsnelheid in op te slaan
variabele 5 om de windrichting in op te slaan
variabele 6 om de piek windsnelheid in op te slaan

Voorbeeld Eventlist

We gaan er hierbij vanuit dat je dit script uitvoert op een Nodo met unit nummer 1, anders moet je dat in het script aanpassen (boot <nummer>). Na invoeren van het script moet je de Nodo herstarten om de timer te laten lopen en de Alecto registratie actief te maken.

eventlistwrite; boot 1; alectoV1 113,1;		! 1e ID van jouw buitenunit
eventlistwrite; boot 1; alectoV1 46,1;		! 2e ID van jouw buitenunit
eventlistwrite; boot 1; TimerSet 1,300;		! Start de timer (5 minuten)
eventlistwrite; Time 00:00; VariableSet 3,0;	! Reset regen dagteller
eventlistwrite; Timer 1; TimerSet 1,300;	! Reset de timer
eventlistwrite; Timer 1; VariableSend 1,HTTP;
eventlistwrite; Timer 1; VariableSend 2,HTTP;
eventlistwrite; Timer 1; VariableSend 3,HTTP;
eventlistwrite; Timer 1; VariableSend 4,HTTP;
eventlistwrite; Timer 1; VariableSend 5,HTTP;
eventlistwrite; Timer 1; VariableSend 6,HTTP;

Opmerkingen

  • zowel de basisunit met wind en temperatuur meter als de regenmeter geven een eigen ID. Stel beide in op dezelfde basis variable.

Zie ook

Weergegevens_Meten