Atunci cand combini “purtabile” cu IoT, ceva magic se intampla

Posted by

Salutari,

A trecut ceva timp de cand am mai scris ceva, nu?

Astazi vin cu ceva magnific. Si anume, metamorfozarea oricarui vis al unui baietel crescut pe vremea cand dial-up-ul detinea monopol. Si mai exact de atat, controlarea elementelor electro-mecanice prin intermediul unui ceas smart (de cel putin 2x mai fain de cat cel al lui BEN 10).

Iti plasez aici un mic filmulet care sa te tina atent si , sper eu, la fel de fascinat pe cat am fost eu de idee.

Dragut, nu?

Ca sa nu mai pierdem timpul si sa trecem direct la specificatii, ce ai vazut tu acolo este rezultatul combinarii unor sisteme care, integrate, ofera posibilitatea controlarii unui releu de 5v-220v, in atributiile caruia intra inchiderea si deschiderea circuitului unei prize pe care acesta este atasat.

Totul incepe, bineinteles, cu releul despre care scriam. Odata ce, conectat fiind, poate fi controlat aplicand si intrerupand o tensiune de 5 v, ne intrebam cum putem face asta in mod automat. Cum automat incepe sa fie aproape confundat cu independent, este clar ca avem nevoie de un dispozitiv care sa faca asta pentru noi.

Apelam, bineinteles, la vechiul si bunul nostru prieten, cu acel mic creieras al lui, Arduino. Fiind prieteni buni, aproape ca ne intelegem din priviri, iar cu un dialog algoritmial corespunzator, Arduino, cu toata stapanirea de sine isi preia cu tarie cerintele si face posibila aplicarea unui curent de 5v pe unul din porturile lui GPIO atunci cand prin interfata seriala primeste o comanda simpla (On/OFF).

Bun, pana acum prin intermediul unei interfete serial putem aprinde sau stinge lampa conectata in prelungitorul mai sus mentionat.

Provocarea urmatoare consta in celalalt bun prieten, de data asta mai calificat ESP8266. Avem nevoie de ajutorul lui pentru a prelua o cerere transmisa catre webserver-ul pe care acesta il detine si transmiterea cererii catre interfata serial la care este conectat Arduino. Cam asa,

ESP8266 - Arduino, serial
ESP8266 - Arduino, serial

Codul pentru Arduino si codul pentru Webserver-ul de pe ESP8266 sunt atasate in finalul acestui articol.

Pana aici lucrurile au fost intelese. Relativ simple, daca ma intrebi pe mine. Urmeaza cea de-a treia provocare, si anume, transmiterea request-ului web catre ESP8266 de catre minunea recenta a tehnologiei, dispozitivul wearable, Samsung Gear S2.

Cateva scurte informatii despre ceas, mai intai.

E smart. Ruleaza un sistem de operare numit Tizen Os, special conceput pentru weareables, si in mod preponderent integrat pe dispozitivele smart Samsung. (Smart TV, Smart watches, Smart phones, in general, smart chestii)

O aplicatie Tizen pentru astfel de dispozitive poate fi scrisa in C++, folosind Tizen IDE si, spre surprinderea mea, suporta aplicatii scrise in HTML5 + Javascript, urcate pe dispozitiv folosind acelasi IDE.

Asadar, prin puterea exemplului unei aplicatii demo pe care cei de la Tizen au postat-o in documentatia lor, am modificat layout-ul primului ecran astfel incat sa proceseze event-urile de click si sa transmita, folosind XMLRequest, o cerere catre IP-ul, in acest caz hardcodat, al ESP-ului.

Asta este tot. Simplu. Nu chiar cel mai stabil lucru, dar simte-te liber sa imbunatatesti codul si sa ma tii si pe mine la curent cu ce alte idei iti vin.

P.S. Ai mare grija la legatura serial dintre ESP8266 si Arduino, poate fi foarte instabila.

Fisiere:
ESP8266_webserver

Software_serial_arduino

Tizen - Gear S2 - LightControl

Leave a Reply

Your email address will not be published. Required fields are marked *