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 : 23.02.2019 0:24

Dnes v krátosti predstavím notifikátor udalostí, ktorý bol pôvodne navrhnutý už k existujúcim projektom. Jeho hlavnou úlohou bolo upozornenie na stavy a krízové situácie, ktoré počas behu systému nastali a vyžadujú pozornosť, alebo vyriešenie. Upozornenia boli riešené odosielaním e-mailov s časovým obmedzením navoleným používateľom.
Notifikátor udalostí cez mikrokontróler
To vo výsledku znamená, že ak dôjde ku krízovej situácii, aby systém s každým pripojením mikrokontroléra neodosielal email cez .php stránku, je to ohraničené časovým intervalom - medzerou. V intervaloch (napr. každých 5 min, alebo iný navolený interval) je používateľ informovaný e-mailom na krízovú situáciu. Po prihlásení používateľa do systému sa už e-mailové notifikácie ďalej k tomu konkrétnemu problému neposielajú. V prípade, že je používateľ v systéme a nastane krízová situácia, e-mail sa odošle minimálne 1 krát pre prípad, ak by to prehliadol a pod.
Využitie je plánované hlavne pre tieto účely:
    Pohyb v noci okolo PIR senzora - vhodné pre areály, haly
    Senzor vytopenia - vhodné pre práčovne, byty
    Teplotné senzory - oznam pri mínusovej teplote - vhodné pre sady, kotolne
    Prekročenie vlhkosti, tlaku vzduchu - vhodné pre meteostanice
    Prekročenie otáčok motora - hall snímač s magnetom
    Prekročenie napätia/prúdu
    a ďalšie veličiny, ktoré je možné merať
Každý e-mail je možné odoslať s rôznymi informáciami. Napríklad stav batérie, opis problému, posledné hodnoty, aké riešenie sa vyžaduje a pod.
Notifikátor udalostí cez mikrokontróler
Systém je teda vhodný aj pre laikov a dokáže zabrániť väčšej katastrofe, napríklad pri vytopení v noci, mimo domu, pomôže s rýchlejšou reakciou na problém s možnosťou okamžitého vyriešenia - napríklad uzavretím solenoid ventilu pre vodu automaticky, nevyžaduje sa akcia od používateľa. O uzavretí môže byť používateľ taktiež notifikovaný. Súčasťou je aj webaplikácia, kde môže používateľ vidieť aj aktuálne hodnoty a po oprave problému vytopenia môže jedným klikom opäť dovoliť systému elektromagnetický ventil - solenoid otvoriť prostredníctvom relé.
Notifikátor udalostí cez mikrokontróler
Čo sa týka dátovej náročnosti, .php súbor, na ktorý sa mikrokontróler pripojí má do 1kB, podľa rozsiahlosti kódu. Je teda vhodný aj 3G router s dátovým balíkom nižších tried s použitím napríklad pre sady a iné exteriérové miesta, kde nie je wifi, či Ethernet. Mikrokontróler môže aj spať a v prípade nehodovej udalosti ho akcia na pine (napríklad pri vytopení dôjde k spojeniu kontaktov pre záznam) zobudí a mikrokontróler môže informovať o udalostiach. V spánku je možné pri mikrokontroléroch dostať odber rádovo v jednotkách µA, teda je systém možné prevádzkovať aj na batérie.

Arduino s Ethernet shieldom, respektíve modulom vie komunikovať po HTTP protokole. V prípade ESP8266 a ESP32 môžeme komunikovať aj po HTTPS protokole. ESP32 vyžaduje špecifickú konfiguráciu HTTPS spojenia na webserver, nakoľko sa vyžaduje Root CA certifikát daného webu v .pem formáte. GET, alebo POST parametrami je možné do .php súboru, ktorý odosiela mail vložiť aj hodnoty, ktoré budú súčasťou problému pre lepšiu identifikáciu problému.
Notifikátor udalostí cez mikrokontróler
Web časť projektu je univerzálna a vie sa na ňu napojiť akýkoľvek mikrokontróler či už po HTTP alebo HTTPS protokole. Pripojenie na webserver a na súbor, ktorý odošle e-mail môže vyzerať následovne (Arduino + Wiznet W5100 po HTTP):
Kód:
#include <SPI.h>
#include <Ethernet.h>
#define Hostname "Arduino"   
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};   
char server[] = "www.mywebsite.com";     
IPAddress ip(192, 168, 1, 254); //IP adresa zo subnet rozsahu
EthernetClient client;   
void setup() {
 Serial.begin(9600);
}
 
void loop() {
   if (Ethernet.begin(mac) == 0) {   
    Serial.println("Chyba konfiguracie DHCP, nastavim manualnu IPv4");
    Ethernet.begin(mac, ip);                       
  } 


if (client.connect(server, 80)) {
    Serial.println("Pripojenie na webserver prebehlo uspesne..");
    client.print("GET /email.php");   //umiestnenie php scriptu na webserveri 
    client.println(" HTTP/1.1");             
    client.println("Host: www.mywebsite.com");
    client.println("Connection: close");   
    client.println();                       
 client.stop();   
 Serial.println("E-mail uspesne odoslany!");
  } else {                                         
    Serial.println("Pripojenie neuspesne");
  } 
delay(10000);
}

E-mail je možné odoslať prostredníctvom .php stránky cez SMTP server cez mail(); funkciu. V prípade, že neuvedieme odosielaciu e-mailovú adresu, e-mail sa odošle prostredníctvom sendmail_from parametra z nastavenia webservera (Apache / Nginx). Implementácia teda nie je zložitá.
Príklad:
Kód:
<?php
$sprava= "Ahoj svet!";
$sprava= wordwrap($msg,70);
mail("adresaprijimatela@jehomail.com","Predmet spravy",$sprava);
?>

V prípade korektnosti nastavenia SMTP servera na vašich .php stránkach po spustení tohto e-mailu dostanete e-mail s textom Ahoj Svet! a zvoleným predmetom.
Vo frameworkových systémoch (Laravel, Symphony) sa stretneme skôr s použitím PHPMailer knižnice. E-mail je možné doplniť aj o obrázky, doplnkové info s detailným opisom problému. Cieľovú e-mailovú adresu treba na prichádzajúce e-maily s rovnakou správou od rovnakého odosiellateľa pripraviť, aby to nevyhodnocoval ako spam a tým pádom nenotifikoval používateľa. Špeciálne to platí pre G-mail a podobné služby s dobrou SPAM filtráciou.
O projekte je niečo spísané aj na mojom webe, ktorý môžete taktiež navštíviť, nájdete tam aj rôzne ďalšie realizované projekty cez Arduino, ESP dosky, devkity s použitím webových riešení: https://arduino.php5.sk/mailer.php


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. Emailový notifikátor

v Sieťové a internetové programy

16

2807

01.03.2008 18:50

Mandy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Gmail - Mail notifikátor

v Služby a webstránky

5

605

26.07.2013 13:03

Daron Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ja vytvorím inteligentný dom podľa vašich požiadaviek - mikrokontróler + web

v Dopyt práce

0

596

26.11.2017 13:01

martinius96 Zobrazenie posledných príspevkov

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

v Delphi, Visual Basic

3

685

24.05.2011 8:36

Fico Zobrazenie posledných príspevkov

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

v JavaScript, VBScript, Ajax

3

635

30.06.2011 10:47

Well Zobrazenie posledných príspevkov

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

v JavaScript, VBScript, Ajax

5

882

13.06.2008 22:47

emer Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Webdesign - trendy, udalosti, články, užitočné odkazy

v Webdesign

9

7195

24.03.2021 17:19

kirik Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Starsie FB udalosti v google kalendari

v Sociálne siete

0

415

16.01.2016 16:12

dabal2 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. drag and drop a zachytavanie udalosti

v JavaScript, VBScript, Ajax

6

947

11.06.2008 13:28

juho Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Návody, trendy, udalosti, články, užitočné odkazy

v Grafické programy

0

755

18.06.2010 16:48

camo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako zmazat/upravit log udalosti na PC

v Operačné systémy Microsoft

1

843

08.02.2006 15:15

Carlos Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. viac udalostí window.onload v jednom dokumente

v JavaScript, VBScript, Ajax

8

435

30.12.2012 11:16

1daemon1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Strašne pomalé pripojenie cez kábel, ale cez WIFI normálne

v Siete

4

1117

21.09.2011 18:49

scentrala Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. pomoc session nefunguje cez cookies(cez url ide)

v PHP, ASP

3

700

10.11.2009 19:03

Wicky Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Rychlost prenosu dat cez BLUETOOTH adapt.(cez USB) ES-38

v Ostatné

10

1295

30.08.2007 13:42

Shark NX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Cez wifi nejde prihlasenie na facebook , azet, ftp cez TC

v Siete

2

2563

16.11.2009 10:04

uniqat 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