Měření teploty na RaspberryPi



Podobné dokumenty
Raspberry PI: Obr. 1 Raspberry PI

Měření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce

Building Your Own Real Remote Experiment Controlled by a Mobile or Touch Enabled Device

Obsah. O autorovi 11 Předmluva 13 Zpětná vazba od čtenářů 14 Errata 14

Instalace a konfigurace web serveru. WA1 Martin Klíma

RAMOS. Příkladová studie. Všechna práva vyhrazena, CONTEG 2013

Raspberry Pi v domácí automatizaci

Ethernetový komunikátor ETH-BOX1

CS monitorovací jednotky. Edice: Vytvořil: Luboš Fistr

Inteligentní řízení strojů s portfoliem u-mation Řešení pro automatizaci a digitalizaci Let s connect. Automatizace a digitalizace

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

MĚŘENÍ A REGULACE TEPLOTY V LABORATORNÍ PRAXI

CS monitorovací jednotky. Edice: Vytvořil: Luboš Fistr

Řídicí a monitorovací systém pro akvária. Lukáš Kratina

Raspberry Pi. 23. dubna Uvedené dílo (s výjimkou obrázků) podléhá licenci Creative Commons Uved te autora 3.0 Česko.

Středoškolská technika Meteostanice

Raspberry Pi v domácí automatizaci

Vzdělávací obsah vyučovacího předmětu

SEAHU SH017 (PiToDin) Hardwerový popis

Inteligentní domácnost

CentraLine AX. Václav Matz

1. SYSTÉMOVÉ POŽADAVKY / DOPORUČENÁ KONFIGURACE HW A SW Databázový server Webový server Stanice pro servisní modul...

Komunikace s automaty MICROPEL. správa systému lokální a vzdálený přístup do systému vizualizace, umístění souborů vizualizace

i4wifi a.s. produktové novinky Říjen 2013

Střední odborné učiliště Domažlice, škola Stod, Plzeňská 322, Stod

METEROLOGICKÁ STANICE

Seznámení s Quidy. vstupní a výstupní moduly řízené z PC. 2. srpna 2007 w w w. p a p o u c h. c o m

PMS - Power Monitor System. Rychlá instalace

Prostředky automatického řízení Úloha č.5 Zapojení PLC do hvězdy

Uživatelská příručka

STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE

Napájecí zdroj JSD. Dohledový IP modul. Verze dokumentu: 1.0 Datum vydání: Poslední úprava:

Reprodukce tohoto návodu k obsluze, nebo jeho části, v jakékoli formě bez předchozího písemného svolení společnosti DEGA CZ s.r.o. je zakázána.

Převodník PRE 10/20/30

Deska sběru chyb a událostí

AD4RS. měřící převodník. 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

Maturitní projekt do IVT Pavel Doleček

Profilová část maturitní zkoušky 2013/2014

Uživatelská příručka

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

TIO. výkonový člen systému TQS. 1x přepínací kontakt relé. 1x vstupní kontakt. komunikace RS září 2004 w w w. p a p o u c h.

O varováních. Dell Latitude E4200 Informace o instalaci a funkcích technické údaje. Čelní pohled

Systém monitorování rozvaděčů- RAMOS

JUMO LOGOSCREEN 600. Dotyková budoucnost záznamu: Obrazovkový zapisovač

Systémy pro měření, diagnostiku a testování prototypů II. Odůvodnění vymezení technických podmínek podle 156 odst. 1 písm. c) ZVZ

FVZ K13138-TACR-V004-G-TRIGGER_BOX

CHARAKTERISTIKA VEŘEJNÉ ZAKÁZKY

Demoprojekt Damocles 2404

Elektronická stavebnice: Teploměr s frekvenčním výstupem

PiiGAB 900. Převodník M-Bus na Ethernet. Výrobce: piigab.com. 6. listopadu 2015 w w w. p a p o u c h. c o m

Multifunkční dataloger s displejem EMD-1500

DegaVisio III Návod k obsluze

Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace. Maturitní otázky z předmětu INFORMATIKA A VÝPOČETNÍ TECHNIKA

4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

Obsah ZÁKLADNÍ DESKA. O autorech 11 Úvod 13

Stavba meteo stanice WeatherDuino Pro2

PŘÍSTUP. Docházkový terminál itouch. Produktový list : DT - itouch

DÁLKOVÁ MĚŘENÍ S VYUŽITÍM INTERNETU

CAREL představuje

NB Sweex Internal USB 2.0 Card Reader 16-in-1

NÁVOD K OBSLUZE. Obj. č.: Zkrácený návod k obsluze

Programování a kalibrace 1-Wire UNI senzorů pomocí SW HWg -

Prostředky automatického řízení

4IOT-SEN-01 Sensor pro IoT aplikace Technická dokumentace

Vývojový kit osazený procesorem ARM - Cookie

Zátěžové testy aplikací

Možnosti integrace požárních a bezpečnostních technologií do BMS

Středoškolská technika Chytrý dům

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Olga Rudikova 2. ročník APIN

Návod pro použití snímače tlaku s rozhraním IO-Link

Přídavné karty. Zvuková karta. Síťová karta

METEOVIVA WVS Produktový list Ušetřete náklady na energii prostřednictvím systému pro předpověď a optimalizaci

Změna USB driveru. Návod, jak změnit typ nainstalovaného USB driveru. 21. března 2006 w w w. p a p o u c h. c o m

TECHNICKÁ DOKUMENTACE TOUCHBOX

Zřízení technologického centra ORP Dobruška

DOCHÁZKA. Docházkový dotykový terminál itouch. Hlavní rysy docházkového terminálu itouch:

SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server.

DOCHÁZKA. Docházkový dotykový terminál itouch. Hlavní rysy docházkového terminálu itouch:

Metodika testů pro zařízení LZZ

Profilová část maturitní zkoušky 2017/2018

GPRS-A. Rychlý instalační manuál. Plná verze je dostupná na Firmware verze 1.00 gprs-a_sii_cz 02/18

1 Webový server, instalace PHP a MySQL 13

Měření Záznam Online monitorování Regulace Alarmování

TX20RS. Měření rychlosti a směru větru. Inteligentní anemometr s RS232 a RS prosince 2009 w w w. p a p o u c h. c o m

Informační a komunikační technologie

Modul GPS přijímače ublox LEA6-T


Učební text pro programování PLC S7 314C-2DP

Střední odborná škola a Střední odborné učiliště, Hořovice

Programovatelné převodníky SEL s ethernetovým výstupem a napájením PoE

Automatic Home System

TMU. USB teploměr. teploměr s rozhraním USB. měření teplot od -55 C do +125 C. 26. května 2006 w w w. p a p o u c h. c o m

Kontrolní seznam projektu a systémové požadavky Xesar 3.0

Technické informace pro montáž a provoz

VideoGhost Monitoring obrazovek

Porovnání rychlosti mapového serveru GeoServer při přístupu k různým datovým skladům

LOGO! 8 Nová generace, nové funkce, nové možnosti

pouˇzití USB nebo SPI

Transkript:

Gymnázium, Brno, Vídeňská 47 Předmět: programování Maturitní práce Měření teploty na RaspberryPi Technická specifikace; dokumentace ; jan.horacek@seznam.cz 15. dubna 2015

Obsah 1 Úvod 3 1.1 Zadaní maturitní práce............................. 3 1.2 Řešení...................................... 3 2 Hardware 3 2.1 RaspberryPi................................... 3 2.2 Teplotní senzor DS18B20............................ 3 3 Software 4 3.1 Monitorovací skript............................... 4 3.2 Skript generující webovou stránku....................... 5 4 Zhodnocení, výhody a nevýhody 6 2

1 Úvod 1.1 Zadaní maturitní práce Cílem této maturitní práce je navrhnout řešení inteligentního teplotního senzoru. Tedy takového senzoru, který bude průběžně zaznamenávat teploty a na požádání je zobrazí v přehledném grafu. 1.2 Řešení K řešení problému jsem využil hardware a software postavený na univerzální desce RaspberryPi, a to především díky její malé spotřebě a univerzálnosti. Popis navrhnutého řešení je předmětem této práce a je rozebírán níže. Cílem této práce je detailně informovat o principech tohoto řešení. 2 Hardware Hardwrové řešení využívá dvou klíčových komponent: 1. RaspberryPi B+ první generace a 2. digitální teplotní senzor DS18B20. 2.1 RaspberryPi RaspberryPi je počítač velikosti kreditní karty vybavený procesorem architektury ARM a mnoha běžnými rozhraními (např. USB, ethernet), na kterém lze spustit plnohodnotný operační systém. Pro své řešení jsem zvolil pokročilejší model B+. Klíčovými výhodami RaspberryPi pro tento projekt jsou: nízká spotřeba elektrické energie: 1 2 W a rozhraní GPIO. RaspberryPi je napájeno přes micro usb, kterému je v našem případě předřazen běžný sít ový napájecí adaptér. RaspberryPi je dále připojeno do sběrnice ethernet a konečně je k němu připojen teplotní senzor. 2.2 Teplotní senzor DS18B20 Teplotní senzor DS18B20 nabízí přesné měření teploty (řádově 2 platná místa C) a digitální rozhraní k datům reprezentujícím aktuální teplotu. Nejedná se tak o pouhý termistor, který je nutné připojit k AD převodníku a složitě vyhodnocovat teplotu na základě vstupního napětí. Tyto operace řeší už samotné teplotní čidlo, ve kterém je vestavěná mimo zmiňovaného termistoru i obslužná elektronika. Tato elektronika poskytuje informace pomocí sériové sběrnice podobné RS232-TTL. Tato sběrnice je detailně popsána datasheetem teplotního senzoru, viz [Max08]. Výstupem teplotního senzoru jsou tedy digitální data, která čteme RasberryPi skrze GPIO porty. Propojení obou zařízení přehledně zobrazuje obrázek 1. 3

3 Software Obrázek 1: Propojení RaspberryPi a senzoru DS18B20 [Pri] Toto řešení využívá operační systém Raspbian, který je načítán z 16 GB vysokorychlostní pamět ové karty. Základními softwarovými stavebními elementy pak jsou: 1. webový server Apache, 2. automatický spouštěč procesů Cron, 3. databáze SQLite, 4. skript pro monitoring teploty a 5. skript generující webové rozhraní. Základní princip celé plejády softwaru lez shrnout do dvou bodů: Každých 5 minut zapíšeme do databáze SQLite aktuální teplotu a aktuální čas. Na základě požadavku od klienta vygenerujeme webovou stránku s grafem, který zobrazuje závislost teploty na čase. Nyní podrobně popíši zajímavé části softwaru. 3.1 Monitorovací skript Monitorovací skript je spouštěn každých 5 minut cronem a zapisuje aktuální teplotu do databáze. Po aktivací modulů w1-gpio a w1-therm je k dispozici soubor w1 slave v adresáři /sys/bus/w1/devices/id/, kde ID je unikátní ID teplotního senzoru, v konkrétním případě /sys/bus/w1/devices/28-0000065d0146/. Tento soubor je klíčový pro získávání dat z teplotního senzoru. Data se získávají velmi jednoduše: 4

1 user@dev :/ sys / bus / w1/ devices /28-0000065 d0146 cat w1_slave 2 54 01 4 b 46 7 f ff 0 c 10 fd : crc = fd YES 3 54 01 4 b 46 7 f ff 0 c 10 fd t =21250 Aktuální teplota je číslo 21250 vydělené konstantou 1000, tedy t = 21.250 C. Na tomto jednoduchém principu staví monitorovací skript, který jednoduše provede parsing teploty a výslednou hodnotu uloží do databáze. Monitorovací skript monitor.py psaný v Pythonu přikládám. Tento skript je založen na projektu [Ras]. 3.2 Skript generující webovou stránku Webové rozhraní tohoto řešení přehledně zobrazuje obrázek 2. Obrázek 2: Webové rozhraní Webová stránka je opět generována skriptem v Pythonu, který přikládám v souboru index.py. Tento skript je založen na projektu [Ras]. Program je jednoduše volán Apachem jako cgi skript, na standardní výstup tedy vytiskne http hlavičku a html reprezentující webovou stránku. K této webové stránce je připojen css soubor style.css, který také přikládám. Samotný skript obsahuje mnoho neatraktivních dotazů do databáze, vypisování html elementů a parsing dat z formuláře. Přesto bych se rád zastavil u jednoho zajímavého elementu: u grafu. Pro vykreslování grafu jsem použil poměrně zajímavý nástroj od Google, konkrétně Google Charts, založený na Javascriptu. Celé vykreslování grafu tedy funguje velmi jednoduše: 1. Definujeme data v grafu, typ grafu, název grafu. 2. Zavoláme funkci Google Charts pro vykreslení grafu. 5

Do příslušného elementu <div>, který specifikujeme, se graf následně vykreslí (samozřejmě vektorově a interkativně). 4 Zhodnocení, výhody a nevýhody Svou maturitní práci považuji za úspěšnou, projekt je plně funkční. Závěrem bych rád diskutoval některé parametry navrhnutého řešení. 1. Spotřeba elektrické energie Celý projekt byl navrhován s tím, že bude neustále v provozu a tudíž byl a je požadavek na nízkou spotřebu navrhnutého zařízení více než klíčový. Při navrhování řešení jsem zvažoval měřit teplotu na desce typu Arduino, či na vlastní navrhnuté DPS s jednoduchým mikrokontrolérem (např. ATmega8a). Výhodou takového řešení by byla o několik řádů nižší spotřeba energie (řádově mw ), zařízení by bylo možné napájet např. solárním článkem (v případě umístění venku) a bylo by tak energeticky soběstačné. I přes energetické výhody jsem se rozhodl pro RaspberryPi a to především pro to, že 2 W jsou pro mě dostatečně malá spotřeba a protože RaspberryPi je jednoduše konfigurovatelné a univerzální. 2. Snadná opakovatelnost Za velkou přednost svého projektu považuji to, že jsem schopen vytvořit další inteligentní teplotní senzory bez nároku na složitou výrobu vlastního HW, čí velké úpravě SW. Projekt lze jednoduše zopakovat na jakémkoliv RaspberryPi. 3. Snadná konfigurovatelnost, dynamičnost Za další přednost svého řešení považuji to, že jsem použil plnohodnotný počítač a tudíž jsou pro mě změny SW víceméně otázkou několika kliknutí a především snadného debugování (porovnáme-li např. s použitím mikrokontroléru a vlastního FW). Reference [Max08] MaximIntegrated: DS18B20 Programmable Resolution 1-Wire Digital Thermometer Datasheet. http://datasheets.maximintegrated.com/en/ds/ DS18B20.pdf. Version: 2008 [Pri] PrivateEyePi: Monitor your home temperature using your Raspberry Pi. http://www.projects.privateeyepi.com/home/temperature-gauge [Ras] RaspberryWebServer: Building an SQLite temperature logger. http:// raspberrywebserver.com/cgiscripting/rpi-temperature-logger/ 6