Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevok: 1 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 31.03.24
Príspevky: 450
Témy: 198
Bydlisko: Poprad-okolie
Príspevok NapísalOffline : 22.03.2020 11:14

Vytvoril som webaplikáciu s multiuser prístupom, ktorá ponúka možnosť vzdialeného monitora až pre 6 teplôt, termostat pre vykurovanie. V podstate sa jedná o centrálny portál pre zber a distribúciu dát. Počet registrovaných používateľov nie je nijako obmedzený. Webové rozhranie je z KLOROFIL šablóny presunuté do Bootstrap Bare šablóny, zmenila sa hashovacia funkcia pre hashovanie hesiel, ktoré sú uložené v databáze na bcrypt. Zlepšil sa výkon webaplikácie aj rozvážnejším nastavením AJAX-u pre autorefresh údajov na stránke každých 15 sekúnd. Používateľské zariadenie - mikrokontróler sa do webového rozhrania autentifikuje pri predávaní dát menom používateľa a jeho tokenom, ktorý mu umožňuje zápis údajov a načítanie stavu z webového rozhrania (ZAP/VYP pre termostat).

Prevádzkovať je možné webaplikáciu aj pre stovky zariadení súčasne. Používateľ pri registrácii do webového portálu uvedie aj hardvér, ktorý chce použiť. Tento hardvér bude odosielať a načítavať dáta z webového rozhrania. Webový portál podporuje otvorený hardvér, ktorý s webom dokáže komunikovať po HTTP, HTTPS protokole.
Vykurovanie cez internet - Multiuser webaplikácia - otvorený hardvér
Podporované sú platformy (jadro Arduino core):
    Arduino + Ethernet Wiznet W5100 - podporuje HTTP protokol
    Arduino + Ethernet Wiznet W5500 - podporuje HTTP protokol
    ESP8266 (NodeMCU, Wemos D1 Mini) - podporuje HTTPS protokol
    ESP32 (DevKit) - podporuje HTTPS protokol
Ako teplotné senzory sú podporované Dallas DS18B20 na jednej OneWire zbernici v celkovom počte 6 kusov. Počet OneWire zberníc je pevne daný, nie je možné priamo používateľom navoliť počet zberníc (jedine manuálnou úpravou zdrojového kódu pre daný mikrokontróler). Každý mikrokontróler využíva jedno relé, prostredníctvom ktorého je možné ovládať výstup - kotol, prípadne solenoid - ventil radiátora. Arduino s Ethernet modulom / shieldom komunikuje s webom po HTTP protokole, ESP8266 využíva HTTPS SHA1 fringerprint certifikátu pre HTTPS spojenie. ESP32 využíva Root CA certifikát danej webovej lokality.
Vykurovanie cez internet - Multiuser webaplikácia - otvorený hardvér
Webaplikácia umožňuje:
    Registráciu a prihlásenie používateľov so zvolením riadiaceho mikrokontroléru
    Každému používateľovi je priradený token (Api kľúč), ktorým mikrokontróler zapisuje a číta z webového portálu
    Prehľad 6 teplôt v reálnom čase (každý používateľ vidí iba svoje dáta)
    Historicky prehľad posledných 1000 nahratých záznamov
    Grafická reprezentácia záznamov za aktuálny deň (od polnoci)
    Automatický režim - Spustenie termostatu s voliteľnou hysterézou 0-5°C s 0.25°C krokom, referenčnou teplotou 5-30°C - plne autonómny - riadi ho sám mikrokontróler pri odovzdaní dát
    Manuálny režim - Spustenie výstupu na neobmedzenú dobu (používateľ upovedomený na webe)
    Výstup je možné využiť pre kontakt na relé kotla, solenoidu radiátora
    Prehľad profilu, nastavenie riadiaceho teplomera pre termostat
    Modifikácia názvov teplomerov/miestností, možnosť zvoliť iný mikrokontróler
    Chat webaplikácia pre komunikáciu medzi celou komunitou v reálnom čase
    Prehľad zdrojových kódov, možnosť stiahnuť knižnice pre prostredie Arduino IDE
Táto funkcionalita je dostupná zdarma. Projekt je možné stiahnuť a používať v súhľade s MIT licenciou. Prevádzkovateľ sa stiahnutím a užívaním projektu zaväzuje k dodržiavaniu licencie. V prípade jej porušenia si uvedomuje právne následne spojené s týmto porušením licencie. Medzi nevýhody tejto free verzie musím spomenúť fakt, že na prenos sa využíva GET metóda predávania dát, limit pre zápis nie je stanovený, teda používateľ môže zapisovať aj niekoľko krát za sekundu.
Vykurovanie cez internet - Multiuser webaplikácia - otvorený hardvér
Dáta každého používateľa sú prepisované po 30 dňoch. HTTPS fingerprint a Root CA certifikát je napevno daný v zdrojových kódoch, ktoré vypíše webserver pre tieto platformy (ESP8266, ESP32). Tieto dáta sú validné pre subdoménu v službe php5.sk. Okrem toho zdrojové kódy obsahujú napevno cestu v rámci subdomény k súboru pre zápis a čítanie dát. Projekt je tak nutné nakopírovať priamo do Root adresára webservera, pričom cesta musí korešpondovať so štruktúrou: host.sk/vykurovanie-online/.
Vykurovanie cez internet - Multiuser webaplikácia - otvorený hardvér
Týmto sa zaručí fungujúca funkcionalita. Nakoľko sa na webserveri vyskytujú platformy, ktoré podporujú HTTP alebo HTTPS spojenie, je nutné mať webové rozhranie s oboma verziami. V mojom prípade s prefixom www je to HTTP verzia a bez www je to HTTPS verzia. S týmto sa počíta i pri výpise zdrojových kódov pre dané platformy. projekt funguje na PHP 5.6 a 7.
Vykurovanie cez internet - Multiuser webaplikácia - otvorený hardvér
Projekt je možné stiahnuť na Github-e a prečítať si inštrukcie o licencii, inštalácii projektu: https://github.com/martinius96/Vykurovanie-Multiuser-Webapp-Arduino-ESP8266-ESP32

Platená verzia projektu ponúka navyše:
    Možnosť modifikovať počet OneWire zberníc, možnosť využitia iných teplotných senzorov (napr. PT100)
    API pre JSON výstup pre mikrokontróler (interakcia do ďalších systémov) - Hassio, Domoticz, IoT..
    Dynamická zmena zdrojových kódov na základe vyklikaných požiadaviek (OneWire zbernice, atď)
    Multijazyková podpora (Slovenčina, Čeština, Angličtina, Nemčina, Ruština)
    Možnosť prezerať všetky namerané dáta
    Dáta od mikrokontrólerov sa predávajú POST metódou
    Možnosť limitovať zápis používateľa, intenzitu zápisov
    Grafická reprezentácia dát za 24 hodín, 7 dní, 30 dní
    Archivovať dáta po neobmedzenú dobu pre každého používateľa
    Admin nástroje pre možnosť zablokovania používateľa, mazanie chatu, pridávanie oznamov na stránku
    Chat pre každú národnosť (jazykovú) zvlášť
    Možnosť nutnosti overiť e-mailom registráciu, v opačnom prípade sa používateľ neprihlási
    Možnosť zmeniť prihlasovacie údaje, token pre zápis a čítanie
    Možnosť termostatu v dňoch, časoch, časové riadenie
    Štatistické nástroje, výpisy, exporty do .xls, .xml, .csv
    E-mailové notifikácie (chyby senzorov, eventy - zapnutie / vypnutie kúrenia, oznamy)
[list]Ovládanie hlasom v slovenčine a ďalších podporovaných jazykoch (cez Webkit v Google Chrome)
Projekt môžete vyskúšať aj ako koncový používateľ na stránke: https://arduino.php5.sk/vykurovanie-online/index.php, táto verzia je aktuálna ako tá na Github-e k 22. Marcu 2020.


Odpovedať na tému [ Príspevok: 1 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. WEB-portál - Vykurovanie cez internet - otvorený hardvér

v Články

0

1818

24.03.2019 18:27

martinius96 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Autonómne vykurovanie cez internet s ESP8266

v Články

0

3352

15.01.2019 18:21

martinius96 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. P: Softvér pre autonómne vykurovanie cez internet s mikrokontrolérom

v Predám

0

802

12.01.2019 1:04

martinius96 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Multiuser support

v Operačné systémy Microsoft

0

529

03.07.2007 22:36

BJ.Armstrong Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Inteligentné vykurovanie

v Mikropočítače

3

589

11.01.2018 21:17

martinius96 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Otvorený telnet

v Operačné systémy Microsoft

4

478

13.02.2012 20:57

luke0144 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. TV cez internet

v Rozširujúce karty

0

827

03.01.2011 16:49

sysel777 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Video cez internet

v Sieťové a internetové programy

7

700

09.06.2007 16:40

DuriSch Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. nakupovanie cez internet

v Notebooky a netbooky

1

958

02.04.2007 20:42

teki Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Internet cez vzduch

v Siete

2

518

04.11.2020 23:42

HabStar Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Internet cez satelit

v Ostatné

7

3085

08.05.2009 18:08

dinoboro Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Internet cez Lan

v Siete

1

514

02.09.2011 13:17

Denco1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Internet cez modem

v Siete

6

516

07.03.2012 22:42

ilbugs Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Internet cez mikrovlnku

v Ostatné

15

3391

07.01.2012 19:23

havo321 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. F1 cez internet

v Šport a pohyb

3

490

18.04.2010 13:13

prandof Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zarabanie cez internet !!!

v Ekonomika, práca, biznis, podnikanie a peniaze

14

2328

27.05.2013 23:13

Trojan4x4 Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra