Inhoudsopgave:
- Stap 1: hardware aansluiten
- Stap 2: IoT-platformbronnen maken
- Stap 3: Apparaattype en apparaat maken
- Stap 4: Maak servicereferenties voor Cloudant
- Stap 5: Registreer voor Twilio
- Stap 6: Installeer de vereiste pakketten op het plantbewakingsapparaat
- Stap 7: Node Red-applicatie instellen voor plantbewakingsapparaat
- Stap 8: Node Red-toepassing voor server instellen
- Stap 9: Pi-webserver instellen
- Stap 10: Code toevoegen voor bestanden in webserver
- Stap 11: Begin ermee
Video: IoT Plant Monitoring System (met IBM IoT Platform): 11 stappen (met afbeeldingen)
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
Overzicht
Het Plant Monitoring System (PMS) is een applicatie die is gebouwd met mensen die in de arbeidersklasse zitten met groene vingers in het achterhoofd.
Tegenwoordig hebben werkende mensen het drukker dan ooit tevoren; het bevorderen van hun loopbaan en het beheren van hun financiën. De werktijden worden steeds langer, waardoor deze mensen minder tijd hebben om dingen te doen die ze leuk vinden.
Dit levert een probleem op voor mensen die groene vingers hebben, extra lange dagen maken en geen huishoudhulp in huis hebben om voor hun planten te zorgen.
Daarom is het PMS gecreëerd om dergelijke personen te helpen bij het bieden van betere zorg, en toch zorgen voor een optimale groei van hun planten thuis terwijl ze werken.
Samenvatting van stappen
Het volgende is een samenvatting van de stappen die zullen worden uitgevoerd:
- Aansluiten van hardware
- IBM Bluemix IoT Platform instellen
- Schrijf je in voor twilio
- Setup raspberry pi (Plant Monitoring Device) knooppunt rood
- Bluemix node instellen redWebserver instellen
Stap 1: hardware aansluiten
Hardwarevereisten
- 2 frambozenpis
- 1 Breadboard
- 1 GPIO-lintkabel
- 1 GPIO-uitbreidingskaart (T-schoenmakerkit)
- 1 MCP3008 ADC (analoog digitale converter)
- 1 DHT_1-sensor
- 2 10k Ohm Weerstanden
- 1 lichtafhankelijke weerstand
- 1 Bodemvochtsensor (YL-69)
- 1 Waterniveausensor
- 26 kabels (16 mannelijk naar mannelijk, 10 mannelijk naar vrouwelijk)
Verbind de onderdelen
Raadpleeg de 2e afbeelding van deze stap voor het fritzing-diagram en sluit de onderdelen dienovereenkomstig aan
Stap 2: IoT-platformbronnen maken
- Log in op uw Bluemix-account en ga verder naar de sectie IoT BoilerPlates-startpaginahttps://new-console.ng.bluemix.net/catalog/starters/internet-of-things-platform-starter
- Voer uw app-naam en hostnaam in Wacht tot Bluemix uw app heeft ingesteld en de status toont "Uw app is actief" Als deze na 10 minuten nog steeds niet actief is, moet u uw app mogelijk opnieuw opstarten door op de herstartknop bovenaan te klikken rechter hoek
- Klik in de zijbalk op "Verbindingen" Klik op de iotf-servicelink van de vermelde verbindingen U wordt doorgestuurd naar de IOT-serviceconfiguratie Klik op de knop "Launch" om doorgestuurd te worden naar de iotf-console
-
Let op de link waarnaar u wordt doorverwezen, bijvoorbeeld: https://suwdek.internetofthings.ibmcloud.com/dashboard/ De 6 letters voor ".internetofthings.ibmcloud.com/dashboard/" is uw organisatie-ID. Noteer het.
Stap 3: Apparaattype en apparaat maken
- Je zou in je IOT Platform-console moeten zijn.
- Klik in de linkerzijbalk op het apparaatpictogram
- Klik bovenaan op "Apparaattypen"
- Klik op "Apparaattype toevoegen" in de rechterbovenhoek
-
Voer de volgende informatie in:
- Type: apparaat
- Naam: framboospi
- Beschrijving: Raspberry Pi
- Klik op Volgende en klik vervolgens op Gereed
- Klik bovenaan op "Bladeren"
- Klik op "Apparaat toevoegen"
-
Voer de volgende informatie in:
- Selecteer bestaand apparaattype: raspberrypi
- Apparaat-ID: pms1
- Klik op volgende tot je bij de samenvatting bent
- Klik op klaar
- U wordt doorgestuurd naar de pagina Apparaatreferenties. Let op de details van uw apparaat. Dit is belangrijk omdat het authenticatietoken niet kan worden hersteld
Stap 4: Maak servicereferenties voor Cloudant
- Ga terug naar uw bluemix-console (https://console.bluemix.net/dashboard/apps)
- Klik op de cloudantNoSQLDB-service onder de Cloud Foundry Services
- Klik aan de zijkant op Servicereferenties
- Klik op de knop Nieuwe referentie
- Klik op Toevoegen
- Klik op Inloggegevens bekijken in de kolom Actie van uw nieuw aangemaakte servicegegevens
- Noteer deze referenties. Je hebt ze later nodig voor het wijzigen van de app.py-code
Stap 5: Registreer voor Twilio
- Registreer voor een nieuw twilio-account op
- Na registratie wordt u gevraagd een project een naam te geven. In mijn geval noemde ik het Plant Monitoring-systeem.
- Klik in de zijbalk op alle producten en diensten en klik op programmeerbare sms.
- Klik op "Get Started" Aangezien u geen twilio-nummer heeft, klikt u op "Get a number"
- Er verschijnt een pop-up met een nummer. Klik op "gebruik dit nummer"
- Noteer dit twilio-nummer, u heeft het later nodig.
- Ga naar het consoledashboard
- Noteer uw account-SID en verificatietoken
Stap 6: Installeer de vereiste pakketten op het plantbewakingsapparaat
- Node installeren redsudo npm install -g --unsafe-perm node-red
- Installeer pahosudo pip installeer paho-mqtt
- Installeer Watson IoT-knooppunt voor knooppunt redsudo npm i -g node-red-contrib-ibm-watson-iot
-
Installeer BCM2835
- wget
- tar zxvf bcm2835-1.52.tar.gz
- cd bcm2835-1.48
- ./configureren
- maken
- sudo check
- sudo make install Install
- Node DHT-Sensorsudo npm install node-dht-sensor
- Install Node Contrib DHT Sensorsudo npm install --unsafe-perm -g node-red-contrib-dht-sensor
- Start je pisudo-reboot nu opnieuw op
Stap 7: Node Red-applicatie instellen voor plantbewakingsapparaat
Start je node rood door de Terminal te openen en te typen
knoop-rode start
Welkom bij Node-RED===================
20 Feb 07:07:34 - [info] Node-RED versie: v0.16.2
20 Feb 07:07:34 - [info] Node.js versie: v7.8.0 20 Feb 07:07:34 - [info] Linux 4.4.50-v7+ arm LE 20 Feb 07:07:36 - [info] Loading paletknooppunten { MODE: { MODE_0: 0, MODE_1: 1, MODE_2: 2, MODE_3: 3 }, CS: { geen: 64, hoog: 4, laag: 0 }, ORDER: { msb: onwaar, lsb: waar }, Spi: [Functie: Spi] } 20 Feb 07:07:42 - [info] Instellingenbestand: /home/pi/.node-red/settings.js 20 Feb 07:07:42 - [info] Gebruikerslijst: /home/pi/.node-red 20 Feb 07:07:42 - [info] Flows-bestand: /home/pi/.node-red/start 20 Feb 07:07:42 - [info] Server draait nu op https://127.0.0.1:1880/ 20 feb 07:07:42 - [info] Start stromen 20 feb 07:07:43 - [info] Gestart stromen
Open uw browser en maak verbinding met de node red-applicatie
Klik op het hamburgerpictogram, beweeg met de muis over "importeren" en klik op "klembord" en plak de onderstaande code in
[{"id":"d9ac3f49.78dc1", "type":"tab", "label":"Flow 1"}, {"id":"9b23dde8.8ae15", "type":"pimcp3008", " z":"d9ac3f49.78dc1", "name":"MCP3008", "pin":0, "dnum":0, "x":636.996208190918, "y":148.48046493530273, "draden":
Zorg ervoor dat u de IoT Watson-knooppunten 'data' en 'RecordValues' zodanig wijzigt dat deze verbinding kan maken met uw toepassing.
Stap 8: Node Red-toepassing voor server instellen
- Log in op uw bluemix-account en ga naar het dashboard (https://console.bluemix.net/dashboard/apps)
- Klik op de link naar uw applicatie die te vinden is onder de kolom "Route" van de lijst met uw Cloud Foundry-apps
- U wordt doorgestuurd naar een andere pagina, klik op "ga naar uw node red editor"
Net als bij de vorige stap, klikt u op het hamburgerpictogram, plaatst u de muisaanwijzer op "importeren" en klikt u op "klembord" en plakt u de onderstaande code in
[{"id":"5ef69739.4622e8", "type":"tab", "label":"Flow 4", "disabled":false, "info":""}, {"id":"ff6a8be6.47bb08", "type":"ibmiot in", "z":"5ef69739.4622e8", "authentication":"boundService", "apiKey":"", "inputType":"evt", "logicalInterfaceId": "", "ruleId":"", "deviceId":"", "applicationId":"", "deviceType":"", "eventType":"+", "commandType":"", "format": "json", "name":"Mijn RaspberryPi Gateway", "service":"geregistreerd", "allDevices":true, "allApplications":"", "allDeviceTypes":true, "allEvents":true, "allCommands":"", "allFormats":"", "qos":0, "x":150, "y":60, "wires":
Zorg ervoor dat u de twilio-node wijzigt, zodat uw twilio-referenties en twilio-nummer in de node zijn geconfigureerd
Stap 9: Pi-webserver instellen
IN JE TWEEDE RASPBERRY PI…
Installeer vereiste pakketten
Open de terminal en typ de volgende opdrachten in:
sudo pip install gpiozero
sudo pip install flask
sudo pip install gevent
sudo pip installeer cloudant
Bestandsstructuur
Raadpleeg de afbeelding van deze stap voor de bestandsstructuur
Download en voeg extra statische inhoud toe
Om ervoor te zorgen dat onze webapplicaties eruitzien en werken zoals beschreven, moeten we extra statische inhoud downloaden en toevoegen om te kunnen werken.
- Bootstrap v3.3.7
- FontAwesome v5.0.1
- jQuery v3.1.0https://blog.jquery.com/2016/07/07/jquery-3-1-0-released-no-more-silent-errors/
- Morrisjs v0.5.0https://github.com/morrisjs/morris.js/archive/0.5.0.zip
- Raphael v2.2.0
Bootstrap
- Open gedownload zip-bestand (bootstrap-3.3.7-dist.zip)
- Open de map bootstrap-3.3.7-dist
- Pak alle inhoud uit naar Application/static/bootstrap
Lettertype Geweldig
- Open gedownload zip-bestand (fontawesome-free-5.0.1.zip)
- Open de fontawesome-free-5.0.2 map
- Open de map web-fonts-with-css
- Pak alle inhoud uit naar Application/static/font-awesome
jQuery
- Download jQuery-3.1.0.js en jQuery-3.1.0.min.js
- Zet beide javascript-bestanden in Application/static/jQuery
Morrisjs
- Open het gedownloade zipbestand (morris.js-0.5.0.zip)
- Open de map morris.js-0.5.0
- Pak alle inhoud uit naar Application/static/morrisjs
Raphael
- Open het gedownloade zipbestand (raphael-2.2.0.zip)
- Open de map raphael-2.2.0
- Pak alle inhoud uit naar Application/static/raphael
Stap 10: Code toevoegen voor bestanden in webserver
Download de volgende bestanden en voeg ze toe aan hun respectievelijke mappen binnen de pi-webserver
Vergeet niet om de servicereferenties in het app.py-bestand te wijzigen in uw cloudant-servicereferenties
OPMERKING: vanwege een probleem met het uploaden van het index.html-bestand, heb ik het geüpload als een.txt-bestand. Hernoem het naar index.html nadat je het hebt gedownload
Stap 11: Begin ermee
Voer in uw webserver pi de volgende opdrachten uit:
cd-toepassing
sudo python app.py
Aanbevolen:
Radioactiviteitsteller (IoT) en monitoring-ecosysteem: 6 stappen (met afbeeldingen)
Radioactiviteitsteller (IoT) en monitoring-ecosysteem: Status: niet gepubliceerd. C-GM-firmware laatste update op 10 juni 2019 met nieuwe 1.3-versie A-GM-toepassing laatste update op 25 november 2019 met nieuwe 1.3-versie. Deze doe-het-zelf lage kosten ( 50 $ / 43 €) C-GM Counter-project biedt hardware en firmware voor het bouwen
IoT Hydroponics - IBM's Watson gebruiken voor PH- en EC-metingen: 7 stappen (met afbeeldingen)
IoT Hydroponics - IBM's Watson gebruiken voor PH- en EC-metingen: deze instructable laat zien hoe de EC, pH en temperatuur van een hydrocultuuropstelling kunnen worden gecontroleerd en de gegevens kunnen worden geüpload naar IBM's Watson-service. Watson is gratis om mee aan de slag te gaan. Er zijn betaalde abonnementen, maar het gratis abonnement is meer dan genoeg voor dit project
PINt@t10n: Smart Plant Monitoring System - Ajarnpa
PINt@t10n: Smart Plant Monitoring System: PI@nt@t10nDit project is gemaakt als een test voor de ibm iot-cloud. We gebruiken een esp-8266 om gegevens van en naar de ibm cloud te verzenden en te ontvangen. De communicatie tussen de esp en de ibm cloud gebeurt via MQTT. Om alle gegevens te verwerken en te presenteren
Je plant water geven met een Arduino: 5 stappen (met afbeeldingen)
Je plant water geven met een Arduino: heb je een kamerplant die je leuk vindt, maar vergeet je hem te vaak water te geven? Deze Instructable legt uit hoe je een plantwatersysteem maakt dat wordt aangedreven door Arduino, en hoe je je plant een beetje meer persoonlijkheid kunt geven. Nadat je deze instructable hebt gevolgd t
Luchtverontreiniging Monitoring - IoT-Data Viz-ML: 3 stappen (met afbeeldingen)
Luchtverontreiniging Monitoring | IoT-Data Viz-ML: Dit is dus eigenlijk een complete IoT-toepassing die zowel een hardware- als een softwaregedeelte bevat. In deze tutorial ziet u hoe u het IoT-apparaat instelt en hoe u het kunt gebruiken om de verschillende soorten vervuilingsgassen in de lucht te controleren