Stap 10: De temperatuur logger code instellen
TemperatureLogger Python code kan ook worden gevonden van github, net als de Adafruit DHT22 codes.
Opmerking: als dit is de eerste keer dat u dit doet, u kunt nu verdergaan met "Instellen" paar regels hieronder. Maar als je al hebt gedaan deze stap eerder, maar nu is er correcties in github die wordt gezocht op uw setup ook, moet u de code opnieuw te klonen. Helaas kunt u niet bijwerken/inhoud van de map, dan moeten worden verwijderd en opnieuw gekloond. Voor het doen zo, back-up configuraties json-bestand, ook back-up van SQL back-ups van de map DHT22-TemperatureLogger/back-ups en deze vervolgens verwijdert DHT-TemperatureLogger map. Als u wilt verwijderen van de map-zorg ervoor dat bent u op de map waarin de DHT22-TemperatureLogger. bijvoorbeeld typt u:
cd/home/pi
en verwijder de map door te typen
sudo rm - r DHT22-TemperatureLogger /
U kunt nu opnieuw uit GIT clone en reset van de configuraties met onderstaande stappen. Opmerkelijk is dat als er wijzigingen ook in configuraties json bestand (b.v. nieuwe configuraties), u kan niet kopiëren de back up oude bestand terug is.
Instellen.
Zorg ervoor dat u zich in de map waar u installeren de DHT22-TemperatureLogger wilt, ik zou suggereren/home/pi/standaard. Type in de map en druk op invoeren.
cd/home/pi
Nu git repository clonen door te typen
git clone https://github.com/jjpFin/DHT22-TemperatureLogger
Type
ls
en druk op enter. En je moet zien dat TemperatureLogger uitgepakt naar nieuwe DHT22-TemperatureLogger map (afbeelding als bijlage is). Nu om te halen zulks voor werkzaamheden met Adafruit code en uw MySql-database dat zojuist is gemaakt, zijn sommige configuraties nodig. Begin met het bewerken van de instellingen. Om te doen deze Ga naar DHT22-TemperatureLogger map door te typen invoeren na en druk op
cd /home/pi/DHT22-TemperatureLogger
Nu opent config.json in editor. Typ het volgende en druk op invoeren.
sudo nano config.json
Configuratiebestand opent in de editor (referentiebeeld aangesloten).
Start gaan door de configuraties en maken ze overeenkomen met uw configuraties.
MYSQL: mysql deel aan wat ontstond in mysql creatie fase wijzigen.
Sensoren: instellen van namen voor uw sensoren, bijvoorbeeld buiten, binnen, woonkamer, keuken, enzovoort. Waar die sensor is gonna be bevindt of hoe u wilt om het te noemen in logboek. Opmerking dat hebt u slechts één sensor in bijlage, vervolgens u naam voor sensor1 instellen en sensor 2 betreft kan verlaten.
TRIGGERLIMITS: instellen van de triggerlimits. Dit zijn de limieten voor triggering e-mail waarschuwingen. Bijvoorbeeld als sensor1lowlimit 0 is en de temperatuur op die locatie zakt tot onder 0, ontvangt u een waarschuwing aan het e-mailadres dat u later toewijst.
SENSORGPIOS: gpios van de Sensor. Wat is de gpio waar uw dht22 is verbonden. Nogmaals, als er slechts 1 sensor gekoppeld, 2e kan worden genegeerd
MAILINFO: dit is voor het verzenden van deze e-mail waarschuwingen. (Ik heb gemaakt nieuwe gmail alleen voor dit doel) Opmerking momenteel alleen GMAIL wordt ondersteund
SenderAddress: dit wordt weergegeven in het postvak van de ontvangers in als afzender
Receiveraddress: waar wilt u naar verzonden deze waarschuwingen
Gebruikersnaam: gebruikersnaam voor afzender e-mail
Wachtwoord: wachtwoord voor e-mail afzender
subjectMessage: kan worden gewijzigd als u wilt, dit is onderwerp van de e-mail gestuurd in normale geval
subjectWarning: dit kan ook worden veranderd, dit is gestuurd voor het geval dat deze waarschuwing wordt geactiveerd (bijvoorbeeld temperatuur is onder triggerlimit)
SENSORTYPE: Houd dit als 22 met dht22 sensor, dit is hier in het geval dat ik zal later ondersteuning toevoegen voor andere sensoren evenals
SENSORAMOUNT: hoeveel sensoren die u hebt aangesloten. 1 of 2. (meer dan 2 wordt niet ondersteund op dit moment, misschien later)
SQLBACKUPBATH: SQL dump komt elke nacht bij 5 am als back-up, dus dit is de map waar dat dump is geschreven. Ga dit naar map waar u deze stortplaatsen worden geschreven. Elke dump wordt automatisch gemaakt naar eigen datetime map in deze map. Merk op dat deze map is niet automatisch een back-naar een willekeurige locatie. U moet het handmatig zo nu en dan te kopiëren.
ADAFRUITPATH: dit is het pad waar Adafruit_Python_DHT is gedownload van Git in begin. Standaard was /home/pi/Adafruit_Python_DHT/Script AdafruitDHT.py dit is belangrijk omdat het wordt gebruikt om lezingen van elke aangesloten sensor.
SQLBACKUPDUMP: Dit is voor het bepalen of en wanneer sql dump is genomen voor back-up.
BackupDumpEnabled: y middelen ingeschakeld, iets anders betekent het is uitgeschakeld.
BackupHour: Elke waarde van 0 tot en met 23. Dump wordt dagelijks gehouden, maar u kunt definiëren op welk tijdstip door de instelling uur
CONNECTIONCHECK: Gebruikt om te definiëren als verbinding controle wekelijks is gedaan (verslagen wekelijks van sensoren gemiddelden, dit is gedaan zodat u kunt er zeker van te zijn dat logger is gebruiksklaar, hoewel de waarschuwingen recent nog niet is verzonden)
ConnectionCheckEnabled: y middelen ingeschakeld, iets anders betekent het is uitgeschakeld.
ConnectionCheckDay: Een waarde van 0-6 die dagen vertegenwoordigt van maandag tot en met zondag. Dag van de week verbinding controle is gestuurd.
ConnectionCheckHour: Elke waarde van 0 tot en met 23. Dit object vertegenwoordigt een uur van de geselecteerde dag wanneer het selectievakje gestuurd is.
Nadat de instellingen zijn ingesteld, druk op Ctrl + x en opslaan wanneer daarom wordt gevraagd met "Y".
Nu testen dat lezingen zijn geschreven naar de database correct In DHT22-TemperatureLogger map, type volgende en druk op enter.
python DHT22logger.py
Als alles gaat zoals gepland, framboos de python-script wordt uitgevoerd, krijgt lezingen van sensor/s en schrijft deze naar de database. Als u eventuele fouten niet kunt zien, alles lijkt te werken. Nu controleren database dat gegevens worden ingevoegd. Ga naar mysql console door typen en druk op invoeren.
mysql -u logger -p -h localhost
En meld u aan met uw wachtwoord. In mysql console type enter volgende en druk op.
Gebruik de temperaturen;
En typ vervolgens (en druk op enter)
Selecteer * uit temperaturedata;
En controleer of lezingen te tabel (referentiebeeld) waren opgeslagen
Als alles lijkt in orde en kunt u de lezingen, afrit mysql door typen en druk op invoeren
sluit af
Merk op dat mailsendlog tabel is leeg op dit punt geen mails van waarschuwing verzenden zijn geweest. Echter, als je slechts een sensor in bijlage hebt, maar in de configs bedrag instelling van de sensor meer dan 1 is, krijgt u e-mail waarin staat dat sensor kon niet worden gelezen. Dit soort waarschuwingen zijn altijd verzenden als ze zich voordoen en niet bent aangemeld.