Grondwater Multiflexmeter

Overzicht Multiflexmeter

Hieronder staat een overzicht van de verschillende componenten van het Multiflexmeter systeem en de verbinding naar het Sensorbucket systeem.

In het geval van de Grondwater Multiflexmeter zal de Sensor Module specifiek gemaakt zijn om een Druksensor uit te lezen.

 

Energie voorziening

De Multiflexmeter gebruikt 2x LS14500 lithium-thionyl-chloride batterijen (AA formaat). Deze batterijen:

  • leveren 9.63 Wh (2600mAh a 3.6V);

  • zijn AA Formaat;

  • zijn bestendig tegen -80 graden celsius tot +125 graden celsius;

  • hebben een zelfontlading van 1-2% per jaar;

  • kunnen geen grote spanningpieken leveren.

Deze batterij is gekozen omdat de karakteristieken passen bij die van de Multiflexmeter:

  • Gaat langere tijd mee (5-10 jaar);

  • bestendig tegen buitentemperaturen;

  • standaard formaat;

Ondanks het standaard formaat leveren deze batterijen het dubbele van standaard AA Alkaline batterijen.

Onze batterijen zijn ingekocht bij NKON: https://www.nkon.nl/saft-ls14500-aa-lithium-battery-3-6v.html.

Communicatie tussen modules

De hoofdprinplaat communiceert met de sensor modules via een I2C bus. De hoofdprintplaat maakt gebruik van twee commandos:

  • Doe een meting

  • Wat is je meetresultaat

Deze commando’s zijn geformateerd als SMBus functies; zie hoofdstuk 6.5 http://smbus.org/specs/SMBus_3_1_20180319.pdf.

Voor de meeste toepassingen heeft I2C een hoog genoege bitrate. Echter, het LoRaWAN protocol zal eerder bottlenecken dan de I2C bus.

Nadelen

I2C vereist addresseerbare modules. Deze addressen zijn over het algemeen hardcoded of via 1 of 2 pinnen aan te passen (maximaal ~4 varianten!). SMBus specificeert een Address Resolution Protocol om automatisch addressen toe te wijzen aan modules op de bus. Dit is een mooie oplossing, maar met het nadeel dan men niet weet welke module welk adres krijgt. Dit vormt een probleem bij het verwerken van de data.

Onze voorgestelde oplossing is de I2C Bus te voorzien van een extra lijn die als daisychain gebruikt wordt. De Hoofdprintplaat begint een Address Resolutie Sequence.

  1. De hoofdprintplaat reset alle addressen. De modules hebben geen addressen meer (0x??)

  2. De hoofdprintplaat zet het signaal op de daisychain hoog.

  3. De hoofdprintplaat stuurt het ARP Commando

  4. De eerste module zonder adres, maar met een hoog daisy chain signaal ACK’ed dit commando

  5. De hoofdprintplaat wijst een adres toe aan deze module

  6. De module heeft nu een adres en stuurt het daisy chain signaal door naar de volgende module

Zodra er geen module meer aangesloten is zal het signaal niet geACKnowledged worden en weet de hoofdprintplaat dat er geen extra modules meer zijn.

Dit protocol is niet volledig uitgewerkt. Niet alle addressen in het 128-bit adres block kunnen gebruikt worden omdat deze gereserveerd zijn voor SMBus functies of I2C functies.

Tevens gaat er een address gereserveerd moeten worden waarop de hoofdprintplaat in stap 5 de module kan aanspreken voordat deze zelf een adres heeft.

 

Communicatie via LoRaWAN

Uplink (Device → Server)

Na een network_join zal het apparaat eerst zijn hardware en software versies versturen voor (backwards)compatibility doeleinden.

Bij een meting krijgt de Hoofdprintplaat van elke sensor module een standaard block aan meetdata binnen. De hoofdmodule hoeft niet te weten wat deze data inhoud en hoeft dit alleen door te sturen via LoRaWAN.

De sensormodule prefixed de data wel met een module type, waardoor het eindsysteem weet in wat voor dataformaat er verstuurd is.

De hoofdprintplaat prefixed de sensormodule data met het address van de sensormodule zodat er onderscheid gemaakt kan worden tussen verschillende modules van hetzelfde type.

Downlink (Server → Device)

Elke uplink wacht de sensor 2 RX windows op een downlink bericht. Als er vanuit de server een downlink bericht gequeued is zal deze op het moment van een uplink verstuurd worden naar het apparaat.

De volgende eigenschappen zijn variabel:

  • MEASUREMENT_INTERVAL

  • TTN_FAIR_USE_POLICY

  • REMOTE_RESTART (reboot het device en joint opnieuw het netwerk via OTAA)