Commit 3f5e5832 authored by Jordi Masip's avatar Jordi Masip

Revisió

parent c2bbf278
Pipeline #1024 passed with stages
in 14 seconds
......@@ -163,13 +163,13 @@ Tot seguit es plateja quin hauria de ser el funcionament de tot el sistema:
\section{Estudi del mercat}
%Actualment, ja existeixen projectes com aquest, com ara \texttt{beacon}. Beacon \cite{beacon} és un dispositiu de baix consum que difón un senyal a divèrsos nodes i són prou petits per poder-se penjar a una paret o un aparador. S'utilitza una connexió BLE per transmetre missatges o avisos directament a un dispositiu mòbil, el senyal és capturada per aquests dispositius. El dispositiu mòbil consulta més informació a un servidor d'internet. El servidor processa la informació i duu a terme un anàlisi més detallat per guiar els components basats en la localització específica del dispositiu mòbil. Existeixen diversos protocols de beacon, iBeacon, Eddystone, AltBeacon, etc.
Actualment, ja existeixen emissors BLE semblants com aquest, de fet, s'ha definit \emph{beacon} com a un dispositiu de transmissor, que és un dispositiu BLE que difusiona el seu identificador als dispositius BLE que es troben a prop.
Actualment, ja existeixen dispositius BLE que fan d'emisors de contingut, com el que s'ha uilitzat en aquest projecte. S'anomenen \emph{beacon}, i s'utilitzen per fer difusions del seu identificador als dispositius BLE que es troben a prop.
Aquests beacons estan desenvolupats basat en uns protocols que havian definit, com ara, iBeacon, Eddystone, AltBeacon, etc.
Els beacons estan basats en els protocols: iBeacon, Eddystone i AltBeacon, especificats per les empreses Apple, Google i Radius Networks, respectivament.
En el mercat existeixen diversos fabricants que ofereixen \emph{beacons}. Cadascú implementa el dispositiu emisor de les maneres diferentes, tenen diferents aspectes físic però fa la mateixa funció. Hi ha unes poques empreses en comptes de oferir el dispositiu físic, el que ofereixen és el sistema de gestió dels beacons a través d'un panell web i SDK per ajudar a desenvulopar una aplicació pròpia.
En el mercat existeixen diversos fabricants que ofereixen un dispositiu \emph{beacon}. Cadascú implementa el dispositiu de diferents maneres, però fan la mateixa funció. Hi ha unes poques empreses que en comptes de oferir el dispositiu físic, el que ofereixen és el sistema de gestió dels beacons a través d'un panell web i un SDK per ajudar a desenvulopar una aplicació pròpia.
El que diferencia aquest projecte dels altres és un sistema complet i centralitzat. És complet perquè és un sol projecte que ja té tots els elements necessàris, l'emisor, el panell d'administració i l'aplicació mòbil. És centralitzat, perquè només existeix una sola aplicació pels usuaris, d'aquesta manera, els usuaris no calen baixar moltes aplicacions per rebre la informació dels diferents locals i els propietaris dels locals no tindran la feina de desenvolupar una aplicació pròpia.
El que diferencia aquest projecte dels altres és un sistema complet i centralitzat. És complet perquè és un sol projecte que ja té tots els elements necessàris: l'emisor, el panell d'administració i l'aplicació mòbil. És centralitzat perquè només existeix una sola aplicació pels usuaris, d'aquesta manera els usuaris no han de baixar més d'una aplicacion per rebre la informació dels diferents locals i els propietaris dels locals no hauran de desenvolupar la seva pròpia aplicació.
\chapter{Estructura i implementació del sistema}
......@@ -227,17 +227,17 @@ GATT (Generic Attribute Profile), la capa de dades de BLE, és una especificaci
\item [Identificadors] s'assignen a serveis, característiques i descriptors i identificats per UUID. Bluetooth SIG (Bluetooth Special Interest Group) té reservat un rang de UUID per als atributs estàndards, amb format de xxxxxxxx-0000-1000-8000-00805F9B34FB. Per comoditat, aquests identificadors es representen com a valors de 16 bits o 32 bits en lloc dels 128 bits per a un UUID complet.
\end{description}
En aquest projecte només necessitem que l'emissor BLE faci radiodifusions. En una radiodifusió s'envien paquets de difusió (advertising packet). Els paquets són enviats cada cert temps (aquest temps està definit a la interval de difusió). El paquet estàndard de difusió conté una trama de 31 bytes, consisteix en una seqüència de dades, cada dada conté [1 byte de longitud], 1 byte de tipus de dada de difusió (AD Type, Advertising Data Type) i una mida variable de dades \cite{get_started_with_ble}.
En aquest projecte només necessitem que l'emissor BLE faci radiodifusions, és a dir, que es comporti com un beacon. Les radiodifusió envien paquets de difusió (advertising packet). Els paquets són enviats cada un cert temps (interval de difusió). L'estructura d'un paquet estàndard de difusió està format per una trama de 31 bytes. Els paquets contenen estructures de dades de longitud variable. Cada estructura de dades està formada per 1 byte que indica la longitud, 1 byte que indica el tipus de dada de difusió (AD Type, Advertising Data Type) i els bytes restants són les dades \cite{get_started_with_ble}.
S'ha escollit a fer servir Eddystone (basat en especificacions de GATT) \cite{wiki-eddystone}, un perfil de beacon que Google va llençar juny de 2015. Aquest perfil conté uns quants tipus de trama, el que encaixa amb el projecte es diu Eddystone-UID. Les trames de Eddystone-UID fa servir diferents tipus de dada de difusió:
S'ha escollit utilitzar el protocol Eddystone (basat en les especificacions de GATT) \cite{wiki-eddystone}, un perfil de beacon que Google va llençar el juny de 2015. Aquest perfil conté uns quants tipus de trama. La que encaixa amb el projecte es diu \texttt{Eddystone-UID}. Les trames de Eddystone-UID fan servir diferents tipus de dades:
\begin{itemize}
\item \emph{Flags}(\texttt{0x01}) La seva dada indica quin mode de descobriment.
\item \emph{UUID de servei}(\texttt{0x02-0x07}) Dins d'aquest tipus, hi ha diferents subtipus, que indica representació de UUID de servei, per exemple, \texttt{0x02} és més de 16 bits UUID, \texttt{0x03} és llista completa de 16 bit UUID. La seva dada és UUID de servei.
\item \emph{Dades de servei}(\texttt{0x16}) La seva dada consisteix la dada que està associada amb servei UUID. Els primers 2 bytes es defineix 16 bits de servei UUID i la resta és dada de servei addicional.
\item \emph{Flags} indica quin mode de descobriment s'utilitza.
\item \emph{UUID de servei} identificador que informa de quin servei s'està oferint.
\item \emph{Dades de servei} dades addicionals associades al servei.
\end{itemize}
Segons el protocol de eddystone-UID \cite{eddystone_uid}, la trama ha de ser com la taula~\ref{tab:eddystone-uid}, i la taula~\ref{tab:eddystone-uid3} mostra detalladament la tercera trama.
Segons el protocol de eddystone-UID \cite{eddystone_uid}, la trama té el format representat a la taula~\ref{tab:eddystone-uid}.
\begin{table}[H]
\centering
......@@ -252,6 +252,8 @@ Segons el protocol de eddystone-UID \cite{eddystone_uid}, la trama ha de ser com
\label{tab:eddystone-uid}
\end{table}
La següent taula~\ref{tab:eddystone-uid3} mostra detalladament la tercera trama:
\begin{table}[H]
\centering
\begin{tabular}{ | c | c | c | c | c | c | c | c | c | }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment