Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Plantbewakingssysteem met AWS IoT

Componenten en benodigdheden

Arduino Yun
× 1
Seeed Grove starterkit plus voor Intel Edison
Het schild en de temperatuur- en lichtsensor uit de set gebruiken
× 1
Seeed Grove - Vochtsensor
× 1
5 mm LED:rood
× 1
Weerstand 330 ohm
× 1

Benodigde gereedschappen en machines

3D-printer (algemeen)

Apps en online services

Amazon Web Services AWS IoT
Amazon Web Services AWS IAM
Amazon Web Services AWS DynamoDB
Amazon Web Services AWS SNS
dweet.io
Arduino IDE

Over dit project

Stel je voor dat je een week of zo op vakantie gaat en je je zorgen maakt over je kamerplant thuis. Hier is een geweldig project om een ​​week voordat je op vakantie gaat te ondernemen.

Bouw een installatiebewakings- en meldingssysteem voor jezelf met de volgende functie

  • Bewaak de temperatuur, lichtwaarde en bodemvochtwaarde met dweet.io
  • OF de nieuwe Amazon IoT-service gebruiken om gegevens te loggen in AWS - DynamoDB
  • Gebruik AWS -SNS-melding om een ​​e-mail naar jezelf te sturen, zodat je je neef/buurman kunt informeren om de plant snel water te geven of thuis je thermostaat te controleren.

Daarnaast heb ik een 3D-geprinte behuizing ontworpen om de Arduino Yun, grove schild en sensoren te huisvesten.

Als je geïnteresseerd bent om te zien hoe mijn plant het doet, is hier de link 

http://dweet.io/follow/PlantMonitorTorontoON



Dit zijn de stappen die u moet uitvoeren om de build te voltooien 

#1 Bouw het circuit   met behulp van het Grove-connectorschild  zoals weergegeven in het schematische gedeelte van het project, sluit u in principe de 

  • Temperatuursensor tot A0
  • Bodemvochtsensor tot A1
  • Lichtsensor naar A2
  • En gebruik een weerstand van 220 Ohm om een ​​LED aan te sluiten op pin #2 

#2 3D print de STL-bestanden , bijgevoegd in de  sectie aangepast onderdeel en behuizing , hier heb je 3 STL-bestanden om af te drukken, stel je snijsoftware in op 0.3 mm laaghoogte en een vuldichtheid van ten minste 25% of hoger

3D-printen duurt ongeveer 2 uur, dus download de STL-bestanden en start uw 3D-printer terwijl u de andere stappen hieronder uitvoert


 #3 De bodemvochtwaarde bepalen

Upload de onderstaande code (bodemvochtwaarde) naar uw Arduino Yun en bepaal de tooDryValue in de onderstaande code. Als de waarde van het bodemvocht onder tooDryValue komt, moet u de plant water geven. (en deze waarde is de waarde die u zal gebruiken in AWS-SNS-conditie om een ​​e-mail te verzenden)

Hier is de video waarin ik de methode laat zien die ik heb gebruikt om de toodry-waarde te bepalen  

#4 Upload Arduino-code naar Yun om  gegevens naar dweet.io te posten

Zodra je de toodryvalue hebt gekozen, upload je het ArduinoYunDweetIO.ino-bestand naar de Yun en vervang je als onderdeel van de code ook "PlantMonitorTorontoON" door iets dat meer betekenisvol voor je is.

Hier is een videotest voor het uploaden van sensorgegevens naar dweet.io


#5 AWS CLI instellen op uw computer (hier gebruik ik een Mac)

Als u nu gegevens wilt loggen met AWS IoT in DynamoDB, moet u een account maken op https://aws.amazon.com/free. Hier moet u ook uw creditcardgegevens opgeven, maar voor de onderstaande zelfstudie hoeft u dat niet te doen kosten met zich meebrengen (ook dit is weer afhankelijk van de regio van de AWS-configuratie)  

Als u klaar bent, maakt u een map "AWS . aan " op uw mac en volg de onderstaande link om AWS CLI te downloaden en te installeren

http://docs.aws.amazon.com/iot/latest/developerguide/installing-aws-cli.html

Ik gebruik een mac, hier zijn de instructies die ik heb gevolgd

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"$ unzip awscli-bundle.zip$ sudo ./awscli -bundle/install -i /usr/local/aws -b /usr/local/bin/aws 

Opmerking:op de terminal moet je in de AWS-map zijn die je zojuist hebt gemaakt

#6 Een ding maken met behulp van de CLI die moet worden weergegeven in de AWS IoT-console

Nu gaan we iets maken in AWS IoT met de volgende opdracht 

aws iot create-thing --thing-name "plantSystem" 

Voor meer info zie de link

http://docs.aws.amazon.com/iot/latest/developerguide/create-thing.html


#7 Certificeringen maken 

Om de benodigde certificaten te maken en te activeren, geeft u de volgende opdracht  

aws iot create-keys-and-certificate --set-as-active --certificate-pem-outfile cert.pem --public-key-outfile publicKey.pem --private-key-outfile privateKey .pem 

deze opdracht maakt de certificaten (3 pem-bestanden) voor u in de AWS-map, zoals weergegeven in de onderstaande schermafbeelding



#8 Creëer en voeg een AWS IoT-beleid toe aan uw certificaten

Begin met het maken van een json-bestand in de AWS-map, met behulp van je favoriete teksteditor (ik geef de voorkeur aan sublieme tekst 2) - noem het bestand policy.json

{ "Versie":"2012-10-17", "Statement":[{ "Effect":"Toestaan", "Actie":["iot:*"], "Bron":[ "*"] }]} 

Kopieer vervolgens de volgende opdracht in uw teksteditor

aws iot create-policy --policy-name "PubSub" --policy-document file://./policy.json 


#9 Beleid toevoegen aan certificaat gevolgd door certificaat aan apparaat koppelen

Geef de onderstaande commando's een voor een

$aws iot attach-principal-policy --principal "arn:aws:iot:xxxxxxxxxxxxxxxxxxxxxxxx" --policy-name "PubSub"$ aws iot attach-thing-principal --thing-name "PlantSystem" --principaal "arn:aws:iot:xxxxxxxxxxxxxxxxxxxxxxxx" 

Hier is een gemakkelijke manier om je certificaat te krijgen als je het nog niet hebt genoteerd, door naar de AWS IoT-console te gaan, op je certificaat te klikken en naar de details aan de rechterkant van je scherm te gaan. Vanaf hier kun je de arn naar de teminal kopiëren en plakken



Raadpleeg voor meer informatie de documentatie op 

http://docs.aws.amazon.com/iot/latest/developerguide/secure-communication.html

# 10 Uw instellingen verifiëren/testen op uw computer en testen met MQTT.fx

Om nu te beweren dat de installatie op uw computer is uitgevoerd, downloadt en installeert u MQTT.fx via onderstaande link om te testen of de installatie werkt en kunnen we gegevens publiceren en abonneren via AWS IoT

http://mqttfx.jfx4ee.org/index.php/download

Gebruik de onderstaande link voor meer installatie-informatie en om het rootcertificaat te downloaden

http://docs.aws.amazon.com/iot/latest/developerguide/verify-pub-sub.html

- hier in MQTT.fx moet je je verbindingsprofiel instellen

- en koppel uw certificaten die u heeft gedownload als onderdeel van de bovenstaande stappen

Hier is een korte video die laat zien hoe u uw installatie kunt testen op uw computer, in mijn geval een MAC met behulp van de MQTT.fx-tool.



Als je eenmaal hebt voltooid en getest dat je installatie in orde is, volg je de onderstaande stappen om het certificaat naar de Arduino Yun te uploaden

#11 De Arduino Yun instellen om te communiceren met de AWS IoT-cloud

Download  de nieuwste versie van de Arduino Yun SDK van github en pak het uit in de map 'Bibliotheken' van Arduino 

https://github.com/aws/aws-iot-device-sdk-arduino-yun

Als je de Arduino Yun voor de eerste keer gebruikt, volg dan de installatie-instructies op

https://www.arduino.cc/en/Guide/ArduinoYun

Met behulp van de link leert u in principe hoe u de Arduino Yun instelt om verbinding te maken met het wifi-thuisnetwerk.

Laad vervolgens de procesvoorbeeldschets Arduino IDE naar uw YUN (Bestand->Voorbeelden->Brug -> Proces), dit zal bevestigen dat de Yun toegang heeft tot internet.

Plaats uw rootCA-bestand, privésleutel en certificaat in de map certs zoals weergegeven in de onderstaande schermafbeelding


Wijzig vervolgens codebase_upload.sh en environment_setup.sh en vervang [your_boards_IP] door het IP-adres van je board en [your_boards_IP] door je wachtwoord

Voer in uw terminal de volgende opdrachten uit om toestemming te geven voor de .sh-bestanden, dit duurt ongeveer 5-10 minuten, waardoor de certificaten worden verplaatst en de installatie van distribueren, python-openssl, pip, paho-mqtt op de Yun. Dit zijn de pakketten die je nodig hebt om te communiceren met de AWS-cloud vanuit je Yun (in ons geval ook wel het PlantSystem-ding genoemd)

$chmod 755 codebase_upload.sh$./codebase_upload.sh$chmod 755 environment_setup.sh$./environment_setup.sh 



Voor installatie op Linux/Windows volgt u de link op 

https://github.com/aws/aws-iot-device-sdk-arduino-yun#installation


Als onderdeel van het volgende paar dat AWS CLI gebruikt, gaan we een tabel maken in DynamoDB om sensorgegevens te posten

#12 Een IAM-rol maken en machtigingen verlenen

Om gegevens in te voeren in de DynamoDB-sensortabel die we gaan maken als onderdeel van de volgende stap, moeten we een IoT-regel maken die zal reageren op het MQTT-bericht dat door AWS is ontvangen, hiervoor moeten we een rol maken en verlenen het heeft toestemming nodig

Maak een json-bestand rolePolicy.json

{"Versie":"2012-10-17", "Statement":[{ "Sid":"", "Effect":"Toestaan", "Principaal":{ "Service":" iot.amazonaws.com" }, "Actie":"sts:AssumeRole" }]} 

en voer de volgende opdracht uit in de terminal om de rol aan te maken

aws iam create-role --role-name iot-actions-role --assume-role-policy-document file://./rolePolicy.json 

Maak nog een json-bestand policy.json

{ "Versie":"2012-10-17", "Statement":[{ "Effect":"Toestaan", "Actie":[ "dynamodb:*", "lambda:InvokeFunction"] , "Bron":["*"] }]} 


bel vervolgens create-policy en specificeer het IAM-beleidsdocument

aws iam create-policy --policy-name iot-actions-policy --policy-document file://./policy.json 

En voeg tenslotte het beleid toe aan de rol met behulp van - wijzig het beleid-ARN naar het ARN dat u hebt ontvangen als onderdeel van de vorige stap

aws iam attach-role-policy --role-name iot-actions-role --policy-arn "arn:aws:xxxxxxxxxxxxx:policy/iot-action-policy" 


http://docs.aws.amazon.com/iot/latest/developerguide/config-and-test-rules.html

#13 Tabel opzetten in DynamoDB in AWS-console

Als onderdeel van deze stap gaan we een DynamoDB maken in de AWS-console

Tabelnaam:plantSensor

Partitiesleutel :sleutel

Sorteersleutel:tijdstempel

en stel ook uw Leescapaciteitseenheden en Schrijfcapaciteit in op 1.

#14 Een regel maken om gegevens in de PlantSensor-tabel in te voegen

Maak een json-bestand - plantdatarule.json (wijzig hier de roleArn-waarde in het onderstaande gedeelte, ga naar IAM->Roles->iot-action-role om de arn te verkrijgen)


{ "sql":"SELECT * FROM 'topic/plantdata'", "ruleDisabled":false, "actions":[{ "dynamoDB":{ "tableName":"plantSensor", "hashKeyField" :"key", "hashKeyValue":"${topic(2)}", "rangeKeyField":"timestamp", "rangeKeyValue":"${timestamp()}", "roleArn":"arn:aws:iam ::XXXXXXXXXXXX:role/iot-actions-role" } }]} 

voer vervolgens de volgende opdracht uit op uw terminal

aws iot create-topic-rule --rule-name plantDataToDynamoDB --topic-rule-payload file://./plantdatarule.json 

Als u nu naar de AWS IoT-console gaat, ziet u een gemaakte regel met de naam "PlantDataToDynamoDB"  zoals weergegeven in de onderstaande schermafbeelding ('' negeer de regel voor het verzenden van e-mail, deze komt als onderdeel van de onderstaande stappen.)

voer met MQTT.FX een snelle test uit om te zien of er records worden aangemaakt in de aangemaakte tabel.


#15 Upload de Arduino-schets om gegevens vanuit de Yun naar AWS IoT te publiceren

Hier begint u eerst met het downloaden van de ArduinoJSON-bibliotheek van github op

https://github.com/bblanchon/ArduinoJson

Download nu de YunAWSIoTDynamoDB,ino- en aws_iot_config.h-bestanden uit het  codegedeelte hieronder en upload deze naar de Yun.

Open uw seriële monitor en u zou de temperatuur, lichtwaarde en bodemvochtigheidswaarde moeten zien die op de DynamoDB zijn geplaatst.

Als je AWS bent geweest, kun je allerlei geweldige dingen doen door de Lambda-functie in te stellen en datakinesis te posten ...

Opmerking: Als u van plan bent om dit een permanente configuratie te maken, vergeet dan niet om de vertraging aan het einde van de lus te vergroten, om het tijdsinterval van posten naar DynamoDB te verlengen, zodat u geen extra kosten maakt. Ga voor meer informatie over prijzen naar https://aws.amazon.com/iot/pricing/


#16 Een AWS-IoT SNS-regel instellen om te ontvangen en te e-mailen als uw bodemvochtwaarde onder een drempel komt.

In principe omvat deze stap het opzetten van een eenvoudige SNS-meldingsbasis op de AWS IoT-regel.

Begin met het toewijzen van de volgende beleidsregels aan de AWS-rol (iot-action-rol) die u in de vorige stap in de IAM-console hebt gemaakt

-AmazonSNSRool

-AmazonSNSFullAccess

Als u klaar bent in de SNS-console, maakt u een onderwerp met de naam sendMail en maak een abonnement aan en geef je e-mailadres op je telefoon om een ​​melding te krijgen wanneer de bodemvochtwaarde LAAG is.

Ga nu terug naar de AWS IoT-console en maak met de knop +Create Resource een regel met de naam Email Send en geef de volgende informatie op

  • Naam:EmailSend
  •  Kenmerk:mositValue (dit moet overeenkomen met de json-waarde die u plaatst als onderdeel van uw onderwerp in de Arduino-code)
  •  Onderwerpfilter: onderwerp/plantgegevens
  •  Conditie:as moistval <250 (dit is de waarde die je in de eerste paar stappen van de tutorial hebt bepaald)
  • Kies actie:bericht verzenden als pushmelding-SNS
  • SNS-doel:sendEmail
  •  Rol:iot-action-role

Als je klaar bent, zou je console eruit moeten zien als de onderstaande schermafbeelding

Hier is een voorbeeld-e-mail die ik heb ontvangen toen ik de bodemvochtsensor uit een glas water verwijderde




Om meer te lezen over AWS-SNS

https://aws.amazon.com/sns/faqs/

#15 De 3D-geprinte onderdelen in elkaar zetten en toevoegen aan de pot.

Je hebt een 4x40 schroef en moer nodig om het zwarte aarde poker 3D-geprinte deel aan het basisdeel van de Arduino Yun te bevestigen

Het bovenste deel klikt gewoon vast, vergeet niet om de bovenste opening naar je raam te richten en het bodemvocht in de pot te prikken. En sluit de Yun aan met een micro-usb-kabelstekker op een stopcontact.

Let op, ik ben nog steeds aan het ontdekken en leren over de geweldige wereld van AWS, en ik sta versteld van de functies op de AWS-console, dus als je AWS al geruime tijd gebruikt, plaats dan een opmerking of suggestie voor een functie die je zou hebben leuk om te zien/van toepassing op het plantmonitoringproject.Bedankt ..


Code

  • SoilMoistureValue
  • ArduinoYunDweetio
  • ArduinoYunAWSIoTDynamodb
  • aws_iot_config.h
SoilMoistureValueArduino
Arduino-schets voor het bepalen van de ideale bodemvochtwaarde voor uw kamerplant
//@CarmelitoA -Huisplantmonitoring project bepaling bodemvochtwaardeconst int vochtPin =A1; // Grove Vochtsensor aangesloten op A1 op de Grove Shieldconst int ledPin =2;int moisturValue =0;int tooDryValue =250;// verander deze waarde op basis van wat je bedenktvoid setup() {Serial.begin(9600); pinMode(ledPin,OUTPUT);digitalWrite(ledPin,LOW);}void loop() {moisturValue =analogRead(moisturePin);Serial.print("Vochtsensor =");Serial.println(moisturValue); //Controleer de waarde voor met Droog zand en vervolgens met Wet Sandif(moisturValue  
ArduinoYunDweetioArduino
Sensorgegevens naar dweet.io posten met Arduino Yun
//Gemaakt door @CarmelitoA voor het House Plant Monitoring-project - gegevens uploaden naar dweet.io. (CC BY-SA https://creativecommons.org/licenses/by-sa/4.0/)#include #include #define SITE_URL "www.dweet.io"#include  //Toegevoegd voor temperatuurberekeningenconst int vochtPin =A1; // Grove Vochtsensor aangesloten op A1 op de Grove Shieldconst int ledPin =2; //LED indicatorint moisturValue =0; // variabele om de waarde op te slaan die afkomstig is van de sensorconst int tooDryValue =500; //WIJZIG deze waarde op basis van het testen van hoeveel vocht de grond zou moeten hebben, minder dan deze waarde zal de LED AAN zetten, wat betekent dat je de plantfloat water moet geven tooLowTemp =20; //VERANDERING, temperatuur in graden C op basis van het type kamerplant, als de temperatuur lager is dan de waarde, wordt de LED rood//Temperatuursensor defsconst int B=4275; // B-waarde van de thermistorconst int R0 =100000; // R0 =100kconst int pinTempSensor =A0; // Grove - Temperatuursensor aansluiten op A5//Light Sensorconst int lightPin =A2; unsigned long lastConnectionTime =0; const unsigned long postingInterval =10L * 1000L;void setup(){ Bridge.begin(); Serieel.begin(9600); pinMode (ledPin, UITGANG); digitalWrite (ledPin, LAAG); Serieel.begin(9600); terwijl (!Serial); // wacht op een seriële verbinding - schakel dit uit na implementatie} void loop () {YunClient c;if (millis () - lastConnectionTime> postingInterval) {vochtigurValue =analogRead (moisturePin); Serial.print ("sensor ="); Serial.println(moisturValue); // Controleer de waarde voor met droog zand en vervolgens met nat zand // Berekening van de temperatuur in graden C int a =analogRead (pinTempSensor); float R =1023,0/((float)a)-1,0; R =100000.0*R; vlottertemperatuur=1,0/(log(R/100000.0)/B+1/298.15)-273.15;//omzetten naar temperatuur via datasheet; Serial.print("temperatuur ="); Serial.println(temperatuur); //berekenen van de lichtwaarde int lightValue =analogRead (lightPin); Serial.print("lichtwaarde ="); Serial.println(lightValue); // de LED inschakelen als de sensorwaarde dan tooDryValue of tooLowTemp if (moisturValue  
ArduinoYunAWSIoTDynamodbArduino
schets om sensorgegevens naar AWS -DynamoDB te posten, moet u ook de aws_iot_config.h toevoegen als een nieuw tabblad in de Arduino IDE.
//Gemaakt door @CarmelitoA 16-01-2016 voor het House Plant Monitoring-project. Voel je vrij om te remixen en aan te passen#include #include #include "aws_iot_config.h"#include char data[80];StaticJsonBuffer<200> jsonBuffer;//#define SITE_URL "www.dweet.io" // combineer de YunClient.h met dit voorbeeld om te posten naar dweet waardoor conflicten ontstaan, raadpleeg ArduinoYunDweetio.ino#include  //Toegevoegd voor temperatuurberekeningenconst int vochtPin =A1; // Grove Vochtsensor aangesloten op A1 op de Grove Shieldconst int ledPin =2;int moisturValue =0; // variabele om de waarde op te slaan die afkomstig is van de sensorconst int tooDryValue =250; //WIJZIG deze waarde op basis van het testen van hoeveel vocht de grond zou moeten hebben, minder dan deze waarde zal de LED AAN zetten, wat betekent dat je de plantfloat water moet geven tooLowTemp =20; //VERANDERING, temperatuur in graden C op basis van het type kamerplant, als de temperatuur lager is dan de waarde, wordt de LED rood//Temperatuursensor defsconst int B=4275; // B-waarde van de thermistorconst int R0 =100000; // R0 =100kconst int pinTempSensor =A0; // Grove - Temperatuursensor aansluiten op A5//Light Sensorconst int lightPin =A2; unsigned long lastConnectionTime =0; const unsigned long postingInterval =10L * 1000L; // verander deze waarde om de boekingsintervalaws_iot_mqtt_client myClient te vergroten; // init iot_mqtt_clientchar bericht [32]; // lees-schrijfbufferint cnt =0; // loop countsint rc =-100; // retourwaarde placeholderbool success_connect =false; // of het is verbonden // Basis callback-functie die de messagevoid msg_callback (char * src, int len) afdrukt { Serial.println ("CALLBACK:"); int ik; for(i =0; i  
aws_iot_config.hArduino
Add as a new tab in the Arduino IDE
/* * Copyright 2010-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. *///@carmelitoA modified the value for the plant monitoring project#ifndef config_usr_h#define config_usr_h// Copy and paste your configuration into this file//===============================================================#define AWS_IOT_MQTT_HOST "XXXXXXXXXXX.iot.us-west-2.amazonaws.com" // your endpoint#define AWS_IOT_MQTT_PORT 8883 // your port#define AWS_IOT_CLIENT_ID "clientYun2" // your client ID#define AWS_IOT_MY_THING_NAME "PlantSystem" // your thing name#define AWS_IOT_ROOT_CA_FILENAME "rootCA.pem" // your root-CA filename#define AWS_IOT_CERTIFICATE_FILENAME "cert.pem" // your certificate filename#define AWS_IOT_PRIVATE_KEY_FILENAME "privateKey.pem" // your private key filename//===============================================================// SDK config, DO NOT modify it#define AWS_IOT_PATH_PREFIX "./certs/"#define AWS_IOT_ROOT_CA_PATH AWS_IOT_PATH_PREFIX AWS_IOT_ROOT_CA_FILENAME // use this in config call#define AWS_IOT_CERTIFICATE_PATH AWS_IOT_PATH_PREFIX AWS_IOT_CERTIFICATE_FILENAME // use this in config call#define AWS_IOT_PRIVATE_KEY_PATH AWS_IOT_PATH_PREFIX AWS_IOT_PRIVATE_KEY_FILENAME // use this in config call#endif

Aangepaste onderdelen en behuizingen

Schema's

Connect the sensors to the Grove starter kit that is
- Temperature sensor to A0
- Soil Moisture sensor to A1
- Light sensor to A2

In addition, using a 220 Ohms resistor connect an LED to pin#2. Connect the
Temperature sensor to A0
Soil Moisture sensor to A1
Light sensor to A2
And using a 220 Ohms resistor connect an LED to pin#2

Productieproces

  1. C# met behulp van
  2. Bewaking op afstand van het weer met Raspberry Pi
  3. Bewegingsgestuurde AWS IoT-knop
  4. Hoe bouw je een slimmere operatie met behulp van tankmonitoring IoT-technologie
  5. Dual Purpose IoT-bosbeheersysteem
  6. Op IoT gebaseerd extern olie- en dieseltankbewakingssysteem
  7. 8 Voordelen van een op IoT gebaseerd Fleet Weight Monitoring System
  8. Belang van het gebruik van IoT-enabled Asset Monitoring in de O&G-industrie
  9. Verbeter melkopslag met een snufje IoT:melkniveaubewakingssysteem
  10. Een door IoT aangedreven rivierniveaubewakingssysteem gebruiken voor efficiënt waterbeheer
  11. Systeem maakt contactloze bewaking van hartritme mogelijk met behulp van slimme luidsprekers