Home
Instituto Politécnico de V iseu - Repositório Científico do Instituto
Contents
1. ndice de tabelas Tabela 1 Compara o entre sistemas de localiza o em redes Wi Fi 23 Tabela 2 Compara o entre t cnicas de localiza o 22 eee 30 Tabela 3 Fun o das classes server side c cccccccccccssssscccececeesesseaecececeseeseasaeceescessesnnteaeeeeseesees 57 Tabela 4 Fun es das classes do Content e Connection Managers scsssccccecesssssstsceeeeesesees 58 Tabela 5 Fun es das classes do Content PIQYVCSS cccccccccccccsscssssecececsesssenssaeceeecessessnteseeeesensees 61 Tabela 6 Fun es das classes do GUI ccccscccccecsssessnsececeescessesseaeseeecsssesesaeaeeeeseesseeaaeaeeeeseesees 62 Tabela 7 Fun es das classes da Realidade Aumentada e Core Location eee 63 xi xii ndice de figuras Figura 1 Prot tipos desenvolvidos pelo Xerox PARC 4 ccccccessscceceesseceesesececessseeeeseaeeeeeenas 9 Figura 2 Espa o de testes do Easyliving 3 cccssssscccececessesseaeeeeeceseeseseaeeeeeesssessaeaeeeeeeesees 11 Figura 3 Arquitetura do Aura 44 cccccssscccccecessessssececececesseseeaeeeeeeesessesaeaeeeeseessesaaeaeeeeseesees 12 Figura 4 Espa o ativo de testes do Gaia 6 eee i e a a ii 12 Figura 5 Vista da Sala Interativa IROOM 7 cccscccccsssscccsessecececssecececsseceseeseeeceesaeseeeesseeeeees 13 Figura 6 Arquitetura de comunica o do Doodle Space 10 ce e rerereem 15 Figura 7
2. 10 Zhong Y Li X Fan M Shi Y Doodle space painting on a public display by cam phone Beijing China ACM 11 Jos R Introdu o Computa o Ubiqua Univ Minho 2011 12 Bahl P Padmanabhan V N RADAR An in building RF based user location and tracking system In Proceedings of IEEE INFOCOM volume 2 pages 775 784 March 2000 13 Bahl P Padmanabhan V N Enhancements to the RADAR user location and tracking system San Diego Microsoft Research 2000 Technical Report MSR TR 2000 14 Carvalho J Localiza o de Dispositivos M veis em Redes Wi Fi UTAD 2007 15 Br s L P M Desenvolvimento de sistema de localiza o indoor de baixo consumo UNIV AVEIRO 2009 19 5 Refer ncias Bibliogr ficas 16 Ekahau Inc Ekahau Positioning Engine 4 1 2007 17 Youssef M Agrawala A The Horus WLAN Location Determination System April 1999 18 Moura A I WBLS um sistema de localiza o de dispositivos m veis em redes Wi Fi S o Paulo 2007 19 Nunes B A A Um sistema de localiza o para redes Wi Fi baseado em n veis de sinal e modelo referenciado de propaga o 20 Guedes E Estudo de t cnica h brida de localiza o de esta es m veis baseada em TDoA e AOA Rio de Janeiro 2003 21 R Want A Hopper V Falcao and J Gibbons The Active Badge Location System Cambridge England 1992 22 Cisco
3. novo mundo futuro que este aponta dizendo que n o necess ria nenhuma revolu o na intelig ncia artificial mas apenas incorporar a computa o no quotidiano 1 15 2 Estado da Arte 2 2 Sistemas de localiza o em redes sem fios Com os consequentes avan os e desafios da Computa o Ubiqua o c lculo autom tico da localiza o de um determinado dispositivo m vel numa rede sem fios torna se cada vez mais necess rio A localiza o de um dispositivo m vel um par metro cr tico nas aplica es baseadas no contexto devido necessidade de precis o na estimativa de localiza o A explora o dos sinais em redes Wi Fi tem sido a alternativa mais utilizada para resolver problemas de localiza o em ambientes fechados como pr dios escrit rios centros comerciais casas etc Estes ambientes t m como caracter stica o fato de serem menos fi veis do que as redes de cabos originando assim taxas de erro superiores Este tipo de redes normalmente s o constru das para cobrir apenas uma zona em particular como por exemplo um escrit rio ou uma escola por isso normal haver algumas quebras quando o utilizador se move para uma determinada zona onde h pouca cobertura de sinal Por isso as aplica es m veis t m que estar preparadas para acompanhar a disponibilidade dos servi os de rede e de reagir de forma adequada 11 Neste subcap tulo apenas iremos abordar alguns sistemas de localiza o e
4. Na Figura 19 podemos que o utilizador recebe um notifica o de um evento podendo entrar na aplica o associada notifica o para ver o detalhe do mesmo Podem tamb m os utilizadores ignorar a notifica o n o ativando desta forma a aplica o O iOS SDK composto por diversos programas e bibliotecas de c digo para o desenvolvimento sendo eles e Xcode e Interface Builder e Instruments e iOS Simulator 3 1 2 Objective C Objective C uma linguagem orientada a objetos que basicamente uma mistura de duas linguagens C e SmallTalk definido como um conjunto pequeno mas poderoso de extens es para a linguagem padr o ANSI C fornecendo sintaxe para a defini o de classes e m todos assim como outros tipos de estruturas que promovem a extens o din mica de classes Foi desenhado para fornecer capacidades de programa o orientada a objetos de C fazendo o de uma forma simples e direta 33 Qualquer programa desenvolvido em C pode ser compilado com um compilador de Objetive C pois esta uma camada que assenta sobre a linguagem C Classes em Objective C tamb m podem incluir c digo C 34 Como acontece na linguagem C em Objective C s o definidos ficheiros de cabe alho headers e ficheiros de c digo fonte source code que separam as declara es da implementa o do c digo Os ficheiros h considerados os ficheiros de cabe alho cont m classes tipos fun es e declara es de constante
5. 6 3 PDF Reader Este player foi desenvolvido tendo como base uma vers o open source de autoria de Julius Oklamcak Vers o vfr dispon vel em https github com vfr Reader ou em http www vfr or 6 3 1 Reader View Controller Esta fun o a respons vel pela gest o das paginas do pdf reader Independente do n mero de p ginas de um pdf o sistema tem apenas preparadas 3 p ginas de cada vez por quest es de performance e gest o de mem ria Assim o que esta fun o faz perceber mediante a p gina onde o utilizador se encontra qual a p gina anterior e qual a p gina seguinte Apenas a pagina atual a 88 6 Anexo anterior e a seguinte s o importantes para que ao mudar de pagina sejam vis veis as paginas vizinhas e dar o efeito de continuidade A t tulo de exemplo quando o utilizador se encontra na p gina 5 as p ginas carregadas s o as paginas 4 5 e 6 Ao mudar de pagina para a pagina 6 o sistema liberta memoria da pagina 4 e carrega a pagina 7 ficando a pagina 6 a partir desse momento como pivot pagina central e vis vel Esta fun o faz outras tarefas como fazer o registo das p ginas navegadas para criar uma hist rico de navega o que pode ser refeito posteriormente prepara tamb m os thumbnails mediante a p gina atual e atualiza o n mero de p gina 89 6 Anexo void showDocumentPage NSInteger page ifdef DEBUGX IRA ff 90 NSLog s
6. FUNCTION endif isRotating YES NSLog d d page currentPage if page currentPage Only if different add current page to navigation history so that user can go back in pages if send pagenumber to navigation history document addPageToNavigationHistory MAX 1 currentPage send pagenumber to navigation history YES NSInteger minValue NSInteger maxValue NSInteger maxPage document pageCount integerValue NSInteger maxPage self document pagecount NSInteger maxPage document get page count NSInteger minPage 1 if page lt minPage page gt maxPage return if maxPage lt PAGING VIEWS Few pages minValue minPage maxValue maxPage else Handle more pages minValue page 1 maxValue page 1 if minValue lt minPage minValue maxVa lue else if maxValue gt maxPage minValue maxValue NSMutableIndexSet newPageSet NSMutableIndexSet new NSMutableDictionary unusedViews contentViews mutableCopy CGRect viewRect CGRectZero viewRect size theScrollView bounds size NSLog NEW SETUP for NSInteger number minValue number lt maxValue number NSNumber key NSNumber numberWithInteger number key ReaderContentView contentView contentViews objectForKey key 6 Anexo if contentView nil Create a brand new document content view NSURL fileURL document fileURL NSStrin
7. O WBLS desenvolvido na Universidade de S o Paulo uma varia o do sistema b sico de localiza o onde a novidade reside na forma de c lculo das probabilidades de observa o A sua inten o a de reduzir atrav s da elimina o de uma certa quantidade de informa o uma fonte de ru do nessa mesma informa o que fornecida ao sistema de localiza o com o objetivo de se obter estimativas de localiza o de melhor qualidade O sistema procura lidar com o fato de que a informa o obtida nas medi es realizadas para a constru o do mapa de RSSI sobre as frequ ncias de presen a dos sinais pode n o ser confi vel O WBLS considerado pelo autor como simples pois no c lculo das probabilidades da observa o para cada um dos estados em vez de se realizar um produto das probabilidades relativas a cada um dos AP do ambiente passam a ser consideradas apenas as probabilidades relativas aos sinais presentes fazendo com que para cada AP seja calculada uma probabilidade tendo a presen a do sinal como condicionante o que implica uma altera o na forma do c lculo Este sistema tem tamb m capacidade de lidar com o problema de emiss o de sensores pois este somente considera os sinais presentes nas observa es fazendo assim que n o sofra muitas penaliza es quando um dos emissores desligado 22 2 Estado da Arte 2 2 5 Compara o entre sistemas de localiza o em redes sem fios
8. rightAzimuth coordinate azimuth gt leftAzimuth double centerInclination self centerCoordinate inclination double bottomInclination centerInclination VIEWPORT_HEIGHT_RADIANS 2 0 double topInclination centerInclination VIEWPORT_HEIGHT_RADIANS 2 0 check the height result result amp amp coordinate inclination gt bottomInclination amp amp coordinate inclination lt topInclination NSLog coordinate result coordinate result 7 YES NO return result Figura 57 Realidade Aumentada viewportContainsCoordinate
9. ser captado pela antena do aparelho recetor Al m disso a implementa o de um sistema que utiliza AoA necessita de antenas direcionais nos recetores o que n o vi vel para localiza o Wi Fi 18 2 3 3 TOA ToA Time of Arrival uma t cnica que mede o tempo de chegada de um determinado sinal entre o emissor e o recetor Com base na cronometragem do tempo de percurso entre o emissor do sinal e a sua rece o no dispositivo recetor poss vel calcular a dist ncia entre os dois dispositivos 15 Ao contr rio da AoA as t cnicas baseados no tempo n o se degradam com o aumento da dist ncia entre o dispositivo e as esta es base BS sendo mais f cil obter melhor precis o utilizando estas medidas em vez das de ngulo apesar de ser necess ria uma linha direta vis vel entre a fonte e as BSs para que isso seja poss vel 20 26 2 Estado da Arte ri d1 Fog a A x yn d3 A i 4 BS1 E 3 CL BS ya 4 KN ty 7 n ons P z r a ar O an oo d BS2 i e Figura 14 Localiza o baseada em ToA Na Figura 14 a interse o entre as 3 circunfer ncias x a localiza o do dispositivo Ou seja este m todo implica que existam pelo menos 3 esta es base BS para se poder saber a posi o exata do dispositivo que se quer localizar Conforme foi mencionado em cima esta t cnica precisa de saber exatamente o tempo que o sinal radio emitido e r
10. tamb m denominada de Ubicomp surge atrav s do cientista Mark Weiser e da sua equipa Xerox PARC na d cada de 90 abordaremos alguns prot tipos desenvolvidos devido necessidade de integra o da computa o com o mundo espa o f sico ex paredes m veis carros x caras de caf canetas etc Este refere se ao termo Computa o Ub qua como um contexto onde a presen a computacional num objeto totalmente transparente para quem o usa e em alguns dos cen rios totalmente invis vel dando a escrita como sendo a primeira tecnologia que se tornou ub qua em pa ses industrializados dizendo que as tecnologias que s o mais profundas s o aquelas que desaparecem 1 No in cio da rela o entre computadores e humanos muitas pessoas partilhavam um nico computador para fazer uso dos seus servi os ent o a ideia de que cada utilizador pode ter o seu pr prio computador alterou significativamente a forma como as pessoas usavam os sistemas computacionais Na ltima d cada esta ideia foi se transformando para a rela o de muitos para um onde cada utilizador tem muitos computadores ou pelo menos dispositivos com capacidade de processamento Por m a Computa o Ubiqua remete nos para alguns problemas para al m da rela o qualitativa entre computador e utilizador sendo a privacidade e a seguran a exemplo disso 1 A Computa o Ub qua afeta o nosso dia a dia apesar de muitos n o se darem conta disso Hoje t
11. 4 Publico CIOU stars ss te a Ra SS E AS RA SD 34 2 5 5 Private ClOUd sa sicusrt deca tnetenletiiy a a a a a La bE orais aaa ea 35 2 5 6 Providers Fornecedores cccsscccecsssseceessscececssssececssssececseseececsessececsssaeesessaaess 35 32 DESENVOIVIMENTO s aiit araid a tently ten tia aaa Glass a a ara ieee 37 3 1 Ferramentas tecnologias e metodologias USACAS ccsccccccecessesssseseeeeecessessneeeeeeeeesees 37 3 1 1 FOS SDK E E do Cab VR O ana cidaetancavdasaneedlavolcaotasnacgluvtessaudeseoatecknets 37 3 1 2 Objective E mater dra de A al a a ae pa bathe aretha anh aes 41 3 1 3 belo o RAPPRRN RED AD ADE UR RPPN PENSE NENE DE EU TI PERDER NRO REP Gina DR SRD EN 42 3 1 4 Instruments 532 Fis ees arte el hee le eRe tasas dis ahaa na Duane sala eee anda 43 3 1 5 JOS Simulator uses ses pra tinto acre GAm ae Sato a doida aid pia Seu Cida Ceara us 44 3 1 6 Interface Bilder neinni en aiaeei Ga ABR do esto das ano Aba an og Senado 45 3 1 7 Model View Controller 0 eccccescsessseceeseeceecceeeseeeeaeeeeaaeceeaaeseeeesaaeeeeaaeeeeaaeseeneees 46 3 1 8 PHP rcceo ua a a e T PR DD RR RA 48 3 1 9 NetBeans IDE PHP reaa RAA AEEA EA OAA AI REE ala creed aaa A 48 BIO AME AEA EEEE A EE E na ca ban 49 3 1 11 Finger Swipe Movimento de arrastaMent0o cccccccsssscecsssececsesaeeecseaeeeeseaes 50 3 1 12 Realidade Aumentada errar ceeracarea near aaeraarean s 51 3 1 13 Core LoGation ui mares colo
12. M ltiplos participantes desenhando atrav s do Doodle Space 10 15 Figura 8 A for a do sinal em tr s esta es 12 cccccccccscsssesssseceseeessesesseceeeeeeessessneaeeeeseesees 18 Figura 9 Arquitetura do Ekahau 16 cccccccccccssssssssececcescsssesssaeeeeecssesseaeaeeeesessenseaeaeeeeeeesees 19 Figura 10 Interface Web do Ekahau Positioning Engine 16 eee erre 20 Figura 11 Componentes do Sistema Horus 17 cc cccccccecessessssececeeecessecnseeeeeseessesseaeeeeseeses 21 Figura 12 Localiza o baseada em Cell ID 22 ccccccccccscessessnneceeeeeseesesneseceeeeesseseeaeeeesenses 25 Figura 13 Localiza o baseada em AOA ieeecccccccsecssssecesececesescuaaeeececssesnaaeeeeecessessasaeeeeseeseesnaaeas 26 Figura 14 Localiza o baseada em TOA ccccccccccsssessssececececessesneaeeeseesseeseceaeeeeeeeseessaeaeeeeseesees 27 Figura 15 Localiza o baseada em TDOA ie reeerrerereree era neaearerereenananeararereana 28 Figura 16 Cloud Computing os v rios tipos baseados na capacidade e no acesso 33 Figura 17 Camadas do SO iOS 28 cccssssccccecessesscnececececesseseeaececeesscesesaeaeeeeseeseeseaaeaeeeeseesees 38 Figura 18 Cocoa e CA como sendo as duas camadas do iOS 31 ii 40 Figura 19 Sistema de notifica es iOS 35 e erre rereerereerenenenerrarereana 40 Figura 20 Janela de um
13. Suit Number 7 Started 8 22 15 23 56 Upbme jurs Number of Tags of 10000 Activity Count Location Update Events 15 15 ELP 0 UDP 0 TCP Locations 12337 Filterad Locabons a Maintenanca Calls 4 O0T201 4 EMP Courkers Started On Start Reset Reset activky counters Actions Log File Licenses e ekahau Figura 10 Interface Web do Ekahau Positioning Engine 16 O Ekahau dos poucos a ser atualmente comercializado tendo alcan ado bons resultados em ambientes hospitalares na localiza o de stocks e na ind stria autom vel 14 2 2 3 Horus O Horus desenvolvido na Universidade de Maryland em 2004 visa satisfazer dois objetivos o da alta precis o e o de baixos requisitos computacionais implementada no contexto de redes sem fio 802 11 onde permite a localiza o de um grande n mero de dispositivos m veis 17 A alta precis o a que consegue chegar deve se em grande parte identifica o que o Horus faz s diferentes causas da varia o dos sinais Wi Fi e como ele as consegue resolver 14 O sistema utiliza a intensidade do sinal observado pelas frames transmitidas atrav s de pontos de acesso AP permitindo a localiza o do utilizador Como um sistema instalado no dispositivo do cliente e n o no servidor abrange uma maior n mero de clientes apesar de se tornar menos c modo para o utilizador 20 2 Estado da Arte A partir do Horus podem ser implementadas algumas aplica es tais como entr
14. Systems Inc Wi Fi Location Based Services 4 1 Design Guide May 2008 23 Yamasaki R Ogino A Tamaki T Uta T Matsuzawa N Kato T TDOA location system for IEEE 802 11b WLAN Japan 2005 24 Song L Kotz D Jain R He X Evaluating location predictors with extensive Wi Fi mobility data 2004 25 Hazas M Scott J Krumm J Location Aware Computing Comes of Age 2004 26 http www youtube com watch v 04 CcNLd2iE 27 Software Engineering Institute Basic About Cloud Computing Carnegie Mellon University 2010 28 Apple Inc iOS Tecnhnology Overview http developer apple com library ios Documentation Miscellaneous Conceptual iP honeOSTechOverview iPhoneOSTechOverview pdf 29 Jopia R Desenvolvimento de aplicativos para dispositivos movies S o Paulo 2010 30 Nunes D C Arquitectura de Aplica es para Projecto de Engenharia em Plataformas Moveis FEUP 2010 31 Brannan J A iPhone SDK Programming A Beginner s Guide McGraw Hill 32 Apple Inc Programming with Objective C http developer apple com library ios documentation Cocoa Conceptual Programmi ngWithObjectiveC ProgrammingWithObjectiveC pdf 80 5 Refer ncias Bibliogr ficas 33 Apple Inc The Objective C Programming Language http developer apple com library mac documentation cocoa conceptual Objective C ObjC pdf 34 Kochan S G Programm
15. a sua cadeia diferente dos m todos 31 2 Estado da Arte probabil sticos que trabalham com vari veis aleat rias e distribui es de probabilidade 18 Estes tentam encontrar a dist ncia m nima de sinal entre o vetor de atributos observado e cada um dos vetores das diferentes posi es que constituem o mapa RSSI Isto pode ou n o ser igual dist ncia m nima entre a localiza o gravada na fase de calibra o 22 S o m todos que primam pela simplicidade de compreens o e de implementa o mas n o levam em considera o informa es sobre as estat sticas das varia es de RSSI n o incorporando tamb m a rela o de depend ncia entre estimativas consecutivas de localiza o 18 O primeiro m todo determinista apresentado era simples 13 N o faz parte do mbito desta disserta o o estudo aprofundado sobre algoritmos de localiza o deste modo foram somente mencionados alguns deles 2 5 Armazenamento e troca de informa o Cloud Computing Abordamos este t pico pois esta disserta o concentra se no armazenamento e na troca de informa o entre dispositivos Neste nosso projeto para haver troca de informa o para al m da localiza o dos dispositivos por exemplo necessitamos de armazenar informa o acerca dos utilizadores desde dados relativos ao acesso bem como os seus documentos que posteriormente ser o pass veis de partilha Pelas necessidades supracitadas e
16. ao contexto de localiza o Wi Fi A localiza o poss vel determinar utilizando uma infraestrutura para o posicionamento como o caso do GPS ou modificando de alguma forma o sistema de comunica o utilizado 19 O GPS uma t cnica que apesar de ser a mais popular em ambientes externos se torna ineficiente em v rias aplica es onde o desempenho se concentra em ambientes indoor fechados Para al m de que o GPS necessita de hardware espec fico o que o inviabiliza em diversas aplica es devido ao custo Por isso deve se utilizar t cnicas que j tenham implementado um sistema de comunica o sem fios em particular aquelas que seguem o padr o 802 11 para localiza o de dispositivos dentro deste mesmo padr o Muitas das t cnicas utilizadas para a localiza o com sinais de radiofrequ ncia consistem na realiza o de alguma forma da triangula o 18 Esta t cnica baseia se nas propriedades geom tricas dos tri ngulos e pode ser baseada numa t cnica baseada na dist ncia lateration ou na diferen a angular angulation entre dispositivos 15 2 3 1 Cell ID uma t cnica simples para determinar a posi o de uma determinada esta o O AP com maior sinal assume se como sendo a posi o da esta o 24 2 Estado da Arte Esta t cnica n o faz qualquer tentativa expl cita para resolver a posi o de um dispositivo m vel para al m da indica o da c lula com a qual o dispos
17. conta com aplica es desde editor de texto folha de c lculo e apresenta es Google Docs ferramenta de agenda Google Calendar ferramenta de comunica o instant nea Google Talk email com o pr prio dom nio da empresa armazenamento de ficheiros Google Drive entre outros A Amazon um dos maiores servi os de correio eletr nico onde a empresa montou uma megaestrutura de processamento e armazenamento de dados A partir daqui come aram a alugar este tipo de servi os recursos de onde resultou o servi o Simple Storage Solution S3 para armazenamento de dados e o Elastic Compute Cloud EC2 para uso de m quinas virtuais 35 2 Estado da Arte O iCloud um servi o da Apple que armazena documentos m sicas v deos fotos que t m como objetivo fazer com que as pessoas usem a nuvem em vez de utilizarem o computador como centralizador de informa es Assim caso o utilizador atualize alguma informa o atrav s de um dispositivo Apple o iCloud pode enviar esses mesmos dados atualizados automaticamente para os outros dispositivos 36 3 Desenvolvimento 3 Desenvolvimento Este cap tulo descreve o processo de desenvolvimento do prot tipo Na primeira parte do cap tulo s o apresentadas as ferramentas usadas para atingir os objetivos inicialmente propostos Na restante parte ser o demonstradas partes relevantes do processo de desenvolvimento Ap s explica o do processo de desenvolv
18. different if document pageNumber integerValue page Update page number document pageNumber NSNumber numberWithInteger page NSURL fileURL NSString guid document fileURL NSString phrase document password document guid if newPageSet containsIndex page YES Preview visible page first NSNumber key NSNumber numberWithInteger page key ReaderContentView targetView contentViews objectForKey key targetView showPageThumb fileURL page document translate_page page password phrase guid guid newPageSet removeIndex page Remove visible page from set Show previews newPageSet enumerateIndexesWithOptions NSEnumerationReverse usingBlock NSUInteger number BOOL stop NSNumber key NSNumber numberWithInteger number key ReaderContentView targetView contentViews objectForKey key targetView showPageThumb fileURL page document translate page number password phrase guid guid l newPageSet release newPageSet nil Release new page set mainPagebar updatePagebar Update the pagebar display self updateToolbarBookmarkIcon Update bookmark currentPage page Track current page number isRotating NO Figura 56 PDFReader ShowDocumentPage 6 4 Player Video Esta fun o a respons vel pelo playback de v deo Usando o framework nativo MediaPlayer apenas necess rio definir o tamanho da frame do v deo a
19. intera o cloud partilha webservices XML iOS Abstract Nowadays the exponential use of mobile devices in wireless network environments makes ubiquitous communication an emerging field of research This may represent a significant evolution in the information technologies area seizing thus people s every day Despite the different fields of ubiquitous computing we highlight the adaptation of content applications between devices as our main research focus With our work we aim at creating a unique language that makes the integration of mobile devices using mechanisms that allow content sharing via alternative interfaces This creates a new introduction to the paradigm of interaction between users enabling device to be involved in a network of heterogeneous devices sharing content with various document formats seamlessly For this integration to become possible the device should detect the user s various devices available through tracking systems and the user can intuitively through directional movement eg finger swipe share content with another device In the Cloud content is stored for each user so that one can subsequently share the same content again with other users Keywords augmented reality ubiquitous computing mobile devices interaction cloud share web services XML iOS vi ndice RESUMO asse nan dn id dl ni danada nd tus iii Abstracte DO RR ERRO RR dada pest RED ta PRO NPR a v I AEE E
20. levados em conta para calcular a dist ncia dos sinais Utilizando a ltima abordagem a online o sistema preserva a privacidade do utilizador Mais propriamente atrav s do m todo emp rico foram obtidos os melhores resultados com um erro de 1 92 2 94 4 69 metros em 25 50 e 75 das localiza es 15 Dadas as experi ncias os investigadores verificam que numa dada posi o a pot ncia do sinal varia A orienta o do utilizador numa determinada posi o influencia tamb m a pot ncia do sinal Wi Fi recebido 14 Na Figura 8 podemos ver uma rela o entre dist ncia e pot ncia de sinais Wi Fi recebidos pelos AP 3 17 2 Estado da Arte BS 1 E BS2 BS3 40 Eb oO oH 5 a 5 n 15 310 a Zz 5 0 0 20 40 60 0 100 Distance along walk meters Figura 8 A for a do sinal em tr s esta es 12 2 2 2 Ekahau O Ekahau RTLS desenvolvido pela empresa Finlandesa Ekahau tamb m se baseia em padr es de redes sem fios 802 11 para fornecer um sistema de localiza o em tempo real RTLS para localizar dispositivos e pessoas tamb m em tempo real Com o Ekahau n o h interrup o das atividades ou comunica es da rede As posi es dos dispositivos e pessoas s o atualizados automaticamente e podem ser entregues a outros sistemas que necessitem dessa informa o 16 um sistema de localiza o com boa precis o pois a localiza o dos dispositivos m v
21. o como perda v rias medi es s o efetuadas para minimizar este efeito Depois de haver um conhecimento de toda a rea o sistema de localiza o est pronto para responder a pedidos de localiza o Quando um pedido solicitado s o efetuadas novas medi es e s o comparadas com os resultados obtidos na base de calibragem calibra o A ess ncia desta t cnica prende se como os dados s o comparados e a localiza o calculada Num local onde existem v rios pisos cada um destes encarado como sendo distinto em termos de assinaturas RF tornando os nicos para que o sistema de localiza o possa dar resultados precisos Esta uma t cnica que n o necessita de hardware adicional como o TDOA ou TOA sendo baseada em solu es de software quando na maioria das vezes as medidas de RSSI se tornam suficientes para fornecer resultados precisos 29 2 Estado da Arte 2 3 6 Compara o entre as t cnicas Na tabela 2 apresentamos t cnicas de localiza o para redes Wi Fi de modo a ser poss vel uma vis o geral dos mesmos Perda da Confiabilidade Complexidade do T cnica Multipercurso percurso Dist ncia AP STA Access Point a e f e f e O om ma m Tabela 2 Compara o entre t cnicas de localiza o 22 Ainda sobre estas t cnicas podemos dizer que o ToA TDoA t m como vantagem a escalabilidade elevada exatid o para condi es LOS e que n o necessita de um treino e
22. projeto Xcode 28 ccececsessececececessesneaececeeeseesecneseeeeeeesseseasaeeeeseeses 42 Figura 21 Execu o de um projeto atrav s do Xcode 36 sirene 43 Figura 22 Utiliza o da ferramenta Instruments 36 cccceesessecececeeessesssaeceeeeessessnteaeeeeseesees 44 Figura 23 Interface iOS Simulator 38 cccccccccccesscssssececececsssesseaeeeeeeesesseseeaeeeeeeessessaeaeeeeseesees 45 Figura 24 Dock e Canvas do Interface Builder 39 eeererereeeeereneererereana 46 Figura 25 Mode View Controller representa o tradicional 43 eis 47 Figura 26 Vis o geral da interface do NetBeans IDE PHP cccsccccccssessssssceceeeeeseessntsaeeeeseesees 49 Figura 27 Finger swipe com o radar sessscccccecessessnececececessusneaeeececsseesusasaeeeeseesseseasaeeeeseesees 50 Figura 28 Arquitetura base UDISHOLE ccccccccccecsseessnsececeeecessesneaeeeeeessesseaeaeeeesesseeseasaeeseseeses 53 Figura 29 Diagrama de Casos de Uso da Prova do Conceito eee 55 Figura 30 Diagrama de Classes server side cccsessssccececessessnaeeececeseesnceaeeeeecessessasaeeeesseses 56 Figura 31 Diagrama de Classes do Content e Connection Managers cccccccccesssssstseeeeeeesees 57 xiii Figura 32 Diagrama de Classes do Content Players cccccssessssececeeesessecseaeeeeeeessessaeaeeeeseesees 59 Figura 33 Diagrama de Classes do GUl ccccccccccccsssssss
23. s de cada p gina ReaderContentTitle PDFReader Respons vel pelo t tulo de cada documento ReaderTrackControl PDFReader Gestor de eventos do PDFReader ReaderDocumentLink PDFReader Respons vel por estabelecer a liga o entre os hyperlinks presentes nos documentos ReaderThumbRequest PDFReader Respons vel pela gera o dos thumbnails a partir das p ginas do pdf ReaderMainPageBar PDFReader Respons vel pela listagem dos thumbnails na barra inferior do PDFReader ReaderContentPage PDFReader Respons vel pelo conte do de cada p gina ReaderThumbCache PDFReader Armazena as imagens dos 60 3 Desenvolvimento UIXToolbarShadow PDFReader Respons vel pela sombra alocada por tras da barra de ferramentas ReaderThumbOperation PDFReader Respons vel por criar o thumbnail ReaderThumbView PDFReader View respons vel pela apresenta o do thumbnail na grelha de thumbnails ReaderThumbsView PDFReader View respons vel pela listagem em grelha de todos os thumbnails ReaderDocument PDFReader Container de todos slides do documento ThumbsMainToolbar PDFReader View respons vel pela listagem de thumbnails na view principal ReaderThumbRender PDFReader View respons vel pela renderiza o dos thumbnails ReaderViewController PDFReader View principal do PDFReader agregadora de todas as outras classes ThumbsViewController PDFReader View principal do thumbnails agregadora de todas as outras classes de t
24. se o de partilha de conte do com outros dispositivos Assim sendo ap s ilustrarmos o player PDF Reader podemos ver na Figura 40 o player de v deo 68 3 Desenvolvimento Tag ae ie q aa i44 Ii gt gt I n Figura 40 Exemplo do player de v deo Neste player tal como no player de m sica demonstrado na pr xima figura a navega o poss vel utilizando a timeline indicada no topo do player avan ando no tempo do v deo m sica Podemos tamb m utilizar os bot es de navega o no fundo do player que o permitem pausar aumentar o volume do som e voltar ao in cio do v deo m sica O ltimo bot o n o tem nenhuma a o associada Este tipo de player nativo do iOS 69 3 Desenvolvimento 4 Ii i O Figura 41 Exemplo do player de som m sica O pr ximo player ilustrado na Figura 42 o de web browser que permite atrav s do URL abrir o s tio correspondente ao mesmo Este player carregado numa U WebView Figura 42 Exemplo do player WebBrowser 70 3 Desenvolvimento Por fim temos o player de Imagem que nos permite abrir um determinado ficheiro do tipo imagem numa vista criada para o efeito Na figura demonstra se um exemplo deste player Back DSC20120806 jpeg 7 Figura 43 Exemplo do player Imagem Ap s a abordagem aos players disponibilizados neste prot tipo passamos para a abordagem ao sistema de partilha de conte dos Em c
25. Com isto a tentativa de resolu o da localiza o de um dispositivo m vel numa estrutura que tenha v rios andares pode ser bastante frustrante pois h uma consider vel sobreposi o do piso at ao piso onde se encontra o dispositivo 22 Atualmente quando se fala em sistemas de localiza o de dispositivos sem fio em WLANs o que se deseja s o mecanismos capazes de estimar a posi o do utilizador num ambiente onde se utiliza equipamentos e hardware ex pontos de acesso e placas sem fio usualmente encontrados no mercado sem a utiliza o de hardware adicional com o menor custo poss vel e com o m nimo esfor o de calibragem 2 4 Algoritmos de localiza o Existem v rios algoritmos de localiza o baseados em fingerprinting entre eles algoritmos probabil sticos algoritmos de dete o de vizinhan a mais pr xima Nearest neighbor 12 redes neurais maquina de suporte vetorial SVM e menor pol gono M vertex SMP 15 Estes algoritmos estimam a localiza o baseando se na calibra o da fase offline Nesta fase s o registadas assinaturas RF associadas a posi es espec ficas Esta calibra o permite posteriormente relacionar os valores de RSSI detetados na fase de dete o online com as assinaturas estimando assim um valor para a posi o do dispositivo localiz vel 15 Ainda temos os m todos deterministas que s o aqueles cujos algoritmos trabalham com vari veis deterministas em toda
26. E E T E A EE A PR E A S vii fridigerde tabelas aba AARE EOR Ad xi Indice de Eur etal a cain CU ita tein eet xiii ACRONIMOS EE sdeesvaesicgavigesiistispadisednecansversstnevasesdasetvediaedschayise atdenap EEE Nanda XV do IMNtPOGDUGE Onesie somar tia Gaia Da Gotiecttel el Pah eile attri aaa 1 did CONTEXTO sionist eea liste parando lolita ces cadeve a eE thle a a aea E eaan as 1 V2 SPrOpOSILO AEE P E EE E A E AEE TAE ET 2 DS JMOtIVA O cestas ferrari fe re a aa a a AEE E O RE a A RE O 3 T4 Estr turadadisserta os e a a a a a a a a e aaar Tan 4 2 Estado da Artero en ta a eee a aa aeaa assed reheated Ghee beet ae a duna sd 7 2 1 Computa o M vel e Ubiqua cccccccccsssscecsssseceesesaececsessececsesaeeeceesaeeeesesaeeeeseaaeeeeneaas 7 2 1 1 Projetos da UbiComp da Xerox soere ea a e a aodai raada erinan 9 2 1 2 Projeto Microsoft Easyliving ccccssccccccecessesscnececeeecessesesaeseeeesesssessaeeeeeesenses 10 2 1 3 Projeto AURA uses estro cited sra a pena ranma Beste Ce tdBniLio sina dee a a i cee 11 2 1 4 Projet Gadia POE E q RE RR sec A RD RARE AR RO RD RE 12 2 1 5 Projeto Interactive Workspaces iiceoe aiak e ii eA ERETTE ES 13 2 1 6 Projeto R0OOMWare nira a Sete E a E Sent a i a a i i a 14 2 1 7 Aplica o Doodle Spacen iiai uiie i ai AAR iaeo 14 2 1 8 GCOMCIUSA o ANAE EEEE E EEE E A 15 2 2 Sistemas de localiza o em redes sem FIOS ssssccccececessesenaeeeeecessesectsaeeeeecesseseaees 16 2 2 1
27. HhiShare Figura 45 Exemplo de pedido de envio de um ficheiro Quando existe um pedido de transfer ncia de um documento entre dois dispositivos o recetor recebe do servidor a estrutura referente ao documento nome do ficheiro 73 3 Desenvolvimento tipo link para download etc S o ent o executados uma s rie de passos para que a transfer ncia seja executada Atrav s da fun o get downloaded file link procurado na estrutura recebida o campo referente ao caminho do ficheiro e iniciado o download de forma ass ncrona Optamos por executar o download de forma ass ncrona pois a chamada para o download feita na thread principal e a transfer ncia poder levar algum tempo at ser conclu da Desta forma o utilizador poder n o s continuar a usar a aplica o n o ficando a mesma bloqueada Esta opera o iniciada atrav s do seguinte m todo NSURLRequest dataRequest NSURLRequest requestWithURL document url cachePolicy NSURLRequestReloadlgnoringLocalCacheData timeoutInterval 60 Esta ligacdo obriga ao estabelecimento de uma classe responsavel pelo tratamento dos eventos lan ados pela NSURLRequest ent o definido o comportamento para 4 callbacks que s o lan adas pelo URLRequest na primeira connection didReceiveResponse alocada mem ria para a rece o do documento criando um container NSMutableData vazio Sempre que a callback connection didReceiveData chamada s o armazen
28. Na Tabela 1 apresentamos sistemas de localiza o indoor para redes Wi Fi de modo a ser poss vel uma vis o geral dos mesmos a ome Li ae RADAR WLAN RSSI 3a5m 50 a 2 94m WLAN RSSI M todo 50 em 2m saa aad probabilistico WLAN RSSI M todo 90 em ee probabilistico Univ Ray WBLS WLAN RSSI M todo baie probabilistico Tabela 1 Compara o entre sistemas de localiza o em redes Wi Fi Estes sistemas baseados na tecnologia Wi Fi t m a vantagem de estarem bastante inseridos nas resid ncias provendo assim a infraestrutura para sistemas de localiza o Tanto esta como a tecnologia Bluetooth n o abordada n o foram especialmente desenvolvidas para baixo consumo energ tico ao contr rio da tecnologia ZigBee IEEE 802 15 4 n o abordada pois n o necessita de elevada taxa de transmiss o sendo ideal para redes de sensores tornando se talvez a tecnologia apropriada para sistemas de localiza o de baixo custo com elevada durabilidade mas que n o necessitem de uma exatid o elevada 15 23 2 Estado da Arte 2 3 T cnicas de localiza o Os sistemas de localiza o podem ser categorizados segundo diferentes t cnicas as quais s o usadas para estimar a localiza o dos dispositivos m veis 15 sendo que cada uma delas tem a sua vantagem e desvantagem adequando se a um ou a outro contexto Sendo assim iremos aborda las para termos uma melhor no o de qual t cnica se adapta melhor
29. RADAR cain ticessecshevacea aaae haa aai boi tags sh aan iara iaria viana dose TDR ada agr 16 2 2 2 Ekahaun mentaan tats ahi Cesar Santo da eva a eee tok co A Aces 18 2 2 3 HORUS isis iis Mie ll ieee i ey ieee hie tl 20 2246 WBS 18 saio biting cues ae tics Gita sie ier GN deb ago tidak teeta 22 2 2 5 Compara o entre sistemas de localiza o em redes sem fios 23 2 30 T cnicas dedocaliza oO ssselssssasesssinelisa gados se aRedosb caeac av dened ida dades SR TER ADE ERA Cao vin iota aq 24 2 3 1 Cel Dusica ai aaa Lob ECOS a ST een tina ion alo a e aaah 24 23 AOA cita cand conc ae EISn cs doce TATA A T asta nu Tanah cda Soe Na ae cotta 25 DES Se TOA veshvventianttentiee ERR REDE O E DNS DUDNDE NR RR RE ND E 26 vii 2 3 4 TDOA sesectiereteiets gica a sete dolo cana a sin alas EA E EE das EE a aE 27 2 3 5 RE fingerprinting Sassi cds da eatea rae es Rad sev hvceche Gea cdeeecauletnatads Ee Eua a SEA 29 2 3 6 Compara o entre as t cnicas cceccccesssececsessececeeaececseaececsessececeesaeeeeeeaeeeeseeas 30 2 4 Algoritmos de localiza o eiii ieii irii i eiiiai 31 2 5 Armazenamento e troca de informa o Cloud COMPUTING c ccccesseceeessteeeeeeees 32 2 5 1 SOftWare aS a SCrviCe ieie ineei a a i ii aa e 33 2 5 2 Platform as a Servicenormen a a a a i eee 34 2 5 3 InfrastrUCtUre aS a SerViCe cceeeeeeeseceeseceecceceeneeeaeeeeaaeceeaceseeeeesaeeeeaaeeeeaeeeseeeees 34 2 5
30. a UbiShare 56 3 Desenvolvimento armazenando tamb m as coordenadas atuais do utilizador e do seu dispositivo Cont m a lista de todos os ficheiros adicionados pelos utilizadores atrav s da UbiShare e tamb m o objeto filetype que representa o tipo do ficheiro Filetype Cont m os tipos de ficheiros que se encontram dispon veis para uso na UbiShare Tabela 3 Fun o das classes server side 3 2 2 2 Diagramas de Classes UbiShare Finalmente aborda se os diagramas de classes referente s classes que suportam o funcionamento do prot tipo As tabelas referem se s respetivas classes e ao contributo destas QueueAdditions Figura 31 Diagrama de Classes do Content e Connection Managers NSMutableArray Queue Additions Complementa a classe nativa NSMutableArray adicionando os m todos push e pop 57 3 Desenvolvimento SoapRequest Respons vel por fazer os pedidos via http ao servidor Armazena a estrutura referente a cada documento ItemsCollection Dicion rio de dados que armazena todos os items ContentManager Respons vel por gerir os conte dos do dicion rio de dados sendo tamb m respons vel por efetuar o parsing dos elementos recebido a cada SoapRequest Tabela 4 Fun es das classes do Content e Connection Managers 58 3 Desenvolvimento ReaderMainToolbarDelegate ReaderMainPageScrollbarDelegate ReaderViewController ReaderContentViewDele
31. ada um dos players e mesmo na listagem inicial dos ficheiros na Dashboard existe um bot o de partilha que quando acionado ativa a c mara do dispositivo m vel de modo a detetar os utilizadores que se encontram ativos na UbiShare Estes utilizadores 71 3 Desenvolvimento est o constantemente a enviar atualizar a sua localiza o latitude e longitude para o sistema invocando o m todo UpdateCoordinates A Figura 44 demonstra nos os utilizadores que est o ativos neste caso somente um no momento da ativa o da c mara sendo que o envio do ficheiro aberto poss vel quando fazemos o movimento de arrastamento para o utilizador pretendido Este movimento s poss vel para os utilizadores que se encontram no alcance do dispositivo sendo que esse alcance depende da dist ncia ao dispositivo e tamb m de estar dentro do campo de vis o gerado pela orienta o do dispositivo Figura 44 C mara com radar 72 3 Desenvolvimento Na Figura 44 a imagem que capturamos na c mara representada pela se o com maior opacidade Ap s o pedido de envio apresentada uma notifica o no dispositivo do recetor conforme podemos verificar na Figura 45 que indica que um determinado utilizador pretende partilhar um novo ficheiro no exemplo Proposta PeD DavideRicardo pdf com este Para que seja poss vel a transfer ncia o recetor necessita de permitir o processo atrav s do bot o Accept
32. ados em mem ria os pacotes de dados recebidos Por fim ao terminar a transfer ncia chamada a callback connectionDidFinishLoading onde se cria o ficheiro com o conte do que tem vindo a ser armazenado em mem ria no NSMutableData no m todo connection didReceiveData assim solicitado o caminho para armazenamento dos documentos dentro da aplica o atrav s do m todo NSSearchPathForDirectorieslnDomains criando assim o documento nesse mesmo caminho tamb m definida a callback connection didFailWithError respons vel pelo tratamento de erros ocorridos na transfer ncia dos dados Finalizada a cria o do ficheiro parte se para o processo de grava o da informa o na estrutura de dados 74 3 Desenvolvimento Mediante o recebido atrav s da chamada SOAP abordado em 3 2 1 armazenado numa NSString a informa o e posteriormente feito o processo de parsing dos elementos fazendo uso da fun o parse headers e consequentemente da classe NSXMLParser que respons vel pelo tratamento da estrutura XML O que este m todo faz pesquisar todos os elementos que s o pass veis de serem guardados no dicion rio de dados da aplica o temsCollection Este dicion rio de dados um NSMutableDictionary que cont m toda a informa o relativa a cada ficheiro Item Por fim ap s o parsing da informa o contida na NSString invocada a fun o write to cache que guarda num ficheiro aquilo que est no dic
33. alientar deste n vel o iCloud Storage que permite que as aplica es coloquem documentos do utilizador numa localiza o central fornecendo o acesso a estes a partir de qualquer dispositivo iOS ou computador Este conceito de ubiquidade usando o iCloud permite para al m de uma camada de seguran a que o utilizador consiga ver ou editar os seus ficheiros atrav s de qualquer dispositivo sem ser necess rio uma sincroniza o ou transfer ncia de ficheiros explicitamente Mesmo que haja perda do dispositivo o utilizador pode aceder aos seus documentos atrav s deste servi o Quanto s frameworks entre muitas destacam se a Foundation respons vel pelos tipos de dados orientados a objetos o Core Data respons vel pela gest o do modelo de dados de uma aplica o MVC Core Location respons vel por fornecer localiza o e informa o para as aplica es Core Media respons vel por fornecer os tipos de media de baixo n vel utilizados pela Foundation System Configuration respons vel pelo fornecimento de interfaces de acesso que s o usadas para determinar a configura o da rede de um dispositivo A camada Core OS cont m as frameworks e servi os de mais baixo n vel tais como gest o de threads I O gest o de mem ria que servem de base para a constru o das restantes camadas O uso desta camada tamb m usado em situa es onde preciso lidar com a seguran a Atrav s da figura podemos ver de forma sucin
34. am o programador a compreender a arquitetura das frameworks e a melhorar a estrutura o do c digo da aplica o descrevendo as rela es e hierarquias entre objetos 30 46 3 Desenvolvimento MVC composto por tr s partes que d o nome ao padr o onde cada uma delas tem caracter sticas pr prias e fun es bem definidas para facilitar a vida ao programador O Model modelo mant m os dados de uma aplica o e define a l gica que manipula esses mesmos dados Uma aplica o se for bem concebida tem todos os seus dados importantes encapsulados em objetos do Model As Views vistas representam a visualiza o dos dados Estas s o os elementos que s o respons veis por renderizar o conte do de uma parte particular do modelo encaminhando para o controlador as a es do utilizador Acedendo a partes do conte do do modelo atrav s do controlador determinam como esses dados devem ser apresentados Uma View pode ainda armazenar dados em cache podendo posteriormente usar esses mesmos dados de forma a melhorar o desempenho tornando se reutiliz veis e configur veis fornecendo uma maior consist ncia nas aplica es O Controller atua como parte interm dia entre os objetos das Views e os objetos do Model controlando todo o fluxo de informa o que passa pelo sistema Este respons vel por ter a certeza que as Views t m acesso aos objetos do modelo que pretendem mostrar 43 Define o que deve ser acio
35. ando a informa o selecionada onde este comunicava com outros dispositivos via infra vermelhos O PARCpad era um notebook fixo e sem mobilidade com caneta e microfone com comunica o por r dio O Liveboard um conceito utilizado hoje em dia nas escolas pois um dispositivo com um ecr sens vel ao toque que grava as informa es medida que interagimos com o mesmo atrav s de uma caneta 2 Estado da Arte Atrav s de um v deo do youtube 26 podemos ver uma pequena demonstra o destes prot tipos 2 1 2 Projeto Microsoft Easyliving Para al m das casas inteligentes como mencionamos anteriormente podemos tamb m falar dos pr dios inteligentes A Microsoft foi quem desenvolveu os primeiros esfor os para conceber um pr dio inteligente com o projeto chamado Microsoft Easyliving atrav s de um grupo de pesquisa sobre Computa o Ub qua inserida na empresa O objetivo passava por desenvolver uma arquitetura e tecnologias em ambientes inteligentes que facilitavam a intera o desimpedida de pessoas com outras pessoas com computadores e com dispositivos A tecnologia pretendia permitir que a pessoa pudesse efetuar chamadas a partir de qualquer ponto da casa simplesmente com o uso ao reconhecimento de voz Pretendia tamb m controlar as crian as e animais dom sticos automaticamente e que quando a pessoa passasse pelas v rias divis rias da mesma dados obtidos de sensores era mantida uma sess o interati
36. arse Figura 53 ContentManager parse_headers void parser NSXMLParser parser didStartElement NSString elementName namespaceURI NSString namespaceURI qualifiedName NSString qName attributes NSDictionary attributeDict current_xml_element elementName NSLog xml ns elementName if elementName isEqualToString header if collection collection ItemsCollection alloc init else collection reset_keys_registry else if elementName isEqualToString file create a new item current item Item alloc init Figura 54 ContentManager didStartElement 87 6 Anexo void parser NSXMLParser parser foundCharacters NSString string if current xml element isEqualToString id i current item setItem_id string a if current xml element isEqualToString name current_item setTitle string ss if current xml element isEqualToString filename current_item setDocument_path string ts if current xml element isEqualToString size current item setSize string else if current xml element isEqualToString dateCreated f current item setDate string cme if current xml element isEqualToString filetype current item setDocument_type string a if current xml element isEqualToString owner current item setOwner string Figura 55 ContentManager foundCharacters
37. as rea de inser o das componentes De referir que ap s a inser o dos componentes e configura o das suas propriedades a interface guardada num ficheiro de formato nib 45 3 Desenvolvimento AAA F Hello SainMenu xib l a p ana E EITA 1 p gt m hellou j Xcode fos fo m ta Liam op Sime Seade a e Eno Mem Organiset zoar Dhe Maintieru xib English gt B aa Mac QS X SOK L Meio h HetoView h m Helovew m h HeloApoDeegato h m HelaApe Delegate m Los Supporting Fies i frameworks L Products Figura 24 Dock e Canvas do Interface Builder 39 Esta ferramenta tempo como principal vantagem o fato de permitir criar interfaces de forma r pida e f cil permitindo assim ao utilizador que tenha uma ideia exata de como a interface ir ficar no dispositivo isto devido sua componente visual 3 1 7 Model View Controller MVC significa Model View Controller um padr o de desenho que se preocupa com a arquitetura global de uma aplica o classificando os objetos de acordo com fun es gerais que s o usadas nesta 43 Programas orientados a objetos beneficiam deste padr o aquando a realiza o dos seus projetos pois atrav s deste muitos dos objetos tornam se reutiliz veis Os programas s o mais adapt veis s mudan as dos requisitos tornando se extens veis a outros programas que n o s o baseados em MVC 43 No iOS os padr es de desenho ajud
38. ations on mobile devices Eindhoven University of Technology 2012 46 Apple Inc Core Location Framework Reference http developer apple com library mac documentation CoreLocation Refere nce CoreLocation Framework CoreLocation Framework pdf 47 Julius Oklamcak PDF Reader Core for iOS http www vfr org 81 5 Refer ncias Bibliogr ficas 82 6 Anexo 6 Anexo Nesta se o s o abordados alguns blocos de c digo descrevendo o seu funcionamento 6 1 M todos WebService View the WSDL for the service Click on an operation name to view it s details GetUrl Login Register EditProfile Invite U eCoordinates GetFile GetFilesPerUser ListUsers us Share UploadFile ForgotPassword Figura 49 M todos WebService A figura mostra nos os m todos disponiveis do lado do servidor e GetUrl respons vel por informar qual o link onde est alojado o webservice e Login respons vel por informar se os dados enviados correspondem a algum utilizador registado na base de dados e Register respons vel por registar um novo utilizador ou rejeitar caso os dados enviados coincidam com algum j registado e EditProfile respons vel por atualizar os dados do utilizador 83 Anexo Invite respons vel por adicionar uma nova recomenda o da aplica o a poss veis interessados Aqui enviado um email para o utilizador convidado UpdateCoordinates respons v
39. avigator a x 17 set include path sfConfigiiget s lih dir j vendor PATH SEPARATOR get include path E ProjectConfiguration 18 require once sfConfig get s lib dir vendor Zend Loader php O registerzendo 19 Zend_Loader registerAutoload set 20 self zendLoaded true RU zendioaded an 22 23 public function setup _Refactoring sx beet actions class php Refactored actions class php el Sattiliate this gt getRoute gt getOhject 18 18 jaffiliate this gt getRoute gt getObject lu e faffiliate ractivate 19 19 faffiliate ractivate ag ProjectConfiguration class phr 20 20 a 25 FA static public Function register er 21 21 n email 4P lil PlugnJobeetJobTable class ph ProjectConfiguration E 22 Projectconfiguration EEgi 7 ProjectConfiguration registe Smail new Zend Mail 23 23 Smail new Zend Mail Pha b smail gt setBodyText lt lt lt EOF 24 24 Smail gt setBodyText lt lt lt EOF ai E Jobeet affiliate account has been activa25 25 Jobeet affiliate account has been activifl Fiters 2 S 8 ne Cancel zs 264 Na 3142 INS Figura 26 Vis o geral da interface do NetBeans IDE PHP 3 1 10 XML Como abordamos na se o 3 1 8 o sistema faz uso de uma API para se alimentar Tanto os pedidos como as respostas s o enviadas via SOAP que um protocolo baseado em XML respondendo com informa o devidamente estruturada XML uma linguagem de marca
40. carregar o nome e caminho do ficheiro de v deo qual o tipo de controlos do v deo player e define se tamb m a callback de sa da a fun o que chamada ao sair de fullscreen 92 6 Anexo uma vez que o v deo apresentado em fullscreen ou no final do playback Esta callback define o que fazer no final do playback Por fim apos ter o player configurado dado a instru o de play Para qualquer eventualidade feito o tratamento de qualquer exce o que ocorra aquando do playback de forma a que se evite crash da aplica o void playVideo try if playing amp amp filepath nil NSAutoreleasePool pool NSAutoreleasePool new NSLog player running filepath absoluteString player MPMoviePlayerController alloc initWithContentURL filepath player useApplicationAudioSession NO player view frame CGRectMake 0 1024 768 player shouldAutoplay YES player scalingMode MPMovieScalingModeAspectFit player controlStyle MPMovieControlStyleFullscreen NSNotificationCenter defaultCenter addObserver self selector Gselector exitedFullscreen name MPMoviePlayerPlaybackDidFinishNotification object player self view addSubview player view playing YES player play pool drain catch NSException e NSLog Error Reason e description e reason finally 6 5 Realidade Aumentada A fun o viewportContainsCoordina
41. cos deg2rad theta acos acos calc rad2deg rad2deq acos miles rad2deg 60 1 1515 unit strtoupper unit if unit K return Smiles 1 609344 else if Sunit N return Smiles 0 8684 else return miles Figura 50 C lculo da dist ncia entre utilizadores em PHP lt header gt lt file gt lt id gt lt CDATA 5 gt lt id gt lt name gt lt CDATA Proposta PeD DavideRicardo gt lt name gt lt filename gt lt CDATA Proposta PeD DavideRicardo pdf gt lt filename gt lt filetype gt lt CDATA pdf gt lt filetype gt lt dateCreated gt lt CDATA 2012 09 02 04 09 00 gt lt dateCreated gt lt owner gt lt CDATA Davide Ricardo gt lt owner gt lt size gt lt CDATA 348KB gt lt size gt lt file gt lt header gt Figura 51 Exemplo de XML enviado atrav s do servidor 6 2 ContentManager ItemsCollection e Item A classe ContentManager a respons vel por fazer o reconhecimento dos utilizadores e ou ficheiros a serem recebidos do servidor Ao fazer checkForUpdates algo que feito periodicamente e no caso de haver dados a receber feito o parse do conte do 85 6 Anexo formatado em XML por via do m todo parse headers Ao usar o componente XMLParser teremos de definir 3 callbacks que s o chamadas ao encontrar um elemento tag XML didStartElement ao encontrar o elemento tag d
42. e dispositivos m veis e de rede sem fios fazem com que a comunica o ub qua seja uma rea emergente de pesquisa Esta pode representar uma evolu o significativa na rea da tecnologia da informa o apoderando se assim do quotidiano das pessoas Apesar dos diferentes dom nios da computa o ub qua destacamos a adapta o de conte dos aplica es entre dispositivos como sendo o nosso principal foco de pesquisa Neste trabalho pretende se criar uma linguagem nica que fa a a integra o de dispositivos m veis utilizando mecanismos que permitem a partilha de documentos atrav s de interfaces alternativas Cria se assim uma nova introdu o ao paradigma de intera o entre utilizadores capaz de possibilitar que o dispositivo pessoal do utilizador se envolva numa rede de dispositivos heterog neos partilhando v rios formatos de documentos Para que esta integra o seja poss vel o dispositivo do utilizador deve detetar os v rios dispositivos dispon veis atrav s de sistemas de localiza o podendo o utilizador intuitivamente e atrav s de um movimento direcional por exemplo finger swipe executar enviar uma tarefa para o dispositivo pretendido Na Cloud ficam armazenados os documentos referentes a cada utilizador de modo a que este possa partilh los posteriormente com outros utilizadores que utilizem o mesmo sistema Palavras chave realidade aumentada computa o ub qua dispositivos m veis
43. e finaliza o XML didEndElement e ao encontrar um elemento associado a uma tag foundCharacters Ao encontrar um elemento file criado um novo elemento item e dentro dessa tag file ser o definidos todas as suas propriedades encontradas atrav s da callback foundCharacters Por fim no fecho da tag file o item adicionado estrutura interna ItemsCollection void checkForUpdates if soap return if soap isConnecting soap checkForUpdates while soap isConnecting NSRunLoop currentRunLoop runMode NSDefaultRunLoopMode beforeDate NSDate distantFuture if soap isConnecting soap hasConnectionProblems TODO set working offline label when working offline i else AppDelegate app AppDelegatex UIApplication sharedApplication delegate NSString webdata app soap headers if webdata length 0 NSLog nONLINE CONTENT n webdata self parse headers webdatal self write to cache webdata Figura 52 ContentManager checkForUpdates 86 6 Anexo void parse headers NSString x header contents NSLog nONLINE CONTENT n header contents NSData data header contents dataUsingEncoding NSUTF8StringEncoding if xmlParser xmlParser release xmlParser nil xmlParser NSXMLParser alloc initWithData data xmlParser setDelegate self xmlParser setShouldResolveExternalEntities YES xmlParser p
44. ecebido sendo este o principal problema desta pois qualquer que seja o desvio no tempo medido ir afetar a dist ncia calculada aumentado assim o erro da localiza o Sistemas que utilizam esta t cnica s o por exemplo o Active Bat que uma continua o do Active Badge 21 e o GPS 2 3 4 TDOA TDoA Time Difference of Arrival uma t cnica onde o tempo de propaga o do sinal de RF medido e este valor utilizado para estimar a posi o dist ncia do emissor 19 Esta t cnica uma ligeira adapta o da ToA que mede a diferen a de tempo de um sinal emitido a partir da BS do cliente dispositivo para varios Esta difere da TOA 27 2 Estado da Arte pois usa valores de tempos relativos do tempo de chegada enquanto a ToA usa valores de tempo absolutos tonando se assim mais fi vel Esta t cnica requer recetores especiais nas BSs e rel gios precisos e sincronizados para a monitoriza o dos tempos de chegada Quando emitido um sinal atrav s do dispositivo m vel para as BSs os tempos de chegada s o medidos em cada c lula correspondente BS Um sinal emitido pelo cliente dispositivo m vel e sendo recebido em 3 ou mais BSs em tempos ligeiramente diferentes Estes desvios de tempo acontecem devido as diferentes dist ncias que separam o recetor a partir das v rias BSs Usando uma das diferen as de tempo pode se calcular as v rias localiza es poss veis para o cliente Este g
45. ecutar ou para o iOS Simulator ou para um dispositivo O iOS Simulator fornece um ambiente local para testar as aplica es e para verificar se estas se comportam conforme o desejado 36 A Figura 21 demonstra nos o processo de building cria o at demonstra o da aplica o no iOS Simulator 42 3 Desenvolvimento gt wry gt wens Sucata J 2 22132 08 40 AA Moe Gio is 5 Mias maas re o Ones TK Ano p jm Duma kan Simulator Your project Xcode Device Figura 21 Execu o de um projeto atrav s do Xcode 36 3 1 4 Instruments A Apple tem v rias exig ncias para que as aplica es sejam publicadas na AppStore Ent o para que os utilizadores possam ter todas as exig ncias satisfeitas na altura da entrega da aplica o a Apple disponibiliza a ferramenta Instruments que permite analisar a performance da aplica o iOS enquanto esta est a ser executada no simulador ou no dispositivo A informa o desta an lise apresentada atrav s de uma ferramenta gr fica chamada timeline 36 Atrav s do Instruments o utilizador pode verificar o uso de mem ria da aplica o a atividade em disco a atividade na rede e o desempenho da parte gr fica Podemos ver um exemplo de utiliza o da ferramenta Instruments na Figura 22 Outra funcionalidade disponibilizada para al m do timeline a ferramenta que permite analisar o comportamento da aplica o ao longo do tempo podendo desta
46. ega de conte do na localiza o procura de dire es controlo de ativos e notifica es Este assenta em duas fases uma fase offline de testes e calibra es e uma fase online de determina o da localiza o Durante a fase offline o sistema guarda a intensidade do sinal recebido a partir dos AP s localizados em reas de interesse de modo a possibilitar a constru o de um mapa r dio Durante a fase de determina o da localiza o o sistema usa as amostras da pot ncia de sinal recebido a partir dos AP para procurar o mapa radio e estimar a localiza o do utilizador O mapa radio baseado nas t cnicas deterministas e probabil sticas As primeiras representam a intensidade do sinal de um AP num determinado local apresentando um valor m dio Por outro lado as t cnicas probabil sticas armazenam a informa o sobre a distribui o dos AP no mapa r dio usando as t cnicas para estimar o local do utilizador Horus System Components Figura 11 Componentes do Sistema Horus 17 21 2 Estado da Arte Na Figura 11 podemos ver os componentes do sistema Horus onde as setas representam o fluxo da informa o no sistema Os blocos sombreados representam os m dulos utilizados durante a fase offline 17 Assim o Horus reduz os requisitos computacionais do algoritmo lightweight de determina o da localiza o atrav s da aplica o das t cnicas location clustering 2 2 4 WBLS 18
47. eis em Wi Fi est o ao alcance de menos de 1m sendo este o erro m dio Como ponto a favor tem o fato de n o ser preciso um grande poder computacional para localizar os dispositivos pois a localiza o processada atrav s de um dispositivo central aumentando assim a fiabilidade da mesma Na Figura 9 podemos ver a arquitetura do Ekahau 18 2 Estado da Arte Application Software ir Party Application HTTP Y XML HTTP WA Image Location and Tag Configuration and Floor plan and zone Location Query Image Render Ekahau Event Stream Maintenance defindions Positioning Application API Engine Device API Survey API Software Ekahau Location Protocol Y WA Ekahau Maintenance Protocol Wi Fi En 802 11 a b g gt yA Site Surrey A Floor plans f Wi Fi Devices CE wari oenee me Figura 9 Arquitetura do Ekahau 16 Ekahau RTLS uma solu o de tracking inteiramente baseado nas movimentas de pessoas Este consiste na integra o de v rios componentes como podemos ver na Figura 9 16 O Ekahau Positioning Engine atualmente na vers o 4 4 o c rebro do Ekahau RTLS Este um servi o web que corre em cima de um Windows Server dedicado 16 Fornece uma interface web de f cil manuseamento para defini o como podemos verificar na Figura 10 19 2 Estado da Arte Welcome to Ekahau Positioning Engine admin System Status version 10
48. el e Ubiqua A computa o m vel faz nos refer ncia a aspetos de mobilidade desde mobilidade do utilizador com a possibilidade deste comunicar a qualquer hora em qualquer lado com quem quiser ex ler escrever um email atrav s de um aplicativo ou de um web browser at portabilidade do dispositivo uma vez que os dispositivos podem ser ligados a qualquer hora a qualquer altura a uma determinada rede Por m existe uma importante limita o quando h uma altera o da posi o f sica isto quando o utilizador se move para um outro contexto que a inalterabilidade do modelo computacional Como exemplo podemos referenciar a situa o em que o utilizador est numa sala de espet culos onde o seu dispositivo se encontra partida em modo silencioso e quando este se dirige para fora dela precisa novamente de ajustar o seu dispositivo Esta necessidade do utilizador alterar reconfigurar o estado n o aceit vel nesta rea de estudo A computa o m vel tem como requisitos sistemas de middleware dispositivos m veis e redes sem fios ex Infravermelhos Bluetooth Wi Fi etc rea cuja evolu o tem sido bastante importante no suporte mobilidade Mas tamb m de dispositivos computacionais distribu dos no ambiente que sejam percet veis ou n o tais como sensores reconhecimento de voz etc denominando se esta como computa o pervasiva 2 Estado da Arte Esta ideia de Computa o Ub qua
49. el por atualizar as coordenadas referentes localiza o atual do utilizador GetFile respons vel por enviar a informa o relativa a um determinado item Este m todo invocado quando um utilizador aceita o pedido de partilha de um item de outro utilizador GetFilesPerUser respons vel por devolver a lista de items associados ao utilizador existentes na base de dados ListUserByRadius respons vel por devolver a lista de utilizadores que se encontram no raio de a o do utilizador informado a latitude e longitude do utilizador bem como o raio efetuado um c lculo Figura 50 para determinar a dist ncia entre um determinado utilizador e o utilizador que est a solicitar o servi o e caso este esteja dentro do raio solicitado adicionado lista Share respons vel por enviar o pedido de partilha de um item a um determinado utilizador UploadFile respons vel por enviar um ficheiro para o servidor e associa lo a um determinado utilizador ForgotPassword respons vel por ajudar o utilizador a recuperar os seus dados de acesso ao prot tipo Algumas destas fun es apesar de j se encontrarem desenvolvidas ainda n o est o a ser usadas pelo prot tipo 84 6 Anexo function distance SlatUserl SlonUserl latUser2 lonUser2 Sunit theta lonUserl lonUser2 calc sin deg2rad SlatUserl sin deg2rad latUser2 cos deg2rad latUserl cos deg2rad latUser2
50. emos Hotspots WiFi em lugares como caf s bibliotecas restaurantes centros comerciais etc Telem veis com internet 3G servi os de voz sobre IP tendo talvez o Skype como um dos softwares mais usados para o efeito Mesmo os autom veis j disponibilizam ao condutor sistemas de alta tecnologia como s o o caso dos computadores de bordo E as casas inteligentes conceito que hoje muito falado onde toda a casa est interligada permitindo coisas fant sticas desde o acender de luzes por uma instru o vocal ou imagem s pelos frigor ficos que est o encarregues de enviar informa o pedidos de compra ao supermercado quando detetam que se est a esvaziar ou a nossa torradeira que sabe que estamos na hora do pequeno almo o e 8 2 Estado da Arte nos prepara umas torradas onde a cafeteira faz tamb m parte do processo sem n s precisarmos de lhes tocar sequer nem dizer nada A isto chamamos de Computa o Pervasiva que uma esp cie de sub rea da Computa o Ub qua 2 1 1 Projetos da UbiComp da Xerox A partir dos anos 90 foram desenvolvidos alguns prot tipos de UbiComp por parte do Xerox PARC conforme podemos verificar na Figura 1 Ubiquitous computing O Xerox PARC 1988 1995 Devices according to model size approach PARCtab PARCpad Liveboard bax hsv Fent aws Vardaced Figura 1 Prot tipos desenvolvidos pelo Xerox PARC 4 O PARCtab um dispositivo port til sens vel ao toque grav
51. er o Diagrama de Casos de Uso Ver conte do no player ssinclude gt _ Abrir Ficheiro Listagem de ficheiros F to Iniciar UbiShare wee 000000 Acesso ao Webservice x Aceitar transfer ncia do ficheiro Utilizador lt extend gt Rejeitar transfer ncia Inserir dados de registo Inserir dados de login Partilhar ficheiro lt lt extend gt Figura 29 Diagrama de Casos de Uso da Prova do Conceito Ver dispositivos atrav s da Camara 55 3 Desenvolvimento 3 2 2 Diagrama de classes Para a constru o do prot tipo foram elaborados diagramas de classes que implementam as funcionalidades do mesmo 3 2 2 1 Diagrama de Classes server side Primeiramente abordamos o diagrama de classes que implementa as funcionalidades do lado do servidor onde toda a informa o relativa aos utilizadores e aos ficheiros guardada Para que o utilizador possa fazer uso do sistema precisa previamente de se registar para posteriormente poder aceder aos seus ficheiros Sendo assim necess ria uma estrutura que suporte os dados resultantes dos pedidos efetuados ao web service Na Figura 30 demonstra se o respetivo diagrama de classes sendo que na tabela explica se resumidamente quais as funcionalidade das mesmas Filetype Figura 30 Diagrama de Classes server side Cont m a lista de todos os utilizadores que se registaram atrav s d
52. esecececessesseaeeeeeessesseaeaeeeeeesseeseaaeaeeeeseesees 62 Figura 34 Classe de Realidade Aumentada e Core Location ccccccccccessesssceeeeecessessctsaeeeeeensees 63 Figura 35 Ecr Inicial do prototipo neern a A EGSR 64 CE Area ile TERIS TO asd il q dd a cd UA Ra 65 Fig ra 37 Area de Vomit desaba So ER Rb decane 66 Figura 38 Dashboard Listagem de fiche irOS ccccccccsssceceessececeessecececsnececeeaeeeceeaeeeeeeaeeeees 67 Figura 39 Exemplo do player PDF Reader cccccccccecsssscecececesssssaeeesecesessnsusaeeeeecessessaeaeeeeseesees 68 Figura 40 Exemplo do player de Vid 0 c ccccssscccesssscecesssececsesnecececaeeececaeeeesesaeeeceeaeeeseesseeeeees 69 Figura 41 Exemplo do player de som m sica ccccccssssecssecesscecesecesececsseceeeeessececnaeceeseeessees 70 Figura 42 Exemplo do player WeDBrOWSEl ccccecssssscecececessesnsaeeececesessnsaeaeeeeseeseeseaaeaeeeeeeesees 70 Figura 43 Exemplo do player IMAageM ccccccccccscsssssssscececsccesesseaeeececesessecesseeeeseesseseaeaeeeeseesees 71 Figura 44 C mara Com radar assa cesncces iesansss esanaecevseaseshesasadsvussancsessasadsevsnadess PRM A Vad da 72 Figura 45 Exemplo de pedido de envio de um ficheiro c ii eereereeererereerereana 73 Figura 46 Vista de transfer ncia de ficheiro do lado do emissor 75 Figura 47 Vista de transfer ncia de ficheiro do lado do recetor cccsesccceesssceeeesteceeeesteeeeees 76 F
53. forma verificar se o seu comportamento est a melhorar ou se ainda precisa de trabalho 36 43 3 Desenvolvimento Simulator Your Applicaton Instruments Device Figura 22 Utiliza o da ferramenta Instruments 36 3 1 5 iOS Simulator O uso desta ferramenta serve para simular um ambiente local de teste da aplica o no Mac Assim n o necess rio um dispositivo Apple para testar as funcionalidades da aplica o Uma desvantagem do uso do iOS Simulator que este tem uma limita o a n vel de suporte a algum hardware pois n o consegue simular por exemplo o uso do aceler metro ou da c mara Na Figura 23 podemos observar a interface do iOS Simulator 44 3 Desenvolvimento Figura 23 Interface iOS Simulator 38 3 1 6 Interface Builder Interface Builder um editor visual de desenho que se encontra integrado no Xcode e usado para criar interfaces de uma forma visual para as aplica es iOS Atrav s deste pode se criar janelas windows vistas views controlos controls menus e outros elementos atrav s de uma livraria de objetos bastando para isso fazer um movimento de arrastamento ou drag and drop para os inserir na aplica o 39 Cada componente pode ser configurado bastando para isso utilizar o inspector para definir as suas propriedades 30 Na Figura 24 podemos observar o Interface Builder com a dock rea de sele o dos componentes e o canv
54. g phrase document password Document properties contentView ReaderContentView alloc initWithFrame viewRect fileURL fileURL page document translate page number pagetag number password phrase theScrollView addSubview contentView contentViews setObject contentView forKey key contentView message self contentView release newPageSet addIndex number else Reposition the existing content view contentView frame viewRect contentView zoomReset unusedViews removeObjectForKkey key contentView go to offset origin viewRect origin x viewRect size width Remove unused views unusedViews enumerateKeysAndObjectsUsingBlock id key id object BOOL stop contentViews removeObjectForKkey key ReaderContentView contentView object contentView removeFromSuperview l Release unused views unusedViews release unusedViews nil CGFloat viewWidthX1 viewRect size width CGFloat viewWidthx2 viewWidthX1 2 0f CGPoint contentOffset CGPointZero if maxPage gt PAGING VIEWS if page maxPage contentOffset x viewWidthX2 else if page minPage contentOffset x viewwWidthX1 else if page PAGING VIEWS 1 91 6 Anexo contentOffset x viewWidthX1 if CGPointEqualToPoint theScrollView contentOffset contentOffset false Update content offset theScrollView contentOffset contentOffset Only if
55. gate Thumbs ViewControllerDelegate ThumbsMainToolbarDelegate ThumbsViewController ReaderThumbs ViewDelegate ReaderPagebarShadow ReaderContentTile ReaderTrackControl ReaderDocumentLink ReaderThumbRequest ReaderMainPagebar ReaderContentPage ReaderThumbCache ThumbsMainToolbar UIXToolbarView ReaderMainToolbar ReaderMainPageScrollbar ReaderThumbQueue UlXToolbarShadow ReaderThumbFetch ReaderThumbOperation ReaderThumbRender ReaderThumbView ThumbsPageThumb ReaderThumbsView ReaderPagebarThumb ReaderDocument ReaderContentThumb ReaderContentView ImageViewer VideoPlayer AudioPlayer WebViewController Figura 32 Diagrama de Classes do Content Players ReaderMainToolbarDelegate PDFReader Responde aos eventos lan ados pela barra de ferramentas ReaderMainPageScrollbarDelegate PDFReader Responde aos eventos lan ados pelo conjunto das views das 59 3 Desenvolvimento EE ReaderContentViewDelegate PDFReader Responde aos eventos lan ados pela view que cont m cada p gina ThumbsViewControllerDelegate PDFReader Responde aos eventos lan ados pela view que cont m os thumbnails das p ginas ThumbsMainTollbarDelegate PDFReader Responde aos eventos lan ados pela barra de ferramentas presentes na view que cont m os thumbnails das p ginas ReaderThumbsViewDelegate PDFReader Responde aos eventos lan ados por cada thumbnail ReaderPageBarShadow PDFReader Respons vel pela sombra alocada por tr
56. humbnails Respons vel pela visualiza o de imagens VideoPlayer Respons vel pela visualiza o de v deos AudioPlayer Respons vel pela reprodu o de udio WebViewController Respons vel pela visualiza o de uma p gina web Tabela 5 Fun es das classes do Content Players 61 3 Desenvolvimento GUI View Controllers FriendsViewController DebugViewController ListViewController Notification ViewController DocsViewController MapViewController MapAnnotation FileExchangeViewController Figura 33 Diagrama de Classes do GUI FriendsViewController Respons vel pela apresenta o de todos os contatos mais recorrentes DebugViewController Apresenta dados de teste em modo debug ListViewController Respons vel pela representa o de dados em tabelas NotificationViewController Respons vel pelo lan amento de notifica es e respetiva confirma o DocsViewController Responsavel pelos todos os documentos presentes na UbiShare MapViewController Representa o dos utilizadores num mapa MapAnnotation Item do utilizador no mapa FileExchangeViewController Apresenta o estado da transfer ncia de um documento Tabela 6 Fun es das classes do GUI 62 3 Desenvolvimento Augmented Reality amp Core Location RadarViewPortView AugmentedViewController AugmentedGeoViewController PhysicalPlace ARViewDelegate Figura 34 Classe de Realidade Aumentada e Core Location E Poite
57. ia da Xerox Corp em Palo Alto CA EUA Extensible Markup Language Wireless Fidelity Wireless Local Area Network 1 Introdu o 1 Introdu o Este cap tulo visa introduzir e contextualizar a intera o entre dispositivos atrav s do sistema abordado assim como dar a conhecer os objetivos do trabalho desenvolvido Ser tamb m discutido neste cap tulo os motivos que levaram escolha deste t pico A primeira parte do cap tulo incidir sobre o contexto do projeto mostrando como o projeto poder ser til no quotidiano das pessoas A se o do prop sito indica nos qual o objetivo que se pretende alcan ar com a realiza o deste estudo tra ando tamb m as principais metas deste A se o de motiva o visa explicar o porqu da escolha desta tem tica e da relev ncia da mesma no panorama atual A se o de estrutura do documento dar nos uma vis o global do documento bem como uma f cil compreens o da organiza o do mesmo 1 1 Contexto O t tulo tem como objetivo dar a entender de uma forma sucinta do que esta disserta o se trata Cada vez mais a utiliza o de dispositivos m veis uma alternativa ao uso dos computadores de secret ria que eram quase a nica solu o dispon vel para ter acesso informa o Uma s rie de projetos t m investigado o uso de dispositivos m veis para interagir com o mundo real 6 7 10 Esses projetos utilizam diversas t cnicas de
58. igura 48 Vista para fecho do prot tipo ccccccccssccceesssceceessececseaeeeceeseeeceeseeeesesaeeeceeaeeeeees 76 Figura 49 M todos WebService ccccccccsssceceessececeesececeessecececsaeeececsaeeesecsaeseesesseeeceeaeeeeseaeeeeees 83 Figura 50 C lculo da dist ncia entre utilizadores em PHP cccscccceesssceceessececeesseceeeesteeeeees 85 Figura 51 Exemplo de XML enviado atrav s do servidor ccccccecsseceeecssececeesseceeeeseeeseeseeeeees 85 Figura 52 ContentManager checkForUpdates ice ereererereeeerenerearereana 86 Figura 53 ContentManager parse headers ccsessssccccecessessaeeececssessecesseeeeeeesseseaeaeeeeseesees 87 Figura 54 ContentManager didStartEleMent cccccccccscesssssssecececesessesseeeeeeseessessasaeeeeeeeses 87 Figura 55 ContentManager foUndCharacte lS ccssccccccecsssessneeececesessesssaeeeeecesseseeaeeeeeeesees 88 Figura 56 PDFReader ShowDocumentPage csesccccceeecessessaececeessessnaeseeeeeeesseseaaeaeeeeseesees 92 Figura 57 Realidade Aumentada viewportContainsCoordinate cc cccccccccessesssteeeeeeeeesees 94 xiv Acr nimos AoA AP API AR BS Cloud Computing GMD GPS HCI HTML HTTP laaS IDE IEEE IPSI iRoom iROS LOS MVC NLOS Os PaaS PHP RF Angle of Arrival Access Point Ponto de Acesso Application Programming Interface Interface de Programa o de Aplica es A
59. imento alguns screenshots ser o apresentados em ordem para mostrar o que foi alcan ado e qual o seu funcionamento 3 1 Ferramentas tecnologias e metodologias usadas Para o desenvolvimento do prot tipo de sistema recorreu se utiliza o de v rias tecnologias servi os e livrarias que permitiram a interliga o entre subsistemas para garantirem o seu funcionamento Esta primeira parte foca se na exposi o explica o das ferramentas das tecnologias e metodologias usadas durante o desenvolvimento 3 1 1 iOS SDK iOS um sistema operativo para dispositivos m veis desenvolvido pela Apple O seu nome original era iPhone OS Operating System Sistema Operativo mas foi renomeado para iOS em 2009 O iOS atualmente utilizado em dispositivos iPhone iPod touch e iPad 28 Recentemente em Setembro 2012 foi disponibilizada a vers o 6 deste Sistema Operativo A arquitetura do iOS bastante similar do Mac OS X sendo que as camadas atuam como intermedi rias entre o hardware e as aplica es As aplica es comunicam com o hardware atrav s de um conjunto de interfaces que as protegem contra a mudan a 37 3 Desenvolvimento de hardware Deste modo as aplica es podem correr em dispositivos com capacidades de hardware diferentes 28 A implementa o das tecnologias iOS podem ser vistas como um conjunto de 4 camadas layers Cocoa Touch Media Core Services e Core OS As camadas inferio
60. ing in Objective C 2 0 Second Edition 2008 35 Apple Inc Local and Push Notification Programming Guide http developer apple com library mac documentation NetworkingInternet Concept ual RemoteNotificationsPG RemoteNotificationsPG pdf 36 Apple Inc Xcode 4 User Guide http developer apple com library ios documentation ToolsLanguages Conceptual X code4UserGuide Xcode4UserGuide pdf 37 Apple Inc Tools Workflow Guide for iOS http developer apple com library lOs documentation Xcode Conceptual ios develo pment workflow iphone development pdf 38 Apple Inc http www apple com br business accelerator develo 39 Apple Inc Xcode Quick Start Guide https developer apple com library ios documentation IDEs Conceptual xcode quic k start Xcode Quick Start Guide pdf 40 Oracle Welcome to the NetBeans Community http netbeans org about 41 PHP Group Introduction http www php net 42 O Reilly Media Inc A Technical Introduction to XML http www xml com 43 Apple Inc Concepts in Objective C Programming http developer apple com library ios documentation general Conceptual CocoaEnc yclopedia CocoaEncyclopedia pdf 44 Garlan David Siewiorek Daniel P Smailagic Asim and Steenkiste Peter Project Aura Toward Distraction Free Pervasive Computing 2002 45 Crijns T K A Augmented Reality for Indoor Applic
61. intera o tais como tocar ou apontar e tamb m m todos de comunica o diferentes infravermelhos 1 Introdu o Bluetooth Wi Fi etc Entretanto os mais recentes dispositivos m veis integram novas tecnologias tais como aceler metros b ssolas digitais e ecr s sens veis ao toque que potenciam possibilidades de intera o adicionais As redes sem fios s o vistas como um grande potencial de comunica o tendo mesmo vindo a ser desenvolvidas um vasto n mero de aplica es sendo a disponibiliza o de conte dos baseados na localiza o de utilizadores uma delas 24 25 como exemplo o museu Pergamon de Berlim onde s o disponibilizados aos utilizadores PDAs que lhes mostram unicamente a informa o referente obra que se encontra na sua proximidade Aproveitando as potencialidades dos dispositivos m veis e das redes sem fios pretendemos alimentar o paradigma de intera o do utilizador com ambiente fazendo assim que seja poss vel a troca de informa o conte dos entre dispositivos que se encontram na mesma rede e que utilizem o mesmo sistema para o efeito Esta intera o ser feita atrav s de um m todo de reconhecimento do gesto direcional de arrastamento finger swipe E apesar de n o ser o nosso foco o sistema de localiza o de dispositivos m veis na rede fulcral nesta caminhada 1 2 Prop sito O objetivo principal deste projeto proporcionar ao utilizador um recurso simple
62. ion rio de dados a cada momento ou seja todos os Items presentes em temsCollection Posto isto e dada a permiss o de transfer ncia do ficheiro apresentada uma vista view a cada utilizador emissor e recetor que indica o estado do processo de envio A Figura 46 ilustra o processo de envio de um ficheiro do lado do emissor e a Figura 47 ilustra o processo de recebimento de um ficheiro Back Sending file SENDING FILE TO USER73 Proposta PeD Davi Figura 46 Vista de transfer ncia de ficheiro do lado do emissor 15 3 Desenvolvimento Figura 47 Vista de transfer ncia de ficheiro do lado do recetor Existe ainda uma ltima se o para fechar o prot tipo conforme podemos ver na Figura 48 Aqui quando solicitado o fecho do prot tipo invocado um m todo que ir guardar na estrutura de dados tudo o que foi alocado no dicion rio de dados ItemsCollection 76 B B D DDDB 49 00 AM Downloading file DOWNLOADING FILE FROM DRICARDO k UbiShare TeseDavide Provisorio Dato Modified Options DRicardo Davide Ricardo DSC20120806 Dato Modified DSC20120807 Dato Modified SummerVacations Day1 8 15 Dato Modified Proposta PeD DavideRicardo Dato Modifiod 409 Load Interactive httpy www load intoras 1 Tom Saywer Rio Live Album Version Dato Modifiod 9012 04 09 Figura 48 Vista para fecho do prot tipo 4 Conclus es e Trabalho Futu
63. iseu de V Escola Superior de Tecnologia e Gestao de Viseu L Iitecnico O A O e aad ed g venio de p yet f N e Sey uto Supe psd en N Op a tecnologia a do Le LG v JY Escol a Esco Sup limite texto Davide Ricardo Baptista Pereira UbiShare Partilha Interativa de Conte dos em Ambientes Ub quos Tese de Mestrado Sistemas e Tecnologias de Informa o para as Organiza es Professor Doutor Jos Francisco Monteiro Morgado Outubro de 2012 Aos meus pais Agradecimentos Desde j quero agradecer ao Dr Francisco Morgado pelo facto de ter aceite ser o Orientador deste projeto e por me dar indica es precisas e de valor para o desenvolvimento da tese Ao Jo o Abrantes que com os seus conhecimentos ideias t cnicas e n o s teve um papel bastante importante imprescind vel e fulcral desde o in cio do projeto A toda a equipa da Load Interactive pois estiveram sempre dispon veis para contribuirem com ideias e sugest es durante este processo Um especial agradecimento minha fam lia pois fizeram sempre uma especial for a para que eu chegasse a esta fase do meu percurso acad mico A sua persist ncia ajuda foi tamb m fulcral nesta caminhada Finalmente um muito obrigado a todos os que de alguma maneira contribu ram direta ou indiretamente neste projeto tornando o poss vel Resumo Hoje em dia o uso exponencial d
64. isse chegar visualizar a utilizadores que se encontram em longa dist ncia permitindo o envio de documentos n o por movimentos finger swipe mas sim pela sele o direta e manual do utilizador 78 5 Refer ncias Bibliogr ficas 5 Refer ncias Bibliogr ficas 1 Weiser M The Computer for the 21st Century Scientific American 265 3 94 104 September 1991 2 Weiser M Brown J S The coming age of calm technology 3 Shafer S Krumm J Brumitt B Meyers B Czerwinski M Robbins D The New EasyLiving Project at Microsoft Research http research microsoft com apps pubs default aspx id 68393 4 Domingues F http www hardware com br artigos computacao ubiqua 5 Roman M Hess C Cerqueira R Ranganathan A Campbell R H Nahrstedt K Gaia A Middleware Infrastructure to Enable Active Spaces 6 Roman M Hess C Cerqueira R Ranganathan A Campbell R H Nahrstedt K Gaia A Middleware Platform for Active Spaces 7 Johanson B Fox A Winograd T The Interactive Workspaces Project Experiences with Ubiquitous Computing Rooms 8 Streitz N A Tandler P M ller Tomfelde C Konomi S Roomware Toward the Next Generation of Human Computer Interaction Based on an Integrated Design of Real and Virtual Worlds 9 Streitz N A Gei ler J Holmer T Roomware for Cooperative Buildings Integrated Design of Architectural Spaces and Information Spaces
65. itivo m vel registado 22 Em geral a precis o desta t cnica depende de qu o elevada a densidade da c lula Em reas rurais um dispositivo m vel normalmente cobre uma rea de at 30km enquanto em cidades este valor reduz se para 10metros apenas Figura 12 Localiza o baseada em Cell ID 22 2 3 2 AOA AoA Angle of Arrival uma t cnica que utiliza o ngulo de chegada do sinal RF e que para estimar a posi o utiliza de pelo menos 2 pontos de refer ncia no raio de acesso ao dispositivo calculando o angulo e o tamanho das arestas do tri ngulo formado Pode se aumentar a precis o com o acr scimo de bases recetoras Basicamente as antenas direcionais s o ligadas ao recetor e a rea volta do recetor testada para medir e marcar a partir de qual dire o o sinal recebido mais forte O desempenho dos m todos de localiza o baseados nos ngulos de chegada s o limitados pela precis o das medidas sendo esta uma caracter stica do hardware e do algoritmo de estima o 20 25 2 Estado da Arte Figura 13 Localiza o baseada em AoA Na Figura 13 a antena do dispositivo m vel recebe sinal e determina o ngulo de onde o sinal chega A posi o pode ser calculada atrav s da combina o dos ngulos dos sinais das duas bases Sistemas que utilizem o AoA n o servem para ambientes indoor devido aos m ltiplos caminhos de propaga o NLOS que um sinal pode percorrer at
66. izador 4 j 4 j J Local Storage Data Server Figura 28 Arquitetura base UbiShare 53 3 Desenvolvimento Para um melhor entendimento daquilo que o sistema pretender oferecer em baixo ser o descritas as funcionalidades do mesmo Como o sistema uma prova de conceito nem todos os recursos ser o implementados De forma sucinta podemos descrever o funcionamento do sistema da seguinte maneira O utilizador instala a UbiShare no seu dispositivo tendo que de seguida registar se para poder ter acesso mesma Ap s preenchimento de um formul rio de registo efetuado um pedido para o lado do servidor onde este ir responder negativamente ou positivamente ao mesmo Caso seja positivo quer dizer que o utilizador pode come ar a usufruir das restantes funcionalidades da UbiShare Existe tamb m uma vista inicial de acesso aplica o caso o utilizador j se encontre registado podendo ser esta chamada de rea de Acesso efetuado tamb m um pedido ao servidor para verificar a veracidade dos dados introduzidos pelo utilizador obtendo o mesmo tipo de resposta Ap s esta fase de registos e acessos o utilizador avan a para a se o de listagem onde constru do um SOAP request pedido que enviado ao servidor solicitando todos os ficheiros inerentes a este respondido atrav s do Webservice API SOAP response que retorna o resultado no formato XML Caso este pedido falhe ou caso n o hajam alte
67. m Cont m os detalhes acerca do utilizador RadarViewPortView Representa o da regi o vis vel no radar AugmentedViewController Respons vel pela View principal em realidade aumentada misturando o radar com a captura de v deo a partir da c mara do dispositivo Mecanismo de radar que representa todos os utilizadores presentes num determinado raio ARViewDelegate Responde aos eventos lan ados na view principal de realidade aumentada PhysicalPlace Cont m informa o geogr fica acerca de cada item AugmentedGeoViewController Camada que assenta sobre a classe principal da realidade aumentada adicionando a no o de georreferencia o atrav s do CoreLocation Tabela 7 Fun es das classes da Realidade Aumentada e Core Location 63 3 Desenvolvimento 3 2 3 UbiShare UbiShare foi o nome dado ao prot tipo que ser instalado no dispositivo do utilizador De referir tamb m que o dispositivo utilizado para os testes do prot tipo foi o iPAD Este possui um modelo de dados que armazena localmente local storage os ficheiros que o utilizador enviou para a Cloud e os que lhe foram partilhados por outros utilizadores A primeira abordagem que o utilizador tem com o prot tipo aquela que se pode visualizar na figura UbiShare Share Files In Reality Create Account Figura 35 Ecr Inicial do prot tipo 64 3 Desenvolvimento Aqui o utilizador pode caso j esteja registado pr
68. m redes Wi Fi 2 2 1 RADAR O primeiro passo nos sistemas de localiza o foi dado pelo projeto RADAR desenvolvido pela Microsoft Research que um sistema baseado em radiofrequ ncia RF para localiza o e monitoriza o de utilizadores dentro de edif cios usando o padr o 802 11 para medir a pot ncia do sinal em v rias esta es base devidamente posicionadas fornecendo cobertura numa determinada rea A intensidade do sinal RF usada como medida de dist ncia entre o emissor RF e o recetor sendo que esta informa o usada para localizar o utilizador recorrendo a t cnicas de triangula o 12 16 2 Estado da Arte Para determinar a informa o da posi o o RADAR usava duas fases e A fase offline o utilizador indica a sua localiza o atual clicando num mapa onde as coordenadas x y orienta o d e o timestamp t s o registadas sendo que cada combina o de localiza o e orienta o eram guardados num tuplo com o formato t x y d O tuplo poderia ser interpretado como uma previs o da pot ncia do sinal recebido por cada esta o fixa 12 e A fase online Aqui existem duas abordagens para determinar a localiza o em tempo real online O m todo emp rico que permite comparar o SS analisado com o gravado na base de dados e escolhe a melhor combina o para estimativa de localiza o E o de propaga o RF onde o n mero de paredes entre o recetor e emissor s o fatores
69. ms associados ao utilizador que foram previamente guardados num ficheiro local Iremos abordar este assunto com detalhe mais frente 67 3 Desenvolvimento Atrav s desta vista o utilizador pode ver o conte do de um determinado documento necessitando somente de o selecionar como podemos ver na Figura 38 Neste exemplo selecionado o documento Proposta PeD DavideRicardo que um ficheiro do tipo PDF Ap s feita a sele o ativado o player respetivo sendo que neste caso o player designa se por PDF Reader Este tal como todos os players do prot tipo s o nativos Na figura podemos ver o exemplo da vista do player referenciado Proposta PeD DavideRicardo p Malti touch metpe Quando enviada alguma tarefa para a TY sistema analisa a esta o source em que esta se encontra e faz a transfer ncia para HDMI caso seja necess rio Exemplo de comunica o nesta Glima ilustra o Recebe Sinal Interpreta o cabe alho recebido Qual a a o um link ou ficheiro Casoseja link Abre um browser com o ink recebido mo corpo body Casoseja ficheiro Que tipo de ficheiro Abre o leitor padr o para o ficheiro Se a ltima a o estiver a correr est o preciso fech la Play Repeat or Close se receber um sinal do dispositive m vel Figura 39 Exemplo do player PDF Reader Demostraremos os v rios tipos de players disponibilizados neste prot tipo antes de abordarmos a
70. nado e para onde as informa es devem ir A Figura 29 representa a tradicional vers o do padr o MVC Strategy User action Update a Update a Notify Composite Observer Get changed state j Figura 25 Mode View Controller representa o tradicional 43 47 3 Desenvolvimento 3 1 8 PHP A constru o de sistemas que trabalham em ambiente de background implica a escolha de uma tecnologia capaz de lidar com os requisitos de sistema Como o uso de web services ser o integrados neste trabalho preciso um fornecimento de uma API para que seja poss vel contatar os servi os que alimentam a aplica o Desta forma foi utilizado a linguagem PHP juntamente com a livraria NuSoap grupo de classes PHP direcionado para o consumo de servi os SOAP de forma a responderem aos pedidos da aplica o A maioria destes pedidos requerem o uso de uma camada de acesso a dados uma vez que a informa o referente a cada utilizador guardada no SGBD MySQL PHP acr nimo recursivo para PHP Hypertext Preprocessor uma linguagem livre open source especialmente virada para o desenvolvimento de aplica es Web no lado do servidor que pode ser embutido dentro de HTML 3 1 9 NetBeans IDE PHP Como foi necess rio o desenvolvimento de uma API para alimentar a aplica o era tamb m necess rio um DE que permitisse esse mesmo desenvolvimento Por isso foi adotado o NetBeans IDE que uma ferramenta gratui
71. o para documentos que cont m informa es estruturadas Este um mecanismo que permite identificar as estruturas de um documento 41 Um exemplo de um XML pode ser lt header gt lt file gt lt name gt Documento 1 lt name gt lt type gt PDF lt type gt lt file gt lt header gt 49 3 Desenvolvimento 3 1 11 Finger Swipe Movimento de arrastamento Quando os utilizadores tocam e movem os seus dedos sobre os dispositivos ex iPAD geram eventos multi toque eventos de gesto e eventos de sele o O hardware deste tipo de dispositivos tem suportes embutidos que permitem interpretar os gestos comuns Quando efeito um movimento de arrastamento enviado uma a o nica por gesto O uso de efeitos visuais combinados com eventos de toque permitem criar aplica es interativas permitindo ao utilizador manipular objetos do ecr com os seus pr prios dedos tornando a intera o humano computador bastante interessante Figura 27 Finger swipe com o radar Para podermos definir qual o utilizador a ser intercetado aquando do movimento finger swipe necessitamos de efetuar alguns c lculos Assumindo o ponto verde como sendo o ponto referencial 0 0 mediante o movimento efetuado pelo utilizador obtido o ngulo a partir da conjuga o entre o 50 3 Desenvolvimento vetor de desloca o do finger swipe e o vetor efetuado pelos pontos 0 0 e posi o de cada utilizador A par
72. o sistema que o utilizador tem um identificador ID permite que este aceda de imediato aos seus ficheiros Por m o utilizador pode j estar registado n o sendo por isso necess rio efetuar um novo registo logo para aceder aos seus conte dos necessita de efetuar login representado na Figura 37 Figura 37 rea de Login 66 3 Desenvolvimento O procedimento de login funciona mais ou menos da mesma forma do de registo com a exce o de que n o ir ser feita uma adi o na base dados mas sim uma verifica o da veracidade dos dados introduzidos pelo utilizador Caso os dados introduzidos estejam corretos a API responde com o ID do utilizador permitindo que este siga para o pr ximo passo ilustrado na Figura 38 UbiShare TeseDavide Provisorio Date Modified 2012 09 03 06 27 DSC20120806 Date Modified 2012 09 02 04 1 DSC20120807 Date Modified 2012 09 02 04 09 SummerVacations Day1 Date Modified 2012 05 26 02 45 Proposta PeD DavideRicardo Date Modified 2012 09 02 04 09 Load Interactive htipv www loed intoractive com 1 Tom Saywer Rio Live Album Version Date Modified 2012 09 02 04 09 Es B A Figura 38 Dashboard Listagem de ficheiros Neste sistema n o existe uma base dados propriamente dita mas sim uma estrutura que guarda a informa o relativa a cada ficheiro item e que utilizada para leitura do mesmo fazendo com que seja poss vel a listagem dos ite
73. oceder ao login no sistema ou ent o criar uma nova conta Neste primeiro contato n o h qualquer tipo de pedido ao servidor Ao selecionar a op o de cria o de nova conta o utilizador ir ser convidado a preencher alguns campos como se pode ver na Figura 36 UbiShare Davide Ricardo dricardo 7 davide ricardo gmail com eeeeceee eeeceeee Figura 36 Area de registo Ap s o preenchimento dos campos pedido ao servidor a cria o do novo utilizador utilizando o m todo registerUser passando como par metros todos os dados solicitados no formul rio Neste pedido e por uma quest o de seguran a o campo password encriptado utilizando encripta o md5 O resultado desta opera o um documento no formato XML que cont m ou o novo ID identifica o do utilizador ou 65 3 Desenvolvimento o valor 1 negando o pedido Todos os pedidos negados por parte do servidor tem como resposta o valor 1 Caso o pedido seja positivo sinal que o servidor procedeu ao registo do utilizador na base dados e que utilizando os valores recebidos cria um novo objeto User definindo para cada uma das suas propriedades o valor correspondente para posteriormente e fazendo uso da Camada de Acesso ao Objeto DAO invocar o m todo de inser o contido nessa mesma camada Se o utilizador iniciar a sua intera o com o prot tipo atrav s desta se o n o necessita de passar pela fase de login pois sabendo
74. ois estes a cada dia que passa tornam se mais poderosos mais tecnol gicos possibilitando o desenvolvimento de novas aplica es de novos servi os e formas de intera o Contudo a computa o ubiqua e o desenvolvimento de aplica es para dispositivos m veis ainda n o encontraram o seu estado maduro devido limita o de solu es abertas e gen ricas Pretende se com este trabalho que haja uma conce o implementa o e teste de uma solu o para dispositivos iOS que utiliza algoritmos de localiza o de dispositivos m veis e tamb m a informa o proveniente de sensores que estes dispositivos 1 Introdu o integram aceler metros b ssola digital e ecr s sens veis ao toque para interagirem entre si partilhando informa o conte dos Esta disserta o teve igualmente o objetivo de criar know how na rea de desenvolvimento para dispositivos m veis em sistemas de localiza o e tamb m sobre a ubiquidade Assim sendo podemos dizer que a motiva o para esta tese contribuir para que o desenvolvimento para dispositivos m veis d mais um passo rumo maturidade 1 4 Estrutura da disserta o O presente documento encontra se estruturado em 5 cap tulos O primeiro e atual o cap tulo introdut rio onde se enquadra o tema e se apresenta o contexto onde o trabalho realizado se insere S o apresentadas posteriormente as motiva es a que levaram e impulsionaram o desenv
75. olvimento desta disserta o bem como a organiza o do mesmo O segundo cap tulo Estado da Arte tem como objetivo fornecer uma an lise ao contexto atual que assenta em 3 partes an lise sobre computa o m vel e ubiqua localiza o de dispositivos em redes sem fios armazenamento e troca de informa o E tamb m uma perce o de onde o projeto pode ser efetivamente uma mais valia O terceiro cap tulo Desenvolvimento trata se do desenvolvimento propriamente dito do projeto apresentado os resultados obtidos bem como as ferramentas utilizadas para o efeito O quarto cap tulo Conclus o ir analisar o trabalho desenvolvido sobre os efeitos da atual disserta o qual o trabalho futuro poss vel para a continua o da mesma 1 Introdu o O quinto cap tulo Refer ncias Bibliogr ficas cont m todas as refer ncias bibliogr ficas que serviram de apoio ao desenvolvimento desta disserta o O sexto cap tulo e ltimo Anexo cont m blocos de c digo que descrevem m todos aplicados na elabora o do prot tipo 1 Introdu o 2 Estado da Arte 2 Estado da Arte Este cap tulo fornece uma compreens o mais detalhada do que j existe apontando diretrizes para o futuro 2 1 Computa o M vel e Ub qua A evidente evolu o das tecnologias das redes sem fio e de dispositivos m veis levou Computa o M v
76. or estar no raio visual do dispositivo n o s esse utilizador ser visto na captura de v deo como tamb m representado no radar de georreferencia o Por sua vez o executar de movimentos de finger swipe sobre o ecr do dispositivo tem em conta o centro do radar e a 51 3 Desenvolvimento localiza o do utilizador nesse mesmo radar Assim e mais uma vez misturamos o mundo real com o mundo virtual 3 1 13 Core Location O Core Location usa tr s diferentes m todos para determinar a localiza o Estes s o o Cell Tower Triangulation Cell ID abordado em 2 3 1 Wi Fi location e GPS A classe CLLocationManager define a interface para configurar a entrega de eventos de localiza o e a posi o relacionados com o dispositivo usada uma inst ncia da classe para estabelecer os par metros que determinam quando os eventos de localiza o devem ser entregues Pode se usar tamb m o objeto location manager para guardar a localiza o mais recente 46 Dependendo do valor do par metro do CLLocationManager desiredAccuracy este vai usar um ou mais dos tr s m todos para determinar a localiza o do dispositivo Primeiramente este determina uma localiza o com pouca precis o usando o Cell D De seguida tenta encontrar um ou mais hotspots Wi Fi recebendo desta forma uma corre o da localiza o sendo que quantos mais encontrar melhor ser a localiza o Por fim se o GPS estiver dispon vel a locali
77. r o avan o para a integra o dos espa os arquitet nicos e espa os de informa o Introduzindo novas formas de intera o humano computador para multiutilizadores multi monitores e ambientes 8 9 2 1 7 Aplica o Doodle Space O Doodle Space uma aplica o interativa desenvolvida para ecr s de grandes dimens es que permite que v rios participantes de forma colaborativa em conjunto pintem curvas 3D numa parede projetada usando dispositivos com c maras usado um algoritmo baseado em sequ ncia de imagens para estimar os par metros do movimento das c maras Permite tamb m que o utilizador controle o pincel com os movimentos da c mara rodando arrastando e aumentando o tamanho das curvas utilizado um mecanismo de transmiss o sem fio Bluetooth 10 Nas seguintes figuras podemos ver a arquitetura de comunica o do Doodle Space e tamb m a intera o de m ltiplos utilizadores com a aplica o 14 2 Estado da Arte SI JET HIT Se pago H Yoo Ed Sa logs 58 tion i w Participant A d audience Participant j A bid j 1 f f es eS ee E Do A PX s Figura 6 Arquitetura de comunica o do Doodle Space 10 Painting Pen Figura 7 Multiplos participantes desenhando atrav s do Doodle Space 10 2 1 8 Conclus o Apesar de ainda n o termos chegado ao ponto que Weiser menciona caminhamos para esse
78. ra es aos ficheiros desde a ltima sincroniza o o utilizador pode ver os seus ficheiros mesma pois estes s o guardados no dispositivo aquando da primeira transfer ncia Esta opera o possibilita que o utilizador mesmo sem acesso internet possa aceder aos seus ficheiros n o podendo por m partilh los A partir daqui o utilizador pode aceder ao conte do de cada resultado listado utilizando para isso o player respetivo sendo que o sistema o respons vel por escolher o tipo de player associado ao ficheiro que o utilizador pretender abrir Na rea de listagem ou mesmo na rea de cada player o utilizador pode ativar a partilha do ficheiro Aqui ativada a c mara do dispositivo m vel que nos mostra no 54 3 Desenvolvimento ecr os pontos onde se encontram os dispositivos que tamb m est o a utilizar a UbiShare Caso haja algum ponto dispon vel o utilizador pode partilhar o ficheiro enviando um pedido ao dispositivo recetor escolhido ficando espera que este aceite ou rejeite a opera o Caso aceite iniciada a transfer ncia do ficheiro mediante o cabe alho que cont m informa o referente ao ficheiro previamente enviado no pedido inicial Ap s efetuada a transfer ncia o utilizador recetor ficar com esse ficheiro anexado sua lista podendo desta forma aceder ao seu conte do e fazer o mesmo processo de visualiza o e partilha j descrito Atrav s da Figura 29 podemos v
79. ra dos ambientes indoor foi utilizado um m todo que nos permite a localiza o em ambientes outdoor permitindo nos assim abranger um maior leque de op es utilizadores 77 4 Conclus es e Trabalho Futuro Foram encontradas dificuldades no que ao desfasamento do movimento finger swipe diz respeito nomeadamente na tentativa de conseguir encontrar a forma ideal para atingir o utilizador pretendido Outra dificuldade que deve ser mencionada foi o fato de nem sempre a triangula o ser suficientemente eficaz para procedermos localiza o do dispositivo m vel Contudo as metas inicialmente tra adas foram atingidas com sucesso como tivemos oportunidade de fomentar atrav s da Prova do Conceito Proposto 4 2 Trabalho Futuro Como trabalho futuro podem ser melhorados alguns aspetos da interface do prot tipo dando como exemplo a rea de visualiza o dos utilizadores atrav s da c mara Uma funcionalidade que n o deve ser deixada de parte permitir que mesmo que o utilizador n o esteja a utilizar o prot tipo receba notifica es de novos pedidos de partilha atrav s dos notification services do iOS ou mesmo via email Para incrementar a ubiquidade deste sistema poderia ser desenvolvido uma nova portabilidade do mesmo para dispositivos que n o sejam iOS Uma outra funcionalidade que traria qualidade ao prot tipo seria apresentar um mapa aspeto GoogleMaps que fazendo uso da ferramenta zoom consegu
80. rado Quotes do Bando niece Gatto dd Sabe dal el tan da doa a ian 52 3 2 Prova do Conceito Proposto ssa serias galesa e t da Ves ees Casa a danada tous N asno ai 52 3 2 1 Arquitetura do Sistema ccccccecsssssceceeecessesneaesecececessesaaaecececssessnsasaeeeesessseseaaeas 53 3 2 2 Diagrama de classes n nnrir tea n aaae aaa aa a a aaa ds aes hon 56 3 2 2 1 Diagrama de Classes server side Jessea teer ae a a E a 56 3 2 2 2 Diagramas de Classes UbiShare ssoosssssnnssssnsssenressssssreenressssssesernnsssssseeens 57 3 2 3 UbiShare soca a a e aaeei a aa e Ea a a a ae ee eaaaes 64 4 Conclus es e Trabalho Futuro ssssssssssssssssssssssessserssesssesssesssessseesstessresstesstesstessrenseesstense 77 FL CONCIUS ES ii iaie a tle CASO iiid 77 viii 5 6 42 Trabalho iFuturois aaa paia alesis tile ee ee ee a aan ed ee Refer ncias Bibliogr ficaS ars eana reena erraia AA ASA EENES NE RESTARE NERAN EE ANEXO sua a a E E E E EEE ad asim ata 6 1 Metodos WebSer ic icre i a iii ai ap iaie iian 6 2 ContentManager ItemsCollection e ItemM ssssssesersssssssrserressssssesernessssssrrernesssssse 6 3 PDF Readers sita atic arnt niet an andar aie 6 3 1 Reader View Controller cccesssessssceesceceececeeeeeesaceseaaeceeaaesseneeesaeeeeaaeceeaaeenneees 6 45 gt PlayerVideo EE EE do ok ARES ANE eosin daa Ode Eira do a ne a Tags dq 6 5 Realidade Aumentada ana ceara a a i acena a A
81. res do sistema s o servi os e tecnologias que se encontram acess veis aos programadores de iOS enquanto as camadas de alto n vel cont m servi os e tecnologias mais sofisticadas 28 Na Figura 17 podemos ver as camadas ordenadas verticalmente do n vel mais alto at ao mais baixo Cocoa Touch Media Core Services Figura 17 Camadas do SO iOS 28 A camada Cocoa Touch escrita em Objective C cont m as principais frameworks UIKit e Foundation para a constru o das aplica es definindo a arquitetura b sica de uma aplica o MVC tais como c mara aceler metro localiza o multi tarefas multitasking eventos e controladores de toque m ltiplos multi touch controladores de vistas padr o System View Controllers 30 A framework Foundation define o comportamento dos objetos b sicos sendo tamb m essencial uma cobertura orientada ao objeto para o Core Foundation 29 A camada Media foi implementada de modo a disponibilizar servi os multim dia permitindo o acesso a protocolos gr ficos udio e v deo As principais tecnologias desta camada s o o Core Graphics Core Audio Core Animation Core Text Core Image Image I O OpenGL ES e GLKit 28 38 3 Desenvolvimento A camada Core Services cont m os principais servi os que as aplica es utilizam Mesmo n o usando os servi os diretamente algumas partes do sistema s o constru dos em cima destes Umas das carater sticas a s
82. ro 4 Conclus es e Trabalho Futuro Neste cap tulo apresentam se as principais conclus es obtidas durante o estudo e implementa o realizadas com o intuito de responder aos prop sitos inicialmente abordados Para terminar ser o apresentadas algumas ideias para expandir futuramente o trabalho desenvolvido 4 1 Conclus es O uso de dispositivos m veis e dos v rios tipos de servi os a eles direcionados est em crescente evolu o e foi importante analisar qual o rumo que estes est o a ter e a import ncia que t m no quotidiano das pessoas A primeira fase da disserta o prendeu se pela perce o an lise e estudo n o por esta ordem necessariamente daquilo que eram os requisitos inicialmente propostos tendo encontrado abordagens interessantes e por si s inovadoras Este mesmo estudo permitiu que fossem analisadas tecnologias e mecanismos associados aos dispositivos m veis que solidificaram conhecimentos nesta rea Percebeu se tamb m que estes tipos de estudos s o ainda muito pouco abordados tornando desta forma a pesquisa e o trabalho ainda mais aliciantes O fato dos dispositivos m veis terem evolu do e terem sido equipados com c maras digitais sensores de posi o e orienta o tornou poss vel o desenvolvimento do prot tipo que permite a visualiza o de informa o georreferenciada Ap s os avan os efetuados no mbito desta disserta o e face necessidade de estarmos tamb m fo
83. rupo de localiza es poss veis tem a forma de hip rbole Na Figura 15 demostra se o uso da mesma onde a interse o de 3 hiperboles usada para determinadar a posi o do dispositivo movel x Figura 15 Localiza o baseada em TDoA De referir que esta t cnica teve como primeira aplica o um trabalho desenvolvido em 2005 sobre localiza o 23 e foi testada numa rede Wi Fi IEEE 802 11b sendo que os autores referem que o bom posicionamento geogr fico dos AP s o muito importantes para melhorar os resultados desta t cnica 28 2 Estado da Arte 2 3 5 RF fingerprinting A localiza o Radiofrequ ncia fingerprinting n o faz uso das medidas de tempo ao contr rio da ToA ou TDoA embora a fus o destas duas t cnicas de localiza o seja poss vel RF fingerprinting utiliza o RSS para calcular a localiza o do dispositivo em vez do tempo sendo que com nesta abordagem o RSSI medido por qualquer dispositivo m vel ou recetor de sensores As implementa es utilizando RSS t m desfrutado de uma vantagem de custo uma vez que os dispositivos n o necessitam de hardware espec fico Logo sistemas de localiza o baseados em RF fingerprinting s o normalmente f ceis de implementar e rent veis Numa fase inicial h um mapeamento do ambiente para posteriormente comparar em tempo real com uma base de dados pr armazenada Esta fase denominada de calibragem Devido a efeitos de propaga
84. s mas til que possa ser utilizado em qualquer situa o do dia a dia tanto em ambientes profissionais bem como pessoais Ap s feita uma revis o do estado da arte podemos dizer que a abordagem elaborada nesta disserta o torna se em algo diferente com caracter sticas tamb m diferentes das existentes pois face ao estudo e uso de v rios recursos pretende criar um novo conceito de intera o com o utilizador 1 Introdu o Numa forma introdut ria podemos dizer que o nosso estudo pretende proporcionar ao utilizador funcionalidades desde a localiza o de dispositivos at partilha de conte dos imagens ficheiros pdf v deos m sicas links atrav s mas n o s de movimentos direcionais em tempo real As principais metas s o e Fornecer uma prova de conceito est vel e confi vel capaz de realizar as funcionalidades chave e Acesso do Utilizador ao sistema mediante certas normas de seguran a e Localiza o de dispositivos m veis e Upload de ficheiros para a cloud e Partilha de conte dos com outros utilizadores e Apresentar o conte do partilhado atrav s de plugins incorporados pdf reader v deo player web browser music player image player 1 3 Motiva o Os sistemas m veis e ub quos constituem hoje uma rea de investiga o bastante abrangente e cuja import ncia tem vindo a crescer rapidamente e exemplo disso o crescimento acentuado do uso dos dispositivos m veis p
85. s Enquanto os ficheiros m considerados como ficheiros de c digo fonte podem conter c digo Objective C como c digo C 41 3 Desenvolvimento 3 1 3 Xcode Para desenvolver aplica es para iOS necess rio para al m de um computador Macintosh o Xcode Este um IDE ambiente de desenvolvimento integrado onde se pode fazer a gest o dos projetos edi o de c digo cria o de execut veis debug do projeto num simulador ou mesmo num dispositivo Apple entre outros 28 Na Figura 20 pode observar se uma janela de um projeto utilizando o Xcode soa HelloWorki xcodepro E idi TIZI am AS PM E gt gt H iPhon Build iuccendas m 403 P ra E fo g Ran Sms enema Ereakpoires eer ta tatn View Organizer BmeaAazZzeese 4 gt M hedodd 4 gt y m Melloworid KOJEC Summary into Bu d Settings Saik Phaves Build Rules target misting Bane SOM po o hew L ReadMe Ut e od IOS Appicmon Target gt Ce TARGETS gt Gay Other Sex Bund dertiter com yourcompary a S Version id 1 5 gt Frameworks gt Products Devkes Phone Deployer Target Phere iPod Deployment into Main Zorybourd Mah imete MeriWindew Sepported Daske Oriemations o LO ia 2 Portrait Upside Landscape Landscape Down Left Right App icons e rs a aus Add Target Vabdale Setting Figura 20 Janela de um projeto Xcode 28 O Xcode permite ao programador ap s construir a sua aplica o escolher onde a deseja ex
86. sm que respons vel pela captura e gest o das inten es do utilizador 7 Na Figura 3 podemos ver o esquema da arquitetura do Aura 11 2 Estado da Arte Figura 3 Arquitetura do Aura 44 2 1 4 Projeto Gaia O projeto Gaia desenvolvido na Universidade de Illinois pretende ser um sistema operativo que visa apoiar o desenvolvimento e a execu o de aplicativos port teis para espa os ativos Gaia uma infraestrutura middleware distribu da que coordena entidades de software e redes heter genas contidas num espa o f sico exportando servi os para consultar e utilizar os recursos existentes de modo a permitir o acesso e o uso do contexto atual oferecendo uma framework para desenvolvimento centrado no utilizador recurso consciente multi dispositivo sens vel ao contexto e a aplica es m veis 5 6 Figura 4 Espa o ativo de testes do Gaia 6 12 2 Estado da Arte 2 1 5 Projeto Interactive Workspaces O projeto Interactive Workspaces iniciado na Universidade de Stanford um projeto que investiga a conce o e utiliza o de saldas contendo v rios ecr s de alta resolu o com capacidade para integrar dispositivos port teis e de criar aplica es que integram a utiliza o de v rios dispositivos no espa o interativo 7 Figura 5 Vista da Sala Interativa iRoom 7 Na Figura 5 podemos observar o espa o interativo utilizado chamado iRoom uma infraestrutura de soft
87. ta open source O NetBeans IDE reconhecido pela maior parte dos utilizadores como sendo o original IDE de Java Por m este fornece suporte a v rias linguagens de programa o PHP JavaFX C C Javascript etc e frameworks 40 Este teve in cio em 1996 por um grupo de estudantes da Checoslov quia sendo que o seu nome inicial era Xelfi 40 48 3 Desenvolvimento Na Figura 26 podemos observar uma vis o geral da interface deste IDE Jobeet NetBeans IDE 7 0 File Edt View Navigate Source Refactor Run Debug Profile Team Tools Window Help Aaga Glo i347 BDB O Projects 4 x Fies x hp xj backend php ai backend dev php x aj frontend dev php x x infopage php x symfony x aj ProjectConfiguration class php x ital C modules Aee 44 pelf bela ulaas EC templates ED cache 7 lt php EO config 2 E E doctrine 3 require_once sytfony autoload sfCoredutoload class php B A error 4 sfCoreAutoload register a ProjectConfiguration class phip 5 E databases yml 6 class ProjectConfiguration extends sfProjectConfiguration ai properties ini 70 t 5 rsync_exclude txt 8 static protected zendLoaded false 5 vhost sample E pp EO data 10 static public function registerZend BC fixtures ung S E job dev index 12 if self zendLoaded S O sql s a OY doc E return aC n x aO Ib Hj is ProjectContiguretion class ph N
88. ta a estrutura do iOS dividindo a em duas camadas C e Cocoa S o utilizadas fun es da linguagem C para manipular a camada C que representa a camada do SO Enquanto a camada Cocoa sobrep e se camada C simplificando a programa o em iOS como por exemplo no uso da Framework Foudation string NSString em vez de usar a manipula o de strings em 31 39 3 Desenvolvimento Cmte Figura 18 Cocoa e CA como sendo as duas camadas do iOS 31 Uma das vantagens que se deve salientar do iOS que este disp e de um sistema de notifica es Apple Push Notification Service altamente robusto e eficiente para a propaga o de informa o nos dispositivos como iPhone iPad e iPod Touch Atrav s deste cada dispositivo estabelece uma liga o criptografada com o servi o que recebe notifica es Apesar de uma aplica o n o se encontrar em execu o a utiliza o deste sistema trabalhando em background permite que quando chegar uma notifica o o dispositivo avise o utilizador que a aplica o tem dados novos 35 Notifica es Push foram introduzidas na vers o 3 do iOS e na vers o 10 7 do OS X enquanto as notifica es locais Local notifications foram introduzidas na vers o 4 mas n o se encontram dispon veis no OS X 35 era Woss gt q LocalNotiffest Staff meeting in 15 minutes Close View Details Figura 19 Sistema de notifica es iOS 35 40 3 Desenvolvimento
89. te a respons vel por verificar se um determinado item utilizador est dentro do ngulo de vis o do dispositivo Para isso tem em considera o as coordenadas do item inclina o e azimute bem como as do dispositivo Primeiramente verifica se o azimute esquerda positivo e se o azimute a direita superior a 2PI de forma a que tanto o azimute esquerdo e direito estejam dentro do range 2PI Posteriormente verifica se se o azimute do item esta dentro do campo de vis o planar do dispositivo n o tendo em considera o a inclina o do 93 6 Anexo dispositivo Posteriormente lida a inclina o do dispositivo e comparada com a inclina o do item utilizador em quest o Por fim feita uma conjuga o entre o resultado planar e o resultado da inclina o dando como contido ou n o contido o item no campo de vis o do dispositivo BOOL viewportContainsCoordinate Poiltem coordinate 94 double centerAzimuth self centerCoordinate azimuth double leftAzimuth centerAzimuth VIEWPORT_WIDTH_RADIANS 2 0 if leftAzimuth lt 0 0 leftAzimuth 2 M_PI leftAzimuth double rightAzimuth centerAzimuth VIEWPORT_WIDTH_RADIANS 2 0 if rightAzimuth gt 2 M_PI rightAzimuth rightAzimuth 2 M_PI BOOL result coordinate azimuth gt leftAzimuth amp amp coordinate azimuth lt rightAzimuth if leftAzimuth gt rightAzimuth result coordinate azimuth lt
90. tilhada entre v rios clientes atrav s da internet como de um servi o se tratasse Em vez de ser instalado e feita a compra e manuten o ao software basta acede lo atrav s de um browser n o sendo necess rio o fornecimento de hardware ou outro tipo de software mais complexo Estas aplica es s o executadas em servidores de um determinado fornecedor O fornecedor disponibiliza o acesso aplica o incluindo 33 2 Estado da Arte seguran a disponibilidade e tamb m desempenho Assim os clientes n o precisam de investir em licen as de software ou em servidores 2 5 2 Platform as a Service PaaS basicamente s o servi os orientados para o desenvolvimento testes implementa o alojamento que suporta o desenvolvimento de aplica es aos developers Para estes o Paas reduz os problemas e despesas adicionais com configura o e implementa o das aplica es facilmente tornando as escal veis Permite tamb m a integra o com base dados e com web services 2 5 3 Infrastructure as a Service laaS tem como objetivo o fornecimento de uma infraestrutura computacional geralmente em ambientes virtualizados como um servi o Em vez do cliente comprar servidores para uma determinada aplica o somente precisa de solicitar um datacenter de acordo com os requisitos da infraestrutura tendo assim acesso plataforma e ao software O valor deste servi o varia mediante a necessidade do cliente e conforme a sua u
91. tiliza o 2 5 4 Public Cloud Nos servi os p blicos Public Cloud qualquer pessoa com liga o internet pode usufruir destes Aqui os servi os t m pouco ou nenhum controlo sobre a infraestrutura da tecnologia subjacente No entanto atraente pois reduz a complexidade e os longos prazos em testes e implementa o de novos produtos Normalmente o custo menor 34 2 Estado da Arte 2 5 5 Private Cloud No Private Cloud s o oferecidos praticamente os mesmos servi os do Public Cloud sendo que a diferen a est nos equipamentos e sistemas utilizados para construir essa mesma nuvem que se encontram dentro da infraestrutura da pr pria empresa Ou seja a empresa tem uma nuvem s para si constru da e mantida dentro dos seus dom nios A necessidade de seguran a e privacidade um dos fortes motivos para que as empresas adotem este tipo de nuvem pois estas por vezes t m dados cr ticos e demasiado importantes para permitirem que outra empresa responda pela sua prote o A vantagem que a nuvem pode ser moldada com maior precis o s necessidades da empresa A desvantagem que existe um custo elevado pelo menos no in cio do processo mas por outro lado existem benef cios que ser o obtidos a medio e longo prazo que compensar o os gastos como por exemplo a seguran a ou a agilidade dos processos 2 5 6 Providers Fornecedores O Google Apps um pacote de servi os que a Google oferece que
92. tir desse ngulo gerado verificado se o mesmo est dentro do m ximo definido pelo prot tipo que 10 e caso esteja o pedido de transfer ncia pode ser efetuada Caso contr rio ser ignorada a a o Caso existam dois ou mais utilizadores com o mesmo ngulo de diferen a ent o a menor dist ncia entre o ponto de cada utilizador e o ponto referencial que dita qual o utilizador escolhido para a transfer ncia 3 1 12 Realidade Aumentada A Realidade Aumentada AR uma rea que tem vindo a evoluir ao longo do tempo sendo parte integrante na investiga o da realidade virtual que por sua vez mistura o mundo real com o mundo virtual A AR possui algumas configura es sendo que uma delas funciona atrav s do reconhecimento de padr es Aqui o software processa uma imagem capturada por uma c mara e identifica o posicionamento do padr o para posteriormente ilustrar um objeto virtual com base nesse mesmo posicionamento No prot tipo desenvolvido estamos a colocar um ponto no espa o 3D atrav s dos valores de longitude latitude e altitude n o estando procura de nenhum padr o Sabendo onde este ponto se encontra e atrav s do nosso sistema ilustramos visualmente o utilizador No mbito do nosso projeto recorremos a t cnicas de realidade aumentada onde o sistema mistura o sinal de v deo com o radar respons vel pela representa o geogr fica de utilizadores Na eventualidade de algum utilizad
93. ugmented Reality Realidade Aumentada Base Station Esta o Base Nuvem de Computa o German National Research Center for Information Technology Global Positioning System Sistema de Posicionamento Global Human computer interaction Intera o Humano Computador HyperText Markup Language Linguagem de Marca o de Hipertexto HyperText Transfer Protocol Protocolo de Transfer ncia de Hipertexto Infrastructure as a Service Infraestrutura como um Servi o Integrated Development Enviroment Ambiente Integrado de Desenvolvimento Institute of Electrical and Electronics Engineers Instituto de Engenheiros Eletricistas e Eletr nicos Integrated Publication and Information Systems Institute Interactive Room Interactive Room Operating System Line of Sight Model View Controller Non Line of Sight Operating System Sistema Operativo Plataform as a Service Plataforma como um Servi o Personal Home Page R dio Frequ ncia XV RSSI RSS SaaS SDK SGBD SS SOAP TDoA ToA Xerox PARC XML Wi Fi WLAN xvi Received Signal Strength Indicator Indicador de For a de Sinal recebido Received Signal Strength For a de Sinal Recebido Software as a Service Software como um Servi o Software Development Kit Sistema de Gest o de Base de Dados Signal Strength Simple Object Access Protocol Protocolo Simples de Acesso a Objetos Time Difference of Arrival Time of Arrival Centro de Pesquisa de Tecnolog
94. uma vez que a computa o ub qua quer se presente neste trabalho vimo nos obrigados a falar sobre Cloud Computing Nuvem de Computa o 32 2 Estado da Arte De uma maneira simplista podemos a abordar o tema Cloud Computing como sendo algo onde podemos aceder a ficheiros dados programas e servi os desde que haja uma liga o internet onde estes s o alocados num determinado fornecedor pagando apenas pelos recursos e servi os utilizados O mundo da internet j se encontra bastante enraizado no nosso dia e o Cloud Computing representa um novo paradigma de mudan a no que implementa o de sistemas distribu dos diz respeito que se concentra em fornecer servi os escal veis fazendo uso de tecnologias existentes tais como a virtualiza o Estes servi os est o tipicamente divididos em tr s categorias Infraestrutura como um Servi o laaS Plataforma como um Servi o Paas e Software como um Servi o SaaS Os tipos de tecnologia de Cloud Computing podem ser vistos em duas perspetivas capacidade e acesso Na Figura 16 podemos ver tr s tipos baseados na capacidade e dois baseados no acesso a recursos 27 R Public Cloud Acesso P blico Tipos baseados na Capacidade Tipos baseados no Acesso Figura 16 Cloud Computing os v rios tipos baseados na capacidade e no acesso 2 5 1 Software as a Service SaaS uma metodologia baseada em um para muitos onde uma aplica o par
95. va com o computador 3 O Easyliving tinha tamb m utilidade em laborat rios pois quando uma pessoa entrava nele recebia uma identifica o provis ria podendo aceder a um computador ou dispositivo com uma senha ou scanner biom trico Se eventualmente a pessoa mudasse de sala e acedesse a outro dispositivo automaticamente era transferida a informa o do antigo display para o novo do computador em uso 4 Na Figura 2 temos uma ilustra o presente no artigo 4 onde existem num escrit rio 3 hotspots A interface do utilizador migra entre os 3 monitores pois este movimenta se de hotspot em hotspot 4 10 2 Estado da Arte Figura 2 Espa o de testes do Easyliving 3 2 1 3 Projeto AURA No projeto Aura foram desenvolvidos arquiteturas de sistema algoritmos interfaces e t cnicas de avalia o que visam minimizar distra es do utilizador criando um ambiente que se adapta ao contexto e s suas necessidades O Aura assenta em componentes sistemas j existentes como o Coda e o Odyssey que foram sendo adaptados alterados de maneira a atender s necessidades da computa o pervasiva O Odyssey suporta monitoriza o de recursos e adapta o de aplica es enquanto o Coda fornece suporte para o acesso a ficheiros com adapta o de rede Depois temos o Spectra que um mecanismo de execu o remota que usa o contexto para decidir a melhor forma de executar a chamada remota Por fim temos o Pri
96. ware para esse ambiente chamado iROS e experi ncias de intera o humano computador HCI no espa o A iROS possui 3 subsistemas o Event Heap que o mecanismo que coordena as intera es das aplica es em execu o e os demais subsistemas do iROS armazenando e enviando mensagens conhecidas como eventos onde cada uma uma cole o de campos nome tipo valor o Data Heap que facilita a movimenta o dos dados no espa o interativo o iCrafter que fornece um sistema para an ncios publicidade e invoca o de servi os 7 13 2 Estado da Arte 2 1 6 Projeto Roomware O projeto Roomware proveniente do GMD IPSI consiste na integra o de elementos aumentados ex paredes portas m veis com mesas cadeiras etc com dispositivos computacionais de informa o cooperative buildings tornando os interativos fornecendo suporte para a cria o edi o e apresenta o de informa es Utilizando uma infraestrutura de rede onde os componentes est o ligados na mesma permite acesso em toda a parte As cadeiras e a mesa s o m veis devido s redes sem fios independentemente dos fornecimento da energia Utiliza uma infraestrutura de software que permite que as pessoas comuniquem e partilhem de informa o onde mediante uma infraestrutura de localiza o e sensorial estas podem faz lo em qualquer parte permitindo a mobilidade dentro do ambiente Assim sendo o objetivo principal do Roomware permiti
97. xaustivo Mas como desvantagem apresentam elevados requisitos de sincroniza o com um hardware complexo logo pre o mais elevado necessitando de maiores requisitos de largura de banda tornando se muito sens vel a condi es NLOS Quanto t cnica AoA esta somente necessita de 2 medidas para localiza o a 2D e 3 para 3D n o necessitando de elevados requisitos de sincroniza o e de treino exaustivo Por m esta t cnica apresenta como desvantagem o fato de tamb m necessitar de hardware complexo e de ter elevados problemas em condi es NLOS Quanto t cnica RSSI tem como vantagem o fato de usar hardware simples sem custos adicionais de sincronismo com maior resist ncia para condi es NLOS e uma menor sensibilidade largura de banda Por m apresenta como desvantagens a menor exatid o comparativamente com as t cnicas anteriores isto em condi es LOS Tamb m necessitam de elevado tempo de treino e de algoritmos de elevada complexidade n o apresentado assim elevada escalabilidade 15 30 2 Estado da Arte Quanto t cnica Cell lD a principal vantagem a facilidade de aplica o pois n o necessita de algoritmos complexos e assim o desempenho do posicionamento bastante r pido Por m a principal desvantagem centra se na granularidade pois por vezes os dispositivos podem ser associados a c lulas que n o est o na proximidade f sica apesar das outras c lulas vizinhas poderem ser melhores
98. za o ser praticamente a exata do dispositivo Ou seja se estivermos num ambiente outdoor com sinal GPS e com alguns hotspots Wi Fi dispon veis podemos obter uma localiza o mais precisa J em ambientes indoor este valor poder ser maior 3 2 Prova do Conceito Proposto O sistema tenta dar uma prova de conceito permitindo aos utilizadores procurarem por outros dispositivos utilizadores atrav s de mecanismos de localiza o 52 3 Desenvolvimento partilhando um dos seus documentos com os demais atrav s de movimentos de arrastamento no dispositivo O sistema tem como base a linguagem Objective C para o lado do cliente e PHP para o lado do servidor Este ltimo respons vel por responder aos pedidos a partir do sistema do lado do cliente que se encontra instalada no dispositivo do utilizador A solu o a partir do lado do cliente permite para al m da localiza o dos dispositivos e partilha de documentos a visualiza o da lista de documentos associada ao utilizador bem como os respetivos players para cada tipo de documento desde PDF Reader Movie Player Music Player URL Player e Image Player 3 2 1 Arquitetura do Sistema Esta se o tem como objetivo explicar a arquitetura onde assenta o prot tipo UbiShare de modo a dar resposta aos prop sitos inicialmente abordados tal como se pode verificar atrav s da Figura 28 o TT Webservice API E Web Server UbiShare Util
Download Pdf Manuals
Related Search
Related Contents
Samsung SC5125 คู่มือการใช้งาน Moen Villeta TL2302CP User's Manual Folleto Marlon ST Olympus FE-25 Instruction Manual <セット内容> <こまもりギフトの流れ> <価格 Programma - Festival Anima AdvancedFrame AdvancedFrame2 AdvancedFrame Convertible Philips CD Soundmachine w/ Dynamic Bass Boost Tripp Lite 1-Year Warranty Extension SD Formatter 3.1 User`s Manual Copyright © All rights reserved.
Failed to retrieve file