[ Príspevok: 1 ] 
AutorSpráva
Offline

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

Registrovaný: 17.02.14
Prihlásený: 07.08.22
Príspevky: 441
Témy: 194 | 194
Bydlisko: Poprad-okolie

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.


 [ Príspevok: 1 ] 


Vykurovanie cez internet - Multiuser webaplikácia - otvorený hardvér



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

1478

24.03.2019 18:27

martinius96

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

Autonómne vykurovanie cez internet s ESP8266

v Články

0

3164

15.01.2019 18:21

martinius96

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

691

12.01.2019 1:04

martinius96

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

Multiuser support

v Operačné systémy Microsoft

0

443

03.07.2007 22:36

BJ.Armstrong

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

Inteligentné vykurovanie

v Mikropočítače

3

437

11.01.2018 21:17

martinius96

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

Otvorený telnet

v Operačné systémy Microsoft

4

388

13.02.2012 20:57

luke0144

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

telefonovanie cez internet

v Poskytovatelia internetu

3

658

08.03.2007 21:04

Nash

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

Internet cez bluetooth

v Siete

4

3343

03.12.2008 22:17

kingrider

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

Internet cez Lan

v Siete

1

425

02.09.2011 13:17

Denco1

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

Internet cez modem

v Siete

6

427

07.03.2012 22:42

ilbugs

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

Internet cez mikrovlnku

v Ostatné

15

3041

07.01.2012 19:23

havo321

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

Video cez internet

v Sieťové a internetové programy

7

610

09.06.2007 16:40

DuriSch

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

databáza cez internet

v Sieťové a internetové programy

7

375

05.02.2014 21:37

Kraliček

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

nakupovanie cez internet

v Notebooky a netbooky

1

876

02.04.2007 20:42

teki

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

Localhost cez internet

v Ostatné

8

627

20.10.2009 21:16

rooobertek

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

Zarabanie cez internet !!!

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

14

2208

27.05.2013 23:13

Trojan4x4



© 2005 - 2022 PCforum, edited by JanoF