Milieu Monitoring met BeagleBone of RaspberryPI en Ardunio (3 / 7 stap)

Stap 3: programmeren

Dit is waar het wordt leuk.
De UTFT bibliotheek bleek te zijn vrij eenvoudig te gebruiken, en ik vond ook een makkelijk te gebruiken bibliotheek voor de DHT-22.  Zelfs met deze mooie bibliotheken waren er enkele uitdagingen.
De Arduino als een i2c-slave lijkt alleen gedragen als u uw gebruik aan SBCS-operaties beperken, en dit verzenden flexibele complexe structuren bemoeilijkt.  Ik wil zitten kundig voor scherm tekenopdrachten van de BeagleBone verzenden met de Arduino.  Mijn opties moesten een systeem waarbij een byte wordt verzonden als een "opdrachttype" code dan tak Lees meer bytes Voltooi de structuur of werken op een manier te vatten van een tekenreeks met scheidingstekens en te verwerken.  Methode 1 zou betekenen ik optionele parameters niet kan hebben, en als het verzenden van de byte synchroon krijgt het zal moeilijk zijn om re-sync-aangaande.  Dus gebruikte ik methode 2 door gebruik van enkele buffer variabelen en een 0-byte te verzenden als een null-terminator, zoals C toepassingen voor tekenreeksen.  Zelfs als een byte wordt verbroken, de 0-byte zal eindigen de structuur op een bepaald punt en dan is het gewoon een kwestie van omgaan met rare gegevens wanneer ik parseren.

De volgende uitdaging was dat de DHT22 traag is.  leuk, echt traag.  Dat met behulp van een "huidige waarde" opgelost variabele en een vertraging.  Ik hoef niet super snelle reactie wanneer de waarden veranderen, maar ik wil het moet snel reageren wanneer ik voor de waarden vragen.  De hoofdlus opiniepeilingen een functie elke keer, die vervolgens controles functioneren wanneer de waarde het laatst werd bijgewerkt, en bijgewerkt als er meer dan 3 seconden ingedrukt.  Ik zal waarschijnlijk eindigen dit omzetten in een timer of iets dergelijks.

Ik ook geprogrammeerd in een "dev modus" dus ik kan loskoppelen van het LCD-scherm en wat informatie over de seriële krijgen.  Het heeft tot dusver handig geweest, maar nu dat de grondbeginselen zijn uitgewerkt ik waarschijnlijk niet zal het opnieuw gebruiken.

Op de Beaglebone gebruik ik PyBBIO nu.  het is arduino, zoals opdrachten en methoden me houden uit super steeds verward bij het omgaan met dergelijke talen als C en Python zijn.  Het is vrij eenvoudig te installeren, en heeft een paar leuke klassen bouwen.  Het is mijn bedoeling te proberen en krijgen een soort i2c klasse erin, als Haim niet eerst!

Hier vindt u een zip-bestand dat is verbonden met mijn code, een ino bestand voor de arduino en een python-bestand voor de beaglebone.  Momenteel is er alleen ondersteuning voor de DHT22 temperaturen en de vochtigheid lezingen.  Het werkt het display op de arduino zelfs als het python script is niet uitgevoerd.  De python script gewoon haalt de waarden en geeft hen naar de terminal.  Zoals ik al zei aan het begin, heb ik nog een heleboel werk te doen!

De gecompileerde schets gebruikt 29.5K van de maximale 32.2-K, en ik moet nog touch ondersteuning en diegenen die functies toe te voegen!  Ik denk dat er een heleboel code in de utft die ik kan knippen uit, en misschien kan ik trek de DTH bibliotheek spullen in en maak het ook meer mager.  Of, misschien zal ik net genoeg, we zullen zien!

Gerelateerde Artikelen

Milieu Monitoring Rover - aangedreven door Intel Edison

Milieu Monitoring Rover - aangedreven door Intel Edison

Dit is een instructable geïnspireerd door de Mars nieuwsgierigheid Rover , ik verwacht niet dat deze rover om Mars te maken!! maar u het nabootsen en implementeren van sommige koele eigenschappen met behulp van de Intel Edison. Hebben gezegdd dat, op
Home milieu Monitor

Home milieu Monitor

In dit project zijn we gaan maken van een Home milieu Monitor.Dit is een basisproject van IOT die gebruikt een temperatuur, luchtvochtigheid, licht en geluid sensor met de GrovePi en grafieken van de live-gegevens vanuit deze sensoren met het interne
Zelfgemaakte batterij monitor met behulp van AVR

Zelfgemaakte batterij monitor met behulp van AVR

jongens,Ik wil delen mijn experiment met spanning de divider, ADC en AVRZelfgemaakte batterij monitor met behulp van AVRHet is vrij eenvoudig de sensor zijn slechts twee weerstanden en zener-diode met capasitor, ik ze niet kopen, ik vond het in mijn
Hoe te opstelling voor dubbele monitors met Microsoft Vista

Hoe te opstelling voor dubbele monitors met Microsoft Vista

In dit instructable ik zal u tonen hoe te opstelling van twee (of meer) monitoren met Microsoft Windows Vista. Dit is een handige truc om te weten als u bent nodig meer ruimte om te werken met en kan echt verhogen uw productief gebruik van uw compute
Verlichtingssterkte Monitor met ESP8266 - IoT

Verlichtingssterkte Monitor met ESP8266 - IoT

Dit project zal helpen u bij het maken van een verlichtingssterkte monitor met behulp van een ESP8266-SoC en een verlichtingssterkte sensor (TSL2561) met de volgende mogelijkheden:Maatregel verlichtingssterkteMonitor verlichtingssterkte van uw smart
Baby Monitor met Arduino en SmartLiving Maker platform

Baby Monitor met Arduino en SmartLiving Maker platform

Babyfoon is een mooi voorbeeld van aangesloten apparaten met behulp van Arduino, Grove Shield Base en SmartLiving Maker platform (https://maker.smartliving.io) voor IoT makers.Wat babyfoon kan doen?Zie de kamertemperatuur en geluidsniveau op elk gewe
Luchtvervuiling en milieu Monitor

Luchtvervuiling en milieu Monitor

Dit project is een station van de sensor die deeltjes per miljoen niveaus van koolmonoxide, ammoniak en stikstofdioxide in de lucht door de Grove meerkanaals Gas Sensor (http://www.seeedstudio.com/wiki/Grove_-_Multichann detecteren kan... Het gebruik
Draai een dode laptop in een monitor met Plexiglas standaard

Draai een dode laptop in een monitor met Plexiglas standaard

Hoi, dit is een ' inschakelen van het LCD-scherm van een gebakken laptop van vrienden ible (cheers Martin: P) naar een externe monitor voor uw huis console, blueray-speler of gewoon als een tweede monitor.Eerste dingen eerst, dit is mijn eerste Instr
ThingSpeak temperatuur Monitor met Raspberry Pi

ThingSpeak temperatuur Monitor met Raspberry Pi

In deze tutorial zullen we kijken hoe gegevens te sturen naar een online dienst zoals Thingspeak, en hoe gegevens worden weergegeven uit uw BrickPi op het web.We gebruiken een Dexter industrieën Thermometer voor het meten van de temperatuur in de kam
Bouwen van een Cross-Platform-System-Monitor met Ubidots

Bouwen van een Cross-Platform-System-Monitor met Ubidots

Systeem monitoren zijn hulpmiddelen die verslag informatie over de middelen en de prestaties van een bepaald computersysteem. Gegevenspunten over de CPU, geheugen en harde schijf gelden voor systeem monitoren. Maar wat zijn deze variabelen? In een pr
Streaming van de Xbox 360 naar Twitch met behulp van een oudere PC VGA/DVI-Monitor met aparte geluid (Monitor zonder luidsprekers)

Streaming van de Xbox 360 naar Twitch met behulp van een oudere PC VGA/DVI-Monitor met aparte geluid (Monitor zonder luidsprekers)

Ik wilde te kunnen stream games to TV Twitch van mijn Xbox 360 games uit het comfort van mijn eigen slaapkamer in plaats van de woonkamer. Daar heb ik niet een TV in mijn slaapkamer had ik op mijn PC Monitor aansluiten de Xbox. De Monitor van de PC d
Hoe te repareren van HP 1702 LCD-monitor met gebroken VGA-kabel

Hoe te repareren van HP 1702 LCD-monitor met gebroken VGA-kabel

Hi dit is mijn eerste instructable, hoop u bevalt en eventuele opmerkingen welkom.mijn motivatie hiervoor begon toen mijn 17-inch monitoren gegoten kabel brak intern waardoor ik met geen monitor, en gezien het feit dat ik kon niet gewoon kopen een Ve
Sensor Data Monitoring met Edison (Intel IoT)

Sensor Data Monitoring met Edison (Intel IoT)

Dit instructable is voor de integratie van de grove sensoren en actuatoren met Intel Edison door NodeJS en monitor de gegevens van de sensoren zoals de kwaliteit van de lucht, de temperatuur, licht, geluid, aanraking en LED, zoemers.Dit vereist de kn
Herstellen van een LCD-monitor met achtergrondverlichting kwesties

Herstellen van een LCD-monitor met achtergrondverlichting kwesties

dit Instructable zal u tonen hoe te demonteren een monitor voor reparatie, evenals de reparatie zelf. In dit Instructable, zal ik werken met een HP F1703-monitor die koude-soldeer gewrichten heeft ontwikkeld en heeft geleid tot een probleem waar de a