DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … ·...

288
DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC (NEAR FIELD COMMUNICATION) PARA LA VERIFICACIÓN DE INFORMACIÓN DE VEHÍCULOS USANDO SMARTPHONES CON SISTEMA OPERATIVO ANDROID Miguel Ángel González Garzón, 9812043 UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA INGENIERÍA DE SISTEMAS BOGOTÁ - COLOMBIA 2017

Transcript of DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … ·...

Page 1: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE

IDENTIFICACIÓN CON NFC (NEAR FIELD COMMUNICATION) PARA LA

VERIFICACIÓN DE INFORMACIÓN DE VEHÍCULOS USANDO SMARTPHONES

CON SISTEMA OPERATIVO ANDROID

Miguel Ángel González Garzón, 9812043

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

FACULTAD DE INGENIERÍA

INGENIERÍA DE SISTEMAS

BOGOTÁ - COLOMBIA

2017

Page 2: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE

IDENTIFICACIÓN CON NFC (NEAR FIELD COMMUNICATION) PARA LA

VERIFICACIÓN DE INFORMACIÓN DE VEHÍCULOS USANDO SMARTPHONES

CON SISTEMA OPERATIVO ANDROID

Miguel Ángel González Garzón

Cod: 9812043

Trabajo de grado para optar al título

de Ingeniero de Sistemas

Director

Alberto Acosta López

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

FACULTAD DE INGENIERÍA

INGENIERÍA DE SISTEMAS

BOGOTÁ - COLOMBIA

2017

Page 3: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

3

Nota de aceptación __________________________ __________________________ __________________________ __________________________ __________________________ __________________________

__________________________ Firma del director

__________________________ Firma del jurado

__________________________ Firma del jurado

Bogotá, 1 de marzo de 2017

Page 4: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

4

Dedicatoria

Este trabajo de grado va dedicado a mis padres, en especial al trabajo y esfuerzo de mi madre, quien nunca perdió la ilusión en mí, gracias porque esto es un regalo para ti.

Page 5: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

5

Agradecimientos

Gracias a DIOS por la vida, salud y sabiduría para cerrar esta etapa.

Quiero agradecer a Tania Muñoz, a mis dos hijas, Laura y Emily gracias a ellas por

todo el tiempo robado y ser tan importantes en mi vida.

De nada valdría este esfuerzo sin agradecer igualmente a mi Tía María Helena

Garzón, de quien recibí su apoyo.

Gracias a mi Padre y hermanos.

Page 6: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

6

CONTENIDO

pág.

LISTA DE TABLAS ................................................................................................. 17

LISTA DE FIGURAS .............................................................................................. 19

GLOSARIO ............................................................................................................ 24

RESUMEN ............................................................................................................. 26

INTRODUCCIÓN ................................................................................................... 27

1. PLANTEAMIENTO DEL PROBLEMA ................................................................ 29

1.1 JUSTIFICACIÓN .............................................................................................. 30

1.2 OBJETIVOS ..................................................................................................... 31

1.2.1 Objetivo General ........................................................................................... 31

1.2.2 Objetivos Específicos .................................................................................... 31

1.3 ALCANCES ...................................................................................................... 32

1.4 LIMITACIONES ................................................................................................ 33

1.5 IMPACTO SOCIAL ........................................................................................... 33

1.6 PERTENENCIA SOCIAL .................................................................................. 33

1.7 APORTE A LA EDUCACIÓN ............................................................................ 33

1.8 IMPACTO AMBIENTAL .................................................................................... 34

1.9 PROBLEMÁTICA Y OPORTUNIDAD .............................................................. 35

1.10 METODOLOGÍA ............................................................................................ 36

1.10.1 Tipo de investigación. ................................................................................. 36

1.10.2 Fases de investigación................................................................................ 36

1.10.2.1 Fase de Planeación. ................................................................................ 36

1.10.2.2 Fase De Recolección De Información. ..................................................... 36

1.10.2.3 Fase de Documentación en NFC. ............................................................ 37

Page 7: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

7

1.10.2.4 Fase de Desarrollo - Metodología XP de Software. ................................. 37

1.10.2.5 Fase de Desarrollo. .................................................................................. 37

1.10.2.6 Fase de Instalación de Software. ............................................................. 37

1.10.2.7 Fase de Pruebas. ..................................................................................... 38

1.10.2.8 Fase de documentación. .......................................................................... 38

2. MARCO TEÓRICO ............................................................................................ 39

2.1 NFC NEAR FIELD COMMUNICATION ............................................................ 39

2.2 ORIGEN Y DESARROLLO .............................................................................. 40

2.3 HISTORIA DE NFC .......................................................................................... 40

2.4 PRINCIPALES VENTAJAS DE NFC ................................................................ 41

2.5 DISPOSITIVOS INTELIGENTES NFC ............................................................ 42

2.5.1 Teléfono Móvil con NFC. ............................................................................... 42

2.5.2 Lector de NFC. .............................................................................................. 42

2.5.3 Etiqueta NFC. ............................................................................................... 43

2.6 EVOLUCIÓN DE NFC ..................................................................................... 43

2.6.1 Códigos de Barras. ....................................................................................... 43

2.6.2 Tarjetas de Banda Magnética. ....................................................................... 44

2.6.3 Tarjetas Inteligentes. ..................................................................................... 44

2.6.3.1 Tarjetas de Contacto .................................................................................. 44

2.6.3.2 Tarjetas Inteligentes Sin Contacto. ............................................................. 44

2.6.3.3 Tarjetas Hibridas. ....................................................................................... 45

2.6.4 Normas y Especificaciones de Tarjetas. ........................................................ 45

2.6.5 Clases de Tarjetas......................................................................................... 46

2.6.5.1 Tarjetas Mifare............................................................................................ 46

2.6.5.2 Tarjetas Calypso. ........................................................................................ 46

2.6.5.3 Tarjetas FeliCa. .......................................................................................... 46

2.7 OPERACIÓN ENTRE DISPOSITIVOS NFC .................................................... 47

2.8 COMUNICACIÓN DE LA TECNOLOGÍA NFC ................................................. 47

2.9 ARQUITECTURA DE NFC EN TELÉFONOS MÓVILES ................................. 48

2.10 CLASIFICACIÓN DE LOS DISPOSITIVOS NFC ........................................... 49

Page 8: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

8

2.10.1 Activo vs Pasivos. ....................................................................................... 49

2.10.2 INICIADOR VS. DESTINO NFC. ................................................................ 49

2.11 NFC FORUM TIPOS DE ETIQUETAS ........................................................... 50

2.11.1 Tag Tipo 1. ................................................................................................... 50

2.11.2 Tag Tipo 2. ................................................................................................... 51

2.11.3 Tag Tipo 3. ................................................................................................... 51

2.11.4 Tag Tipo 4. ................................................................................................... 51

2.12 TIPOS DE CHIPS NFC .................................................................................. 51

2.12.1 Chip NTAG203. ........................................................................................... 52

2.12.2 Chip NTAG212 y NTAG213......................................................................... 52

2.12.3 Chip NTAG215 y NTAG216......................................................................... 52

2.12.4. Chip Mifare Ultralight.................................................................................. 52

2.12.5 Chip Mifare Classic 1K ................................................................................ 52

2.13 FASES DE LA COMUNICACIÓN EN NFC ..................................................... 52

2.14 MODOS DE FUNCIONAMIENTO. ................................................................ 53

2.14.1 Modo Pasivo. .............................................................................................. 53

2.14.2 Modo Activo. ............................................................................................... 54

2.15 ESTÁNDARES DE NFC EN DISPOSITIVOS MÓVILES ............................... 54

2.16 MODOS DE FUNCIONAMIENTO NFC .......................................................... 55

2.16.1 Modo de Lectura / Escritura ........................................................................ 55

2.16.1.1 Usos de lectura y escritura ....................................................................... 56

2.16.2 Modo punto a punto. ................................................................................... 59

2.16.3 Modo de Emulación de Tarjeta. ................................................................... 61

2.16.3.1 Modo de Emulación de Tarjeta ................................................................. 65

2.17 OTA ................................................................................................................ 67

2.18 Secure Element (SE) ..................................................................................... 67

2.19 DIFERENCIAS ENTRE NFC Y CÓDIGO DE BARRAS ................................. 69

2.20 NFC FÓRUM ................................................................................................. 70

2.20.1 Ecosistema NFC. ........................................................................................ 71

2.20.2 NFC Forum Ayuda a Construir el Ecosistema. ............................................ 71

2.21 ESTÁNDARES NFC ...................................................................................... 71

2.22 FUNCIONAMIENTO TÉCNICO DE NFC ....................................................... 73

2.22.1 Near Field Communication Interface and Protocol (NFCIP): ....................... 74

Page 9: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

9

2.23 NFC PROTOCOLO (NFCIP- 1) ..................................................................... 74

2.23.2 NFC INTERFACE PROTOCOLO (NFCIP- 2) ............................................. 75

2.24 COMPONENTES ADICIONALES .................................................................. 77

2.24.1 Tag o Chip NFC / RFID ............................................................................... 77

2.24.2 Lector NFC .................................................................................................. 78

3. SOFTWARE ....................................................................................................... 80

3.1 BASES DE DATOS .......................................................................................... 80

3.2 ARQUITECTURA CLIENTE-SERVIDOR PARA BASES DE DATOS ............... 81

3.2.1 Conceptos de Arquitectura Cliente / Servidor. ............................................... 81

3.3 COMPONENTES CLIENTE/SERVIDOR ......................................................... 82

3.4 ARQUITECTURA DE 3 CAPAS ....................................................................... 82

3.5 SERVICIOS WEB ............................................................................................ 83

3.5.2 Funcionamiento de Servicios Web. ............................................................... 83

3.6 INGENIERÍA DE SOFTWARE ......................................................................... 86

3.6.1 Ciclo de Vida del Software. ........................................................................... 86

3.7 PROGRAMACIÓN EXTREMA ......................................................................... 86

3.7.1. Historias de Usuario. .................................................................................... 88

3.7.2. Roles XP. ..................................................................................................... 88

3.7.3. Proceso XP. ................................................................................................. 89

3.7.4. PRÁCTICAS XP ........................................................................................... 89

4. ANDROID........................................................................................................... 91

4.1 QUE ES ANDROID .......................................................................................... 91

4.2 ARQUITECTURA ............................................................................................. 92

4.3 HISTORIA ........................................................................................................ 92

4.4 USO DE VERSIONES ANDROID ................................................................... 93

4.5 CARACTERÍSTICAS Y FUNCIONES ACTUALES .......................................... 95

4.6 ANDROID SDK ................................................................................................ 99

4.7 VERSIONES Y NIVELES DE API FRAMEWORK............................................ 99

Page 10: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

10

4.8 ANDROID STUDIO ........................................................................................ 102

4.9 DALVIK VIRTUAL MACHINE (DVM) .............................................................. 103

4.10 ART ANDROID RUNTIME ........................................................................... 104

4.11 JIT ................................................................................................................ 104

4.12 OAT .............................................................................................................. 105

5. ANDROID API ANDROID PARA EL DESARROLLO NFC ............................... 107

5.1 RESUMEN DE CLASES ................................................................................ 107

5.2 INTERFACES ................................................................................................ 107

5.3 EXCEPTIONS ................................................................................................ 108

5.4 SISTEMA DE DESPACHO TAG ..................................................................... 108

5.5 DISTRIBUCIÓN DE ETIQUETAS NFC PARA APLICACIONES .................... 111

5.6 FUNCIONAMIENTO SISTEMA DE DESPACHO TAG ................................... 112

5.7 SOLICITUD DE ACCESO NFC EN EL MANIFIESTO DE ANDROID ............ 113

5.8 FILTRADO POR DISPOSITIVO ..................................................................... 114

5.9 INTENTOS DE FILTRADO PARA NFC .......................................................... 114

5.9.1 ACTION_NDEF_DISCOVERED ................................................................. 115

5.9.2 ACTION_TECH_DISCOVERED ................................................................. 115

5.9.3 ACTION_TAG_DISCOVERED .................................................................... 117

5.10 OBTENCIÓN DE INFORMACIÓN DE LAS INTENCIONES ........................ 117

5.11 DESCUBRIR UN TAG NFC .......................................................................... 118

5.12 CREACIÓN DE TIPOS COMUNES DE REGISTROS NDEF ...................... 118

5.12.1 Compatibilidad Con Una Intención ACTION_NDEF_DISCOVERED ........ 118

5.12.2 TNF_ABSOLUTE_URI .............................................................................. 119

5.12.3 TNF_MIME_MEDIA .................................................................................. 119

5.12.4 TNF_WELL_KNOW .................................................................................. 120

5.12.5 TNF_WELL_KNOWN with RTD_TEXT ..................................................... 120

5.12.6 TNF_WELL_KNOWN with RTD_URI: ....................................................... 121

5.12.7 TNF_EXTERNAL_TYPE: .......................................................................... 122

5.12.8 TNF_EMPTY, TNF_UNCHANGED y TNF_UNKNOWN ............................ 123

5.13 TECNOLOGÍAS DE TAGS SOPORTADOS ................................................. 124

Page 11: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

11

5.14 TAGS Y LA INTENCIÓN ACTION_TECH_DISCOVERED ........................... 125

5.15 COMPATIBILIDAD CON UNA INTENCIÓN ACTION_TECH_D. .................. 126

5.16 COMPATIBILIDAD CON UNA INTENCIÓN ACTION_TAG_DISCOVERED 127

5.17 ANDROID APPLICATION RECORDS .......................................................... 128

5.18 FOREGROUND DISPATCH......................................................................... 128

5.19 LEER UN TAG NFC ..................................................................................... 130

5.19.1 Determinar El Contenido De Un Tag NDEF .............................................. 131

5.19.2 Leer Una URI ............................................................................................ 131

5.19.3 Leer Una Cadena De Caracteres .............................................................. 132

5.19.4 Leer Un Tipo MIME ................................................................................... 133

5.19.5 Leer Un Tag De Tipo TNF_WELL_KNOWN .............................................. 133

5.20 ESCRIBIR UN TAG NFC ............................................................................. 134

5.21 CONSTRUIR UN PAYLOAD DE TIPO TEXTO ........................................... 135

5.22 CONSTRUIR UN PAYLOAD DE TIPO URI .................................................. 136

5.23 DEFINIR UN REGISTRO NDEFRECORD CON LAS API 14 Y 16 .............. 137

6. ESTADO DEL ARTE ........................................................................................ 139

6.1 ESTADO DEL ARTE NFC COLOMBIA .......................................................... 139

6.1.1 Transmilenio y SITP – TransmiSitp. ............................................................ 139

6.1.2 Tarjeta tullave. ............................................................................................. 140

6.2 ESTADO DEL ARTE NFC EXTERIOR ........................................................... 142

6.2.1 Google Wallet. ............................................................................................. 142

6.2.2 Angry Birds Magic. ...................................................................................... 143

6.2.3 Foursquare. ................................................................................................. 144

6.2.4 Android Beam. ............................................................................................ 144

6.2.5 Universidad Católica San Antonio de Murcia. ............................................. 144

6.2.6 Sector de los Taxis. ..................................................................................... 145

6.2.7 Vodafone Posters Inteligentes con NFC en Gijón. ...................................... 145

6.3 USO DE NFC EN BIBLIOTECAS .................................................................. 146

6.3.1 La Biblioteca Pública de Hanno. ................................................................. 146

6.3.2 Biblioteca Pública Austriaca. ....................................................................... 147

Page 12: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

12

6.3.3 Underground Biblioteca............................................................................... 147

6.4 USO DE NFC EN VEHICULOS ..................................................................... 148

6.5 TRANSPORTE PUBLICO .............................................................................. 150

6.5.1 Metro de NEW YORK. ................................................................................ 150

6.5.2 Transporte Público Español ........................................................................ 150

6.6 IDENTIFICACIÓN VEHICULAR CON NFC ................................................... 151

6.7 HOGAR .......................................................................................................... 152

6.7.1 Uso de NFC en Juguetes. ........................................................................... 152

6.7.2 Proyectores NFC. ....................................................................................... 152

6.7.3 Tecnología de Sony con NFC ..................................................................... 153

6.7.4 Bafles con NFC. .......................................................................................... 154

6.7.5 Relojes NFC. ............................................................................................... 155

6.7.6 Auriculares NFC. ......................................................................................... 155

6.7.7 Impresoras NFC. ......................................................................................... 156

6.8 SISTEMA DE PAGOS CON NFC ................................................................... 157

6.8.1 Tap to Pay. .................................................................................................. 157

6.8.2 Sasmsug Pay. ............................................................................................. 157

6.8.3 Apple Pay. ................................................................................................... 159

6.8.4 Android Pay. ................................................................................................ 160

6.9 APPS DE GOOGLE PLAY NFC ..................................................................... 161

6.9.1 NFC TagInfo. ............................................................................................... 161

6.9.2 NFC TagWriter by NXP. ............................................................................... 162

6.9.4 NFC Classic Tag Reader Writer. ................................................................. 164

6.9.5 Trigger. ........................................................................................................ 164

6.9.6 NFC Actions. ............................................................................................... 165

6.9.7 NFC TagInfo by NXP. .................................................................................. 166

6.9.8 NFC Developer. .......................................................................................... 167

6.9.9 NFC Tools. .................................................................................................. 168

6.9.10 Otras Aplicaciones NFC en Google Play. .................................................. 169

6.10 TELÉFONOS CON TECNOLOGÍA NFC. ..................................................... 173

7. DISEÑO DEL SISTEMA ................................................................................... 179

Page 13: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

13

7.1 REQUISITOS FUNCIONALES ...................................................................... 179

7.2. ARQUITECTURA DEL SISTEMA NFC VEHÍCULOS .................................... 180

7.3 ARQUITECTURA DE LECTURA NFC ........................................................... 181

7.3.1 Niveles. ....................................................................................................... 181

7.3.2 Componentes. ............................................................................................. 181

7.3.3 Protocolos NFC: .......................................................................................... 182

7.4 ARQUITECTURA DE LA APLICACIÓN NFC VEHICULAR ............................ 182

7.4.1 NIVELES ..................................................................................................... 182

7.4.2 COMPONENTES ........................................................................................ 183

7.4.3 PROTOCOLOS ........................................................................................... 183

7.5 PROCESO DE INGENIERÍA DE SOFTWARE............................................... 184

7.5.1 DIAGRAMA DE CLASES ............................................................................ 184

7.5.2 DIAGRAMA DE SECUENCIA SISTEMA MÓVIL ......................................... 185

7.5.3 DIAGRAMA DE ACTIVIDADES SISTEMA MÓVIL ...................................... 186

7.5.4 DIAGRAMA COLABORACIÓN ................................................................... 187

8. TECNOLOGÍAS DE SOFTWARE APLICADAS ............................................... 188

8.1 BOOTSTRAP ................................................................................................. 188

8.2 JAVA .............................................................................................................. 188

8.3 MySQL ........................................................................................................... 188

8.4 ASP.NET ....................................................................................................... 189

8.5 ANDROID STUDIO Y ECLIPSE ..................................................................... 189

8.6 PHP ............................................................................................................... 189

9. DESARROLLO DEL SISTEMA ........................................................................ 190

9.1 REQUERIMIENTOS DE IMPLEMENTACIÓN CON NFC .............................. 190

9.2 REQUERIMIENTOS DE SELECCIÓN DE ETIQUETA NFC ADECUADA ..... 191

9.2.1 Selección de Etiqueta NFC ......................................................................... 192

9.3 SISTEMA DE LECTURA NFC EN ANDROID ................................................ 193

9.4 IMPLEMENTACIÓN DEL PILOTO ................................................................. 193

Page 14: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

14

9.5 EJECUCIÓN DEL PILOTO ............................................................................ 194

9.6 RESULTADOS DEL PILOTO ......................................................................... 196

9.7 APLICACIÓN WEB VEHÍCULOS ................................................................... 196

9.7.1 Servidor. ...................................................................................................... 196

9.7.2 Dominio. ...................................................................................................... 196

9.7.3 Diseño. ........................................................................................................ 197

9.7.4 Administración de la Base de Datos. .......................................................... 197

9.7.5 Base de Datos ............................................................................................ 198

9.7.6 Código SQL de la tabla Administrator ......................................................... 198

9.7.7 Código SQL de la tabla usertbl ................................................................... 199

9.7.8 Código SQL de la tabla Vehículos. .............................................................. 199

9.8 AUTENTICACION DE USUARIOS ................................................................ 200

9.9 ADMINISTRACIÓN DE TAGS ........................................................................ 201

9.9.1 Menú de Navegación. ................................................................................. 201

9.9.2 Vista para Edición de Tags. ......................................................................... 201

9.9.3 Borrar Registro de Tags. ............................................................................. 202

9.9.4 Registro de Nuevo Tag ................................................................................ 203

9.9.5 Administración de Usuarios. ........................................................................ 203

9.10 WEB SERVICIE ........................................................................................... 204

9.10.1 Librería KSOAP2 ...................................................................................... 205

9.10.2 Acceso a Web Service .............................................................................. 206

9.10.3 SOAP 1.1 .................................................................................................. 206

9.10.4 SOAP 1.2 .................................................................................................. 208

9.10.5 Funcionamiento de WebServiceTransito................................................... 209

9.10.6 Código fuente WebService. ...................................................................... 210

9.11 APP MÓVIL ANDROID ................................................................................. 213

9.11.1 Aplicación Móvil Transito. .......................................................................... 213

9.11.2 Permiso de NFC e Internet ........................................................................ 213

9.11.3 AndrodiManifest.xml. ................................................................................. 213

9.11.4 Contenido de AndroidManifest de la Aplicación NFCAPP. ........................ 213

9.11.5 Actividad Principal NFCAppActivity ........................................................... 215

9.11.6 TagViewer. ................................................................................................. 218

9.11.7 Recepción de Datos de WebService ......................................................... 219

Page 15: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

15

9.11.8 Generar APK de la App NFC ..................................................................... 222

9.11.10 Ejecución de Aplicación NFC Transito ..................................................... 228

10. PRUEBAS Y FUNCIONAMIENTO. ................................................................ 232

10.1 PRUEBAS DE REGISTRO DE TAGS .......................................................... 232

10.2 PRUEBAS DE INSTALACIÓN DE TAGS EN VEHÍCULOS ......................... 232

10.3 PRUEBA DE INSTALACIÓN DE APP MÓVIL .............................................. 233

10.4 PRUEBA DE WEB SERVICE ....................................................................... 233

10.5 PRUEBA EN DIFERENTES DISPOSITIVOS MÓVILES .............................. 234

10.6 PRUEBA DE LECTURA DE TAGS EN VEHÍCULOS ................................... 234

10.7 PRUEBA DE CONSULTA DE INFORMACIÓN SEGÚN TAGS .................... 234

10.8 Recolección Datos y Pruebas de Lectura .................................................... 238

11. RESULTADOS OBTENIDOS .......................................................................... 271

11.1 FUNCIONAMIENTO TÉCNICO DE LA TECNOLOGÍA NFC ........................ 272

11.2 DISEÑO E IMPLEMENTACIÓN DE UNA HERRAMIENTA DE SOFTWARE MÓVIL Y WEB PARA LA IDENTIFICACIÓN Y CONTROL DE VEHÍCULOS .......... 272

11.3 APLICACIÓN WEB VEHÍCULOS ................................................................. 272

11.4 APP MÓVIL TRANSITO ............................................................................... 273

11.5 PRINCIPALES CARACTERÍSTICAS DEL API DE ANDROID ...................... 273

11.6 ESTÁNDARES DE TAGS USADOS PARA LA LECTURA CON NFC .......... 273

11.7 DISEÑO UN SISTEMA DE BASE DE DATOS QUE PERMITA MOSTRAR LA INFORMACIÓN DE LOS VEHÍCULOS ................................................................. 274

11.8 DESARROLLO DE UN SERVICIO WEB ..................................................... 274

12. ANÁLISIS DE RESULTADOS DE LAS PRUEBAS......................................... 276

12.1 INSTALACIÓN DE TAGS ............................................................................. 276

12.2 REGISTRO DE TAGS .................................................................................. 276

12.2 LECTURA DE TAGS Y RESPUESTA DE DATOS ........................................ 277

Page 16: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

16

12.4 PRUEBA DE DATOS MÓVILES Y WI- FI ..................................................... 279

12.5 PRUEBAS DE TAGS ................................................................................... 279

12.5.1 Instalación de Tags en Vehículos .............................................................. 279

12.5.2. Tags. ........................................................................................................ 279

13. TRABAJO FUTURO ................................................................................... 281

14. CONCLUSIONES .......................................................................................... 282

Bibliografía ........................................................................................................... 284

Page 17: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

17

LISTA DE TABLAS

pág.

Tabla 1 Ventajas de uso de NFC en vehículos 35 Tabla 2. Historia de NFC 41 Tabla 3. Diferencias entre NFC y código de barras 70 Tabla 4. Diferencias entre metodologías ágiles y no ágiles 87 Tabla 5. Funciones de Android 6.0 Marshmallow 95 Tabla 6. Versiones y API de Android 100 Tabla 7. Nombre Tipo De Formato (TNF) Y Sus Asignaciones 109 Tabla 8. RTD para TNF_WELL_KNOWN y sus asignaciones 110 Tabla 9. Protocolos de tipo URI para el primer Byte 132 Tabla 10. Protocolos de tipo URI para el primer Byte 133 Tabla 11. Tabla de Aplicaciones NFC Google Play 169 Tabla 12. Lista de Telefonos con NFC 173 Tabla 13. Comparación De Teléfonos Usados Y Compatibilidad De Tags 238 Tabla 14. Pruebas lectura tags NFC en vehículos. Prueba N° 1 239 Tabla 15. Pruebas lectura tags NFC en vehículos. Prueba N° 2 240 Tabla 16. Pruebas lectura tags NFC en vehículos. Prueba N° 3 241 Tabla 17. Pruebas lectura tags NFC en vehículos. Prueba N° 4 242 Tabla 18. Pruebas lectura tags NFC en vehículos. Prueba N° 5 243 Tabla 19. Pruebas lectura tags NFC en vehículos. Prueba N° 6 244 Tabla 20. Pruebas lectura tags NFC en vehículos. Prueba N° 7 245

Page 18: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

18

Tabla 21. Pruebas lectura tags NFC en vehículos. Prueba N° 8 246 Tabla 22. Pruebas lectura tags NFC en vehículos. Prueba N° 9 247 Tabla 23. Pruebas lectura tags NFC en vehículos. Prueba N° 10 248 Tabla 24. Pruebas lectura tags NFC en vehículos. Prueba N° 11 249 Tabla 25. Pruebas lectura tags NFC en vehículos. Prueba N° 12 250 Tabla 26. Pruebas lectura tags NFC en vehículos. Prueba N° 13 251 Tabla 27. Pruebas lectura tags NFC en vehículos. Prueba N° 14 252 Tabla 28. Pruebas lectura tags NFC en vehículos. Prueba N° 15 253 Tabla 29. Pruebas lectura tags NFC en vehículos. Prueba N° 16 254 Tabla 30. Pruebas lectura tags NFC en vehículos. Prueba N° 17 255 Tabla 31. Pruebas lectura tags NFC en vehículos. Prueba N° 18 256 Tabla 32. Pruebas lectura tags NFC en vehículos. Prueba N° 19 257 Tabla 33. Pruebas lectura tags NFC en vehículos. Prueba N° 20 258 Tabla 34. Pruebas lectura tags NFC en vehículos. Prueba N° 21 259 Tabla 35. Pruebas lectura tags NFC en vehículos. Prueba N° 22 260 Tabla 36. Pruebas lectura tags NFC en vehículos. Prueba N° 23 261 Tabla 37. Pruebas lectura tags NFC en vehículos. Prueba N° 24 262 Tabla 38. Pruebas lectura tags NFC en vehículos. Prueba N° 25 263 Tabla 39. Pruebas lectura tags NFC en vehículos. Prueba N° 26 264 Tabla 40. Pruebas lectura tags NFC en vehículos. Prueba N° 27 265 Tabla 41. Pruebas lectura tags NFC en vehículos. Prueba N° 28 266 Tabla 42. Pruebas lectura tags NFC en vehículos. Prueba N° 29 267 Tabla 43. Pruebas lectura tags NFC en vehículos. Prueba N° 30 268

Page 19: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

19

LISTA DE FIGURAS

pág.

Figura 1. Lector Hand Held UHF 30 Figura 2. Lector móvil NFC 31 Figura 3. Funcionamiento de NFC para pagos 47 Figura 4. Arquitectura NFC en Teléfonos Móviles 48 Figura 5. Tipos de Tags NFC 50 Figura 6. Esquema del modo de funcionamiento pasivo NFC 53 Figura 7. Esquema del modo de funcionamiento activo NFC 54 Figura 8. Modo Lectura / Escritura 56 Figura 9. Modo punto a punto 59 Figura 10 Modelo de uso genérico de modo peer-to-peer 60 Figura 11. Modo Emulación de Tarjeta 62 Figura 12. Modo de Uso Genérico del Modo de Emulación de la Tarjeta 62 Figura 13. Ejemplo de modelo de uso del pago con tarjeta de crédito 65 Figura 14. Ejemplo de modelo de uso de la emisión de Tickets 66 Figura 15. Elementos Seguros NFC 69 Figura 16. NFC vs código de barras 70 Figura 17. Logo NFC Forum 71 Figura 18. Ecosistema NFC 72 Figura 19. Estándares soportados por NFC para compartir datos 73 Figura 20. Ecma International NFCIP-2 76

Page 20: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

20

Figura 21. Tags para NFC 78 Figura 22. Lector NFC de escritorio 79 Figura 23. Los servicios Web en Funcionamiento 84 Figura 24. Estructura de los mensajes 85 Figura 25. Ciclo de Vida del Software 86 Figura 26. Android Lollipop vs. Android KitKat 91 Figura 27. Arquitectura Android 93 Figura 28. Distribuciones de Android 94 Figura 29. Sabores Android 101 Figura 30. Android Lollipop 101 Figura 31. Android Marshmallow y Nougat 101 Figura 32. Android Studio 102 Figura 33. Dalvik Virtual Machine 103 Figura 34. Vida de un APK 105 Figura 35. Funcionamiento de Sistema de Despacho de Tags 113 Figura 36. Clases de Tags Soportados 124 Figura 37. Clases de tecnologías de etiquetas opcionales soportadas 125 Figura 38. Aplicación Móvil TrasmsiSitp 140 Figura 39. Tarjeta tullave 141 Figura 40. Activación NFC tullave 141 Figura 41. Consulta de saldo tarjeta tullave 142 Figura 42. Google Wallet 143

Page 21: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

21

Figura 43. NFC Angry Birds 143 Figura 44. Aplicación Foursquare 144 Figura 45. Concurso Hípico Internacional 146 Figura 46. NFC Biblioteca Pública de Hanno 146 Figura 47. Project Pingeb.org 147 Figura 48. The Underground Library 148 Figura 49. Uso de NFC en vehículos HYUNDAI 149 Figura 50. Apps en vehículos HYUNDAI 150 Figura 51. Identificación vehicular en Valencia - España 151 Figura 52. Funcionamiento de NFC en transporte público 152 Figura 53. Proyectores NFC 153 Figura 54. Dispositivos Sony NFC 154 Figura 55. Bafles NFC 154 Figura 56. Relojes NFC 155 Figura 57. Auriculares NFC 156 Figura 58. Impresoras NFC 156 Figura 59. Tap to Pay 157 Figura 60. Sasmsug Pay 158 Figura 61. Tarjetas de Crédito en Apple Pay 159 Figura 62. Apple Pay 159 Figura 63. Android Pay 160 Figura 64. NFC TagInfo 162 Figura 65. NFC TagWriter 163

Page 22: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

22

Figura 66. NFC Trigger 165 Figura 67. NFC Actions 166 Figura 68. NFC TagInfo NXP 167 Figura 69. NFC Developer 168 Figura 70. NFC Tools 169 Figura 71. Arquitectura del Sistema 180 Figura 72. Diagrama de lectura NFC Móvil 181 Figura 73. Arquitectura NFC Vehicular 182 Figura 74. Diagrama de clases 184 Figura 75. Diagrama de Secuencia 185 Figura 76. Diagrama de Actividades 186 Figura 77. Diagrama Colaboración 187 Figura 78. UPM Reaflatac 192 Figura 79. UPM Reaflatac Especificaciones 193 Figura 80. Prueba de lectura de tags sobre vidrio 195 Figura 81. Front aplicación Web 197 Figura 82. Base de datos smartapp_nfcappmovil en PhpMyAdmin 197 Figura 83. Autenticación sistema Web vehículos 200 Figura 84. Gestor de Tags Sistema Web Vehículos 201 Figura 85. Menú Sistema Web Vehículos 201 Figura 86. Edición de registros de Tags para el Sistema Web Vehículos 202 Figura 87. Borrar Registros de Tags para el Sistema Web Vehículos 203

Page 23: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

23

Figura 88. Registro de Nuevo Tag al Sistema Web Vehículos 203 Figura 89. Administración de Usuarios del Sistema Web Vehículos 204 Figura 90. WebService Transito 205 Figura 91. Acceso Web a WebServiceTransito 206 Figura 92. Estructura de Proyecto NFCApp 215 Figura 93. Clase y Métodos de la Actividad principal NFCActivity 216 Figura 94. Estructura Activity TagViewer 219 Figura 95. Generar APK 223 Figura 96. Generar APK Key Creation 224 Figura 97. Interfaz AirDroid 225 Figura 98. Transferencia de Archivos AirDroid 225 Figura 99. Notificaciones AirDroid Transferencia 226 Figura 100. Descarga de App NFCApp2016 227 Figura 101. Proceso de Instalación en el Smartphone 228 Figura 102. Icono de App en Escritorio Android 229 Figura 103. Aplicación Móvil NFC Vehicular 230 Figura 104. Aplicación Móvil en Lectura de Tags 231 Figura 105. Lectura de Tags y resultados de consulta 233 Figura 106. Tags en Vehículos 235 Figura 107. Prueba de lectura de Tags en Vehículos 236 Figura 108. Tags en Vehículos desde Navegador Smartphone 277 Figura 109. Tiempo Promedio en lectura de Tags 278

Page 24: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

24

GLOSARIO

BIDIRECCIONAL: capacidad de operar en los dos sentidos. Por ejemplo un tag que se puede leer pero también escribir. BLOQUE DE MEMORIA: (Memory block): normalmente la memoria de un chip está dividida en diferentes secciones, que pueden ser leídas o escritas independientemente. Algunas se pueden bloquear o permitir sobrescribir. CAMPO DE DATOS (DATA FIELD): área de la memoria del chip asignado a un tipo de información. CAPACIDAD: número de bits que pueden ser programados en el tag. ISO (INTERNATIONAL ORGANIZATION FOR STANDARDIZATION): Institución de estandarización a nivel mundial. ISO 18000: conjunto de estándares internacionales que definen el protocolo de interfaz aérea usada en los sistemas RFID para etiquetar productos dentro de la cadena de suministro. MEMORIA (MEMORY): capacidad de almacenamiento del chip de la etiqueta RFID MIDDLEWARE: en RFID se usa este término para referirse al software que reside en un servidor entre el lector y las aplicaciones empresariales. Filtra datos y permite pasar solo la información útil hacías dichas aplicaciones. Algunos, también puede gestionar la red de lectores. PROTOCOLO (PROTOCOL): conjunto de reglas que gobiernan los sistemas de comunicación. PROTOCOLO DE INTERFAZ AÉREA (AIR INTERFACE PROTOCOL): conjunto de reglas que definen como los lectores y los tags deben comunicarse. TAG: transceptor adjunto a un objeto con capacidad de almacenamiento de información, mediante etiquetas electrónicas u otros mecanismos. Aunque su nombre técnico es transpondedor, su nombre más común es tag. TAGS ACTIVOS: etiquetas que utilizan total o parcialmente baterías como fuente de alimentación. Su ciclo de vida viene determinado por el de la batería. TAGS MUERTOS (DEAD TAG): tags que no se pueden leer mediante un lector. TAGS PASIVOS: etiquetas que no contienen fuente de alimentación. Utilizan como

Page 25: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

25

fuente un elemento externo, normalmente de la señal radiada de un lector/grabador. TAGS SEMI-PASIVOS: (semi-passive tag): similar a los tags activos, pero su batería solo alimenta el chip en momentos puntuales, el resto se encuentra en estado dormido (sleep). Normalmente son tags con sensores que complementan sus funcionalidades. TRANSPONDEDOR (TRANSPONDER): transmisor/receptor radio que se activa cuando recibe una predeterminada señal. A veces a las etiquetas RFID se les llama transpondedores. TRANSCEPTOR (TRANSCEIVER): elemento con capacidad para transmitir y recibir ondas de radio. ULTRA HIGH: Frequency (UHF): frecuencias desde 300 MHz hasta 3 GHz. A estas frecuencias la velocidad de transmisión es mayor pero no atraviesa ciertos elementos como un alto contenido de agua, frutas, etc. OMNIDIRECCIONAL: capacidad de radiar igual en todas las direcciones.

Page 26: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

26

RESUMEN

Los sistemas de identificación han estado evolucionando en los últimos años, pero en especial la tecnología RFID ha estado realizando grandes esfuerzos para que pueda ser implementada en múltiples sectores. Los sistemas NFC son una tecnología emergente, que aunque ya tiene un tiempo de haber sido desarrollada, hasta ahora se está empezando a percibir su aplicación en diversos campos, donde la identificación precisa, eficaz, y el rastreo de elementos en tiempo real son una necesidad para el funcionamiento óptimo de los procesos. El sector de transporte es un área donde la implementación de NFC ha sido utilizada desde hace pocos años, pero gracias a su evolución, hoy se cuenta con una tecnología confiable y de fácil implementación. Teniendo en cuenta estos aspectos, se desarrolló un prototipo de identificación y verificación de vehículos en momentos específicos mediante, la implementación de tecnológica NFC, El prototipo fue desarrollado para el sistema operativo Android de Google, el móvil se encarga de realizar la lectura de un Tag o etiqueta NFC adherida a cada uno de los automóviles. La información capturada por móvil se envía por medio de un servicio web a una base de datos donde se realizará una consulta para enviar los datos consultados al móvil y permitir que la persona que hace el control del vehículo pueda identificar y verificar las características y atributos del vehículo con la información recibida. El prototipo está dirigido a entidades reguladoras en el control de transporte (¨secretarias de transito departamentales, locales¨), pero se espera que este trabajo sea de utilidad a otras áreas vinculadas al transporte como las entidades controladoras de las emisiones de gas vehicular, aseguradoras y entidades de control ambiental. Debido a la gran cantidad de información que es manejada para el control vehicular y a la naturaleza crítica de la misma, se hace uso de tecnologías de este tipo, de manera que la información que se disponga en cada instante sea lo más acertada posible y se tenga acceso a ella en el menor tiempo ya que un error o un retraso en el acceso a la información, como se ha planteado, pone en juego la integridad de cada uno de los procesos de estas organizaciones.

Palabras clave: RFID, NFC, ANDROID, TAG, PROTOTIPO

Page 27: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

27

INTRODUCCIÓN

En los últimos años se ha visto como la industria de las telecomunicaciones ha avanzado de forma acelerada, hoy en día es una necesidad la comunicación y el intercambio de información entre usuarios de forma inmediata, lo que hace que el elemento más utilizado por las personas para estos fines son los teléfonos móviles que con sus últimos avances pueden realizar la tarea de cualquier ordenador personal. Estos dispositivos ya no solo se usan para llamadas, también tienen otras funciones como reproducir archivos multimedia, tomar fotografías, crear videos, acceder a internet, descargar e instalar aplicaciones etc. Ahora estos equipos ayudan a controlar varias actividades diarias y dado a estos grandes avances se está viendo como los teléfonos inteligentes hacen parte activa de la vida diaria de las personas. Desde el año 2011 Google lanzo Wallet, una tecnología para realizar pagos con los dispositivos móviles basado en tecnología NFC. Actualmente el 38 % de los asiáticos realizan compras con sus móviles usando tecnología NFC, pero el continente occidental hace uso también de esta tecnología donde al menos el 20% de la población ya comienza a usar esta tecnología en diferentes actividades. Dado su enorme campo de aplicación los fabricantes de teléfonos como Samsung, Nokia, Sony, Blackberry, Motorola y Apple ya están incluyendo esta tecnología en sus dispositivos. Se espera que en los próximos años el crecimiento de esta tecnología sea adoptada por todos los fabricantes y sea la más empleada, permitiendo así un mayor número de aplicaciones y funcionalidades para los usuarios. Los costos de esta tecnología están comenzado a reducirse y los estándares ya se encuentran disponibles; sin lugar a dudas la tecnología NFC tendrá un impacto mucho más profundo que el generado por la introducción del código de barras en los años 80. NFC aporta múltiples beneficios y mejoras en los procesos, no obstante, su implementación requiere de conocimientos específicos en relación a diversos aspectos propios del funcionamiento de la radiofrecuencia y programación. En este trabajo investigativo se realizó el estudio, usos y avance de la tecnología NFC, se desarrolló un prototipo usando el API de NFC para Android que permite la identificación vehicular. Del mismo modo busca aportar una aplicación funcional a la sociedad y fomentar el desarrollo de aplicaciones en nuevos campos y diferentes áreas del conocimiento, para que la comunidad en general siga desarrollando e implementando soluciones innovadoras.

Page 28: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

28

La implementación del API de Android permitió crear un prototipo de una aplicación para dispositivos móviles con NFC, al poder identificar la información de los vehículos, se logra controlar diferentes datos mediante la implementación de una solución de bajo costo, fácil implantación y ágil proceso, ya que está dirigido a aquellos actores involucrados en el control de vehículos. Esta investigación es una herramienta útil para las entidades encargadas del control vehicular para demostrar el uso de la tecnología en la solución de problemas locales. Como resultado de este trabajo el grupo de investigación SINTEL de la Universidad Distrital, Facultad de Ingeniera ha abierto una línea de investigación para la implementación y estudio de soluciones NFC para problemáticas empresariales y educativas.

Page 29: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

29

1. PLANTEAMIENTO DEL PROBLEMA

En Colombia el problema de clonación vehicular ha tenido en jaque a las autoridades que velan por la seguridad y transporte de las ciudades. Actualmente para mitigar este problema se han desarrollado e implementado varias soluciones tecnologías que les ayuden a controlar y verificar que los vehículos que están circulando por las ciudades cuentan con los permisos necesarios para transitar por las carreteras. Actualmente para esta verificación es necesario hacer el uso de retenes aventurados en varias zonas de las ciudades del país. En Bogotá se tomó la medida de identificación vehicular de taxis la implementación de la tecnología RFID (¨Sistemas de identificación por radiofrecuencia¨), mediante la cual se le instala una etiqueta RFID UHF (¨Ultra Higth Frecuency¨) el parabrisas de cada taxi. Esta etiqueta identifica a cada taxi y permite que un agente de tránsito por medio de una pistola de lectura de RFID UHF se logre obtener información de cada vehículo de servicio de taxi. Según la noticia publicada en El Espectador (2008) nos informa que en el mes de septiembre hasta noviembre de 2.008 se entregaron 48.011 chips, correspondientes al mismo número de taxis que estaban autorizados para circular legalmente por las calles de Bogotá. Esta iniciativa que fue emprendida por la Administración Distrital con el fin de evitar el ‘gemeleo' de los automotores de servicio público en la ciudad. El censo de vehículos amarillos de servicio público que realizó la Secretaría Distrital de Movilidad, por medio de la empresa SIM, costó cerca de $5.600 millones En Ibagué se realizó un proyecto similar que tenía como objeto "CONTRATAR LA REALIZACIÓN DE UN CENSO A LOS VEHÍCULOS DE TRANSPORTE PÚBLICO TIPO TAXI, CONSISTENTE EN SUMINISTRO DE TECNOLOGÍA, DESARROLLO DE SOFTWARE E INSTALACIÓN DE UN TAG O DISPOSITIVO DE IDENTIFICACIÓN ELECTRÓNICA EN CADA UNO DE LOS TAXIS REGISTRADOS ANTE LA SECRETARÍA DE TRÁNSITO, TRANSPORTE Y DE LA MOVILIDAD DEL MUNICIPIO DE IBAGUÉ " Portal Único de contratación (2009). Esto muestra que hay una problemática no sólo en el interior si no que es una problemática que abarca varias zonas del territorio nacional.

Page 30: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

30

1.1 JUSTIFICACIÓN

El sistema de comunicación de campo cercano NFC permite que procesos que actualmente se realizan de una manera propensa a errores, con largos tiempos de respuesta en la adquisición de información y con poca capacidad de gestionar y manipular la información del entorno para la ayuda en la toma de decisiones, sean realizados de forma que se eviten estas situaciones. El sistema permite tener mayor disponibilidad y movilidad a la hora de verificar la información de los vehículos. La identificación de los vehículos se realiza por medio de un Tag NFC que posee un CUID (‘código único de identificación') que se encarga de identificar de manera exclusiva y única a los vehículos y lo relacionará con un sistema de información web. El sistema actualmente implementado en la ciudad de Bogotá, está integrado con tecnología con RFID UHF, su funcionalidad no es muy eficiente debido a lo poco práctico que es para los agentes de tránsito hacer uso del sistema mediante dispositivos de hardware tan poco portátiles. El sistema se puede volver más eficiente y eficaz implementado una solución con tecnología NFC. Una de las diferencias está en que la tecnología NFC permite leer chips RFID a corta distancia mientras que en RFID UHF se tienen lecturas de chips a mayor distancia. Esta diferencia hace que en el caso de que un guarda de seguridad o agente de tránsito detenga un vehículo en un retén, hace uso de un dispositivo de lectura RFID UHF como el de la figura 1, este dispositivo aunque es portátil es de difícil portabilidad para un policía de tránsito, además tiene un costo que está en el rango de 10 a 12 millones de pesos.

Figura 1. Lector Hand Held UHF

Fuente (SymbolRepairParts, 2015) Debido a la dificultad de portabilidad con estas lectoras, actualmente se colocan zonas geográficas fijas de lectura para la identificación y toma de la información. Con el sistema NFC en el teléfono móvil Figura 2. Se reduce el costo del proyecto y se realiza la identificación y toma de información de los vehículos.

Page 31: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

31

Figura 2. Lector móvil NFC

Fuente Móvil Arena (2013). Un análisis previo simple de costos, hace inferir rápidamente que si se invierte 10 millones en un lector RFID UHF, con NFC se comprarían 10 equipos aproximadamente con ese valor. Esto ayuda a mejorar el servicio si cualquier guarda de tránsito pueda acceder a la aplicación desde su dispositivo móvil. El sistema de comunicación de campo cercano permite que procesos que actualmente se realizan de una manera propensa a largos tiempos de ejecución, largos tiempos de respuesta en la adquisición de información y a la poca capacidad de gestión y manipulación, sean más eficientes a la hora de tomar decisiones del entorno donde se esté implementando.

1.2 OBJETIVOS

1.2.1 Objetivo General

Analizar como la tecnología NFC puede ser aplicada para el mejoramiento de la identificación y verificación de información vehicular desde un sitio y momento específico para el diseño e implementación de un prototipo que permita identificar información y características de los vehículos obtenidos de la consulta a un tag instalado en cada vehículo usando Smartphone con Sistema Operativo Android.

1.2.2 Objetivos Específicos

• Comprender y conocer el funcionamiento técnico de la tecnología NFC, para definir las posibles áreas de aplicación en las que se puede implementar esta tecnología.

Page 32: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

32

• Diseño e implementación de una herramienta de software móvil y web para la

identificación y control de vehículos mediante tecnología NFC.

• Identificar y definir las principales característica del API de Android (android.nfc), para el desarrollo de aplicaciones con NFC donde se pueda nombrar las principales clases, interfaces y excepciones del API para NFC.

• Definir los principales estándares de los tags usados para la lectura de dispositivos con NFC

• Diseñar un Sistema de Base de Datos que permita mostrar la información de los vehículos donde se cuente con los campos básicos para la identificación de los vehículos

• Desarrollar un servicio web que permita hacer la conexión de la base de datos del servidor con el Smartphone y permita hacer la consulta de los datos para la verificación de los vehículos.

1.3 ALCANCES

• El proyecto se realizó hasta la integración una aplicación móvil NFC a una plataforma Web que recibe la información de los datos recibidos por un Tag NFC. La información es procesada y administrada desde el sitio Web.

• No se tuvo en cuenta aspectos de seguridad, que pueden ser objeto de estudio de investigaciones posteriores.

• Para la solución se utilizaron teléfonos con tecnología NFC Samsung y LG.

• La metodóloga de desarrollo que se utilizada para el desarrollo del prototipo fue la Programación Extrema.

• En la etapa de ingeniería del modelo XP, se utilizaron algunos de los diagramas planteados en UML para la definición y especificación del proyecto, sin embargo solo se utilizaron los que se consideraron necesarios para hacer una especificación clara de la aplicación.

• Se debe tener en cuenta que lo que se desea investigar e implementar es un prototipo que permita visualizar el funcionamiento básico de un sistema usando teléfonos móviles con tecnología NFC.

Page 33: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

33

• Para el desarrollo del proyecto se tuvo solo en cuenta una parte del API de

Android para su implementación con NFC.

1.4 LIMITACIONES

Los recursos económicos disponibles para el desarrollo del proyecto no fueron los suficientes para desarrollar uno a gran escala, pues sería necesario la adquisición de una gran cantidad teléfonos móviles NFC y etiquetas, lo que supone un gasto elevado, por lo que el prototipo solo dispondrá de un teléfono móvil Samsung con Sistema Operativo Android y varios tags.

1.5 IMPACTO SOCIAL

Una ciudad como Bogotá DC cuenta con 7.862.277 personas, con 40 km de sur a norte y 20 Km de territorio cuadrado y cerca de 1’600.000 vehículos en circulación en el año 2012 información según La Secretaría de Movilidad (2012), hacen que la identificación vehicular sea un factor importante de control, validación de la identidad y autenticidad de los datos del vehículo. El sistema de identificación electrónico vehicular significara para una ciudad como Bogotá grandes avances en temas como control y verificación de los carros que están circulando en las ciudades, además el sistema se podía trasladar las organizaciones de peajes, control de acceso a aeropuertos, control de parqueaderos públicos, control pólizas de seguros vehiculares entre otros.

1.6 PERTENENCIA SOCIAL

El proyecto prototipo desarrollado uso como herramienta la tecnología NFC y el desarrollo de una aplicación móvil que permita evitar grandes problemas como el gemeleo de taxis, pero que se puede extender a la verificación de documentos del conductor y el control de gases entre otros. Traer la información de una manera ágil y simple trae grandes beneficios a toda la ciudad, dado el éxito de este proyecto se puede extender a otras entidades y a otras regiones para abarcar un gran beneficio de la ciudadanía y de la región.

1.7 APORTE A LA EDUCACIÓN

El presente proyecto dejo a la comunidad científica una documentación de la tecnología NFC actualizada y un prototipo de software simple para el control

Page 34: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

34

vehicular. Este proyecto se puede tomar como un sistema base para su estudio y aplicación en nuevas implementaciones en el tema de identificación por radio frecuencia con el uso de la tecnología NFC. Mediante el Grupo de Investigación SEINTEL se hicieron jornadas de inclusión digital en el uso de la tecnología RFID y NFC en la Universidad Distrital para generar interés en el desarrollo de nuevas aplicaciones. Se espera crear aplicaciones inicialmente útiles para las instituciones educativas como Controles de Acceso a Bibliotecas, Acceso a Zonas Restringidas, Lectoras de Información de Eventos, Asistencia a Clases, Préstamo de Libros etc. Son varias las soluciones las que se pueden implementar para mejorar la calidad de procesos y servicios de las personas, por ello empresas como Google han dado un gran apoyo y avance en la implementación de esta tecnología NFC. La implementación sobre Sistemas Operativos Libres permite el crecimiento y mejoramiento de soluciones tecnológicas de la sociedad en general.

1.8 IMPACTO AMBIENTAL

Para los habitantes de grandes ciudades como Bogotá se hace necesario el uso de herramientas tecnológicas que permitan mejorar las condiciones de vida de sus habitantes, permitiendo a los ciudadanos disminuir el riesgo de muchas enfermedades. Las aplicaciones de RFID y NFC permiten el desarrollo de sistemas de información para controlar infinidad de variables que afectan la salud pública de sus habitantes, dentro del proyecto se puede contar con datos importantes de cada vehículo, uno de ellos es del control y emisión de gases, es importante manejar esta información en una ciudad con más de 1.600.000 vehículos. Según el artículo publicado por la Universidad Nacional Mayor de San Marcos (2001) en las grandes ciudades encontramos muchos gases que afectan la salud de sus habitantes, algunos que causan graves efectos son: Monóxido de Carbono: Es un gas sin color ni olor y puede causar la disminución de percepción y pensar, disminuye los reflejos y causa inconsciencias en valores muy altos. Hidrocarburos: Este irrita los ojos, causa tos y cansancio, causa de varios cáncer como de pulmón. Plomo: Afecta el sistema circulatorio, reproductivo y nervioso. Puede causar daños neurológicos.

Page 35: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

35

Partículas de Hollín: producido por la deficiencia de oxígeno, produce enfermedades pulmonares. Óxido de nitrógeno: Producida por altas temperaturas. Irrita la nariz, los ojos, garganta y causa dolores de cabeza. Dióxido de azufre: Por el contenido de azufre en el diésel. Irrita las membranas de sistema respiratorio y causa inflamación en la garganta.

1.9 PROBLEMÁTICA Y OPORTUNIDAD

En el contexto colombiano, diariamente para el control y cumplimiento de seguros y emisiones de gas, las empresas de seguros tienen un sistema de información asociando su vigencia de seguro vehicular, por otro lado el cumplimiento de las emisiones también se encuentra en un sistema de información interno por las organizaciones que lo regulan. Tabla 1. Ventajas de uso de NFC en vehículos

Sujeto Elemento Ventajas Ministerio de Transporte

Automóviles

Chip de bajo costo Estándar habilitado globalmente para su utilización. Sistema Pasivo. No necesita batería el Tag. Elevada transmisión de datos hasta 424 kbps.

Fabricantes de

Automóviles

Automóviles

Abrir y cerrar las puertas de Vehículos, maletero por medio de Smartphone o Relojes NFC. Realizar pago en estaciones de Gasolina. Sincronización de música y archivos multimedia. Recibir información y datos de las vías. Adaptación del auto a personalización del conductor (Posiciones de espejos, silla, volante etc.)

Fuente del Autor

Page 36: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

36

1.10 METODOLOGÍA

El proyecto es una solución basada en tecnología NFC embebida en Sistema Operativo Android para la identificación y verificación vehicular. Para esto se realizó primeramente un proceso de investigación y estado del arte de esta tecnología para proponer la solución del prototipo del sistema final desarrollado.

1.10.1 Tipo de investigación. Para el desarrollo metodológico del proyecto se aplicó una investigación cuantitativa y descriptiva. El proyecto tiene el planteamiento del problema definido al igual que los objetivos, y descriptiva porque se pretende describir el estado y las características de las tecnologías NFC y ANDROID. 1.10.2 Fases de investigación. Para el cumplimiento de los objetivos y resultados de la investigación se realizó en varias fases, inicialmente al estudio de funcionamiento y uso, que problemas se encontraron, ventajas y desventajas de esta tecnología, luego se aplicó el conocimiento al problema planteado y se usó una metodología de desarrollo de software para la creación del prototipo funcional. Finalmente se pasó a la fase de pruebas y documentación de los resultados obtenidos en la investigación y se socializo el proyecto ante la comunidad académica.

1.10.2.1 Fase de Planeación.

• Investigación y formulación del problema • Definir marco teórico • Objetivos • Investigación del estado de arte. • Creación del documento del Proyecto.

1.10.2.2 Fase De Recolección De Información.

• Investigación y documentación de RFID • Investigación y documentación de tecnología NFC • Investigación y documentación de arquitecturas para desarrollo en móviles • Recopilación de información vehicular por parte de los organismos

controladores de Tránsito en la Ciudad de Bogotá. • Investigación de implementaciones en control vehicular en la ciudad de

Bogotá

Page 37: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

37

1.10.2.3 Fase de Documentación en NFC.

• Definir funcionamiento de la tecnología NFC • Documentar el funcionamiento • Investigar y documentar aplicaciones realizadas con estas tecnología a nivel

mundial • Documentar ventajas del uso de la tecnología NFC • Definir las problemáticas encontradas • Definir las ventajas de esta tecnología • Listar posibles aplicaciones a desarrollar

1.10.2.4 Fase de Desarrollo - Metodología XP de Software.

Para el desarrollo del prototipo se usó una metodología de desarrollo de software que nos permita hacer un desarrollo ágil, ligero, basándonos en buenas prácticas para cumplir los objetivos y aumentar la productividad a la hora de desarrollar. Esta metodología de desarrollo de software da prioridad a actividades para un resultado directo y hace más ligero el desarrollo, puede dividirse en cuatro fases que son planificación, diseño, desarrollo y pruebas.

1.10.2.5 Fase de Desarrollo.

• Diseño de Base de datos • Diseño y Desarrollo de aplicación web • Diseño y Desarrollo de aplicación móvil • Desarrollo de servicio web

1.10.2.6 Fase de Instalación de Software.

• Configuración de servidores de base de datos Mysql, servidor de aplicaciones, servidor web Apache.

• Configuración e instalación de servicio web SOA. • Configuración de Web Service. • Instalación del aplicativo en los celulares.

Page 38: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

38

1.10.2.7 Fase de Pruebas.

• Pruebas del aplicativo en el celular. • Pruebas de los servicios de los servidores web. • Pruebas del aplicativo en terreno de campo. • Pruebas del sistema en general.

1.10.2.8 Fase de documentación.

• Elaboración de documento final. • Revisión de objetivos cumplidos. • Conclusiones finales. • Socialización del proyecto y demostración del aplicativo.

Page 39: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

39

2. MARCO TEÓRICO

2.1 NFC NEAR FIELD COMMUNICATION

NFC son las siglas en inglés de Near Field Communication (NFC), comunicación de campo cercano. Es una tecnología de comunicación inalámbrica, de corto alcance y alta frecuencia a 13,56 MHz, que permite el intercambio bidireccional de datos entre dispositivos a una distancia corta menor a 10 cm, realiza la trasferencia de datos hasta 424 Kbits/second y ejecuta la comunicación inalámbrica entre dos dispositivos habilitados para NFC (Coskun, Ok, & Ozdenizci, 2012). La tecnología NFC permite la comunicación entre dos teléfonos móviles con capacidad de NFC, un teléfono móvil y un lector NFC o una etiqueta NFC en el otro extremo, además es considerada una solución muy práctica debido al uso masivo de los dispositivos móviles y su creciente mercado a nivel mundial permitiendo el desarrollo de modernos dispositivos con diferentes características, actualizaciones y nuevas versiones de Sistemas Operativos en Android y IOS, quienes ahora están integrando esta tecnología al nuevo Sistema de Pagos con NFC (Coskun, Ok, & Ozdenizci, 2012). La tecnología (NFC) facilita operaciones cotidianas de los usuarios y se hace beneficiosa para todas las industrias y desarrolladores en todo el mundo al permitir hacer transacciones comerciales, intercambio de contenidos digitales y conectar dispositivos electrónicos. (NFC forum, 2015). NFC forum (2015) defique NFC como una tecnología basada en estándares de conectividad, armoniza diversas tecnologías sin contacto, permitiendo soluciones actuales y futuras áreas como:

• Controles de acceso • Uso en medios electrónicos • Salud • Recibir e intercambiar información • Cupones • Fidelización de clientes • Pagos electrónicos • Transporte • Acceso a Sitios Web • Identificación • Publicidad • Marketing

Page 40: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

40

La tecnología NFC ha sido exitosa gracias a varios factores entre ellos los avances logrados en otros campos como es OTA (Over the Air) y SE (Secure Element).

2.2 ORIGEN Y DESARROLLO

NFC forum (2012) define la tecnología NFC como una simple extensión del estándar ISO 14443 (RFID). La integración de la telefonía móvil con la Identificación por radiofrecuencia ha proporcionado una comunicación intuitiva, simple y segura entre dispositivos electrónicos. Trabaja a una distancia entre 5 – 10 cm., a 13.56 MHz y transfiere datos hasta 424 Kbits/seg (Coskun, Ok, & Ozdenizci, 2012). El diseño de NFC se planeó para que existirá la compatibilidad con las etiquetas RFID que operan en dicha banda (ISO 14443), pero incompatible con los estándares de EPC global (Coskun, Ok, & Ozdenizci, 2012). Veloz (2010) describe que la principal idea de desarrollar esta tecnología fue crear un nuevo protocolo compatible con tecnologías de corto alcance sin contacto, esto llevo a que NFC sea una extensión simple del estándar ISO/IEC 14443 de tarjetas de proximidad (tarjetas RFID sin contacto) que combina la interface de una tarjeta inteligente y de un lector dentro de un mismo dispositivo.

Su desarrollo empieza en el año 2002 y sus promotores fueron Philips y Sony principalmente para conseguir compatibilidad con sus tecnologías, Mifare y FeliCa respectivamente, pero no sino hasta finales del año 2003 que se la aprueba como el estándar ISO 180926 (Coskun, Ok, & Ozdenizci, 2012).

2.3 HISTORIA DE NFC

El sistema de comunicación de campo cercano NFC nace de la tecnología RFID, identificación por radiofrecuencia, las dos tecnologías manejan los mismos estándares, sin embargo existe una característica que distingue a la NFC con la RFID. NFC permite la comunicación entre dos dispositivos (Hamblen Matt, 2012).

Page 41: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

41

Tabla 2. Historia de NFC 2002 Comienza el Desarrollo de la tecnología NFC. 2003 Aprobado bajo los estándares ISO / IEC 18092 y ECMA 2004 Nokia, Philips y Sony establecieron la Near Field Communication (NFC)

Forum. Nace NFC Forum. 2006 Especificaciones iniciales de etiquetas NFC

Nokia 6131 primer teléfono con NFC. 2009 NFC Forum publica las normas para transferir contactos punto a punto,

URL, iniciar Bluetooth para permitir a usuarios enviar fotos, música y películas a otros teléfonos NFC.

2010 Primeros teléfonos Android con NFC, Samsung Nexus S 2011 Google I / O demuestra NFC para iniciar un juego y para compartir un

contacto, URL, aplicaciones, vídeos, etc. Nokia lanzó los dispositivos Symbian Anna y Meego que daban soporte a la tecnología NFC. Lanzamiento de Google Wallet, esta aplicación apareció como sistema de pagos

2012 Primer smartposter creado por un restaurante EAT y un operador de red móvil en el Reino Unido. Nokia lanza Lumia 610, en el Mobile World Congress, primer Windows Phone con NFC. Sony lanza Sony Xperia Smartphone P junto con etiquetas inteligentes NFC. Samsung promociona el Samsung Galaxy SIII con NFC y S Beam para compartir datos. Lanzamiento de Google Play. Primeras Apps de NFC en Google Play.

2013 Aumenta la publicación de Apps en Google Play. Comercialización de Dispositivos con NFC.

2014 Apple Integra NFC a sus nuevo móviles Iphone 6. 2015 Lanzamiento de Servicios Samsung Pay y Apple Pay.

Fuente (Hamblen Matt, 2012)

2.4 PRINCIPALES VENTAJAS DE NFC

El sitio oficial de la tecnologia NFC forum,(2015) lista una serie de beneficios para los consumidores y las empresas, tales como:

Page 42: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

42

• Intuitivo: Interacciones NFC no requieren más que un simple toque.

• Versátil: NFC es ideal para la más amplia gama de industrias, entornos y

usos.

• Basada en estándares abiertos: Las capas subyacentes de la tecnología NFC siguen los estándares universales implementado las normas ISO, ECMA y ETSI

• Tecnologías habilitadas: NFC facilita la configuración rápida y sencilla de las tecnologías inalámbricas como Bluetooth, Wi-Fi, etc).

• Intrínsecamente seguro: las transmisiones de la NFC son de corto alcance (de un toque a unos pocos centímetros).

• Interoperable: NFC trabaja con las actuales tecnologías de tarjetas sin contacto.

• Seguridad: NFC ha incorporado en las capacidades para soportar aplicaciones seguras

2.5 DISPOSITIVOS INTELIGENTES NFC

Los dispositivos NFC son los componentes que actúan en la comunicación de NFC y son tres tipos de dispositivos:

• Móvil NFC • Lector de NFC • Etiquetas NFC

2.5.1 Teléfono Móvil con NFC. Muchos de los modelos de teléfonos actualmente cuenta con este chip, más adelante se presenta una lista con todos los modelos actuales con esta tecnología. Son los dispositivos más importantes puesto que son los encargados de escribir o leer información de tags o tarjetas (Coskun, Ok, & Ozdenizci, 2012). 2.5.2 Lector de NFC. El lector NFC realiza la transferencia de datos con un componente de NFC, por ejemplo en un punto de venta de almacén se puede realizar pagos en un lector NFC sin contacto. En el mercado se pueden encontrar varios modelos de lectores NFC compatibles con tarjeras Mifare, ISO 14443 A y B,

Page 43: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

43

NFC y FeliCa. Funcionan a 13.56 MHz y cumplen con la norma ISO/IEC18092 de Near Field Communication (NFC) (Coskun, Ok, & Ozdenizci, 2012). Algunos lectores NFC acceden a una velocidad de hasta 424 kbps y una velocidad USB de hasta 12 Mbps. La distancia de funcionamiento es de hasta 5 cm. Con el fin de aumentar el nivel de seguridad, el Lector puede integrar una ranura SAM (compatible ISO 7816-3). Algunos modelos permiten una integración a máquinas para punto de venta y varios tipos de máquinas según se requiera (Etiquetas NFC, 2015) 2.5.3 Etiqueta NFC. Las etiquetas NFC son realmente etiquetas RFID al no tener fuente de alimentación son etiquetas pasivas. Dos dispositivos NFC comienzan su comunicaciones una vez entran en el campo de proximidad establecido por los estándares NFC, una vez se acercan o tocan se activa la comunicación. Cuando un móvil establece comunicación con otro componente NFC se transmiten los datos sea una etiqueta, lector o dispositivo móvil (Coskun, Ok, & Ozdenizci, 2012). En la tecnología NFC el que inicia la comunicación se llama INICIADOR, y el dispositivo que responde las peticiones se llama OBJETIVO. Cuando un componente NFC tiene su fuente de alimentación integrada y generar su propio cambio de RF se inicia de forma natural y conduce la comunicación es llamada Dispositivo Activo. En el otro lado si el dispositivo no cuanta con fuente de alimentación propia o integrada es llamado dispositivo pasivo y solo responde al dispositivo activo (Coskun, Ok, & Ozdenizci, 2012).

2.6 EVOLUCIÓN DE NFC

NFC es una extensión de RFID y en ambas se puede utilizar varias interfaces de tarjetas inteligentes Smart Cards. La evolución de esta tecnología la podemos ver desde sus antecesores como el código de barras siendo estos primeros que la tecnología RFID y las tarjetas de banda magnética (Coskun, Ok, & Ozdenizci, 2012). 2.6.1 Códigos de Barras. Un código de barras es una representación visual de los datos de objeto al que está unido. La información de los códigos de barras es escaneado por los lectores de códigos de barras y se transfiere a los dispositivos de computación que están conectados a los lectores. A continuación, el dispositivo procesa la información, los códigos de barras representan datos variando las anchuras y espaciamiento de líneas paralelas, y se conocen como lineal o unidimensional (1D) (Coskun, Ok, & Ozdenizci, 2012).

Page 44: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

44

Algunos ejemplos importantes de los códigos de barras lineales son UPC (Universal Product Code) y EAN13 (European Article Number) Los códigos de barras. También QR (Quick Response) Código de barras es un ejemplo de un código de barras 2D (Coskun, Ok, & Ozdenizci, 2012). 2.6.2 Tarjetas de Banda Magnética. Una tarjeta de banda magnética contiene un espacio de almacenamiento digital donde los datos son cargados en la fase de fabricación. La banda se compone de diminutas partículas magnéticas en una resina. Es tradicionalmente un elemento de sólo lectura. Se lee por contacto físico al deslizar la tarjeta más allá de un dispositivo con un cabezal de lectura magnética. Actualmente, bandas magnéticas se utilizan sobre todo en la de débito bancaria y tarjetas de crédito, tarjetas de fidelización, billetes de avión y las tarjetas de embarque (Coskun, Ok, & Ozdenizci, 2012). 2.6.3 Tarjetas Inteligentes. Las tarjetas inteligentes o común mente conocidas como Smart Card son tarjetas en cuyo interior se encuentra un circuito integrado, son hechas de plástico PVC y se pueden usar tanto en SIM para celulares como en tarjetas bancarias o de identificación permitiendo acceso a muchos servicios usadas en infinidad de aplicaciones, no tiene fuente de energía por tal motivo son energizadas por el dispositivo o lector externo. Este tipo de tarjetas se pueden clasificar según diversas características como su memoria, características de circuitos, formato, interfaz y contacto (Coskun, Ok, & Ozdenizci, 2012). 2.6.3.1 Tarjetas de Contacto. Definidas por los estándares ISO/IEC 7816 e ISO/IEC 7810. Para su uso deben ser insertadas en una ranura de un lector. Tiene contactos metálicos visibles de color dorado por medio de los cuales el lector alimenta eléctricamente a la tarjeta y transmite los datos. Se comunica con un lector de tarjetas por contacto físico directo. Contienen un módulo de micro que contiene una sola tarjeta de circuito integrado de silicio con la memoria y el microprocesador. La transmisión de comandos, datos y estado de la tarjeta de información se lleva a cabo sobre estos puntos de contacto físico (Coskun, Ok, & Ozdenizci, 2012). 2.6.3.2 Tarjetas Inteligentes Sin Contacto. Definidas por los estándares sin contacto ISO/IEC 14443 del 2001. El estándar define dos tipos de tarjetas sin contacto (A y B), permitidos para distancias de comunicación de hasta 10 cm. La ISO 14443 tipos C, D, E y F que todavía tienen que completar el proceso de estandarización (Coskun, Ok, & Ozdenizci, 2012). Un estándar alternativo de tarjetas inteligentes sin contacto es el ISO 15693, el cual permite la comunicación a distancias de hasta 50 cm. Lectores y tarjetas cuentan con antena por medio del cual se realiza el enlace sin contacto alguno trasmitiendo

Page 45: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

45

ondas de radio para lograr comunicarse cuando los dispositivos se encuentra en las proximidades a corta distancia aumentando la seguridad y una mayor transferencia de energía desde dispositivo activo al pasivo. Las tarjetas sin contacto obtienen energía para su circuito interno recibido a través de un campo electromagnético y se comunican mediante inducción con una transferencia entre 106 a 848 Kb/s (Coskun, Ok, & Ozdenizci, 2012). Las más abundantes en el mercado son las tarjetas MIFAREde Philips, cumplen las partes 1,2 y 3 de tipo A de las cuales representan a la ISO/IEC 14443-A. La tarjeta Calypso cumple con la norma y estándares ISO/IEC 14443 parte 1, 2, 3 y 4 de tipo B (Coskun, Ok, & Ozdenizci, 2012). 2.6.3.3 Tarjetas Hibridas. Es una tarjeta sin contacto donde se agrega un chip de contacto. Pueden ser o chips microprocesadores o simples chips de memoria. El chip sin contacto es generalmente usado en aplicaciones que requieren transacciones rápidas. Por ejemplo el transporte, mientras que el chip de contacto es generalmente utilizado en aplicaciones que requieren de alta seguridad como las bancarias (Coskun, Ok, & Ozdenizci, 2012). 2.6.4 Normas y Especificaciones de Tarjetas. La Smart Card Alliance (2015) define que para el control, regulación, fabricación y uso de tarjetas inteligentes existen una serie de normas como los estándares ISO; las principales normas, estándares y organismos de normalización de las diferentes tarjetas inteligentes:

• Normas ISO / IEC • Procesamiento de Información Federal Standard 201 - FIPS 201 • Normas de Procesamiento de Información Federal • Normas American National Standards Institute (ANSI) • Plataforma Global (GP) (Plataforma Abierta) • Common Criteria (CC) • Organización de Aviación Civil Internacional (OACI) • Aerolínea Internacional y la Asociación de Transporte (IATA) • G-8 de Normas Sanitarias • La Ley de Portabilidad y Responsabilidad de Seguros de Salud (HIPAA) de

1996 (Ley Pública 104-191) • Sistema Global para Comunicaciones Normas Móviles (GSM) • EMV 2000 Especificaciones • Personal Computer / Smart Card (PC / SC) Especificaciones de grupo de

trabajo abiertas • OpenCard (TM) Marco • Asociación Americana de Transporte Público • Java Card

Page 46: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

46

• MULTOS • Normas biométricas

2.6.5 Clases de Tarjetas. Para el trabajo de tarjetas inteligentes con dispositivos NFC en el mercado actual existen varios fabricantes siendo los más importantes NXP, Calyso y FeliCa. 2.6.5.1 Tarjetas Mifare. La tarjeta Mifare son del tipo inteligente y sin contacto, utilizada a 13,56 Mhz, cuyo propiedad es de NXP Semiconductores, cumple la norma ISO / IEC 14443 Tipo A y es de la más utilizadas en el mundo. La distancia de lectura es de 10 cm, teniendo en cuenta que la distancia para la lectura depende del módulo lector. Las Tarjetas MIFARE cuentan con un cripto-motor PKI incorporado encargado de impulsar la combinación segura de cualquier ecosistema deseado en una sola credencial, y cuentan con varios tipos de tarjetas inteligentes como las MIFARE Classic, MIFARE Plus, MIFARE DESFire, MIFARE Ultralight y SmartMX (MIFARE, 2015). 2.6.5.2 Tarjetas Calypso. Esta organización internacional de billetaje electrónico definiendo un estándar para microprocesador de tarjetas inteligentes sin contacto, diseñado por un grupo de transporte europeo. Asegura múltiples fuentes de productos compatibles, y hace posible la interoperabilidad entre varios operadores de transporte en la misma zona (CALYPSO, 2014). 2.6.5.3 Tarjetas FeliCa. FeliCa es un Sistema sin contacto de tarjetas Inteligentes RFID, creado por Sony, es utilizado en muchos países, trabaja a 13,56 MHz. Para su uso en lectores y grabadores solo hay que colocar la tarjeta en estos dispositivos para activar la trasmisión de datos de alta velocidad para escribir los datos en la tarjeta (Sony Corporation, 2015).

• Cuenta con un alto estándar de seguridad lo que le permite ser usada en un alto volumen de transacciones en transporte público, dinero electrónico, llaves para control de acceso a áreas restringidas.

• Su nombre viene de la palabra felicidad para hacer la vida más agradable y cómoda.

• El chip y la antena están incrustados. • El tiempo de una transacción completa es de 0.1 segundo • Los usuarios pueden usar la tarjeta sin ser necesario sacarla de la cartera o

bolso. • Cumple la norma ISO / IEC 15408 EAL4 / nivel de seguridad EAL4 + • Los datos contenidos en la tarjeta esta protegidos para ataques maliciosos

(Sony Corporation, 2015).

Page 47: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

47

2.7 OPERACIÓN ENTRE DISPOSITIVOS NFC

NFC opera entre dos dispositivos a través de un rango de comunicación muy corto, utiliza el espectro 13,56 MHz como en RFID. Actualmente cuenta con varias opciones de velocidad de transferencia de datos son 106, 212 y 424 kbps. La Tecnología NFC opera en diferentes modos de funcionamiento; lector / escritor, de igual a igual, y la emulación de tarjetas; donde se produce la comunicación entre un móvil NFC, por un lado, y una etiqueta RFID pasiva (etiqueta NFC), una tecnología NFC móvil o un lector de NFC en el otro lado (Coskun, Ok, & Ozdenizci, 2012).

2.8 COMUNICACIÓN DE LA TECNOLOGÍA NFC

Estudiando cómo se comunican los dispositivos NFC, Chavarría (2011) menciona que cuando dos dispositivos con NFC se aproximan lo suficiente en este caso menos de 10 cm, para que sus campos magnéticos entren en contacto, se produce un acoplamiento por inducción magnética para transferir energía y datos entre ellos. Este acoplamiento magnético es la gran diferencia entre NFC y otros dispositivos como Bluetooth y Wi-Fi.

Figura 3. Funcionamiento de NFC para pagos

Fuente Omicrono (2012).

Un dispositivo NFC puede comunicarse con cualquier tarjeta inteligente y lector, existentes dentro del estándar ISO/IEC 14443, también como con otros dispositivos NFC. Dependiendo de la función que realice, enviar o recibir datos, el dispositivo NFC toma una de las siguientes funciones:

• Iniciador (initiator): Como su nombre lo indica es quien inicia y controla el intercambio de información (el equivalente al lector en los sistemas

Page 48: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

48

RFID/NFC).

• Objetivo (target): Es el dispositivo que responde a los requerimientos del iniciador.

Cualquier dispositivo electrónico con NFC (excepto una etiqueta NFC) puede operar de las dos formas: como Iniciador o como Objetivo (Chavarría, 2011).

2.9 ARQUITECTURA DE NFC EN TELÉFONOS MÓVILES

Los teléfonos móviles con NFC integrado comúnmente encontrado en sus Baterías, contienen circuitos integrados NFC, Elemento Seguro SE( Tarjeta SIM) y su interfaz NFC (Coskun, Ok, & Ozdenizci, 2012). La interfaz NFC se compone de:

• Front-end analógico / digital, un Front-end (NFC CLF) NFC sin contacto • Antena NFC • Controlador NFC para permitir la comunicación NFC.

El controlador NFC permite la comunicación NFC del teléfono móvil con el dispositivo NFC externo (Coskun, Ok, & Ozdenizci, 2012).

Figura 4. Arquitectura NFC en Teléfonos Móviles

Fuente (Coskun, Ok, & Ozdenizci, 2012).

Page 49: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

49

Un teléfono móvil con capacidad NFC requiere un elemento seguro SE, para realizar transacciones seguras con los dispositivos externos NFC. El SE ofrece un entorno seguro para los programas y los datos relacionados y permite el almacenamiento de los datos sensibles del usuario. Existen diversas normas para la comunicación NFC entre dos dispositivos habilitados con NFC, y la transferencia de datos dentro del teléfono móvil NFC como Single Wire Protocol (SWP) o el Cableado Interfaz NFC (NFC-WI) (Coskun, Ok, & Ozdenizci, 2012).

2.10 CLASIFICACIÓN DE LOS DISPOSITIVOS NFC

Dos dispositivos NFC comienzan inmediatamente su comunicación a medida que se tocan. La acción de tocar se toma como la condición de activación para la comunicación NFC. Los dispositivos NFC se pueden clasificar en la comunicación en base a dos parámetros. El primer parámetro es el suministro de energía que se traduce en dispositivos activos y pasivos. El segundo está iniciando la Comunicación y conduce a iniciador y los dispositivos de destino (Coskun, Ok, & Ozdenizci, 2012). 2.10.1 Activo vs Pasivos. Un dispositivo activo es uno que es alimentado por una fuente de potencia - tal como una batería - de modo que genera su propio campo electromagnético. Por otro lado, un dispositivo pasivo es uno que no tiene ninguna fuente de alimentación integrada. Es una regla de la naturaleza que cada actividad requiere energía; por lo tanto, incluso un dispositivo pasivo requiere algo de poder para llevar a cabo según lo programado previamente. En la comunicación NFC la energía es suministrada por la otra parte (activo) para el dispositivo pasivo. En resumen, un dispositivo se activa el dispositivo pasivo mediante la creación del campo electromagnético (Coskun, Ok, & Ozdenizci, 2012). 2.10.2 INICIADOR VS. DESTINO NFC. Siempre se produce entre dos partes, de modo que una de las partes se le llama el iniciador, y la otra parte se llama el objetivo. El iniciador es la que inicia la comunicación; el objetivo responde a la petición que se hace por el iniciador. Este caso es análogo a la arquitectura cliente-servidor (Coskun, Ok, & Ozdenizci, 2012). Un iniciador, obviamente, siempre tiene que ser un dispositivo activo, ya que requiere una fuente de alimentación para iniciar la comunicación. El objetivo, por otro lado, puede ser un activo o un dispositivo pasivo. Si el destino es un dispositivo activo, entonces utiliza su propia fuente de energía para responder; si es un dispositivo pasivo, que utiliza la energía creada por el campo electromagnético que

Page 50: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

50

es generado por el iniciador que es un dispositivo activo (Coskun, Ok, & Ozdenizci, 2012). Una etiqueta RFID o una etiqueta NFC es un dispositivo de bajo costo y de baja capacidad. Por lo tanto, no contiene ninguna fuente de energía y necesita una fuente de alimentación externa para llevar a cabo cualquier actividad. Por lo tanto, una etiqueta NFC siempre es un dispositivo pasivo, ya que no incluye ninguna fuente de energía por diseño. Contiene los datos que puede ser leído por un dispositivo NFC activo. También puede ser solamente un objetivo y no un iniciador por la misma razón (Coskun, Ok, & Ozdenizci, 2012).

2.11 NFC FORUM TIPOS DE ETIQUETAS

Cuatro tipos de etiquetas han sido definidos por la NFC Forum, y se dan designaciones entre 1 y 4. Cada tipo de etiqueta tiene un formato y una capacidad diferente. Los formato de NFC de tipos de etiquetas se basan en cualquiera Tipo ISO / IEC 14443 A, ISO / IEC 14443 Tipo B, o Sony FeliCa (Coskun, Ok, & Ozdenizci, 2012). Diferentes definiciones de etiquetas NFC se enumeran a continuación con una comparación de los tipos de etiquetas.

Figura 5. Tipos de Tags NFC

Fuente (Coskun, Ok, & Ozdenizci, 2012). 2.11.1 Tag Tipo 1. Esta etiqueta se basa en la norma ISO / IEC 14443 estándar Tipo A. Estas etiquetas NFC son tanto de lectura y escritura. Los datos sobre las siguientes etiquetas también pueden ser modificados y los usuarios pueden configurar la etiqueta para que sea cuando sea necesario de sólo lectura. Capacidad

Page 51: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

51

de memoria es hasta 1 kb, lo suficiente para almacenar un URL web o una pequeña cantidad similar de datos. El tamaño de la memoria se puede ampliar hasta 2 kB. La velocidad de comunicación de esta etiqueta NFC es de 106 kbps. Como resultado de su simplicidad, este tipo de etiqueta es rentable y puede ser utilizado en muchas aplicaciones NFC (Coskun, Ok, & Ozdenizci, 2012). 2.11.2 Tag Tipo 2. Basada en la norma ISO / IEC 14443 Tipo A estándar. Estas etiquetas NFC también son a la vez de lectura y escritura, y los usuarios pueden configurar la etiqueta para que sea cuando sea necesario de sólo lectura. El tamaño de la memoria de este tipo de etiqueta se puede ampliar hasta 2 kb. Del mismo modo la velocidad de comunicación es de 106 kbps (Coskun, Ok, & Ozdenizci, 2012). 2.11.3 Tag Tipo 3. Etiqueta se basa en el Sony FeliCa sin contacto de interfaz de tarjeta inteligente. Actualmente cuenta con una capacidad de memoria de 2 kb y la velocidad de transmisión de datos es de 212 kbps. Este tipo de etiquetas es más adecuado para aplicaciones complejas. Sin embargo, es más caro en comparación con otros tipos de etiquetas (Coskun, Ok, & Ozdenizci, 2012). 2.11.4 Tag Tipo 4. Esta etiqueta es compatible con las normas ISO 14443 tipo A y B. Estas etiquetas NFC son pre configuradas durante la fabricación y son grabables o de sólo lectura; el tipo se define durante la fase de fabricación. La capacidad de la memoria puede ser de hasta 32 kb y la velocidad de comunicación es de entre 106 y 424 kbps (Coskun, Ok, & Ozdenizci, 2012).

2.12 TIPOS DE CHIPS NFC

Los tags NFC cuentan internamente con un chip el cual puede variar según sus capacidades como memoria, longitud de textos, url, compatibilidad con móviles, distancia de escaneo, criptografía, tipo según NFC FORUM y otras características muy importantes a la hora de elegir una etiqueta para trabajar en un proyecto. Estas etiquetas van a guardar la información que se haya escrito en ella según la aplicación usada y producirá una acción según la información almacenada, es importante decir existe un tipo de chips que son estándar y son compatibles con los dispositivos móviles actuales con NFC, estos son los chips NTAG y los Ultralight (ShopNFC, NFCque, 2017).

Page 52: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

52

Los Chips NTAG son los de mayor compatibilidad con todos los Smartphones y tablets con tecnología NFC. Hay diferentes tipos de estos chips como los NTAG203, NTAG212, NTAG213, NTAG215 y NTAG216 (ShopNFC, NFCque, 2017).

2.12.1 Chip NTAG203. Es el más común hasta la llegada al mercado del NTAG21x. Tiene una capacidad de 137 bytes de Memoria Útil, capacidad de memoria de 168 bytes, longitud de textos de 130 caracteres y es usado para todo tipo de aplicaciones, no cuenta con criptografía y es NFC Forum Tipo 2. Usados en varios tamaños y formas (ShopNFC, NFCque, 2017).

2.12.2 Chip NTAG212 y NTAG213. Tienen mejor rendimiento que el anterior, más avanzados en velocidad y lectura. El NTAG 212 tiene una memoria de 128 bytes para almacenar datos. El NTAG 213 tiene una memoria de 144 bytes, sin criptografía ambos, y compatible con las especiaciones de NFC FORUM (ShopNFC, NFCque, 2017).

2.12.3 Chip NTAG215 y NTAG216. Son superiores en capacidades de almacenamiento que los anteriores chips NFC, tienen una memoria de 504 y 888 bytes, compatible con las especiaciones de NFC FORUM, sin criptografía (previene que sea clonado y el acceso no autorizado a los datos), por su capacidad en memoria se hacen más costos el adquirirlos (ShopNFC, NFCque, 2017). 2.12.4. Chip Mifare Ultralight. Estos chips son más avanzadas que las Mifare Classic, son usadas frecuentemente para incluir URLs cortas en varios formatos como llaveros, pulseras con el propósito de ticketing. Su compatibilidad es limitada, su memoria de 46 bytes, compatible con las especiaciones de NFC FORUM, sin criptografía, por su poco espacio de memoria se utilizan comúnmente para enlaces o cadenas de texto (ShopNFC, NFCque, 2017). 2.12.5 Chip Mifare Classic 1K. Cuenta con mayor memoria 716 bytes (1K), no son compatibles con las especiaciones de NFC FORUM, cuenta con criptografía, cifradas, compatibles solo con algunos teléfonos. Usan un protocolo de Mifare por esto se usan en soluciones de transporte público, ticketing y tarjetas de fidelización. Se consiguen en diferentes formatos. Su uso no es recomendado para uso general de Smartphone (ShopNFC, NFCque, 2017).

2.13 FASES DE LA COMUNICACIÓN EN NFC

La comunicación NFC consta de cinco fases las cuales describe Chavarría (2011) y son importantes para la comunicación entre dispositivos ya que tienen una función específica y siempre están presentes en el establecimiento de esta.

Page 53: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

53

Estas etapas son: • Descubrimiento: En esta fase los dispositivos inician la etapa de rastrearse

el uno al otro y posteriormente su reconocimiento.

• Autenticación: En esta parte los dispositivos verifican si el otro dispositivo está autorizado o si deben establecer algún tipo de cifrado para la comunicación.

• Negociación: En esta parte del establecimiento, los dispositivos definen

parámetros como la velocidad de transmisión, la identificación del dispositivo, el tipo de aplicación, su tamaño, y si es el caso también definen la acción a ser solicitada.

• Transferencia: Una vez negociados los parámetros para la comunicación,

se puede decir que ya está realizada exitosamente la comunicación y ya se puede realizar el intercambio de datos.

• Confirmación: El dispositivo receptor confirma el establecimiento de la

comunicación y la transferencia de datos (p. 34).

2.14 MODOS DE FUNCIONAMIENTO. La tecnología NFC puede operaras de dos modos distintos: Pasivo y Activo. 2.14.1 Modo Pasivo. El dispositivo Iniciador genera el campo electromagnético y el dispositivo destino se comunica con éste modulando la señal recibida. En este modo, el dispositivo destino obtiene la energía necesaria para funcionar del campo electromagnético generado por el Iniciador” (Chavarría, 2011, p. 39) Figura 6. Esquema del modo de funcionamiento pasivo NFC

Fuente (Chavarría, 2011, p. 40)

Page 54: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

54

2.14.2 Modo Activo. En la definición de modo activo Chavarría (2011) describe que el dispositivo Iniciador como el destino se comunica generando su propio campo electromagnético. En este modo, ambos dispositivos requieren de una fuente de alimentación para funcionar. Cuando el dispositivo funciona en modo pasivo, el receptor sólo se utiliza para establecer la comunicación y confirmar la recepción de los datos. Sin embargo, en modo activo, se requiere que ambos nodos negocien el intercambio de datos. (p. 40)

Figura 7. Esquema del modo de funcionamiento activo NFC

Fuente (Chavarría, 2011, p. 41)

2.15 ESTÁNDARES DE NFC EN DISPOSITIVOS MÓVILES

La tecnología NFC fue desarrollada conjuntamente por Philips y Sony a finales de 2002 para establecer una comunicación sin contacto entre sus dispositivos y en ese mismo año ECMA Internacional la adoptó como un estándar. La Organización Internacional de Normalización (ISO) y la Comisión Electrotécnica Internacional (IEC) adoptaron NFC en diciembre de 2003, para el 2004, Nokia, Philips y Sony fundaron el NFC Forum para promover la tecnología (Coskun, Ok, & Ozdenizci, 2012). Los estándares de la Tecnología NFC son reconocidos por:

• ISO International Organization for Standardization • IEC International Electrotechnical Commission • ETSI European Telecommunications Standards Institute • ECMA European Computer Manufacturers Association

En la información de (Coskun, Ok, & Ozdenizci, 2012) define que NFC agrupa diversas tecnologías como Las tarjetas inteligentes, teléfonos móviles, lectores de

Page 55: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

55

tarjetas, la comunicación de corto alcance, comunicaciones seguras, transacciones y sistemas de pago, debido a que son varias tecnologías involucradas, se han creado organismos para realizar la integración y uso de normas para definir una visión general para mantener su funcionalidad y transacciones seguras, los organismos de normalización son:

• NFC Forum • GlobalPlatform • GSM Association (GSMA) • GlobalPlatform • ISO/IEC • ECMA International • ETSI and ETSI Smart Card Plaform • Java community Process JCP • Open Mobile Alliance OMA • 3rd Generation Partnership Project 3GPP • EMVCo

2.16 MODOS DE FUNCIONAMIENTO NFC

Hay tres modos de funcionamiento, lectura / escritura, punto a punto, y emulación de la tarjeta. El modo de lectura / escritura permite al móvil NFC intercambiar datos con una etiqueta NFC. El modo punto a punto permite dos móviles habilitados para NFC para intercambiar datos entre sí. En el modo de emulación de tarjeta, un teléfono móvil se puede utilizar como una tarjeta inteligente para interactuar con un lector de NFC. Cada modo de funcionamiento tiene una infraestructura técnica diferente, así como beneficios para los usuarios (Coskun, Ok, & Ozdenizci, 2012). 2.16.1 Modo de Lectura / Escritura. Este modo permite la comunicación de un móvil NFC con una etiqueta NFC. El objetivo de la comunicación es o bien la lectura o escritura de datos desde o hacia una etiqueta por el teléfono móvil. Podemos clasificar aún más el modo en dos modos diferentes: el modo lector y modo de escritor. En el modo de lector, el móvil lee los datos de una etiqueta NFC; mientras que en el modo de escritor, el teléfono móvil escribe datos en una etiqueta NFC (Coskun, Ok, & Ozdenizci, 2012). En el modo de lector, el iniciador lee los datos de una etiqueta NFC que ya tiene los datos solicitados. En el modo de escritor el iniciador, escribe datos a la etiqueta. Si la etiqueta que ya consta de todos los datos antes del proceso de escritura, se sobrescribe. El algoritmo puede incluso ser diseñado de manera que el iniciador se actualizará mediante la modificación de los datos previamente existentes también.

Page 56: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

56

Aunque no es una opción común, un lector de NFC, además del teléfono móvil, también puede ser usado para leer datos de una etiqueta. Incluso podemos imaginar un lector NFC que escribe datos en una etiqueta NFC. La tasa de datos máxima posible en este modo es de 106 kbps (Coskun, Ok, & Ozdenizci, 2012).

Figura 8. Modo Lectura / Escritura

Fuente (Coskun, Ok, & Ozdenizci, 2012).

Las características de los teléfonos móviles, tales como la potencia de procesamiento, / capacidad de audio y vídeo y acceso a Internet, junto con el lector / modo de escritor ofrecen muchas oportunidades para los usuarios y los proveedores de servicios. Un usuario puede comprar una entrada de cine después de abrir una aplicación móvil o ir a sitio web al tocar su dispositivo móvil a una etiqueta en un cartel inteligente. Las aplicaciones en este modo son innumerables y pueden ser muy innovador (Coskun, Ok, & Ozdenizci, 2012).

2.16.1.1 Usos de lectura y escritura

• Carteles Inteligentes: Son materiales publicitarios o carteles que están equipados con etiquetas NFC. Esas etiquetas pueden contener diferentes tipos de datos, como una dirección URL, un servicio de cupones, un servicio de SMS (Coskun, Ok, & Ozdenizci, 2012).

• Modelo Genérico de uso: Un usuario interactúa con una etiqueta NFC y

utiliza su teléfono móvil como un dispositivo de lectura / escritura. La información en la etiqueta es posiblemente la información que se utiliza para acceder a algún servidor proporcionado por el proveedor de servicios, tales como el URL de alguna página, información de reserva o de venta de entradas de datos de servicios web. En otro escenario, una etiqueta NFC almacena una URL para que el sitio web relacionado puede ser lanzado por el navegador en el teléfono móvil después de que se reciba la URL (Coskun, Ok, & Ozdenizci, 2012).

Page 57: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

57

• Aplicaciones: Las empresas podrían estar dispuestas a diseñar proyectos de este modo debido a la flexibilidad de los diferentes tipos de datos que se almacenan en la etiqueta NFC, así como la flexibilidad en el uso de esa información. Por lo tanto, una amplia gama de aplicaciones en la salud, la educación y el entretenimiento puede ser potencialmente generadas utilizando el modo de lectura / escritura (Coskun, Ok, & Ozdenizci, 2012).

• Recopilación de información: Es uno de los usos más importante para el modo de lectura / escritura. La mayor parte de la recopilación de información de aplicaciones incluye aplicaciones de carteles inteligentes. La recopilación de información incluye la lectura de la información de una etiqueta NFC y luego o bien almacenar o mostrarlo en el teléfono móvil. Hay dos opciones para almacenar los datos:

• Los datos reales pueden ser almacenados en la etiqueta; la etiqueta

incluye la URL de una página web que contiene los datos reales. • La ventaja de almacenar los datos en la etiqueta es que la recepción por

el móvil es fácil y rápido para pequeñas cantidades; la ventaja de utilizar un servidor es que puede contener cantidades más grandes de datos. El almacenamiento de los datos en el servidor tiene otra ventaja: los datos se pueden actualizar fácilmente con respecto a la modificación de todas las etiquetas NFC que contienen los datos obsoletos. Cuando los datos se almacenan en un servidor remoto, utilizando el servicio web proporciona una solución conveniente y contemporánea. Para utilizar un servicio web, una aplicación adecuada que puede hacer que se necesita utilizar el servicio web para ser instalado en el dispositivo móvil (Coskun, Ok, & Ozdenizci, 2012).

• Si la cantidad de datos es pequeña y estática, es más prudente para

integrar los datos en la etiqueta, ya que no habrá necesidad de actualizar los datos en las etiquetas (Coskun, Ok, & Ozdenizci, 2012).

• Descargas: Permite a los usuarios descargar los horarios (por ejemplo,

horarios de autobuses) a un teléfono móvil a través de carteles inteligentes, los horarios pueden ser guardados dentro de la etiqueta cuando la cantidad de datos es pequeña y estática de modo que no cambia con frecuencia. Si ellos cambian con frecuencia, la información debe guardarse en un sitio web que es accesible en los navegadores móviles o en un servidor de base de datos que es accesible a través de un cliente de servicios web. Los horarios pueden ser manejados con facilidad si la información se almacena en un recurso de Internet (Coskun, Ok, & Ozdenizci, 2012).

• Información sobre el producto: Este caso de uso permite a los usuarios recopilar información sobre los productos de una etiqueta que se incrusta en

Page 58: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

58

el paquete del producto. Por ejemplo, especificaciones técnicas o información de contenido del producto se pueden transferir a los teléfonos móviles inmediatamente después de leer la etiqueta (Coskun, Ok, & Ozdenizci, 2012).

• Historia de productos: Este caso de uso permite conocer la historia de un producto para ser leído a través de una etiqueta NFC. Como un ejemplo, cuando un cliente compra carne de un supermercado, la información de producción de la carne como raza y edad de la vaca, la ubicación de la granja, y se puede obtener información del matadero donde fue producida. (Coskun, Ok, & Ozdenizci, 2012).

• Comercialización a distancia: Comercialización a distancia es otro caso de uso agradable en el modo de lectura / escriturar que permiten las reservas y compras en línea (Coskun, Ok, & Ozdenizci, 2012).

• Reserva online y compra: Reserva y compra de boletos como el cine y el teatro se pueden hacer en línea por medio de carteles inteligentes. La etiqueta NFC contiene información resumida, que puede ser estática. La información de la programación es posiblemente dinámica y requiere ser almacenada en algún servidor. Después de que el usuario está conectado al servidor, puede o bien hacer la reserva o adquirir la entrada (Coskun, Ok, & Ozdenizci, 2012).

• Ofertas en línea: Ofertas especiales tales como centro comercial, tienda o descuentos en productos y la información de la campaña se pueden recibir al tocar un dispositivo móvil a una etiqueta NFC en el cartel inteligente (Coskun, Ok, & Ozdenizci, 2012).

• Compras a distancia: El caso remoto de uso comercial se puede implementar de varias maneras para que las compras en línea. Todos los productos vienen con una etiqueta NFC unido a sus paquetes. Cuando se consume un elemento, el usuario puede tocar el dispositivo móvil a la etiqueta en el envase del producto y agregarlo a una lista de compras. Después, el usuario será capaz de ordenar la lista de compras en línea (Coskun, Ok, & Ozdenizci, 2012).

• Redes sociales: En general, todos los casos de redes sociales en el modo lectura / escritura pueden incluir información de presencia y actualización en las redes sociales. En este caso, las etiquetas NFC pueden proporcionar un medio para la actualización de un perfil en redes sociales. Por ejemplo, en aplicaciones de redes sociales, los usuarios pueden tocar etiquetas NFC que están incrustados en la entrada del local de ocio o institución educativa para

Page 59: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

59

actualizar la información de estado o ubicación al entrar o salir del lugar (Coskun, Ok, & Ozdenizci, 2012).

• Servicios de Ubicación: Los servicios de localización pueden ser implementados en diferentes contextos. Como un servicio para, los turistas, los usuarios pueden recibir información sobre el cajero automático más cercano o centro de información turística, así como información de la ciudad, una guía turística, mapa de la ciudad u otra información de carteles inteligentes. Navegaciones NFC basados, recomendaciones, eventos sociales, y la ubicación de la publicidad móvil basada son otros ejemplos en este contexto (Coskun, Ok, & Ozdenizci, 2012).

2.16.2 Modo punto a punto. Dos móviles NFC que utilizan este modo intercambian datos entre sí. Dado que ambos móviles están integrados de potencia, cada uno utiliza su propia energía por estar en modo activo. Cuando un dispositivo está transmitiendo, el otro tiene que escuchar y puede comenzar la transmisión de datos después de que finalice la primera (Coskun, Ok, & Ozdenizci, 2012). Este modo permite a dos dispositivos móviles NFC para intercambiar información, como un registro de contacto, un mensaje de texto, o cualquier otro tipo de datos. Este modo tiene dos opciones normalizadas: NFCIP-1 y LLCP. (Coskun, Ok, & Ozdenizci, 2012). El control de energía incorporado a los teléfonos móviles, ambos dispositivos están en modo activo durante la comunicación en modo peer-to-peer. Los datos se envían a través de un canal dúplex medio bidireccional, lo que significa que cuando un dispositivo está transmitiendo, el otro tiene que escuchar y debe empezar a transmitir datos después de que finalice la primera. La tasa de datos máxima posible en este modo es de 424 kbps (Coskun, Ok, & Ozdenizci, 2012). Figura 9. Modo punto a punto

Fuente (Coskun, Ok, & Ozdenizci, 2012).

Page 60: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

60

• Modelo Genérico de uso: En el modo peer-to-peer, los usuarios se

comunican entre sí utilizando NFC en sus teléfonos móviles. En este modo normalmente ningún proveedor de servicio se utiliza en el proceso, lo que significa que los usuarios no se comunican con ellos. Si los usuarios tienen la intención de utilizar cualquiera de los servicios en Internet, un proveedor de servicios puede ser incluido en el proceso. Figura 10 muestra el modelo de uso genérico del modo de punto a punto (Coskun, Ok, & Ozdenizci, 2012).

Figura 10. Modelo de uso genérico de modo punto – a punto

Fuente (Coskun, Ok, & Ozdenizci, 2012).

• Intercambio de datos: Dos usuarios pueden intercambiar datos a través de teléfonos móviles.

• Uso del servicio adicional: cuando los datos son compartidos entre los teléfonos móviles, estos datos se pueden usar opcionalmente para los propósitos adicionales, tales como el ahorro de una tarjeta de negocios recibida a una base de datos a través de Internet después de una cuota de éxito o iniciar una amistad en una red social (Coskun, Ok, & Ozdenizci, 2012).

• Aplicaciones: En esta sección, nos centramos en las principales

aplicaciones que se benefician de modo peer-to-peer:

• Intercambio de datos: La información crítica puede ser almacenada en un dispositivo móvil de forma segura y se puede intercambiar con otras personas autorizadas mediante el modo peer-to-peer. Dado que la comunicación se realiza a través de unos pocos centímetros, los usuarios se sienten seguros para compartir datos privados e importantes que utilizan la tecnología NFC. Cuando más alto nivel de los requisitos de seguridad se establecen las medidas de seguridad adicionales deben ser proporcionados también. Dos

Page 61: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

61

usuarios pueden intercambiar dinero entre carteras que se almacenan en sus móviles NFC. Regalos, cupones y boletos se pueden implementar como objetos intercambiables (Coskun, Ok, & Ozdenizci, 2012).

• Redes Sociales: Las redes sociales en modo peer-to-peer incluye casos de

uso para las personas intercambien su información social. A partir de una amistad en las redes sociales es un buen ejemplo de este caso. Intercambio de tarjetas de negocios es otro ejemplo (Coskun, Ok, & Ozdenizci, 2012).

• Dispositivos de emparejamiento: Dos dispositivos habilitados para NFC se pueden combinar como auriculares con teléfonos móviles, dispositivos en el automóvil, componentes de ordenador, y así sucesivamente (Coskun, Ok, & Ozdenizci, 2012).

• Beneficios aplicación: El número de aplicaciones desarrolladas utilizando el modo peer-to-peer es menor que para otros modos de funcionamiento hasta ahora. Se utiliza generalmente para el emparejamiento de dispositivos, redes y operaciones de transferencia de archivos. Emparejar dispositivos Bluetooth, intercambiar tarjetas de visita, y hacer nuevos amigos en las redes en línea son posibles implementaciones de este modo. Peer-to-peer modo proporciona fácil intercambio de datos entre dos dispositivos (Coskun, Ok, & Ozdenizci, 2012).

• El Fácil intercambio de datos entre dos dispositivos compatibles con NFC ofrece la posibilidad de intercambio seguro de datos privados. Dispositivos NFC pueden transferir datos en unos pocos centímetros, por lo que el intercambio de datos privados e importantes pueden ser una de las principales aplicaciones de este modo futuras (Coskun, Ok, & Ozdenizci, 2012).

2.16.3 Modo de Emulación de Tarjeta. Este modo ofrece la oportunidad de un móvil NFC para funcionar como una tarjeta inteligente sin contacto. Algunos ejemplos de la emulada tarjeta inteligente sin contacto son las tarjetas de crédito, tarjetas de débito, tarjetas de fidelización y así sucesivamente. Un móvil NFC puede incluso almacenar múltiples aplicaciones sin contacto de tarjeta inteligente al mismo tiempo. El modo de emulación de la tarjeta es un modo importante, ya que permite a las aplicaciones de pago y de venta de entradas y es compatible con la infraestructura de tarjetas inteligentes existentes (Coskun, Ok, & Ozdenizci, 2012). En este modo de funcionamiento de un teléfono móvil NFC no genera su propio campo de RF; las interfaces de comunicación soportados actualmente para el modo de emulación de la tarjeta son la norma ISO / IEC 14443 Tipo A y Tipo B, y FeliCa. El Modo de emulación de la tarjeta es un modo importante, ya que permite a las

Page 62: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

62

aplicaciones de pago y de venta de entradas, es compatible con la infraestructura de tarjetas inteligentes existentes (Coskun, Ok, & Ozdenizci, 2012).

Figura 11. Modo Emulación de Tarjeta

Fuente (Coskun, Ok, & Ozdenizci, 2012).

• Modelo Genérico de uso: En el modo de emulación de la tarjeta, el usuario interactúa con un lector NFC, generalmente usando su teléfono móvil como una tarjeta inteligente. El lector NFC es propiedad de un proveedor de servicios que está posiblemente conectado a Internet también. En este modo de funcionamiento, el usuario se conecta a un proveedor de servicios a través de un lector de NFC, posiblemente, sin notificar al proveedor de servicios (Coskun, Ok, & Ozdenizci, 2012).

Figura 12. Modo de uso genérico del modo de emulación de tarjeta

Fuente (Coskun, Ok, & Ozdenizci, 2012).

Page 63: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

63

1. Solicitud del servicio: El usuario realiza una solicitud a un proveedor de servicios al tocar su teléfono móvil a un lector NFC. Datos requeridos son transferidos desde el teléfono móvil al proveedor de servicios a través del lector de NFC.

2. Los servicios de backend: El proveedor de servicio se ejecuta el servicio de back-end requerido después de obtener los datos requeridos desde el dispositivo móvil del usuario. Ejemplos de estos servicios son de autorización de tarjeta de crédito y la validación de entradas.

3. Uso de servicio: El proveedor de servicios devuelve un servicio al usuario tales como la emisión de un billete que ya ha sido comprado por la tarjeta de pago, que autoriza el pago, y así sucesivamente. El proveedor de servicios también puede enviar opcionalmente datos al dispositivo móvil del usuario, como un cupón, ticket, recibo, y así sucesivamente.

• Aplicaciones Leading: En esta sección se presentan las principales implementaciones de modo de emulación de la tarjeta.

• Pago: No puede haber diferentes tipos de aplicaciones de pago NFC. No hay duda de que las solicitudes de pago más importantes son el crédito y el uso de tarjetas de débito que puede ser activado por los lectores NFC. También hay otras oportunidades de pago NFC, como el almacenamiento y el uso de vales, el uso de tarjetas de regalo, y así sucesivamente (Coskun, Ok, & Ozdenizci, 2012).

• Lealtad: Los puntos de fidelidad se pueden obtener en los puntos de pago y

luego se pueden utilizar para realizar compras libres o para obtener un regalo. Además, los cupones que se descargan a través de carteles inteligentes que utilizan el modo de lectura / escritura pueden además ser utilizadas por los lectores NFC que utilizan este modo de funcionamiento (Coskun, Ok, & Ozdenizci, 2012).

• Venta de Entradas: Casos de uso de venta de entradas se pueden

implementar en diferentes formas. Los usuarios pueden almacenar diferentes tipos de entradas como entradas de teatro, autobuses, y de vuelo que se han descargado previamente a través de carteles inteligentes o por algún otro método. Estos billetes pueden entonces ser utilizados en torniquetes o puntos de validación a través de modo de emulación tarjeta. Prepago o tarjetas de venta de entradas mensuales también pueden ser almacenados y utilizados (Coskun, Ok, & Ozdenizci, 2012).

• Control de Acceso: Casos de uso de control de acceso permiten a los usuarios almacenar sus objetos de control de acceso en sus dispositivos móviles. Ejemplos de estos casos incluyen cerradura electrónica para

Page 64: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

64

automóviles, edificios, áreas seguras, y habitaciones de hotel. Registro en el hotel es un caso interesante de usar que permite a la llave de la habitación para ser recibido a través de la tecnología OTA antes de llegar al hotel y comprobar directamente en la habitación. Por lo tanto no hay razón para pasar el tiempo en la recepción a la llegada a esta instancia (Coskun, Ok, & Ozdenizci, 2012).

• Servicios de Identidad: Otro caso interesante de uso de esta modalidad es el almacenamiento de la información basada en la identidad en los dispositivos móviles y que permite al personal autorizado para acceder a ella. Un ejemplo de este tipo de servicio es el almacenamiento de los datos del paciente. La historia de un paciente se puede almacenar en un móvil dispositivo y el usuario puede optar por dar permiso a un médico para acceder a esos datos a través de un lector de NFC. Esto aumenta la privacidad del usuario ya que no deseadas terceros tales como compañías de seguros no podrán acceder a la información del paciente. Aún más interesantes aplicaciones se pueden desarrollar en esta categoría, como la integración de las tarjetas de identificación nacional, pasaportes, huellas dactilares, y licencias de conducir a los teléfonos móviles (Coskun, Ok, & Ozdenizci, 2012).

• Entorno Inteligente: El caso entorno inteligente se refiere al uso de la

tecnología NFC en entornos inteligentes (hogar inteligente, oficina, etc.). El ejemplo más común es la gestión de entornos inteligentes a través de los datos pre configurados en un teléfono móvil. En este caso, cuando un usuario entra en un entorno inteligente, configuración del entorno inteligente específicas (por ejemplo, nivel de brillo, selección de canciones) pueden ser ajustados por el dispositivo móvil. También se puede integrar con un mecanismo de control de acceso de modo que cuando un usuario abre la puerta con su llave electrónica NFC, un entorno inteligente personalizada puede ser activado (Coskun, Ok, & Ozdenizci, 2012).

Page 65: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

65

2.16.3.1 Modo de Emulación de Tarjeta

Figura 13. Ejemplo de modelo de uso del pago con tarjeta de crédito

Fuente (Coskun, Ok, & Ozdenizci, 2012).

Según la figura anterior podemos afirmar que Alice va a comprar un producto para un cumpleaños de un amigo en el centro comercial. Ella lo llevó a la cajera que le preguntó qué método de pago estaría utilizando Alice. Alice se dio cuenta el signo NFC e informó a la cajera que iba a pagar con tarjeta de crédito de la NFC (Coskun, Ok, & Ozdenizci, 2012).

1. Solicitud de Pago: Alice solicita el pago NFC al tocar su teléfono móvil al lector NFC, El lector NFC lee los datos de tarjetas de crédito requeridas y los procesa. El teléfono móvil puede ser visto como el iniciador en este proceso, sin embargo, el dispositivo que crea el campo magnético es el lector NFC, y por lo tanto el lector NFC es el dispositivo iniciador. La acción táctil del usuario puede ser visto como la acción de disparo (Coskun, Ok, & Ozdenizci, 2012).

2. Autorización de tarjeta de crédito: El lector NFC envía la información de la tarjeta de los servicios bancarios para la autorización de la tarjeta de crédito. El servicio de autorizaciones responde a la solicitud de transacción (Coskun, Ok, & Ozdenizci, 2012).

3. confirmación de pago: El teléfono móvil se notifica a continuación sobre la transacción. Alice estaba feliz de pagar con su teléfono móvil (Coskun, Ok, & Ozdenizci, 2012).

Page 66: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

66

Continuando con la figura 13 y el ejemplo anterior Alice dio a su amigo el regalo de cumpleaños. Fueron a ver una película juntos. Alice había reservado previamente sus asientos y las entradas se han guardado en su teléfono móvil. Cuando llegaron al teatro, se fueron directamente sin tener que esperar en la cola de entrada. A continuación, se acercaron a los torniquetes. Alice estaba contenta de tener un teléfono móvil con capacidad NFC y estaba contenta de haber reservado las entradas con él móvil (Coskun, Ok, & Ozdenizci, 2012).

1. Solicitud de entrada: Alice pide entrada del teatro al tocar su teléfono móvil al lector NFC. El lector NFC lee los datos de entradas requeridas almacenados en el elemento seguro y los procesa (Coskun, Ok, & Ozdenizci, 2012).

Figura 14. Ejemplo de modelo de uso de la emisión de tickets

Fuente (Coskun, Ok, & Ozdenizci, 2012).

2. Validación de entradas: El lector NFC envía la información del boleto para el servidor de venta de entradas con el fin de validarla. Alternativamente, la validación también puede llevarse a cabo fuera de línea a través de una aplicación en el lector de NFC (Coskun, Ok, & Ozdenizci, 2012).

3. Torniquete apertura: Después de validar el billete, el sistema abre el torniquete, por lo que Alice y Bob pueden pasar a través (Coskun, Ok, & Ozdenizci, 2012).

• Beneficios de la aplicación: El teléfono móvil está vinculado a su usuario en su lugar. Lo que queremos decir es que el uso de un móvil teléfono en el modo de emulación de la tarjeta no afecta a la movilidad del usuario porque el usuario ya es móvil, incluso cuando se lleva tarjetas de crédito para realizar las mismas funciones (Coskun, Ok, & Ozdenizci, 2012).

Page 67: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

67

El modo de emulación tarjeta elimina la necesidad de llevar las tarjetas. La gente lleva los teléfonos móviles con ellos la mayor parte del tiempo, así que el acoplamiento de los teléfonos móviles con el cuerpo humano se adapta a su uso.La gente del futuro llevará NFC habilitado los teléfonos móviles no sólo para ganar la movilidad, sino también para llevar a cabo las funciones diarias también. Todas las tarjetas de crédito, llaves, entradas, etc. serán posiblemente integrados en los teléfonos móviles. Por lo tanto, habrá más oportunidades para integrar objetos cotidianos en NFC habilitado los teléfonos móviles en el futuro (Coskun, Ok, & Ozdenizci, 2012). Para resumir, la característica dominante del modo de emulación tarjeta implica la eliminación de la necesidad de un objeto físico. Por otra parte, en aplicaciones de venta de entradas, un NFC teléfono móvil elimina objetos físicos mediante la eliminación de la necesidad de llevar billetes de papel o en formato electrónico. En un control de acceso o una aplicación llave electrónica, el uso de NFC elimina la necesidad de llevar una llave física o una llave inteligente sin contacto. Como se utiliza para entrar en las habitaciones sin necesidad de utilizar llaves electrónicas, sino que también proporciona control de acceso. Como resultado, los beneficios más importantes de aplicaciones modo de emulación de la tarjeta son la eliminación de los objetos físicos y proporcionar control de acceso (Coskun, Ok, & Ozdenizci, 2012).

2.17 OTA

Es un estándar mundial para la transmisión de información de forma inalámbrica, se utiliza él envió de mensajes SMS para enviar información al usuario encriptada para asegurar la seguridad al usuario. Permite al operador de las tarjetas SIM tener control total de la tarjeta, permitiendo realizar tareas de configuración remota. (Mobility Services for Business, 2010).

2.18 Secure Element (SE)

Es una plataforma a prueba de manipulaciones y un requisito para almacenar información digital y aplicaciones de forma segura y encriptada para proporcionar la ejecución concurrente de múltiples servicios NFC en la misma tarjeta inteligente de forma segura (Coskun, Ok, & Ozdenizci, 2012). Existen tres factores de forma de SE

• Universal Integrated Circuit Card (UICC)

Page 68: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

68

• Embedded SE • microSD

Tanto la UICC y microSD son extraíbles. (GlobalPlatform, 2015). La Tecnología NFC debe tranquilizar a los usuarios y proveedores de servicios asegurando que la transacción se lleva a cabo en un ambiente protegido. Esta protección se logra mediante el uso de un Elemento Seguro SE, que proporciona los mecanismos de seguridad necesarios para apoyar diversos modelos de negocio. SE es una combinación de hardware, software, interfaces y protocolos incorporados en un teléfono móvil que permite un almacenamiento seguro (Coskun, Ok, & Ozdenizci, 2012). El SE tiene un Sistema Operativo como de costumbre (por ejemplo, MULTOS, JavaCard OS), y este SO apoya la ejecución segura de aplicaciones y el almacenamiento seguro de datos de la aplicación. El Sistema Operativo también puede apoyar la carga segura de aplicaciones (Coskun, Ok, & Ozdenizci, 2012). Si las aplicaciones habilitadas NFC se guardan y se ejecutan en la memoria del controlador de host del teléfono móvil NFC, estas aplicaciones no están protegidas contra la eliminación accidental o manipulación intencionada de los datos guardados en la memoria. Sólo transmiten datos entre NFC habilitado los teléfonos móviles o recopilan información de carteles inteligentes. En ticketing sin contacto, pago y otros casos de aplicación similares, la seguridad es un tema importante. Estas aplicaciones utilizan datos valiosos, y el almacenamiento de información valiosa, privada (por ejemplo, información de tarjeta de crédito) en una memoria sin garantía es inaceptable. Los datos podrían ser transmitidos a través de una interfaz de GSM a un tercero que pueda hacer mal uso de la información (Coskun, Ok, & Ozdenizci, 2012). Para resolver este problema, las aplicaciones pertinentes NFC deben ser ejecutadas y guardadas en la memoria de una SE del teléfono móvil. Una variedad de módulos puede servir como las PE como Tarjetas Universal Integrated Circuit (UICC) (es decir, tarjetas SIM), tarjetas de memoria o hardware embebido. El SE es necesario para diversas aplicaciones tales como el pago, venta de entradas, el gobierno y otras aplicaciones donde la autenticación segura y un ambiente de confianza se encuentran entre los requisitos previos (Coskun, Ok, & Ozdenizci, 2012).

Page 69: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

69

Figura 15. Elementos Seguros NFC

Fuente (Coskun, Ok, & Ozdenizci, 2012).

2.19 DIFERENCIAS ENTRE NFC Y CÓDIGO DE BARRAS

La identificación y control de productos en miles de compañías del mundo son realizadas por medio de código de barras. Esta tecnología brinda una manera de diferenciar los productos el uno del otro. El rápido cambio del mundo para tratar y ver los negocios, la globalización, son unos de los factores que influyeron en la evolución de una tecnología que identificación que permitiera llevar un seguimiento y control de los productos a medida que se mueven. La tecnología NFC ("Sistemas de comunicación de campo cercano"), hace ver a la tecnología de código de barras como obsoleta, frente a las bondades que brinda para la identificación el sistema de radiofrecuencia.

Page 70: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

70

Figura 16. NFC vs código de barras

Fuente Krowne (2012).

Tabla 3. Diferencias entre NFC y código de barras

Fuente Del Autor

2.20 NFC FÓRUM

El sitio oficial de NFC forum se define como organización industrial sin fines de lucro cuya misión es promover el uso de la tecnología Near Field Communication, asegurando la interoperabilidad entre dispositivos y servicios, permitiendo educar al mercado acerca de la tecnología NFC. Cerca de 140 empresas, muchos líderes en sus mercados, se han unido para alcanzar este objetivo (NFC forum, 2015).

Características NFC Código de Barras

Capacidad Superior cantidad de información Limitación de información

Identificación Depende del Producto Estandarizada.

Actualización Lectura y Escritura Solo lectura

Flexibilidad No requiere línea de visión para la lectura.

Requiere línea de visión para la lectura

Tipo de Lectura Lee a través de diversos materiales y superficies. Lee solo en superficie

Precisión No requiere intervención humana, 100% automático

Si Requiere Intervención Humana

Durabilidad Soporta ambientes agresivos (intemperie, químicos, humedad, temperaturas).

Puede dañarse fácilmente

Page 71: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

71

Figura 17. Logo NFC Forum

Fuente (NFC forum, 2015).

2.20.1 Ecosistema NFC. El potencial para aplicaciones NFC y productos es amplia y profunda, ya sea aprovechando la promesa de las comunicaciones Bluetooth peer-to-peer, el desarrollo de aplicaciones de sistemas de pago, o la creación de los chips que permitan futuros productos basados en NFC (NFC forum, 2015). 2.20.2 NFC Forum Ayuda a Construir el Ecosistema. “Miembros del Foro abarcan todas las partes del ecosistema NFC. Estas empresas comparten su desarrollo, aplicación y experiencia de marketing para desarrollar las mejores soluciones posibles para avanzar en el uso de NFC. Todas las decisiones son aprobadas por los miembros de votación para asegurar que una amplia gama de perspectivas se incluyen con el fin de construir una base firme y flexible para todo el crecimiento del mercado NFC futuro” (NFC forum, 2015).

2.21 ESTÁNDARES NFC

Los estándares NFC y de las smartcards son reconocidos por diferentes organismos internacionales como:

• ISO/IEC (International Organization for Standardization / International Electro-technical Commission)

• ETSI (European Telecommunications Standards Institute) • ECMA (European Association for Standardizing Information and

Communication Systems) (Veloz, 2010, p.13).

Page 72: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

72

Figura 18. Ecosistema NFC

Fuente (NFC forum, 2015)

Estos estándares especifican los esquemas de modulación, codificación, velocidades de transferencia y formato de marco de la interfaz RF (radio-frecuencia) de los dispositivos NFC. Definen también esquemas de inicialización y condiciones requeridas para control de colisiones de datos durante la inicialización, tanto para modos pasivos como modos activos de NFC, y protocolos de transporte, incluyendo protocolos de activación y métodos de intercambio de datos. (Chavarría, 2011) Actualmente la colaboración técnica y de negocios relacionada con NFC se realiza bajo los acuerdos del NFC Fórum. Sus miembros principales son:NXP (Philips), Sony, Nokia, HP, Texas Instruments, NEC, Samsung, Motorola, MasterCard, Visa, Panasonic, Microsoft, Gemalto, Vodafone, NTT DoCoMo, Siemens, entre otros (Csapodi & Nagy, 2002). NFC también incorpora una variedad de estándares pre-existentes, lo que habilita a esta tecnología para ser compatible con otras infraestructuras tecnológicas, y otro tipo de dispositivos de lectura:

• ISO 15693: Vicinity Cards • 14443: Proximity Cards (MIFARE Tipos A y B).

Page 73: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

73

Figura 19. Estándares soportados por NFC para compartir datos

Fuente Sánchez (2009)

2.22 FUNCIONAMIENTO TÉCNICO DE NFC

Morales, V.S. & Ramírez, J.C. (2008). Definen que dentro de la tecnología NFC se deben analizar algunos términos, definiciones y componentes, que son necesarios para que el funcionamiento de esta tecnología sea lo más claro posible. NFC trabaja bajo lo que se conoce como el acoplamiento magnético inductivo, lo cual es una técnica sencilla y fácil de aplicar sobre el silicio, lo que permite una integración más sencilla y eficaz de las antenas del sistema NFC (para el envío y recepción de señales) y diferentes circuitos digitales en un solo chip para un dispositivo móvil.

El módulo de transmisión NFC de un semiconductor PN511 diseñado por la empresa Philips, en donde se logra ilustrar cómo los elementos de un sistema NFC se pueden integrar en un solo chip dentro de un dispositivo. Este circuito análogo procesa las señales que se reciben o se envían desde otro dispositivo. El elemento UART maneja toda la parte tecnológica detrás de la comunicación NFC entre dispositivos. El buffer FIFO permite la transferencia de datos entre el host y el UART Otros componentes del chip se refieren a un detector de nivel de radio frecuencia que se sintoniza para reconocer señales de 13.56 MHz y poder así también identificar la presencia de otro dispositivo NFC cerca.

Page 74: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

74

El “cardmode detector” reconoce qué tipo de tecnología (Ejemplo: MIFARE de Philips o FeliCade Sony) es la que envía la señal y prepara el “Receiver” para desmodular la misma (p 9 -10). 2.22.1 Near Field Communication Interface and Protocol (NFCIP): En la capa física, la interfaz de Near Field Comunicación y Protocolo (NFCIP) está estandarizado en dos formas como NFCIP - 1, que define los modos de NFC de comunicación en la capa RF y otras características técnicas de la capa RF y NFCIP - 2, que soporta el modo de conmutación mediante la detección y la selección de un modo de comunicación (Coskun, Ok, & Ozdenizci, 2012).

2.23 NFC PROTOCOLO (NFCIP- 1)

En la investigación realizada por Veloz (2010) nos explica que el protocolo NFCIP- 1 está definido en el ECMA-340 y en ISO-IEC 18092. Los estándares definen la modulación y esquemas de codificación de bits y la arquitectura para las tasas de transferencia de datos de 106, 212 y 424 kbits/s. Además, estandarizan la interfaz de señal de comunicación y el flujo general del protocolo. En los sistemas NFC, máximo dos dispositivos se pueden comunicar simultáneamente. Estos intercambian datos usando acoplamiento inductivo y señales de radio. Uno de los pares en la comunicación se llama iniciador y tiene un rol activo, mientras que el par pasivo se llama target. Ambos roles son siempre asignados, incluso si dos dispositivos NFC con carga de baterías se comunican. El chip NFC que está integrado en el dispositivo móvil puede leer la información de un tag (a), emular una smart card para que un reader pueda acceder a sus datos (b), o comunicarse directamente con otro dispositivo NFC (c). NFCIP- 1 define modelos de comunicación activa y pasiva. En modo activo, tanto el iniciador como el target generan un campo de frecuencia de radio. El iniciador empieza la comunicación usando el protocolo NFCIP-1 Una vez se completa la configuración y el handshake, comienza la transmisión de datos. En modo pasivo, solo el iniciador genera un campo de radio frecuencia .El target obtiene energía a través del acoplamiento inductivo y es capaz de enviar o recibir datos. Este modo permite el ahorro significativo de energía. Además, NFCIP-1 define el protocolo de transporte, métodos de anti-colisión para el modo activo, y selección de target e inicialización para el modo pasivo. (Veloz, 2010, p.35) NFCIP - 1 está definida como estándar en las normas ISO / IEC 18092, ECMA 340 y ETSI TS 102 190, y especifica esquemas de modulación, codificaciones,

Page 75: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

75

velocidades de transferencia y “frame formats” del interface RF y esquemas de inicialización y condiciones requeridas para el control de la colisión de datos durante la inicialización. NFCIP - 1 define:

• Dos modos de comunicación activo y pasivo. • Campo de RF • Interfaz de señal de comunicación de RF • Flujo de protocolo general. • Protocolo de transporte incluyendo la activación de protocolo • El protocolo de intercambio de datos con arquitectura marco y la detección

de error de cálculo de código (CRC tanto para el modo de comunicación en cada velocidad de datos), y los métodos de desactivación de protocolo.

• Condiciones de inicialización de las velocidades de datos compatibles de 106, 212 y 424 kbps en detalle.

• Frecuencia portadora del campo de RF es 13,56 MHz. • Para el modo comunicación activa, tanto el iniciador y destino utilizan su

propio campo de RF para habilitar la comunicación. • El iniciador inicia la comunicación NFCIP-1 mientras que el objetivo responde

a un comando de iniciador en el modo de la comunicación activa usando modulación autogenerada del campo auto-generado RF.

• El objetivo es alimentado por acoplamiento inductivo y es capaz de enviar y recibir datos.

• En el modo de comunicación pasiva, el iniciador genera el campo de RF y se inicia la comunicación. El objetivo responde a un comando de iniciador en el modo de comunicación pasiva utilizando un esquema de modulación de carga.

• Todos los dispositivos NFCIP-1 tienen la capacidad de comunicación en 106, 212 o 424 kbps y pueden cambiar a otra velocidad de transferencia o quedarse en la misma velocidad de transferencia (Coskun, Ok, & Ozdenizci, 2012).

2.23.2 NFC INTERFACE PROTOCOLO (NFCIP- 2)

En la investigación realizada por Veloz (2010) nos explica que el protocolo NFCIP- 2 está definido en el CMA-352 y en ISO-IEC 21481. Este estándar especifica un método para escoger uno de los tres posibles modos de comunicación definidos en el ECMA-340 (NFCIP-1), ISO/IEC 14443 (MIFARE de Philips) e ISO/IEC 15693 (tags RFID). Por esta razón, NFCIP-2 provee una puerta de entrada entre diferentes estándares de interfaz existentes. Los dispositivos que implementan NFCIP-2 necesitan

Page 76: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

76

implementar funciones de dispositivo de acoplamiento de proximidad (ISO/IEC 14443), dispositivo de acoplamiento de vecindad (ISO/IEC 15693) y las funciones de iniciador y target definidas en ECMA-340. Esto hace que los dispositivos NFC sean compatibles con sistemas existentes de FeliCa, MIFARE y otros. Sin embargo, no se logra compatibilidad en la emulación de smart cards para los estándares ISO/IEC 14443B e ISO/IEC 15936, aunque es posible la lectura y edición. Otro enfoque del protocolo es no perturbar cualquier comunicación saliente en la frecuencia de 13.56 MHz. Esto se alcanza usando CSMA (Carrier Sense with Multiple Access), por tanto un dispositivo NFCIP-2 no activará su campo de radio frecuencia cuando detecta un campo de radio que excede un umbral específico (p.36). Figura 20. Ecma International NFCIP-2

Fuente (Ecma International, 2013)

NFCIP - 2 es un estándar especificado en la norma ISO / IEC 21481, ECMA 352 y ETSI TS 102 312. La norma específica el mecanismo de selección del modo de comunicación y está diseñado para no molestar a ninguna comunicación continua a 13,56 MHz para dispositivos de ejecución NFCIP - 1, ISO / IEC 14443 e ISO / IEC 15693. Aunque toda la ISO / IEC 18092, ISO / IEC 14443 e ISO / IEC 15693 especifica los estándares de 13,56 MHz como su frecuencia de trabajo, se pueden especificar los modos de comunicación distintos. Estos se definen como NFC, PCD, PICC y los modos de comunicación VCD. Esto se consigue utilizando Carrier Sense Acceso Múltiple (CSMA), por lo tanto, un dispositivo de NFCIP-2 no se activará su campo de RF cuando se detecta un RF externa que supera un cierto umbral (Coskun, Ok, & Ozdenizci, 2012). ECMA- 340, ISO / IEC 14443 e ISO / IEC 15693 especifica la interfaz de señal de radiofrecuencia, la inicialización, anticolisión y protocolos para la interconexión

Page 77: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

77

inalámbrica de dispositivos estrechamente acopladas y el acceso a sin contacto tarjetas de circuitos integrados que funciona a 13,56 MHz. Esta norma específica el mecanismo de selección de modo de comunicación , diseñado para no molestar a cualquier curso comunicación a 13,56 MHz, para los dispositivos de aplicación ECMA- 340 , ISO / IEC 14443 o ISO / IEC 15693. Esta Norma requiere implementaciones para entrar en el modo de comunicación seleccionado como se especifica en el respectivo Standard. Las especificaciones del modo de comunicación, sin embargo, están fuera del alcance de esta Norma (Coskun, Ok, & Ozdenizci, 2012).

2.24 COMPONENTES ADICIONALES

La tecnología NFC permite trabajar con una serie de componentes adicionales al dispositivo móvil, lo cual le permite ampliar el número de servicios y aplicaciones que se pueden desarrollar a partir de la misma; algunos de estos componentes se refieren a tags, lectores, servidores, etc. 2.24.1 Tag o Chip NFC / RFID. Los tags utilizados en la tecnología NFC tienen un número de identificación único (con un tamaño de 4 a 10 bytes), que se da por la combinación entre código de empresa fabricante y tipo de tecnología del tag (MIFARE, FeliCa, etc.). Existen cuatro tipos de tags que se pueden manejar con los dispositivos NFC. Estos son los factores más importantes para lograr la interoperabilidad entre los distintos proveedores de los tags NFC y los fabricantes de dispositivos, para asegurar la consistencia para el usuario. Las especificaciones operativas para el funcionamiento de los diferentes tipos de tag descritos por el NFC Fórum (Tipo: 1/2/3/4), proporcionan la información técnica necesaria para aplicar la lectura/escritura y las funciones de control del dispositivo NFC para interactuar con las tags. Veloz (2010) nos define los siguientes tipos de tags:

• Tag Tipo 1: Se basa en la norma ISO14443A. Los tags permiten ser de lectura y reescritura, aunque los usuarios pueden configurar el tag sólo para lectura. La memoria disponible es de 96 Bytes y expandible a 2 Kb; la velocidad de comunicación es de 106 Kbps.

• Tag Tipo 2: Se basa en la norma ISO14443A. Los tags permiten ser de

lectura y reescritura, aunque los usuarios pueden configurar el tag sólo para lectura. La memoria disponible es de 48 Bytes y expandible a 2 Kb; la velocidad de comunicación es de 106 Kbps.

Page 78: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

78

Figura 21. Tags para NFC

Fuente: (NetBrain, 2014)

• Tag Tipo 3: Se basa en la Japanese Industrial Standard (JIS) X 6319- 4, también conocido como FeliCa. Los tags se encuentran ya configurados desde la fabricación, ya sea para escritura, o sólo para lectura. La memoria disponible es variable, pero teóricamente el límite de memoria es 1 MB por servicio; la velocidad de comunicación es de 212 Kbps o 424 Kbps.

• Tag Tipo 4: Es plenamente compatible con ISO14443A y los estándares B.

Los encuentran ya configurados desde la fabricación, ya sea para lectura y escritura, o de sólo lectura. La memoria disponible es variable, de hasta 32 KB por servicio; la velocidad de comunicación es de hasta 424 Kbps (p. 29).

• Tag Tipo 5: Define la forma en un dispositivo NFC puede interactuar con Tag con la norma ISO/IEC 15693 que está configurado para ser capaz de almacenar un mensaje de NDEF.

2.24.2 Lector NFC. El lector NFC es un transmisor/receptor que lee el contenido de los tags y dispositivos NFC. El componente permite a la interfaz de equipo principal interactuar y comunicarse con el dispositivo o tag NFC. Dependiendo de la aplicación, el equipo central puede ser un PC de escritorio, un portátil, PDA, dispositivos de electrónica de consumo, etc. o teléfono móvil. El PC/portátil es donde se almacena la aplicación que se habilita en el momento en que el dispositivo o tag NFC hace contacto con el reader. En el caso del teléfono se almacena localmente en el dispositivo móvil (Veloz, 2010).

Page 79: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

79

Figura 22. Lector NFC de escritorio

Fuente: (MIFARE, 2012)

Page 80: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

80

3. SOFTWARE

3.1 BASES DE DATOS

3.1.1 Definición: Un sistema de bases de datos es un sistema computarizado para llevar registros, es decir, es un sistema computarizado cuya finalidad general es almacenar información y permitir a los usuarios recuperar y actualizar esa petición con base a peticiones (Date, C.J. 2001). Los principales objetivos de un DBMS que describe Moreno, A. O. (2000) son los siguientes:

• Independencia lógica y física de los datos: se refiere a la capacidad de modificar una definición de esquema en un nivel de la arquitectura sin que esta modificación afecte al nivel inmediatamente superior. Para ello un registro externo en un esquema externo no tiene por qué ser igual a su registro correspondiente en el esquema conceptual.

• Redundancia mínima: se trata de usar la base de datos como repositorio común de datos para distintas aplicaciones.

• Acceso concurrente: por parte de múltiples usuarios: control de concurrencia mediante técnicas de bloqueo o cerrado de datos accedidos.

• Distribución espacial de los datos: la independencia lógica y física facilita la posibilidad de sistemas de bases de datos distribuidas. Los datos pueden encontrarse en otra habitación, otro edificio e incluso otro país. El usuario no tiene por qué preocuparse de la localización espacial de los datos a los que accede.

• Integridad de los datos: se refiere a las medidas de seguridad que impiden que se introduzcan datos erróneos. Esto puede suceder tanto por motivos físicos (defectos de hardware, actualización incompleta debido a causas externas), como de operación (introducción de datos incoherentes).

• Consultas complejas optimizadas: la optimización de consultas permite la rápida ejecución de las mismas.

• Seguridad de acceso y auditoría: se refiere al derecho de acceso a los datos contenidos en la base de datos por parte de personas y organismos. El sistema de auditoría mantiene el control de acceso a la base de datos, con el objeto de saber qué o quién realizó una determinada modificación y en qué momento.

• Respaldo y recuperación: se refiere a la capacidad de un sistema de base de datos de recuperar su estado en un momento previo a la pérdida de datos.

• Acceso a través de lenguajes de programación estándar: se refiere a la posibilidad ya mencionada de acceder a los datos de una base de datos mediante lenguajes de programación ajenos al sistema de base de datos propiamente dicho.

Page 81: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

81

Una base de datos típica conlleva la existencia de tres tipos de usuario con relación a su diseño, desarrollo y uso:

• El administrador de bases de datos (DBA: Database Administrator): diseña y mantiene la DB.

• El desarrollador de aplicaciones (programador): implementa las transacciones e interfaces.

• Los usuarios finales: consultan y editan los datos de la DB mediante un lenguaje de consulta de alto nivel (Moreno, 2000).

3.2 ARQUITECTURA CLIENTE-SERVIDOR PARA BASES DE DATOS

3.2.1 Conceptos de Arquitectura Cliente / Servidor. Con base en la definición de Orfali et al. (1997) define clientes y servidores son entidades lógicas independientes que operan en conjunto a través de una red para realizar una tarea. Se prefiere cambiar la palabra red, por mecanismos de comunicación, pues clientes y servidores pueden estar en la misma máquina. Las características más importantes que se distinguen cliente/servidor son:

• Orientado a servicios. El servidor los ofrece y el cliente los consume.

• Compartición de recursos. Servicios ofrecidos a muchos clientes. Un servidor puede atender muchos clientes que solicitan esos servicios.

• Transparencia de ubicación. El servidor es un proceso que puede residir en el mismo aparato que el cliente o en un aparato distinto a lo largo de una red. Un programa puede ser un servidor en un momento y convertirse en un cliente posteriormente.

• Mezcla e igualdad. Tal vez de las más importantes ventajas de este paradigma. Una aplicación cliente/servidor, idealmente es independiente del hardware y de sistemas operativos; mezclando e igualando estas plataformas.

• Interacción a través de mensajes, para envío y respuesta de servicios.

• Servicios encapsulados, exponiendo los servicios a través de interfaces, lo que facilita la sustitución de servidores son afectar los clientes; permitiendo a la vez una fácil escalabilidad.

Page 82: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

82

3.3 COMPONENTES CLIENTE/SERVIDOR

Como su nombre lo indica está compuesta por Clientes y Servidores, pero además oculto en este nombre se encuentra los mecanismos de interacción entre ellos, clave en las aplicaciones de este tipo. Orfali et al. (1997) lo asocia al / de Cliente / Servidor y se denomina Middleware. Orfali et al. (1997) definen que Middleware es un término vago que abarca a todo el software distribuido necesario para el soporte de interacciones entre clientes y servidores. Imagínelo como el software que ocupa la parte intermedia del sistema de cliente/servidor. Es el enlace que permite que un cliente obtenga un servicio de un servidor. ¿Dónde empieza y dónde termina el middleware? Empieza en el módulo de API de la parte del cliente que se emplea para invocar un servicio y comprende la transmisión de la solicitud por la red y la respuesta resultante. Pero no incluye al software que presta el servicio real; esto pertenece a los dominios del servidor. Tampoco a la interfaz del usuario ni a la lógica de la aplicación, en los dominios del cliente (p. 52). El cliente envía mensajes que representados en solicitudes SQL hacia el servidor de bases de datos. Los resultados de cada orden de SQL son devueltos al cliente. El DBMS se encarga de recolectar los datos desde su base de datos, no envía los registros completos, teniéndose un uso mucho más eficiente de la capacidad de procesamiento distribuida. Es usual que se generen aplicaciones en el cliente y en el servidor. Los servidores de bases de datos constituyen el fundamento de los sistemas de apoyo de decisiones que precisan de consultas específicas y reportes flexibles

3.4 ARQUITECTURA DE 3 CAPAS

La estrategia tradicional de utilizar aplicaciones compactas causa gran cantidad de problemas de integración en sistemas software complejos como pueden ser los sistemas de gestión de una empresa o los sistemas de información integrados consistentes en más de una aplicación. Estas aplicaciones suelen encontrarse con importantes problemas de escalabilidad, disponibilidad, seguridad, integración etc. Para solventar estos problemas se ha generalizado la división de las aplicaciones en capas que normalmente serán tres: una capa que servirá para guardar los datos (base de datos), una capa para centralizar la lógica de negocio (modelo) y por último una interfaz gráfica que facilite al usuario el uso del sistema.

Page 83: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

83

Si se establece una separación entre la capa de interfaz gráfica (cliente), replicada en cada uno de los entornos de usuario y la capa modelo, que quedaría centralizada en un servidor de aplicaciones, esa arquitectura otorga algunas ventajas:

• Centralización de los aspectos de seguridad y transaccionalidad, que serían responsabilidad del modelo.

• No replicación de lógica de negocio en los clientes: esto permite que las modificaciones y mejoras sean automáticamente aprovechadas por el conjunto de los usuarios, reduciendo los costes de mantenimiento.

• Mayor sencillez de los clientes.

3.5 SERVICIOS WEB

World Wide Web Consortium W3C. (2012) define que existen múltiples definiciones sobre lo que son los Servicios Web, lo que muestra su complejidad a la hora de dar una adecuada definición que englobe todo lo que son e implican. Una posible sería hablar de ellos como un conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre sí con el objetivo de ofrecer unos servicios. Los proveedores ofrecen sus servicios como procedimientos remotos y los usuarios solicitan un servicio llamando a estos procedimientos a través de la Web. 3.5.1 Usos de Servicios Web. En el sitio web W3C (2012), se explica cómo estos servicios proporcionan mecanismos de comunicación estándares entre diferentes aplicaciones, que interactúan entre sí para presentar información dinámica al usuario. Para proporcionar interoperabilidad y extensibilidad entre estas aplicaciones, y que al mismo tiempo sea posible su combinación para realizar operaciones complejas, es necesaria una arquitectura de referencia estándar. 3.5.2 Funcionamiento de Servicios Web. El siguiente gráfico publicado en la página de W3C. (2012) se muestra cómo interactúa un conjunto de Servicios Web:

Page 84: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

84

Figura 23. Los servicios Web en Funcionamiento

Fuente World Wide Web Consortium W3C. (2012)

Según el ejemplo del gráfico, un usuario (que juega el papel de cliente dentro de los Servicios Web), a través de una aplicación, solicita información sobre un viaje que desea realizar haciendo una petición a una agencia de viajes que ofrece sus servicios a través de Internet. La agencia de viajes ofrecerá a su cliente (usuario) la información requerida. Para proporcionar al cliente la información que necesita, esta agencia de viajes solicita a su vez información a otros recursos (otros Servicios Web) en relación con el hotel y la compañía aérea. La agencia de viajes obtendrá información de estos recursos, lo que la convierte a su vez en cliente de esos otros Servicios Web que le van a proporcionar la información solicitada sobre el hotel y la línea aérea. Por último, el usuario realizará el pago del viaje a través de la agencia de viajes que servirá de intermediario entre el usuario y el servicio Web que gestionará el pago. W3C. (2012) En todo este proceso intervienen una serie de tecnologías que hacen posible esta circulación de información. Por un lado, estaría SOAP (Protocolo Simple de Acceso a Objetos). Se trata de un protocolo basado en XML, que permite la interacción entre varios dispositivos y que tiene la capacidad de transmitir información compleja. Los datos pueden ser transmitidos a través de HTTP, SMTP, etc. SOAP especifica el formato de los mensajes. El mensaje SOAP está compuesto por un envelope (sobre), cuya estructura está formada por los siguientes elementos: header (cabecera) y body (cuerpo). W3C. (2012)

Page 85: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

85

Figura 24. Estructura de los mensajes

Fuente World Wide Web Consortium W3C. (2012)

Para optimizar el rendimiento de las aplicaciones basadas en Servicios Web, se han desarrollado tecnologías complementarias a SOAP, que agilizan el envío de los mensajes (MTOM) y los recursos que se transmiten en esos mensajes (SOAP-RRSHB). Por otro lado, WSDL (Lenguaje de Descripción de Servicios Web), permite que un servicio y un cliente establezcan un acuerdo en lo que se refiere a los detalles de transporte de mensajes y su contenido, a través de un documento procesable por dispositivos. WSDL representa una especie de contrato entre el proveedor y el que solicita. WSDL especifica la sintaxis y los mecanismos de intercambio de mensajes W3C. (2012). Durante la evolución de las necesidades de las aplicaciones basadas en Servicios Web de las grandes organizaciones, se han desarrollado mecanismos que permiten enriquecer las descripciones de las operaciones que realizan sus servicios mediante anotaciones semánticas y con directivas que definen el comportamiento. Esto permitiría encontrar los Servicios Web que mejor se adapten a los objetivos deseados. Además, ante la complejidad de los procesos de las grandes aplicaciones empresariales, existe una tecnología que permite una definición de estos procesos mediante la composición de varios Servicios Web individuales, lo que se conoce como coreografía W3C. (2012).

Page 86: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

86

3.6 INGENIERÍA DE SOFTWARE

3.6.1 Ciclo de Vida del Software. Se llama ciclo de vida del software a las fases por las que pasa un proyecto software desde que es concebido, hasta que está listo para usarse. Típicamente, incluye las siguientes actividades: toma de requisitos, análisis, diseño, desarrollo, pruebas (validación, aseguramiento de la calidad), instalación (implantación), uso, mantenimiento y obsolescencia (Pérez, D.A., Ginestà., M.H., Matías, M. H.,& Hernández, J.M. 2007) Figura 25. Ciclo de Vida del Software

Fuente Pérez, D.A.,Ginestà, M.H.,Matías, M. H.,& Hernández, J.M. (2007)

El proyecto tiende a pasar iterativamente por estas fases, en lugar de hacerlo de forma lineal. Así pues, se han propuesto varios modelos (en cascada, incremental, evolutivo, en espiral, o concurrente, por citar algunos) para describir el progreso real del proyecto (Pérez, D.A.,et al. 2007).

3.7 PROGRAMACIÓN EXTREMA

En su artículo Canós, J.C.,Letelier, P., & Penadés, M.C.(2004) define la programación Xp como una metodología ágil centrada en potenciar las relaciones

Page 87: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

87

interpersonales como clave para el éxito en desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el aprendizaje de los desarrolladores, y propiciando un buen clima de trabajo. XP se basa en realimentación continua entre el cliente y el equipo de desarrollo, comunicación fluida entre todos los participantes, simplicidad en las soluciones implementadas y coraje para enfrentar los cambios. XP se define como especialmente adecuada para proyectos con requisitos imprecisos y muy cambiantes, y donde existe un alto riesgo técnico.

Tabla 4. Diferencias entre metodologías ágiles y no ágiles

Metodologías Ágiles Metodologías Tradicionales

Basadas en heurísticas provenientes de prácticas de producción de código

Basadas en normas provenientes de estándares seguidos por el entorno de desarrollo

Especialmente preparados para cambios durante el proyecto

Cierta resistencia a los cambios

Impuestas internamente (por el equipo) Impuestas externamente

Proceso menos controlado, con pocos principios

Proceso mucho más controlado, con numerosas políticas/normas

No existe contrato tradicional o al menos es bastante flexible

Existe un contrato prefijado

El cliente es parte del equipo de desarrollo

El cliente interactúa con el equipo de desarrollo mediante reuniones

Grupos pequeños (<10 integrantes) y trabajando en el mismo sitio

Grupos grandes y posiblemente distribuidos

Pocos artefactos Más artefactos

Pocos roles Más roles

Menos énfasis en la arquitectura del software

La arquitectura del software es esencial y se expresa mediante modelos

Fuente (Canós, et al., 2004).

Los principios y prácticas son de sentido común pero llevadas al extremo, de ahí proviene su nombre. Kent Beck, el padre de XP, describe la filosofía de XP, sin cubrir los detalles técnicos y de implantación de las prácticas. Posteriormente, otras

Page 88: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

88

publicaciones de experiencias se han encargado de dicha tarea. A continuación presentaremos las características esenciales de XP organizadas en los tres apartados siguientes: historias de usuario, roles, proceso y prácticas (Canós, et al., 2004). 3.7.1. Historias de Usuario. Son la técnica utilizada para especificar los requisitos del software. Se trata de tarjetas de papel en las cuales el cliente describe brevemente las características que el sistema debe poseer, sean requisitos funcionales o no funcionales. El tratamiento de las historias de usuario es muy dinámico y flexible cada historia de usuario es lo suficientemente comprensible y delimitada para que los programadores puedan implementarla en unas semanas. Canós, et al (2004) en su artículo presenta un ejemplo de ficha (customer story and task card) en la cual pueden reconocerse los siguientes contenidos: fecha, tipo de actividad (nueva, corrección, mejora), prueba funcional, número de historia, prioridad técnica y del cliente, referencia a otra historia previa, riesgo, estimación técnica, descripción, notas y una lista de seguimiento con la fecha, estado cosas por terminar y comentarios. A efectos de planificación, las historias pueden ser de una a tres semanas de tiempo de programación (para no superar el tamaño de una iteración). Las historias de usuario son descompuestas en tareas de programación (task card) y asignadas a los programadores para ser implementadas durante una iteración. 3.7.2. Roles XP. Los roles de acuerdo con la propuesta original de Beck (1999) son:

• Programador. El programador escribe las pruebas unitarias y produce el código del sistema.

• Cliente. Escribe las historias de usuario y las pruebas funcionales para validar su implementación. Además, asigna la prioridad a las historias de usuario y decide cuáles se implementan en cada iteración centrándose en aportar mayor valor al negocio.

• Encargado de pruebas (Tester). Ayuda al cliente a escribir las pruebas funcionales. Ejecuta las pruebas regularmente, difunde los resultados en el equipo y es responsable de las herramientas de soporte para pruebas.

• Encargado de seguimiento (Tracker). Proporciona realimentación al equipo. Verifica el grado de acierto entre las estimaciones realizadas y el tiempo real dedicado, para mejorar futuras estimaciones. Realiza el seguimiento del progreso de cada iteración.

• Entrenador (Coach). Es responsable del proceso global. Debe proveer guías al equipo de forma que se apliquen las prácticas XP y se siga el proceso correctamente.

Page 89: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

89

• Consultor. Es un miembro externo del equipo con un conocimiento específico en algún tema necesario para el proyecto, en el que puedan surgir problemas.

• Gestor (Big boss). Es el vínculo entre clientes y programadores, ayuda a que el equipo trabaje efectivamente creando las condiciones adecuadas. Su labor esencial es de coordinación.

3.7.3. Proceso XP. El ciclo de desarrollo consiste (a grandes rasgos) en los siguientes pasos descrito por Canós, et al (2004):

1 El cliente define el valor de negocio a implementar. 2 El programador estima el esfuerzo necesario para su implementación. 3 El cliente selecciona qué construir, de acuerdo con sus prioridades y las

restricciones de tiempo. 4 El programador construye ese valor de negocio. 5 Vuelve al paso 1.

En todas las iteraciones de este ciclo tanto el cliente como el programador aprenden. No se debe presionar al programador a realizar más trabajo que el estimado, ya que se perderá calidad en el software o no se cumplirán los plazos. De la misma forma el cliente tiene la obligación de manejar el ámbito de entrega del producto, para asegurarse que el sistema tenga el mayor valor de negocio posible con cada iteración. El ciclo de vida ideal de XP consiste de seis fases: Exploración, Planificación de la Entrega (Release), Iteraciones, Producción, Mantenimiento y Muerte del Proyecto. 3.7.4. PRÁCTICAS XP. Canós (2004), define que la principal suposición que se realiza en XP es la posibilidad de disminuir la mítica curva exponencial del costo del cambio a lo largo del proyecto, lo suficiente para que el diseño evolutivo funcione. Esto se consigue gracias a las tecnologías disponibles para ayudar en el desarrollo de software y a la aplicación disciplinada de las siguientes prácticas.

• El juego de la planificación. Hay una comunicación frecuente el cliente y los programadores. El equipo técnico realiza una estimación del esfuerzo requerido para la implementación de las historias de usuario y los clientes deciden sobre el ámbito y tiempo de las entregas y de cada iteración.

• Entregas pequeñas .Producir rápidamente versiones del sistema que sean operativas, aunque no cuenten con toda la funcionalidad del sistema. Esta versión ya constituye un resultado de valor para el negocio. Una entrega no debería tardar más 3 meses.

• Metáfora. El sistema es definido mediante una metáfora o un conjunto de

Page 90: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

90

metáforas compartidas por el cliente y el equipo de desarrollo. Una metáfora es una historia compartida que describe cómo debería funcionar el sistema (conjunto de nombres que actúen como vocabulario para hablar sobre el dominio del problema, ayudando a la nomenclatura de clases y métodos del sistema).

• Diseño simple. Se debe diseñar la solución más simple que pueda funcionar y ser implementada en un momento determinado del proyecto.

• Pruebas La producción de código está dirigida por las pruebas unitarias. Éstas son establecidas por el cliente antes de escribirse el código y son ejecutadas constantemente ante cada modificación del sistema.

• Refactorización (Refactoring). Es una actividad constante de reestructuración del código con el objetivo de remover duplicación de código, mejorar su legibilidad, simplificarlo y hacerlo más flexible para facilitar los posteriores cambios. Se mejora la estructura interna del código sin alterar su comportamiento externo.

• Programación en parejas. Toda la producción de código debe realizarse con trabajo en parejas de programadores. Esto conlleva ventajas implícitas (menor tasa de errores, mejor diseño, mayor satisfacción de los programadores).

• Propiedad colectiva del código. Cualquier programador puede cambiar cualquier parte del código en cualquier momento.

• Integración continúa. Cada pieza de código es integrada en el sistema una vez que esté lista. Así, el sistema puede llegar a ser integrado y construido varias veces en un mismo día.

• 40 horas por semana. Se debe trabajar un máximo de 40 horas por semana. No se trabajan horas extras en dos semanas seguidas. Si esto ocurre, probablemente está ocurriendo un problema que debe corregirse. El trabajo extra desmotiva al equipo.

• Cliente in-situ. El cliente tiene que estar presente y disponible todo el tiempo para el equipo. Éste es uno de los principales factores de éxito del proyecto XP. El cliente conduce constantemente el trabajo hacia lo que aportará mayor valor de negocio y los programadores pueden resolver de manera inmediata cualquier duda asociada. La comunicación oral es más efectiva que la escrita.

• Estándares de programación. XP enfatiza que la comunicación de los programadores es a través del código, con lo cual es indispensable que se sigan ciertos estándares de programación para mantener el código legible.

Page 91: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

91

4. ANDROID

4.1 QUE ES ANDROID

En la investigación realizada por Molina, Y.J., Sandoval, J.C.,& Toledo, S.A. (2012) se encuentra la definición de Android como un sistema operativo para dispositivos móviles, teléfonos inteligentes y tabletas basado en el núcleo Linux. Es desarrollado por la Open Handset Alliance, la cual es liderada por Google, usando diversos conjuntos de herramientas de software de código abierto para dispositivos móviles. Fue construido para permitir a los desarrolladores la creación de aplicaciones móviles que aprovechan al máximo el uso de todas las herramientas que un dispositivo como este puede ofrecer. Implementa una arquitectura en la que cualquier aplicación puede obtener acceso a las capacidades del teléfono móvil. Por ejemplo, una aplicación puede llamar una o varias de las funcionalidades básicas de los dispositivos móviles, tales como realizar llamadas, enviar mensajes de texto, o utilizar la cámara, facilitando a los desarrolladores crear experiencias más ricas y con más coherencia para los usuarios. Figura 26. Android Lollipop vs. Android KitKat

Fuente (McFerran, 2015)

Page 92: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

92

Está construido sobre el kernel de Linux. Además, se utiliza una máquina personalizada virtual que fue diseñada para optimizarlos recursos de memoria y de hardware en un entorno móvil. Android es de código abierto, y además puede ser libremente ampliado para incorporar nuevas tecnologías de vanguardia que van surgiendo. La plataforma continuará evolucionando a medida que la comunidad de desarrolladores trabajando juntos puedan crear aplicaciones móviles innovadoras (Android OS, 2012). La estructura del sistema operativo Android se compone de aplicaciones que se ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el núcleo de las bibliotecas de Java en una máquina virtual Dalvik con compilación en tiempo de ejecución. Las bibliotecas escritas en lenguaje C incluyen un administrador de interfaz gráfica (surface manager), un framework OpenCore, una base de datos relacional SQLite, una API gráfica OpenGL ES 2.0 3D, un motor de renderizado WebKit, un motor gráfico SGL, SSL y una biblioteca estándar de C Bionic (Android OS, 2012) El sistema operativo está compuesto por 12 millones de líneas de código, incluyendo 3 millones de líneas de XML, 2,8 millones de líneas de lenguaje C, 2,1 millones de líneas de Java y 1,75 millones de líneas de C++ (Android OS, 2012).

4.2 ARQUITECTURA

La arquitectura interna de la plataforma Android, está básicamente formada por 4 componentes: aplicaciones, armazón de aplicaciones, librerías y kernel/Linux, como se muestra en la Figura 27.

4.3 HISTORIA

Molina et al. (2012) nos muestra que el anuncio del sistema Android se realizó el 5 de noviembre de 2007 junto con la creación de la Open Handset Alliance, un consorcio de 78 compañías de hardware, software y telecomunicaciones dedicadas al desarrollo de estándares abiertos para dispositivos móviles. Google liberó la mayoría del código de Android bajo la licencia Apache, una licencia libre y de código abierto.

Page 93: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

93

Figura 27. Arquitectura Android

Fuente Molina et al. (2012)

4.4 USO DE VERSIONES ANDROID

La siguiente figura proporciona datos sobre las versiones y distribuciones usadas hasta el mes de noviembre de 2016 para la plataforma de Android.

Page 94: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

94

Figura 28. Distribuciones de Android

Fuente (Developers, 2016)

Page 95: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

95

4.5 CARACTERÍSTICAS Y FUNCIONES ACTUALES

Tabla 5. Funciones de Android 6.0 MARSHMALLOW Asistencia contextual

• Now on Tap: recibe asistencia sin interrumpir lo que estás haciendo, ya sea que estés en una app o en un sitio web. Solo tienes que mantener presionado el botón de inicio.

• Realiza más acciones con la voz. Puedes

usar la voz y dialogar con cualquiera de las apps que admitan el nuevo servicio de interacción con la voz. Por ejemplo, si un usuario dice “reproducir música en Tuneln”, Tuneln le preguntará “¿qué género?”.

• Compartir directamente: una forma rápida y

sencilla para compartir con la persona indicada en la app correcta.

Batería • Función de descanso: cuando está inactivo el

dispositivo, la función de descanso lo pone en estado de suspensión automáticamente para aumentar la duración de la batería en el modo de espera.

• App en modo de espera: las apps que no se usan con frecuencia ya no agotan la batería. La función “App en modo de espera” limita el impacto en la duración de la batería para que la carga dure mucho más.

• Compatibilidad con USB tipo C: transfiere rápidamente energía y datos, todo con el mismo cable. La carga veloz te brinda muchas horas de energía en tan solo minutos.

Privacidad y seguridad • En un dispositivo con Android Marshmallow,

las apps diseñadas para ese sistema operativo solo piden permiso cuando es necesario. Puedes denegar cualquier tipo de permiso y seguir usando la app.

Page 96: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

96

• Controles avanzados para activar o desactivar permisos para todas las apps que tienes instaladas.

• Inicio verificado: cuando se inicie el dispositivo Android, recibirás una advertencia si el firmware y el sistema operativo Android sufrieron modificaciones en la versión de fábrica.

• Usa lo sensores de huellas digitales para desbloquear el dispositivo, hacer compras en Google Play, autenticar transacciones en las apps y realizar pagos en las tiendas.

Android Runtime (“ART”)

• Mejor rendimiento de la app y menor carga de memoria para poder realizar múltiples tareas más rápido.

Productividad

• Compatibilidad con la pluma stylus Bluetooth™, incluidas la sensibilidad de presión y las teclas modificadoras.

• Composición tipográfica y presentación de

texto mejorados. • Selección de texto más inteligente, función

integrada para deshacer y rehacer, y acciones de texto más cerca de los dedos.

• Acciones de selección de texto, como la

opción nueva de traducción que te permite traducir texto de un idioma a otro en el acto.

• Ahorra papel con la función de impresión a

doble cara.

Sistema de usabilidad mejorado

• Vínculos de app: habilita apps instaladas para que controlen de forma automática las URL de los sitios web de modo que puedas acceder directamente a 6.0 MARSHMALLOW, FUNCIONES COMPLETAS la app, en lugar del sitio web para dispositivos móviles, según corresponda.

Page 97: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

97

• Configura, activa y desactiva con facilidad el modo “No molestar” en la configuración rápida.

• Si una persona te llama dos veces en el plazo de quince minutos, puedes permitir que la llamada suene cuando el modo “No molestar” está habilitado.

• Usa normas automáticas para habilitar el modo “No molestar” durante períodos personalizados o en función de los eventos en el calendario.

• El control de volumen simplificado te permite administrar el volumen de las notificaciones, la música y las alarmas fácilmente desde cualquier ubicación con solo tocar las teclas de volumen.

• Configuración simplificada que te permite administrar la configuración de una app en una sola ubicación, desde uso de batería y memoria hasta las notificaciones y los controles de permisos.

• Se actualizó la lista de la app de Google Now Launcher con búsqueda, desplazamiento alfabético rápido y sugerencias de app.

Conectividad

• Búsqueda más eficiente de balizas cercanas y accesorios con Bluetooth de baja energía.

• Hotspot 2.0: establece conexión con redes Wi-Fi compatibles de forma continua y segura.

• Bluetooth SAP: haz llamadas desde el teléfono del auto con la SIM de tu teléfono.

• El hotspot de Wi-Fi portátil ahora admite bandas de frecuencia de 5 GHZ.

Almacenamiento expansible

• Flexibilidad de almacenamiento: simplifica el uso de las tarjetas SD o el almacenamiento externo como almacenamiento expansible encriptado para las apps y los juegos en Android Marshmalow.

Configuración del dispositivo y migración

• Di “OK Google, configura el dispositivo” para transferir tus cuentas, apps y datos a otros dispositivos fácilmente.

Page 98: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

98

• Con el asistente de configuración, puedes agregar otros correos electrónicos de cuentas personales o corporativas (por ejemplo, IMAP).

• Copia de seguridad automática para apps:

haz una copia de seguridad y restaura los datos sin inconvenientes.

• Haz una copia de seguridad o restaura los

parámetros de configuración del sistema adicional, como la sincronización, las apps preferidas, el modo “No molestar”, la accesibilidad y los IME habilitados.

Medios de comunicación

• Compatibilidad con MIDI: puedes usar tu dispositivo Android con dispositivos USB MIDI, MIDI con Bluetooth de baja energía y dispositivos con software de MIDI para crear, escuchar y tocar música.

Internacionalización • Android está disponible en más de 74 idiomas y sumamos seis nuevos: azerbaiyano, gujarati, kazajo, albanés, urdu y uzbeko. 6.0 MARSHMALLOW, FUNCIONES COMPLETAS

Android for Work

• Ahora, cuando recibes llamadas o lees mensajes antiguos, puedes ver los detalles del contacto de trabajo, incluso si no accediste a tu perfil de trabajo.

• Notificación de estado de trabajo: ahora

aparece un ícono de maletín en la barra de estado cuando usas una app desde el perfil de trabajo. Si se desbloquea el dispositivo directamente para una app en el perfil de trabajo, una alerta notifica al usuario.

• Las apps VPN ahora se pueden ver en

Configuración > Más > VPN. Además, ahora las notificaciones que usan las VPN son específicas de acuerdo a si la VPN está

Page 99: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

99

configurada para un perfil de trabajo o para todo el dispositivo.

Fuente (Google Android, 2015)

4.6 ANDROID SDK

En Android el SDK significa Software Development Kit, el cual proporciona un conjunto de herramientas, para desarrollar, ejecutar, emular y correr aplicaciones Android. Se pueden usar diferentes IDES para el desarrollo siendo los más usados Eclipse, NebBeans y Android Studio. El desarrollo de las aplicaciones Android se realiza en el lenguaje de programación Java (Developers, 2016).

4.7 VERSIONES Y NIVELES DE API FRAMEWORK

El nivel del API es un valor entero que identifica de forma exclusiva la revisión API Framework ofrecida por una versión de la plataforma Android. La API Framework consiste en:

• Paquetes básicos y clases • Conjunto de elementos y atributos XML para declarar el archivo Manifiest. • Conjunto de elementos y atributos XML para declarar y dar acceso a los

recursos • Conjunto de Intenciones • Permisos que las aplicaciones pueden solicitar

Cada versión sucesiva de la plataforma Android puede incluir actualizaciones del Android API framework de las aplicaciones que ofrece. Las actualizaciones de la API framework están diseñadas para que la nueva API sigua siendo compatible con las versiones anteriores de la API (Developers, 2016).

Page 100: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

100

Tabla 6. Versiones y API de Android

Platform Version API Level VERSION_CODE

Android 7.0 24 N Android 6.0 23 M Android 5.1 22 LOLLIPOP_MR1 Android 5.0 21 LOLLIPOP Android 4.4W 20 KITKAT_WATCH Android 4.4 19 KITKAT Android 4.3 18 JELLY_BEAN_MR2 Android 4.2, 4.2.2 17 JELLY_BEAN_MR1 Android 4.1, 4.1.1 16 JELLY_BEAN Android 4.0.3, 4.0.4 15 ICE_CREAM_SANDWICH_MR1 Android 4.0, 4.0.1, 4.0.2 14 ICE_CREAM_SANDWICH Android 3.2 13 HONEYCOMB_MR2 Android 3.1.x 12 HONEYCOMB_MR1 Android 3.0.x 11 HONEYCOMB Android 2.3.4 Android 2.3.3

10 GINGERBREAD_MR1

Android 2.3.2 Android 2.3.1 Android 2.3

9 GINGERBREAD

Android 2.2.x 8 FROYO Android 2.1.x 7 ECLAIR_MR1 Android 2.0.1 6 ECLAIR_0_1 Android 2.0 5 ECLAIR Android 1.6 4 DONUT Android 1.5 3 CUPCAKE Android 1.1 2 BASE_1_1 Android 1.0 1 BASE

Fuente (Developers, 2016)

Page 101: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

101

Figura 29. Sabores Android

Fuente (InformAndroid, 2015)

Figura 30. Android Lollipop

Fuente (Android, 2016) Figura 31. Android Marshmallow y Nougat

Fuente (Android, 2016)

Page 102: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

102

4.8 ANDROID STUDIO

Android Studio es un entorno de desarrollo integrado (IDE), lanzado por Google en mayo de 2013 y el oficial para el desarrollo de aplicaciones para Android, basado en IntelliJIDEA de JetBrains y disponible en Windows, Linux y Mac OS (Developers, 2016). Características de Android Studio

• Editor de diseño Rich • Nuevo diseño e interfaz • Herramientas Lint • Gradle • Soporte de Aplicaciones Wear • Control de Versiones • Proguard • Vista previa en diferentes resoluciones • Soporte integrado para Google Cloud Platform • Generación de archivos apk • Plantillas de código • Permite acceder a repositorios Mercurial, Git, Github o Subversión.

Figura 32. Android Studio

Fuente (Developers, 2016)

Page 103: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

103

4.9 DALVIK VIRTUAL MACHINE (DVM)

La máquina virtual Dalvik (DVM) es usada en la plataforma y dispositivos Android, permitiendo correr aplicaciones Java, tiene varias diferencias en comparación con otras máquinas virtuales de Java. Las aplicaciones para Android están en desarrolladas en el lenguaje Java. Requiere poca memoria y permite ejecutar varias instancias de la máquina virtual paralelamente. En la última versión del Sistema Operativo Android 5 fue sustituida por ART (Developers, 2016)

Características de Dalvik:

• Diseñada por Dan Bornstein y Google • Su nombre fue elegido en honor a Dalvík, un pueblo Islandia • Permite un menor consumo de energía en los dispositivos • Mejora el rendimiento de las aplicaciones • El bytecode generado, primero es transformado al bytecode de Java y

posteriormente se transforma en el usado por Android. Es decir, primero

son generados los .class típicos de JAVA, y posteriormente se transforman

al tipo de archivo .dex (dalvik executable). Estos archivos dex son

comprimidos en los conocidos APK (Android Package). • Está diseñada para ejecutar varias instancias de la propia máquina

simultáneamente • Optimizada para necesitar poca memoria • Se basa en registros en vez de en pilas • Está distribuida como software libre Apache

Figura 33. Dalvik Virtual Machine

Fuente (Toboso, 2013)

Page 104: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

104

4.10 ART ANDROID RUNTIME

La nueva ART es un entorno de ejecución utilizado por las aplicaciones y algunos servicios del sistema en Android. ART y su predecesor Dalvik fueron originalmente creados específicamente para el proyecto Android (Developers, 2016). Características de ART

• Este compilador funciona más rápido que Dalvik • Se encuentra en versiones de Android 5.0 • Permite que las aplicaciones se carguen más rápido • Soporta procesadores de 64 Bits • realiza una pre compilación de las aplicaciones la primera vez que las

ejecuta • Ocupa más espacio en memoria • Ahorra el consumo de la batería • Es nativo en Android 5.0 Lollipop • Permite que las aplicaciones se compilen en código navito • Su desempeño puede mejora hasta cuatro veces • Al momento de la instalación, ART compila aplicaciones usando la

herramienta dex2oat en el dispositivo • Mejora la recolección de basura. (GC) • Mejoras de desarrollo y depuración

Cuando desarrollamos una aplicación para Android, obtenemos la aplicación en formato .apk luego de ser compilada; este archivo está compuesto por las clases de Java compiladas en un formato de Bytecode DEX. Este formato es independiente de la arquitectura de los procesadores, siendo fundamental para ejecutarse necesita convertirse a código de maquina nativo para el procesador de nuestro dispositivo (Developers, 2016).

4.11 JIT

Just In Time (JIT), es un componente de software que tiene el código de la aplicación, lo analiza y lo traduce de forma activa en una forma que corre más rápido, haciendo así que mientras la aplicación sigue ejecutándose (Developers, 2016).

Page 105: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

105

4.12 OAT

Ahead-of-time (AOT) compilation, ART introduce un compilación previa, lo que permite mejorar el rendimiento de la aplicación. Al momento de la instalación de las aplicaciones ART compila las aplicaciones usando la herramienta dex2oat en el dispositivo. Esta herramienta recibe los archivos DEX como entrada y genera un ejecutable de la aplicación compilada para el dispositivo destino (Developers, 2016). Figura 34. Vida de un APK

Fuente (Perez, 2014) Existe una diferencia fundamental entre Dalvik y ART, es cuándo se realiza la compilación. Dalvik utiliza lo que se llama compilación “justo a tiempo” (just-in-time, o JIT), mientras que ART utiliza compilación previa (ahead-of-time, o AOT). Con el compilador JIT de Dalvik, cada que iniciamos una aplicación, la máquina virtual dinámicamente traduce una parte del bytecode DEX a código máquina. Conforme continúa la ejecución de la aplicación, se compila más bytecode y se almacena en memoria cache. La aplicación está siendo compilada “justo a tiempo” en el momento de su uso.

Page 106: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

106

En el caso de ART, las aplicaciones se compilan desde que se instalan en el dispositivo, y ya se deja instalado el código máquina listo para ejecutarse y sin necesidad de mayor compilación (Perez, 2014).

Page 107: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

107

5. ANDROID API ANDROID PARA EL DESARROLLO NFC

Android.NFC proporciona la funcionalidad de acceso a la comunicación de campo cercano (NFC), permitiendo a las aplicaciones leer el mensaje NDEF en las etiquetas NFC (Developers, 2016).

5.1 RESUMEN DE CLASES

• Nfcmanager. Gestor de alto nivel, utilizado para obtener una instancia de un NfcAdapter.

• Nfcadapter. Representa el adaptador del dispositivo NFC, que es su punto de entrada a la realización de las operaciones de NFC.

• Ndefmessage. Mensaje de datos NDEF, es el formato estándar en el que

"graba" el transporte de datos y se transmiten entre los dispositivos y etiquetas. La aplicación puede recibir estos mensajes de una intención ACTION_TAG_DISCOVERED.

• NdefRecord. Representa un registro, que se entrega en una NdefMessage y describe el tipo de datos que se comparten y lleva los datos en sí.

• NfcEvent. Envuelve la información asociada con cualquier evento NFC.

• Tag. Representa una etiqueta NFC que se ha descubierto (Developers,

2016).

5.2 INTERFACES

• NfcAdapter.CreateBeamUrisCallback • NfcAdapter.CreateNdefMessageCallback: Una devolución de llamada se

invoca cuando otro dispositivo NFC es capaz de enviar NDEF dentro del rango.

Page 108: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

108

• NfcAdapter.OnNdefPushCompleteCallback: Una devolución de llamada que se invoca cuando el sistema entrega con éxito su NdefMessage a otro dispositivo (Developers, 2016).

• NfcAdapter.ReaderCallback: Una devolución de llamada que se invoca cuando el sistema encuentra una etiqueta, mientras que la actividad de primer plano está funcionando en el modo de lector (Developers, 2016).

5.3 EXCEPTIONS

• FormatException • TagLostException

5.4 SISTEMA DE DESPACHO TAG

Los dispositivos móviles con tecnología NFC, tienen la propiedad de estar detectando la proximidad de una etiqueta sin importar que la pantalla del móvil se encuentre bloqueada a menos que la configuración de NFC este deshabilitada. Cuando un dispositivo con Android descubre una etiqueta NFC, el comportamiento deseado es tener la actividad más apropiada manejar la intención sin preguntar al usuario qué aplicación utilizar. Los datos son recibidos en formato NDEF, lo cual permite categorizar los datos y ubicar en el móvil la aplicación interesada según los datos y el formato, se debe iniciar para consumir de los datos provenientes del tag NFC (Developers, 2016). Android proporciona un sistema de despacho de etiquetas especial que analiza las etiquetas NFC escaneadas, y trata de localizar las aplicaciones que están interesados en los datos escaneados (Developers, 2016). Esto se hace mediante:

1. Analizar el tag NFC y averiguar el tipo MIME o un URI que identifica la carga de datos en la etiqueta.

2. Encapsular el tipo MIME o URI y la carga útil en una intención. Estos dos primeros pasos se describen en cómo etiquetas NFC se asignan a los tipos MIME y URI.

Page 109: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

109

3. Inicia una actividad basada en la intención. Esto se describe en cómo etiquetas NFC se distribuye a Aplicaciones.

Una aplicación Android se dispara al recibir datos, y debe tener implementado un Intent Filter a través del cual el Tag Dispatch System logre identificar que aplicación debe iniciar ante la detección de una etiqueta NFC. El mensaje proveniente de la etiqueta NFC puede venir en diferentes formatos siendo el más conocido el formato NDEF (Exposito G, 2014). Los datos en formato NDEF, están encapsulados en un mensaje (NdefMessage) el cual contiene uno o más registros (NdefRecord); donde cada uno de estos registros debe estar correctamente formado de acuerdo con las especificaciones del tipo de registro que se desea crear. Android soporta la detección de otras tecnologías NFC que no implementan el formato de datos NDEF y esto lo logra por medio de las clases definidas en el paquete android.nfc.tech (Exposito G, 2014). Android maneja las etiquetas NFC con formato NDEF, para ello el sistema una vez detectada la etiqueta NFC en formato NDEF, procede a parsear el mensaje para identificar el tipo de dato MIME o el URI (Universe resource Identifier), esto lo hace leyendo el primer registro (NdefRecord) del mensaje (NdefMessage), de tal manera que si el mensaje está correctamente formado, el primer registro debe contener la siguiente estructura de datos (Exposito G, 2014):

1. El nombre del tipo de formato (3 bits): los primeros 3 caracteres del registro permite identificar como interpretar la longitud variable del tipo de campo, los cuales puede ser:

Tabla 7. Nombre Tipo De Formato (TNF) Y Sus Asignaciones NOMBRE TIPO DE FORMATO (TNF)

MAPEO

TNF_ABSOLUTE_URI Indica que el tipo de registro contiene un URI TNF_EMPTY Indica que el tipo de registro está vacío TNF_EXTERNAL_TYPE Indica que el tipo de registro es de tipo externo.

URI basado en la URN en el campo Tipo TNF_MIME_MEDIA Indica que el tipo de registro es de tipo MIME. TNF_UNCHANGED Indica que el PAYLOAD (datos transferidos)

son intermedios o finales de un fragmento de un registro NDEF Fragmentado.

TNF_UNKNOWN Indica que el tipo de PAYLOAD (datos transferidos) es desconocido.

Page 110: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

110

TNF_WELL_KNOWN Tipo MIME o URI dependiendo de la definición Tipo de registro (RTD), que se establece en el campo Tipo.

Fuente (Developers, 2016)

2. Tipo de Longitud Variable: Este campo describe la tipología de los registros. En el caso de que el tipo de formato sea TNF_WELL_KNOWN, este campo es empleado para especificar la Definición de Tipo de Registro (RTD) según los siguientes valores: Tabla 8. RTD para TNF_WELL_KNOWN y sus asignaciones

DEFINICIÓN TIPO DE REGISTRO (RTD)

MAPEO

RTD_ALTERNATIVE_CARRIER Para este tipo de RTD se pasa el control al ACTION_TECH_DISCOVERED.

RTD_HANDOVER_CARRIER Para este tipo de RTD se pasa el control al ACTION_TECH_DISCOVERED.

RTD_HANDOVER_CARRIER Para este tipo de RTD se pasa el control al ACTION_TECH_DISCOVERED

RTD_HANDOVER_REQUEST Para este tipo de RTD se pasa el control al ACTION_TECH_DISCOVERED.

RTD_HANDOVER_SELECT Para este tipo de RTD se pasa el control al ACTION_TECH_DISCOVERED

RTD_SMART_POSTER Tipo de registro URI basado en el parseo del PAYLOAD.

RTD_TEXT MIME de tipo texto plano. RTD_URI URI basado en el Paypload

Fuente (Developers, 2016)

3. Longitud del PAYPLOAD: Aquí se encuentran los datos a escribir o leer (PAYLOAD). Un mensaje NDEF puede contener múltiples registros NDEF, por lo que es importante no asumir que todos los datos del PAYPLOAD están en el primero registro del mensaje.

Page 111: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

111

El sistema de despacho de tags utiliza los campos de tipo TNF para tratar de asignar un tipo MIME o URI al mensaje NDEF. Si tiene éxito, se encapsula la información en el interior de un intent ACTION_NDEF_DISCOVERED. Sin embargo, hay casos en que el sistema de despacho de tags no puede determinar el tipo de datos basado en el primer registro NDEF. Esto sucede cuando los datos NDEF no se pueden asignar a un tipo MIME o URI, o cuando la etiqueta NFC no contiene datos NDEF. En tales casos, un objeto de etiqueta que tiene información acerca de las tecnologías de la etiqueta y la carga útil están encapsulados en el interior de un intento ACTION_TECH_DISCOVERED (Developers, 2016). Por ejemplo, si el sistema de etiquetas de despacho se encuentra con un registro de tipo TNF_ABSOLUTE_URI, se asigna el campo de tipo de longitud variable de ese registro en una URI. El sistema de etiquetas de tags encapsula el URI en el campo de datos en un intent ACTION_NDEF_DISCOVERED junto con otra información sobre la etiqueta, tales como la carga útil. Por otro lado, si se encuentra un registro de tipo TNF_UNKNOWN, se crea una intención que encapsula las tecnologías de la etiqueta en su lugar (Developers, 2016).

5.5 DISTRIBUCIÓN DE ETIQUETAS NFC PARA APLICACIONES

Cuando el sistema de despacho de tag crea una intención que encapsula la etiqueta NFC y su información de identificación, envía la intención a una aplicación que filtrada por la intención, debemos conocer los diferentes Intent Filter que se tienen para establecer la comunicación entre el Tag Disptach System y una aplicación Android. En caso de que existan varias Aplicaciones Android o Activity que estén filtrando estos Intents el sistema desplegara el Selector de Aplicaciones para que el usuario sea quien decida que aplicación es la que ha de tomar el control con los datos capturados de la Etiqueta NFC y encapsulados en el objeto Intent (Developers, 2016). El Tag Dispatch System define los siguientes Android Intents los cuales están ordenados de Mayor a menor prioridad:

1. ACTION_NDEF_DISCOVERED: Este Intent es usado para iniciar una Activity cuando una etiqueta que contiene datos en formato NDEF y con una tipología reconocida es escaneada. Este es el Intent con la prioridad más de ejecución alta y el Tag Dispatch System intentará en la medida de lo posible iniciar un Activity con este Intent antes que cualquier otro Intent (Developers, 2016).

Page 112: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

112

2. ACTION_TECH_DISCOVERED: Si no existen aplicaciones registradas para manejar el Intent ACTION_NDEF_DISCOVERED, entonces el Tag Dispatch System intentará iniciar una aplicación con este Intent. También este tipo de Intent se inicia directamente sin pasar primero por el Intent ACTION_NDEF_DISCOVERED para aquellos casos en los que las etiquetas NFC escaneadas contienen datos NDEF que no pueden ser mapeados con un tipo MIME o URI, o en los casos en los que la Etiqueta no contiene datos en formato NDEF data pero la tecnología de la etiqueta es conocida (Developers, 2016).

3. ACTION_TAG_DISCOVERED: Este Intent se inicia siempre que no existan actividades registradas para los dos Intents anteriores (ACTION_NDEF_DISCOVERED o ACTION_TECH_DISCOVERED) (Developers, 2016).

5.6 FUNCIONAMIENTO SISTEMA DE DESPACHO TAG

La forma básica en que funciona el sistema de despacho de etiquetas es el siguiente:

1. Al iniciar una actividad con la intención de que fue creado por el sistema de envío de etiquetas, analizar la etiqueta NFC (ya sea ACTION_NDEF_DISCOVERED o ACTION_TECH_DISCOVERED) (Developers, 2016).

2. Si no hay ningún filtro de actividades para ese propósito, intente iniciar una

actividad con la siguiente intención de menor prioridad (ya sea ACTION_TECH_DISCOVERED o ACTION_TAG_DISCOVERED) hasta que una filtros de aplicación de la intención o hasta que el sistema de etiquetas de envío intenta todos los intentos posibles (Developers, 2016).

3. Si no hay aplicaciones de filtro para cualquiera de los intentos, no hacer nada

(Developers, 2016).

Page 113: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

113

Figura 35 Funcionamiento de Sistema de Despacho de Tags

Fuente (Developers, 2016)

5.7 SOLICITUD DE ACCESO NFC EN EL MANIFIESTO DE ANDROID

Antes de poder acceder al hardware NFC de un dispositivo y manejar adecuadamente las intenciones de NFC, se debe declarar los siguientes ítems en el archivo AndroidManifest.xml (Developers, 2016):

NFC <uses-permission>elemento de acceso al hardware NFC:

<uses-permission android:name="android.permission.NFC" />

La versión mínima de SDK soportada para las aplicaciones es La API de nivel 9, sólo es compatible con el envío de etiquetas limitado por medio ACTION_TAG_DISCOVERED, y sólo da acceso a los mensajes a través de mensajes NDEF via EXTRA_NDEF_MESSAGES. La API de nivel 10 incluye un amplio soporte de lectura / escritura, así como parte del contenido NDEF, y el nivel de API 14 proporciona una manera más fácil de enviar mensajes NDEF a otros dispositivos con Android Beam y métodos de conveniencia adicionales para crear registros NDEF (Developers, 2016).

Page 114: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

114

<uses-sdk android:minSdkVersion="10"/>

5.8 FILTRADO POR DISPOSITIVO

Google Play Store permite filtrar los dispositivos en función de los recursos necesarios para la ejecución de una aplicación. Este filtrado, bien sea para la tecnología NFC o para cualquier otra tecnología, se realiza a nivel del manifiesto de la aplicación. Para prohibir la instalación de una aplicación en dispositivos que no dispongan de la tecnología NFC, basta con agregar la etiqueta (Developers, 2016): El elemento uses-feature, permite que la aplicación se muestra en Google Play solo para los dispositivos con hardware NFC:

<uses-feature android:name="android.hardware.nfc" android:required="true" />

5.9 INTENTOS DE FILTRADO PARA NFC

Para iniciar la aplicación cuando una etiqueta NFC que desea controlar se escanea, su aplicación puede filtrar para uno, dos o los tres de los intents NFC en el manifiesto de Android. Normalmente se quiere filtrar para obtener el intent ACTION_NDEF_DISCOVERED para más control de cuando se inicia la aplicación (Developers, 2016).

La intención ACTION_TECH_DISCOVERED es una reserva para ACTION_NDEF_DISCOVERED cuando no hay filtro de aplicaciones para ACTION_NDEF_DISCOVERED o para cuando la carga útil no es NDEF. El Filtrado de ACTION_TAG_DISCOVERED suele ser demasiado general de una categoría para filtrar. Muchas aplicaciones para filtrar ACTION_NDEF_DISCOVERED o ACTION_TECH_DISCOVERED antes ACTION_TAG_DISCOVERED, por lo que su aplicación tiene una baja probabilidad de aparición. ACTION_TAG_DISCOVERED sólo está disponible como un último recurso para las aplicaciones que va a filtrar en los casos en los que no existen otras aplicaciones para manejar la ACTION_NDEF_DISCOVERED o ACTION_TECH_DISCOVERED intent (Developers, 2016).

Page 115: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

115

5.9.1 ACTION_NDEF_DISCOVERED

Para filtrar los intents de ACTION_NDEF_DISCOVERED, se debe declarar la intención del filtro junto con el tipo de datos que desea filtrar. Los siguientes filtros de ejemplo para las intenciones ACTION_NDEF_DISCOVERED con un tipo MIME text / plain (Developers, 2016):

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED"/>

<category android:name="android.intent.category.DEFAULT"/>

<data android:mimeType="text/plain" />

</intent-filter>

El siguiente ejemplo filtra por un URI en la forma de http://developer.android.com/index.html

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED"/>

<category android:name="android.intent.category.DEFAULT"/>

<data android:scheme="http"

android:host="developer.android.com"

android:pathPrefix="/index.html" />

</intent-filter>

5.9.2 ACTION_TECH_DISCOVERED

Si el filtro de intensión de la actividad es ACTION_TECH_DISCOVERED, debe crear un archivo de recursos XML que especifica las tecnologías que la actividad apoya en un conjunto de tech-list. La actividad se considera un partido si un conjunto tech-list es un subconjunto de las tecnologías que son compatibles con la etiqueta, se puede obtener llamando getTechList ( ). Por ejemplo, si la etiqueta escaneada es MifareClassic, NdefFormatable, y NFCA, su conjunto de tech-list debe especificar los tres, dos o una de las tecnologías con el fin de su actividad, que se ajustará (Developers, 2016). El siguiente ejemplo define todas las tecnologías. Crear el archivo en <project-root>/res/xml (Developers, 2016).

Page 116: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

116

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<tech-list>

<tech>android.nfc.tech.IsoDep</tech>

<tech>android.nfc.tech.NfcA</tech>

<tech>android.nfc.tech.NfcB</tech>

<tech>android.nfc.tech.NfcF</tech>

<tech>android.nfc.tech.NfcV</tech>

<tech>android.nfc.tech.Ndef</tech>

<tech>android.nfc.tech.NdefFormatable</tech>

<tech>android.nfc.tech.MifareClassic</tech>

<tech>android.nfc.tech.MifareUltralight</tech>

</tech-list>

</resources>

También se permite especificar varios conjuntos tech-list. Cada uno de los conjuntos de tech-list es considerado de forma independiente, y su actividad se considera un partido si cualquier conjunto tech-list única es un subconjunto de las tecnologías que son devueltos por getTechList ( ). Esto proporciona AND y OR semántica para hacer coincidir las tecnologías. El ejemplo siguiente coincide con etiquetas que pueden apoyar las tecnologías NFCA y NDEF o pueden apoyar las tecnologías NFCB y NDEF (Developers, 2016):

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<tech-list>

<tech>android.nfc.tech.NfcA</tech>

<tech>android.nfc.tech.Ndef</tech>

</tech-list>

</resources>

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<tech-list>

<tech>android.nfc.tech.NfcB</tech>

<tech>android.nfc.tech.Ndef</tech>

</tech-list>

</resources>

En el archivo AndroidManifest.xml, especificar el archivo de recursos que acaba de crear en el elemento <meta-data> dentro de la <activity> elemento como en el siguiente ejemplo (Developers, 2016):

Page 117: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

117

<activity>

...

<intent-filter>

<action android:name="android.nfc.action.TECH_DISCOVERED"/>

</intent-filter>

<meta-data android:name="android.nfc.action.TECH_DISCOVERED"

android:resource="@xml/nfc_tech_filter" />

...

</activity>

5.9.3 ACTION_TAG_DISCOVERED

Para filtrar por ACTION_TAG_DISCOVERED utilizar el siguiente filtro de intención:

<intent-filter>

<action android:name="android.nfc.action.TAG_DISCOVERED"/>

</intent-filter>

5.10 OBTENCIÓN DE INFORMACIÓN DE LAS INTENCIONES

Si una actividad se inicia debido a una intención de NFC, se puede obtener información acerca de la etiqueta NFC escaneada de la intención. Las intenciones pueden contener las siguientes funciones extras de la etiqueta que fue escaneada (Developers, 2016):

• EXTRA_TAG (requerido): Un objeto etiqueta que representa la etiqueta escaneada.

• EXTRA_NDEF_MESSAGES (opcional): Una serie de mensajes NDEF examinados de la etiqueta. Este extra es obligatoria en las intenciones ACTION_NDEF_DISCOVERED

• EXTRA_ID (opcional): El ID de bajo nivel de la etiqueta.

Para obtener estos extras. Comprobar si su actividad se inició con una de las intenciones de la NFC para asegurar que una etiqueta se ha escaneado, y luego obtener los extras de la intención (Developers, 2016).

Page 118: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

118

5.11 DESCUBRIR UN TAG NFC

Android encapsula la información de los tags NFC en intents de acciones diferentes. A cada acción de intención le corresponde, en la aplicación, un filtro de intención específico. Las intenciones creadas por el sistema siguen una jerarquía, que va de más a menos especializada (HÉBUTERNE & PÉROCHON, 2014).

• Nivel 1: si el tag contiene un mensaje con formato NDEF, el sistema lee el primer registro del mensaje para tratar de extraer un tipo MIME o una URI. Si dicha extracción es correcta, es la aplicación capaz de trabajar con el tipo MIME, o la aplicación indicada por la URI, la que se inicia. La intención correspondiente tiene como acción ACTION_NDEF_DISCOVERED (HÉBUTERNE & PÉROCHON, 2014).

• Nivel 2: si el tag no contiene un mensaje en formato NDEF, o si no se

encuentra ninguna aplicación en la etapa 1, el sistema selecciona la aplicación teniendo en cuenta las tecnologías de tag que cada aplicación ha declarado como capaz de procesar, a nivel de los filtros de intención. El sistema crea, en este caso, una intención de acción ACTION_TECH_DISCOVERED (HÉBUTERNE & PÉROCHON, 2014).

• Nivel 3: por último, si no se ha podido seleccionar ninguna aplicación en las

dos etapas anteriores, se crea una intención de tipo ACTION_TAG_DISCOVERED, que se provee a la aplicación que tenga en cuenta esta acción de intención (HÉBUTERNE & PÉROCHON, 2014).

5.12 CREACIÓN DE TIPOS COMUNES DE REGISTROS NDEF

La creación de tipos comunes de registros NDEF ayuda a escribir en las etiquetas NFC o el envío de datos con Android Beam. A partir de Android 4.0 (API de nivel 14), el createUri ( ) método está disponible para ayudar a crear registros URI de forma automática. A partir de Android 4.1 (API de nivel 16), createExternal () y createMime ( ) están disponibles para ayudar a crear registros MIME y NDEF (Developers, 2016).

5.12.1 Compatibilidad Con Una Intención ACTION_NDEF_DISCOVERED: En el caso de un mensaje con formato NDEF, es el propio mensaje el que se encapsula en la intención ACTION_NDEF_DISCOVERED. El sistema lee el primer registro del mensaje NDEF, para determinar la estructura del conjunto del mensaje.

Page 119: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

119

A continuación se enumeran los formatos compatibles con la intención y los filtros de intención correspondientes (HÉBUTERNE & PÉROCHON, 2014): 5.12.2 TNF_ABSOLUTE_URI: Puede crear un registro TNF_ABSOLUTE_URI NDEF de la siguiente manera:

NdefRecord uriRecord = new NdefRecord(

NdefRecord.TNF_ABSOLUTE_URI ,

"http://developer.android.com/index.html".getBytes(Charset.forName("US-ASCII

")),

new byte[0], new byte[0]);

El filtro de intención para el registro NDEF es el siguiente:

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:scheme="http"

android:host="developer.android.com"

android:pathPrefix="/index.html" />

</intent-filter>

5.12.3 TNF_MIME_MEDIA: Puede crear un registro TNF_MIME_MEDIA NDEF de las siguientes maneras: Utilizando el método createMime ():

NdefRecord mimeRecord = NdefRecord.createMime("application/vnd.com.example.andro

id.beam",

"Beam me up, Android".getBytes(Charset.forName("US-ASCII")));

Creación de la NdefRecord manualmente:

NdefRecord mimeRecord = new NdefRecord(

NdefRecord.TNF_MIME_MEDIA ,

Page 120: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

120

"application/vnd.com.example.android.beam".getBytes(Charset.forName("US-ASCI

I")),

new byte[0], "Beam me up, Android!".getBytes(Charset.forName("US-ASCII")));

El filtro de la intención de los registros NDEF anteriores se vería así:

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:mimeType="application/vnd.com.example.android.beam" />

</intent-filter>

TNF_MIME_MEDIA es compatible con todos los tipos MIME: la etiqueta <data android:mimetype> permite filtrar los tipos compatibles

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED"/>

<category android:name="android.intent.category.DEFAULT"/>

<data android:mimeType="text/plain" />

</intent-filter>

5.12.4 TNF_WELL_KNOW: Este formato debe verse como un formato que encapsula varios subtipos, y que provee convenciones de formato de escritura de datos, de cara a hacer el conjunto más compacto y eficaz. Los subtipos, prefijados por RTD (Record Type Definition), se corresponden con los que pueden codificarse en un tag NFC: principalmente, texto (RTD_TEXT), una URI (RTD_URI) o un smart_poster (RTD_SMART_POSTER). Por ejemplo, el subtipo RTD_URI permite almacenar el protocolo en un byte, en lugar de escribirlo completamente, como sería necesario en un registro de formato TNF_ABSOLUTE_URI. El filtro de intención compatible con un registro de tipo WELL_KNOWN es el correspondiente a su subtipo. Se recomienda almacenar los mensajes en formato TNF_WELL_KNOWN, este formato es más eficaz que los formatos TNF que encapsula. (HÉBUTERNE & PÉROCHON, 2014). 5.12.5 TNF_WELL_KNOWN with RTD_TEXT: Para crear un registro TNF_WELL_KNOWN NDEF se realiza de la siguiente manera (Developers, 2016):

Page 121: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

121

public NdefRecord createTextRecord(String payload, Locale locale, boolean encode

InUtf8) {

byte[] langBytes = locale.getLanguage().getBytes(Charset.forName("US-ASCII")

);

Charset utfEncoding = encodeInUtf8 ? Charset.forName("UTF-8") : Charset.forN

ame("UTF-16");

byte[] textBytes = payload.getBytes(utfEncoding);

int utfBit = encodeInUtf8 ? 0 : (1 << 7);

char status = (char) (utfBit + langBytes.length);

byte[] data = new byte[1 + langBytes.length + textBytes.length];

data[0] = (byte) status;

System.arraycopy(langBytes, 0, data, 1, langBytes.length);

System.arraycopy(textBytes, 0, data, 1 + langBytes.length, textBytes.length)

;

NdefRecord record = new NdefRecord(NdefRecord.TNF_WELL_KNOWN,

NdefRecord.RTD_TEXT, new byte[0], data);

return record;

}

El filtro intención sería el siguiente:

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:mimeType="text/plain" />

</intent-filter>

5.12.6 TNF_WELL_KNOWN with RTD_URI: Para crear un registro TNF_WELL_KNOWN NDEF se puede realizar de las siguientes maneras: Utilizando el método createUri (String ) (Developers, 2016):

NdefRecord rtdUriRecord1 = NdefRecord.createUri("http://example.com");

Utilizando el método createUri (URI):

Uri uri = new Uri("http://example.com");

Page 122: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

122

NdefRecord rtdUriRecord2 = NdefRecord.createUri(uri);

Creación de la NdefRecord manualmente:

byte[] uriField = "example.com".getBytes(Charset.forName("US-ASCII"));

byte[] payload = new byte[uriField.length + 1]; //add 1 for the URI

Prefix

byte payload[0] = 0x01; //prefixes http://w

ww. to the URI

System.arraycopy(uriField, 0, payload, 1, uriField.length); //appends URI to pa

yload

NdefRecord rtdUriRecord = new NdefRecord(

NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_URI, new byte[0], payload);

El filtro de la intención de los registros NDEF anteriores se vería así:

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:scheme="http"

android:host="example.com"

android:pathPrefix="" />

</intent-filter>

5.12.7 TNF_EXTERNAL_TYPE: Para crear un registro TNF_EXTERNAL_TYPE NDEF se reailza de las siguientes maneras: Utilizando el método createExternal () (Developers, 2016):

byte[] payload; //assign to your data

String domain = "com.example"; //usually your app's package name

String type = "externalType";

NdefRecord extRecord = NdefRecord.createExternal(domain, type, payload);

Creación de la NdefRecord manualmente:

Page 123: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

123

byte[] payload;

...

NdefRecord extRecord = new NdefRecord(

NdefRecord.TNF_EXTERNAL_TYPE, "com.example:externalType", new byte[0], paylo

ad);

El filtro de la intención de los registros NDEF anteriores se vería así:

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:scheme="vnd.android.nfc"

android:host="ext"

android:pathPrefix="/com.example:externalType"/>

</intent-filter>

El formato TNF_EXTERNAL_TYPE permite definir un tipo de mensaje propietario. El filtro de intención menciona el dominio, que se corresponde con la organización que declara este tipo propietario, y el tipo deseado. Esta información se indica en la propiedad pathPrefix de la etiqueta data. La etiqueta data contiene también el esquema utilizado, así como la mención al tipo externo (HÉBUTERNE & PÉROCHON, 2014).

<intent-filter>

<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:scheme="vnd.android.nfc"

android:host="ext"

android:pathPrefix="/com.midominio:miTipo"/>

</intent-filter>

5.12.8 TNF_EMPTY, TNF_UNCHANGED y TNF_UNKNOWN: Estos tipos de registro no son compatibles con un mensaje de tipo NDEF. En su lugar, se inicia una intención de tipo ACTION_TECH_DISCOVERED (HÉBUTERNE & PÉROCHON, 2014).

Page 124: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

124

5.13 TECNOLOGÍAS DE TAGS SOPORTADOS

Cuando se trabaja con tags NFC y dispositivos Android, el formato principal que se utiliza para leer y escribir datos en las etiquetas es NDEF. Cuando un dispositivo escanea una etiqueta con los datos NDEF, Android proporciona apoyo en el análisis de mensajes y la entrega en un NdefMessage (Developers, 2016). Hay casos, cuando se escanea una etiqueta que no contenga datos NDEF o cuando los datos NDEF no podría ser asignada a un tipo MIME o URI. En estos casos, es necesario abrir la comunicación directa con la etiqueta, leer y escribir en él con su propio protocolo (en bytes en bruto). Android proporciona soporte genérico para estos casos de uso con el paquete android.nfc.tech. Se puede utilizar el método getTechList () para determinar las tecnologías soportadas por la etiqueta y crear el objeto TagTechnology correspondiente con una de las clases proporcionado por android.nfc.tech (Developers, 2016). Figura 36 Clases de Tags Soportados

Fuente (Developers, 2016) Las siguientes tecnologías de tags no están obligados a ser soportadas por los dispositivos Android.

Page 125: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

125

Figura 37 Clases de tecnologías de etiquetas opcionales soportadas

Fuente (Developers, 2016)

5.14 TAGS Y LA INTENCIÓN ACTION_TECH_DISCOVERED

Cuando un dispositivo escanea una etiqueta que tiene datos NDEF, pero no pudo ser asignado a un MIME o URI, el sistema de despacho de etiqueta intenta iniciar una actividad con la intención ACTION_TECH_DISCOVERED. El ACTION_TECH_DISCOVERED también se utiliza cuando se escanea una etiqueta con datos que no son NDEF (Developers, 2016). Los pasos básicos cuando se trabaja con las tecnologías de la etiqueta son los siguientes:

1. Filtro para la intención ACTION_TECH_DISCOVERED especificando las tecnologías de la etiqueta que desea manejar. Ver las intenciones de filtrado para NFC para obtener más información. En general, el sistema de etiquetas de envío intenta iniciar un intento ACTION_TECH_DISCOVERED cuando un mensaje NDEF no se puede asignar a un tipo MIME o URI, o si la etiqueta escaneada no contenía datos NDEF. Para obtener más información acerca de cómo esto se determina, consulte el sistema de Despacho Tag.

2. Cuando la aplicación recibe el intento, obtener el objeto de la etiqueta de la intención:

Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

3. Obtener una instancia de un TagTechnology, llamando a uno de los métodos de fábrica get de las clases del paquete android.nfc.tech. Puede enumerar las tecnologías compatibles de la etiqueta llamando getTechList () antes de llamar a un método de fábrica get (Developers, 2016).

Page 126: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

126

Para obtener una instancia de una etiqueta MifareUltralight:

MifareUltralight.get(intent.getParcelableExtra(NfcAdapter.EXTRA_TAG));

5.15 COMPATIBILIDAD CON UNA INTENCIÓN ACTION_TECH_D.

Si se selecciona la aplicación en la segunda etapa, la intención provista tendrá una acción ACTION_TECH_DISCOVERED. La información encapsulada en la intención será la relativa a las tecnologías del tag y al contenido en formato binario. El paquete android.nfc.tech provee las clases de encapsulación para cada tecnología, facilitando la explotación del contenido del mensaje. Para filtrar correctamente la intención creada por el sistema, se debe especificar en el manifest la lista de tecnologías con las que es compatible la aplicación. Esta lista debe declararse en un archivo XML, en forma de enumeración. La raíz de la enumeración es el tag <tech-list> (HÉBUTERNE & PÉROCHON, 2014). El formato del archivo XML:

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<tech-list>

<tech>...</tech>

<tech>...</tech>

</tech-list>

</resources>

El archivo puede contener varias etiquetas <tech>, cada una de las etiquetas especifica una tecnología. El sistema interpreta esta información considerando la lista como una lista "Y": la aplicación se inicia si el tag leído es compatible con todas las tecnologías enumeradas. Es posible especificar varias listas de tecnologías, informando varios tags <tech-list> en el archivo XML. Cada lista se comporta respecto a las demás como una enumeración "O". Este mecanismo permite especificar varios subconjuntos de tecnologías. El siguiente ejemplo presenta un archivo XML que indica que la aplicación es compatible con los tags de tecnologías NfcA y NDEF o MifareClassic y MifareUltraLight (HÉBUTERNE & PÉROCHON, 2014).

Page 127: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

127

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<tech-list>

<tech>android.nfc.tech.NfcA</tech>

<tech>android.nfc.tech.Ndef</tech>

</tech-list>

<tech-list>

<tech>android.nfc.tech.MifareClassic</tech>

<tech>android.nfc.tech.MifareUltralight</tech>

</tech-list>

</resources>

El archivo XML de las tecnologías compatibles puede llamarse de cualquier forma. Se ubica en la carpeta /res/xml, y se incluye una etiqueta XML en el manifest indicando el nombre de archivo de las tech-lists (HÉBUTERNE & PÉROCHON, 2014).

<activity> ...

<intent-filter>

<action android:name="android.nfc.action.TECH_DISCOVERED"/>

</intent-filter>

<meta-data android:name="android.nfc.action.TECH_DISCOVERED"

android:resource="@xml/mi_lista_tech " /> ...

</activity>

Si la aplicación tiene como objetivo escribir tags NFC sobre un soporte, es preciso filtrar este tipo de intención, teniendo en cuenta que los tags están vacíos en el momento de la selección de la aplicación por parte del sistema. La elección se realiza, por tanto, de manera natural sobre las tecnologías soportadas en el tag (HÉBUTERNE & PÉROCHON, 2014).

5.16 COMPATIBILIDAD CON UNA INTENCIÓN ACTION_TAG_DISCOVERED

Una intención ACTION_TAG_DISCOVERED es más compleja de gestionar, la intención no encapsula más que el contenido en formato binario. Es tarea del

Page 128: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

128

desarrollador parsear correctamente la tabla binaria para extraer la información. El filtro de intención que se corresponde con intenciones de tipo ACTION_TAG_DISCOVERED refleja bien el aspecto genérico de este tipo de compatibilidad, no indica ningún contenido para el mensaje, ni tampoco ninguna tecnología (HÉBUTERNE & PÉROCHON, 2014).

<intent-filter>

<action android:name="android.nfc.action.TAG_DISCOVERED"/>

</intent-filter>

5.17 ANDROID APPLICATION RECORDS

Android 4.0 incluyo un nuevo tipo de registro en los tags NFC: los Android Application Records (AAR). Este tipo de registro permite especificar explícitamente el nombre de la aplicación compatible con un tag NFC. Para ello, tras descubrir un tag que contiene un mensaje de tipo NDEF, el sistema Android analiza todos los registros del mensaje con la intención de encontrar un registro AAR. Si este registro existe, se inicia la aplicación mencionada en el registro. Si la aplicación no estuviera instalada en el dispositivo del usuario, el sistema propondrá descargarla directamente de Play Store (HÉBUTERNE & PÉROCHON, 2014). A diferencia del mecanismo de descubrimiento por filtro de intención, el inicio de la aplicación mediante un registro AAR se realiza a nivel de la aplicación, no a nivel de la actividad. Los sistemas Android de versión anterior a la versión 4.0 no son compatibles con los registros AAR (HÉBUTERNE & PÉROCHON, 2014).

5.18 FOREGROUND DISPATCH

Cuando su aplicación de gestión de tags NFC se ejecuta, puede resultar molesto para el usuario que presenta un tag que se abra una ventana de notificación que pide seleccionar qué aplicación debe utilizar el tag: lo deseable, en este caso, sería forzar al sistema a utilizar la aplicación en curso. Para ello, conviene implementar en la actividad en curso, la misma que debe utilizar el tag, un mecanismo de sobrecarga, llamado foreground dispatch. Este mecanismo se declara en el código de la actividad, habitualmente en los métodos onCreate() y onResume(), con ayuda del método enableForegroundDispatch(...) del objeto NfcAdapter (HÉBUTERNE & PÉROCHON, 2014).

Page 129: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

129

Los parámetros esperados por el método enableForegroundDispatch son los siguientes:

• La actividad que se ejecutará cuando se descubra el tag. • Un objeto de tipo PendingIntent, que se rellenará por el sistema y se proveerá

a la actividad. Para no volver a abrir la actividad en curso, el Pending Intent se declarará con el flag Intent.FLAG_ACTIVITY_SINGLE_TOP .

• Una tabla de IntentFilter, que indicará al sistema cuáles son las intenciones compatibles con la actividad.

• Por último, una tabla de dos dimensiones indicando qué tecnologías NFC son compatibles con la actividad.

Por otro lado, es indispensable que la actividad que invoca al método enableForegroundDispatch(...) se habilite. Por ello, la llamada se hará en el métodoonResume() de la actividad. Del mismo modo, conviene deshabilitar el mecanismo de foreground dispatch cuando se pone la actividad en pausa, invocando al método disableForegroundDispatch() desde el método onPause() de la actividad. Es posible recuperar la intención que se envía a la actividad cuando se descubre el tag mediante el método onNewIntent(Intent) de la actividad. Para ello, es preciso sobrecargar este método para procesar la intención y su contenido (HÉBUTERNE & PÉROCHON, 2014).

NfcAdapter nfcAdapter;

@Override

public void onCreate(Bundle savedState) {

super.onCreate(savedState);

// ...

nfcAdapter = NfcAdapter.getDefaultAdapter(this);

}

@Override

public void onResume() {

super.onResume();

if(nfcAdapter==null)

return;

nfcAdapter.enableForegroundDispatch(this, getPendingIntent(),

getIntentFilters(), getTechLists());

}

Page 130: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

130

@Override

public void onPause() {

super.onPause();

if(nfcAdapter==null)

return;

nfcAdapter.disableForegroundDispatch(this);

}

@Override

public void onNewIntent(Intent intent) {

Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

Toast.makeText(this, "Tag descubierto", Toast.LENGTH_LONG).show();

}

Tradicionalmente, el mecanismo de foregroundDispatch se utiliza para escribir tags NFC, la compatibilidad de los tags de lectura se ha declarado en el manifiesto. En este escenario, es posible imaginar cómo se invoca al método enableForegroundDispatch en el método onClick de un botón de la interfaz, por ejemplo. El mecanismo de foregroundDispatch es prioritario al mecanismo de Android Application Record (HÉBUTERNE & PÉROCHON, 2014).

5.19 LEER UN TAG NFC

La lectura de un tag NFC se realiza una vez se ha decidido qué actividad se hace cargo del mismo. El tag y su contenido se proveen a la actividad en la intención, que contiene también la acción que permite determinar qué tipo de mensaje contiene el tag; basta con comprobar el valor de la acción de la intención para saber qué método utilizar para descifrar el o los mensajes (HÉBUTERNE & PÉROCHON, 2014). Lectura de los distintos tipos de mensajes NDEF:

if(intent.getAction().equals(NfcAdapter.ACTION_NDEF_DISCOVERED))

Log.d(TAG,"Lectura de un tag NDEF");

else

if(intent.getAction().equals(NfcAdapter.ACTION_TECH_DISCOVERED))

Log.d(TAG,"Lectura de un tag TECH");

Page 131: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

131

5.19.1 Determinar El Contenido De Un Tag NDEF: La lectura en un tag que contenga mensajes NDEF, se lleva a cabo recuperando en forma de ParcelableArrayExtra el valor parseable con nombre NfcAdapter.EXTRA_NDEF_MESSAGES contenido en la intención y, a continuación, convirtiendo cada elemento de la tabla en un objeto de tipo NdefMessage (no hay que olvidar que un tag NDEF puede contener varios mensajes con formato NDEF) (HÉBUTERNE & PÉROCHON, 2014). Cada NdefMessage que se extrae contiene uno o varios NdefRecord, que son las entidades que contienen los mensajes propiamente dichos. En cada objeto NdefRecord, el mensaje se almacena como una tabla de bytes, llamada Payload, a la que se accede mediante el método getPayload() del objeto NdefRecord. Es preciso convertir estos datos en función del formato del registro NdefRecord. Para ello, el objeto NdefRecord expone los métodos: getTnf(), que devuelve el formato del NdefRecord , y getType() , que devuelve el subtipo en el caso de que el tipo de NdefRecord sea TNF_WELL_KNOWN . La API 16 de Android presenta varios métodos para la clase NdefRecord, que facilitan la lectura e interpretación de los registros (HÉBUTERNE & PÉROCHON, 2014).

5.19.2 Leer Una URI: La API 16 de Android provee el método toUri() que permite extraer una URI de un NdefRecord (HÉBUTERNE & PÉROCHON, 2014).

Uri tagUri= ndefRecord.toUri();

En las versiones anteriores de Android es preciso hacer referencia a las especificaciones del formato de los registros NdefRecord, disponibles en la siguiente dirección: http://www.nfc-forum.org/specs/ Estas especificaciones indican que la codificación sigue las siguientes reglas (HÉBUTERNE & PÉROCHON, 2014):

• El payload es una tabla de bytes. • El primer byte (payload[0]) contiene un indicador que define el protocolo de

la URI. Este formato se utiliza para aumentar la memoria disponible para el detalle de la URI, ahorrando así el espacio necesario para escribir el protocolo.

• El resto del payload constituye la URI propiamente dicha, codificada en UTF-8.

Page 132: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

132

El protocolo puede decodificarse según las correspondencias dadas en la tabla siguiente (extracto): Tabla 9. Protocolos de tipo URI para el primer Byte Decimal Hex Protocolo 0 0x00 N/A. No prepending is done, and the URI field

contains the unabridged URI. 1 0x01 http://www. 2 0x02 https://www. 3 0x03 http:// 4 0x04 https:// 5 0x05 tel: 6 0x06 mailto: 7 0x07 ftp://anonymous:anonymous@ 8 0x08 ftp://ftp. 9 0x09 ftps:// … … …

Fuente (HÉBUTERNE & PÉROCHON, 2014) 5.19.3 Leer Una Cadena De Caracteres: En el caso de un NdefRecord cuyo subtipo sea RTD_TEXT, los primeros bytes del payload contienen información acerca de la codificación del contenido (HÉBUTERNE & PÉROCHON, 2014).

• Un primer elemento define la codificación, UTF-8 o UTF-16, así como la longitud del código que le sigue.

• El siguiente elemento define el código del lenguaje utilizado.

La extracción del texto del registro consiste, por tanto, en determinar la codificación de la cadena de caracteres "útiles" de payload y, a continuación, transcribir la tabla de bytes como una cadena de caracteres en función de su codificación (HÉBUTERNE & PÉROCHON, 2014).

private String readText(byte[] payload) throws

UnsupportedEncodingException {

String formatoCodificacion =

((payload[0] & 0200) == 0) ? "UTF-8" : "UTF-16";

int longitudCodigoLenguaje = payload[0] & 0077;

String codigoLenguaje =

Page 133: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

133

new String(payload, 1, longitudCodigoLenguaje, "US-ASCII");

return new String(payload,

longitudCodigoLenguaje + 1,

payload.length - longitudCodigoLenguaje - 1,

formatoCodificacion);

}

5.19.4 Leer Un Tipo MIME: La lectura de un registro de tipo TNF_MIME_MEDIA es muy sencilla, pues existen métodos disponibles desde la versión 9 de Android. Un tag de tipo TNF_MIME_MEDIA incluye dos campos: el tipo MIME, que debe leerse mediante el método getType() del objeto NdefRecord, y un contenido (value), al que se accede mediante el método getValue() (HÉBUTERNE & PÉROCHON, 2014).

private void readMimeTypeTag(NdefRecord record) {

String mimeType=new String(record.getType());

String value =new String(record.getPayload());

}

5.19.5 Leer Un Tag De Tipo TNF_WELL_KNOWN: Android trata los tags de tipo TNF_WELL_KNOWN del mismo modo que los tags de tipo equivalente: si el subtipo del tag TNF_WELL_KNOWN es RTD_URI, el tag se leerá como un tag de tipo TNF_ABSOLUTE_URI. El método getType() del objeto NdefRecord devuelve el subtipo del tag, tal y como se indica en la siguiente tabla (HÉBUTERNE & PÉROCHON, 2014): Tabla 10. Protocolos de tipo URI para el primer Byte Subtipo (RTD) Descripción RTD_SMART_POSTER Registro de tipo URI, basado en el análisis del

payload. RTD_TEXT Registro de tipo MIME de valor text/plain. RTD_URI URI

Fuente (HÉBUTERNE & PÉROCHON, 2014)

Page 134: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

134

Conviene, entonces, con determinar el subtipo del tag TNF_WELL_KNOWN, y procesar el payload del tag en función del subtipo.

if(record.getType()==NdefRecord.RTD_TEXT) {

//... tratar el payload como para leer una cadena de caracteres }

else if (record.getType()==NdefRecord.RTD_URI)

{ //... tratar el payload como para leer una URI

}

5.20 ESCRIBIR UN TAG NFC

La escritura de un tag se realiza, habitualmente, tras comprobar la compatibilidad del tag detectada por la intención. Se recomienda crear únicamente mensajes NFC con formato NdefMessage. La escritura de un tag sigue la estructura de un objeto de tipo NdefMessage: el mensaje incluye uno o varios registros (objetos de tipo NdefRecord), que pueden ser de distintos tipos. La escritura del tag se realiza mediante un objeto de tipo android.nfc.tech.Ndef, que provee métodos de alto nivel para la escritura. Es posible obtener una instancia de Ndef utilizando el método estático get(Tag) de la clase Ndef. El tag que se pasa como parámetro es el objeto que la intención provee una vez descubierto el tag (HÉBUTERNE & PÉROCHON, 2014).

Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

Ndef ndef = Ndef.get(tag);

// ... escritura del tag

El método get(tag) puede devolver null, en caso de que el tag no esté soportado por la tecnología NDEF. La escritura es muy sencilla: basta con inicializar la operación de escritura mediante el método connect(), escribir el tag con el método writeNdefMessage(NdefMessage) y cerrar la conexión invocando al método close() (HÉBUTERNE & PÉROCHON, 2014).

Page 135: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

135

Try {

ndef.connect();

ndef.writeNdefMessage(mensaje);

ndef.close();

}

catch (IOException e) {

e.printStackTrace();

}

5.21 CONSTRUIR UN PAYLOAD DE TIPO TEXTO

El payload de un registro de tipo texto debe comenzar con información relativa a la codificación del texto y, a continuación, el propio texto codificado (HÉBUTERNE & PÉROCHON, 2014).

• El primer bit define el formato del texto: UTF-8 (bit a 0) o UTF-16 (bit a 1). • El segundo bit vale 0 (inutilizado en la norma actual). • Los 6 siguientes bits indican la longitud de la codificación del idioma.

A continuación, se incluye el valor de la codificación del idioma (codificado en "US-ASCII", por ejemplo), y a continuación el propio texto. La longitud total de la tabla de bytes que constituye el payload será, por tanto, la suma del byte de información acerca de la codificación, el tamaño del código de idioma y el tamaño del mensaje. Es posible, entonces, construir el payload de la siguiente manera: (HÉBUTERNE & PÉROCHON, 2014):

byte[] buildTextPayload(String mensaje, String codificacion,

Locale idioma) {

Charset charsetCodificacion = Charset.forName(codificacion);

byte[] payload;

byte[] bIdioma =

idioma.getIdioma().getBytes(Charset.forName("US-ASCII"));

byte[] bMensaje= mensaje.getBytes(charsetCodificacion);

Page 136: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

136

int codigoCodificacion = codificacion.equals("UTF-8") ? 0 : 128;

payload = new byte[1 + bIdioma.length + bMensaje.length];

payload[0] = (byte)(codigoCodificacion + bIdioma.length); System.arraycopy(bI

dioma, 0, payload, 1, bIdioma.length); System.arraycopy(bMensaje, 0, payload,

1 + bIdioma.length, messageByte.length);

return payload;

5.22 CONSTRUIR UN PAYLOAD DE TIPO URI

Se recomienda escribir los mensajes de tipo URI utilizando el formato TNF_WELL_KNOWN. La tabla de bytes que componen el payload contiene, en este caso, la siguiente información (HÉBUTERNE & PÉROCHON, 2014):

• El primer byte contiene el código correspondiente al prefijo de la URI

• Los siguientes bytes contienen el sufijo de la URI, codificado en UTF-8.

La tabla de bytes tendrá, entonces, un tamaño igual a 1 + el tamaño del sufijo. La construcción del payload se realiza de la siguiente manera:

byte[] buildUriPayload(String uri) {

String[] protocolo = new String[] {"",

"http://www.",

"https://www.",

"http://",

"https://",

"tel:",

"mailto:",

"ftp://anonymous:anonymous@",

"ftp://ftp.",

"ftps://" //[...] // Todos los protocolos.

};

byte[] payload;

int indicePrefijo = -1;

Page 137: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

137

for(int i = 1;i<protocolo.length;i++)

if(uri.startsWith(protocolo[i])) {

indicePrefijo = i;

break;

}

if(indicePrefijo==-1)

return null;

uri = uri.substring(protocolo[indicePrefijo].length());

byte[] bUri = uri.getBytes(Charset.forName("UTF-8"));

payload = new byte[1 + bUri.length]; payload[0] = (byte)indicePrefijo; S

ystem.arraycopy(bUri, 0, payload, 1, bUri.length);

return payload; }

No hay que olvidar sustraer el protocolo de la URI antes de codificarlo en UTF-8 y volver a copiar la tabla de bytes en el payload. Se debe estar atentos a la tabla que enumera los protocolos que tiene, como primer elemento, una cadena vacía. El bucle for que determina el prefijo debe tenerlo en cuenta y comenzar en el segundo elemento de la tabla (HÉBUTERNE & PÉROCHON, 2014). El método de construcción de un payload para un registro de tipo Absolute_URI: basta con considerar que el prefijo de la URI es la cadena vacía - que se corresponde con tener un 0 en el primer byte del payload, y codificar toda la URI (prefijo incluido) en UTF-8 en el resto de la tabla de bytes (HÉBUTERNE & PÉROCHON, 2014).

5.23 DEFINIR UN REGISTRO NDEFRECORD CON LAS API 14 Y 16

La API 14 de Android provee un método que simplifica al máximo la creación de un registro ndefRecord de tipo URI:

NdefRecord ndefRecord =NdefRecord.createUri("http://www.miurl.es");

Page 138: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

138

Del mismo modo, la API 16 incluye algunos métodos estáticos que permiten crear directamente registros NdefRecord sin tener que codificar específicamente el payload. Entre estos métodos, destacaremos los métodos createMime() y createExternal(). El método createMime(String mimeType, byte[]mimeData) permite crear simplemente un registro ndefRecord de tipo TNF_MIME_MEDIA , y recibe como parámetros el tipo MIME (en forma de cadena de caracteres) y el contenido a codificar (en forma de tabla de bytes) (HÉBUTERNE & PÉROCHON, 2014).

byte[] data = getData(); NdefRecord ndefRecord = NdefRecord.createMime("image/jp

eg",data);

Del mismo modo, el método createExternal(String domain, String type, byte[]data) permite crear un registro de tipo TNF_EXTERNAL_TYPE , y recibe como parámetros el dominio, el tipo y los datos. El único punto destacable de este método es la clase del dominio y del tipo: según la recomendación del foro NFC, esta información no debería ser sensible a mayúsculas y minúsculas, lo cual no es compatible con los principios de Android (los filtros de intención sí son sensibles). El sistema gestiona esta diferencia aplicando el método toLowerCase() sistemáticamente a estos dos parámetros en el método createExternal() (HÉBUTERNE & PÉROCHON, 2014).

Page 139: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

139

6. ESTADO DEL ARTE

Como fundamento de investigación para el trabajo de grado, se debe partir de la Tecnología NFC y sus avances en el estado de arte tanto a nivel nacional como internacional, permitiendo así conocer los principales avances tecnológicos y las implementaciones realizadas en la industria. El concepto del cual se tratará el estado del arte será: Near Field Communication NFC, dispositivos, estándares, aplicaciones reconocidas, aplicaciones NFC.

6.1 ESTADO DEL ARTE NFC COLOMBIA

Hoy en día la tecnología NFC está ingresando en el país en diferente dispositivos como Smartphones, Tabletas, dispositivos para el hogar como Televisiones, Parlantes, Impresoras; Ropa, accesorios, vehículos y muchos otros elementos que cada día son creados y diseñados para ser compatibles con NFC. Para años anteriores al 2012 no se habían desarrollado aplicaciones exitosamente en el país, desde el año 2013 una implementación para el Sistema Integrado de Transporte Publico SITP y Transmilenio en su Fase 3, implementaron el uso tarjetas compatibles con la Tecnología NFC, y desarrollaron una aplicación multiplataforma con muchas funciones, la aplicación permite consultar el saldo de la tarjeta desde el teléfono móvil con NFC. El uso de esta tecnología también se ha establecido en otras ciudades del país para los Sistemas de Transporte Integrado, siendo el de Bogotá primero en implementarse y funcionar. Actualmente ya se cuenta con el uso de tarjetas NFC de contacto en empresas para el uso de carnets de identificación y acceso a zonas restringidas, igualmente los Bancos ya iniciaron el trabajo de la creación de las tarjetas de crédito virtuales para que funcionen como tarjetas de crédito y permitan realizar pagos con el teléfono móvil. 6.1.1 Transmilenio y SITP – TransmiSitp. La aplicación TrasnmiSitp permite a los usuarios:

• Consultar las estaciones por troncales • Ver direccione de las estaciones del Sistema • Consultar rutas y paradas de los buses de Transmilenio • Calcular ruta • Obtener información de Buses alimentadores

Page 140: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

140

• Consultar información de buses y paradas del SITP • Consultar saldo de Tarjeta • Ver información de puntos de carga • Consultar Reportes de Movilidad • Consultar Mapas de Transmilenio • Conectar a Redes Sociales

Figura 38. Aplicación Móvil TrasmsiSitp

Fuente (Transmisitp, 2013)

6.1.2 Tarjeta tullave. La tarjeta tu llave es una tarjeta inteligente, sin contacto como medio de pago y es usada actualmente para ingresar al Sistema de Transmilenio y al SITP.

Page 141: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

141

Figura 39. Tarjeta tullave

Fuente (Transmilenio, 2013)

• Consulta de Saldo tarjeta tullave:

Para que los usuarios puedan realizar la consulta del saldo de la tarjeta de tu llave, se deberá activar NFC en la configuración de conexiones y acercar la tarjeta a la parte posterior del Celular.

Figura 40. Activación NFC tullave

Fuente (Transmilenio, 2013)

Page 142: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

142

Una vez el usuario el usuario activa el NFC de su dispositivo y acerca la tarjeta obtiene el saldo de la tarjeta tullave en la pantalla

Figura 41. Consulta de saldo tarjeta tullave

Fuente (Transmilenio, 2013)

6.2 ESTADO DEL ARTE NFC EXTERIOR

En el exterior existen compañías encargadas en desarrollar soluciones integradas de software para diferentes dispositivos NFC. A continuación algunos casos en implementaciones: 6.2.1 Google Wallet. El pago de Google Wallet con Near Field Communication (NFC), es un sistema al que se unieron las firmas Sprint, First Data, Citi y Mastercard. El sistema de pago utiliza la tecnología NFC para el pago de sus tarjetas de crédito, de esta manera se reemplaza la tarjeta plástica por un sistema moderno y confiable de pago. Este nuevo sistema permite comprar en tiendas permitiendo que el teléfono sea la cartera que lleva todas las tarjeas débito y crédito, solo basta con un pequeño toque de la parte porterior del teléfono al lector de pagos para realizar la compra.

Page 143: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

143

Figura 42. Google Wallet

Fuente Google Wallet (2012) 6.2.2 Angry Birds Magic. Es un juego con la tradicional mecánica que ya se conoce, pero ahora se puede jugar con otras personas que tengan dispositivos que soporten la tecnología NFC para liberar los niveles de juego. Esta versión del juego fue sacada en Mónaco, Se lanzó en exclusiva para el Nokia C7 y de hecho viene preinstalada en la actualización de Symbian Anna. Asimismo, se espera sea incluida en otros equipos con chips NFC. Para ello, los programadores de Rovio están trabajando arduamente en crear nuevos niveles para una versión completa de Magic. Los cinco primeros niveles son completamente libres, pero una vez los hayas completado y desees proseguir debes buscar a una persona para liberar otros cinco niveles, y así sucesivamente. Otra opción de desbloqueo es factible ubicando chips que han sido escondidos en las instalaciones donde se lleva a cabo el evento. Obviamente, se están distribuyendo algunas pistas para que las personas puedan ubicarlos y proseguir en la tarea de derribar cerdos verdes (España, 2011). Figura 43. NFC Angry Birds

Fuente (España, 2011)

Page 144: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

144

6.2.3 Foursquare. Android Ocampo, C. (2012) describe en su artículo web que Foursquare le ayuda a explorar el mundo que te rodea. Más de 50 mil personas tienen esta aplicación permite ver lo que están haciendo tus amigos y compartir sus experiencias, conseguir recomendaciones personalizadas para dónde ir y qué conseguir, sobre la base de lo que al usuario y amigos les gusta. Permite ahorrar con descuentos y regalos de las empresas. De igual manera la aplicación se comunica con lectores, tarjetas y etiquetas (NFC).

Figura 44. Aplicación Foursquare

Fuente (Foursquare, 2012)

6.2.4 Android Beam. Es el nombre con el que Google nombró a sus comunicaciones peer-to-peer y por ese medio los usuarios en Foursquare podrán compartir listas, información de lugares visitados, enviar solicitud de amistad y hacer check-ins en cualquier lugar donde haya tags NFC. Así, cada vez que un usuario visite un lugar donde estén disponibles y su Smartphone Android 4.0 tenga NFC, aparecerá una notificación inmediata para invitarlo a que haga check-in (Ocampo, 2012). 6.2.5 Universidad Católica San Antonio de Murcia. El sitio web NFCON (2012) nos describe la implementación de varios proyectos con NFC uno de ellos en La Universidad Católica San Antonio de Murcia donde se llevará a cabo una iniciativa en la cual implantará la tecnología NFC en diferentes servicios, tales como el acceso físico, los pagos o la asistencia. Los más de 20.000 estudiantes de la Universidad podrán tomar contacto con este tipo de tecnología que permitirá facilitar los servicios ofrecidos por la Universidad (NFCON 2012). La tecnología NFC permitirá realizar operaciones desde comprobar el tiempo del autobús hasta alquilar una bicicleta la Universidad Católica San Antonio de Murcia. Otras facilidades que ofrece la tecnología NFC es el poder almacenar perfiles académicos o el uso de datos en el campo (NFCON 2012).

Page 145: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

145

6.2.6 Sector de los Taxis. El otro proyecto mencionado en la página de NFCON (2012) es en la ciudad de Barcelona, la cual será elegida para implantar la tecnología NFC en taxis. Se trata de una iniciativa de La Caixa, que facilitará el pago a través de este método, lo que evitará que los taxistas lleven altas cantidades de efectivo en los vehículos. El sistema está en proceso de prueba y ya son más de 5.000 taxis de la ciudad condal, los que se han atrevido a incorporar este nuevo método de pago en sus servicios. La mecánica será acercar el teléfono móvil a al datafono y por un importe menor de 20 euros no se pedirá el PIN de la tarjeta; si el importe es mayor de 20 euros sí se pedirá. Actualmente, La Caixa dispone de más de 19.000 TPV´s en funcionamiento y verá incrementado su número gracias al uso de esta tecnología NFC en los pagos de los viajes en taxi. (NFCON 2012). 6.2.7 Vodafone Posters Inteligentes con NFC en Gijón. El artículo publicado en la página de (NFCON, 2012) nos muestra cómo se comienzan a verse campañas de Posters Inteligentes con etiquetas NFC en España. Con motivo del Concurso Hípico Internacional de Gijón 2012, realizado entre el 29 de agosto y el 03 de septiembre, Vodafone ha realizado unos Posters Inteligentes con NFC. Se trata de una iniciativa pionera, que permitirá que los usuarios con un teléfono con soporte NFC obtengan las últimas imágenes del evento, información sobre apuestas y conocer los resultados del concurso. Y todo con el simple gesto de acercar el teléfono a los puntos indicados. Vodafone es además uno de los principales patrocinadores del evento, y una de las empresas líderes en España en el desarrollo de proyectos que incluyen tecnología NFC. La acción ha sido coordinada en la parte técnica por la empresa Sooft, especializada en Tecnología NFC y propietaria de este portal (NFCON, 2012).

Page 146: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

146

Figura 45. Concurso Hípico Internacional

Fuente (NFCON, 2012).

6.3 USO DE NFC EN BIBLIOTECAS

6.3.1 La Biblioteca Pública de Hanno. Ubicada en Saitama (Japón) cuenta con un Sistema NFC llamado El proyecto Karirutatchi, donde se colocaron 100 tags en los estantes los cuales son dirigidos a Portal Web optimizado para móviles donde se acceden a diferentes fuentes de información permitiendo ampliar la información de los libros y la colección, permitiendo a los usuarios decidir al seleccionar los libros, hacer comentarios, reseñas y solicitar el material (Arroyo, 2013). Figura 46. NFC Biblioteca Pública de Hanno

Fuente (Arroyo, 2013)

Page 147: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

147

6.3.2 Biblioteca Pública Austriaca. En la Ciudad austriaca de Klagenfurt trabaja en una iniciativa llamada Proyecto Ingerborg, implemento un sistema en NFC que está convirtiendo al municipio en un repositorio de libros, la aplicación dirige a los usuarios a páginas web donde pueden descargar obras de dominio público del proyecto Gutenberg. Las obras literarias son ubicadas de acuerdo a sitios estratégicos en el pueblo para lograr distribuir libros, música y contenidos digitales. (Santos, 2012)

Figura 47. Project Pingeb.org

Fuente (Project PINGEBORG, 2013)

6.3.3 Underground Biblioteca. En el Sistema de transporte subterráneo de Nueva York, estudiantes han creado una iniciativa que permite a los usuarios del sistema acceder a libros usando la tecnología NFC. La aplicación permite a los usuarios de teléfonos inteligentes la descarga extractos de libros, primeras páginas seleccionado de la Biblioteca Pública de New York, y una vez se sale del metro la aplicación mostrara la biblioteca más cercana para solicitar el libro completo (Tan, 2013). En el video publicitario del proyecto publicado en la red social Vimeo (https://vimeo.com/58161297 ) se puede ver a usuarios del metro utilizar su teléfono móvil para escanear un cartel inteligente para acceder a las 10 primeras páginas de un libro bestseller sin que sea necesario tener acceso a redes Wi-Fi (Tan, 2013).

Page 148: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

148

Figura 48. The Underground Library

Fuente (Tan, 2013)

6.4 USO DE NFC EN VEHICULOS

Las grandes compañías fabricantes de automóviles como BMW, Mercedes Benz y Audi, están integrando la tecnología NFC a sus automóviles. Esta tecnología permite abrir puertas, maleteros con teléfonos inteligentes o con relojes NFC; la aplicación de esta tecnología también permite personalizar la posición del asiento del conductor, emparejar música y contactos con el panel instrumental del vehículo. Los principales fabricantes de chips de NFC como NXP y Broadcom Corporation ofrecen soluciones a empresas automotrices y prometen grandes avances en la implementación de esta tecnología en el sector, trayendo grandes beneficios al momento de rentar un vehículo, realizar pagos y acceder a zonas restringidas como parqueaderos (Cruz, 2015).

Page 149: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

149

Figura 49. Uso de NFC en vehículos HYUNDAI

Fuente (HYUNDAI, 2013) Por el lado del fabricante Hyundai en el año 2012 lanzo el concept car i30 de Hyundai, quien propone el uso de la tecnología NFC para ser usado como llave de acceso. Con el apoyo tecnológico de RIM y HID Global trabajan en un control de acceso con dispositivos BlackBerry con NFC, la propuesta es eliminar la clásica llave con la que se abre la puerta del automóvil o un mando a distancia, para realizarse con el móvil leyendo el tag ubicado en la puerta del auto para abrir las puertas y permitir también almacenar el perfil del usuario. Hyundai propone en los teléfonos móviles datos relativos a la preferencia del conductor como las emisoras favoritas, listas de reproducción de canciones, contactos, posición de espejos retrovisores, colocación de los asientos y otro tipo de configuraciones para luego transmitirlos al automóvil vía NFC; esto permitirá llegar a la personalización de las características según configuración realizada por los diferentes conductores que usen el vehículo. Se espera que esta propuesta de configuración esté disponible desde el 2015. (Velasto, 2012)

Page 150: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

150

Figura 50. Apps en vehículos HYUNDAI

Fuente (HYUNDAI, 2013)

6.5 TRANSPORTE PUBLICO

6.5.1 Metro de NEW YORK. El metro de New York es el sistema de transporte más popular y usado en la ciudad, el sistema de ingreso ha venido evolucionando con el paso de los años, pasando de fichas a tarjetas recargables y desechables. En unos años los usuarios pasaran los torniquetes con el uso de sus teléfonos inteligentes. Con esta tecnología se dará fin a la MetroCard que está llegando al fin de su vida útil, y significará un ahorro para el sistema ya que cada máquina tiene un costo muy elevado. Esta tecnología solo se podrá iniciar a implementar desde el 2019, debido a que la MetroCard está programada hasta esa fecha. Otras Ciudades de Estados Unidos, incluyendo Boston y Washington, DC, emplean tarjetas inteligentes para el transporte. (Costello, 2014). 6.5.2 Transporte Público Español. En España se estudia un modelo de implantación de la tecnología NFC en el transporte público. Esta presentación se realizó en el XV congreso Español de Sistemas Inteligentes de Transporte donde se analizaron las experiencias luego de la implantación comercial del uso de teléfonos inteligentes para el transporte público en la ciudad de valencia. EL operador que logro este avance fue Movistar, Valencia es la primera ciudad española en ofrecer este sistema de pago incluido el metro y tranvía. Las tres principales empresas de telefonía ofrece este servicio. El servicio entra en funcionamiento el mes de mayo de 2015 y dará viajes gratis a sus usuarios

Page 151: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

151

6.6 IDENTIFICACIÓN VEHICULAR CON NFC

Figura 51. Identificación vehicular en Valencia - España

Fuente (Ramos, 2015). La ciudad de Valencia, España está haciendo la implementación de la tecnología NFC en las entidades locales de la ciudad. La tecnología NFC logra hacer un ahorro económico con el desarrollo de aplicaciones usadas como en el caso del Cuerpo de Policía local de Valencia, aprovechando de que trabaja en las calles y para su comunicación para la identificación solicita ayuda por su radio de comunicación (Ramos, 2015). Con el desarrollo de nuevos dispositivos tecnológicos se logra realizar una conexión que permite al agente conectarse a la red usando alguna aplicación para consultar información instantáneamente, por lo cual se favorece su trabajo ya que es más rápida, sencilla y eficiente. En Valencia la empresa EMT que más ha modernizado y lo ha implementado en el transporte, brindando información en las paradas de buses y brindar información a usuarios, igualmente se aplicara a los establecimientos quienes colocaran tags que tendrán información importante para la administración local (Ramos, 2015). El policía deberá contar con un móvil con tecnología NFC, podrá acercar el teléfono al tag del local comercial si este tiene licencia de funcionamiento, si está pendiente de obligaciones e impuestos y muchos datos mas (Ramos, 2015). El uso de estos tags en los vehículos permite la consulta de información y muchos tipos de consultas. En la Ciudad de valencia los tag son entregados e instalados por la oficina de pago de impuestos del vehículo. La etiqueta será instalada en el

Page 152: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

152

parabrisas del vehículo, el agente acerca su móvil con NFC y sabrá al instante si el auto tiene seguro o no, y está pendiente de pagos, quien es el propietario o si hay una denuncia de robo (Ramos, 2015). Figura 52. Funcionamiento de NFC en transporte público

Fuente Omicrono. (2012).

6.7 HOGAR

6.7.1 Uso de NFC en Juguetes. Los principales fabricantes de juguetes están incorporando la tecnología NFC y aplicaciones en juguetes para agregarles mayores funciones y ser más atractivos e interactivos para los niños. Entre los fabricantes están Disney, Hasbro, Nintendo, Crayola, Mattel y Activision (Soto, 2015). Con la integración de la tecnología NFC a los juguetes los niños tendrán juguetes más complejos e inteligentes. Mattel ofrece una muñeca Hello Barbie, que permite reconocer lo que dicen los niños y guarda la información en la Nube para luego entablar conversaciones. Las figuras de marcas como Disney Infinity, Skylanders y Nintendo Ambos cobran vida en la pantalla al colocarse sobre bases NFC o en el caso de la consola Wii U, en el control de juego. Cada una desbloquea contenido como armas, escenarios y accesorios. (Soto, 2015) 6.7.2 Proyectores NFC. La Compañía BenQ anuncio los modelos de proyectores MW665+ y MX666+. Están diseñaos para realizar las presentaciones con el tapNshow, una solución única hasta el momento permitiendo transmitir una presentación del teléfono móvil a proyector usando la Tecnología NFC, BenQ busca

Page 153: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

153

dar un verdadero poder a las presentaciones con mayor comodidad, confianza y facilidad (Manaure, 2015).

Figura 53. Proyectores NFC

Fuente (Manaure, 2015)

6.7.3 Tecnología de Sony con NFC. Podemos mencionar también toda la tecnología que tiene el fabricante SONY, quien ofrece todo tipo de soluciones para lograr un hogar conectado con la tecnología NFC, algunos de los más destacados son:

• Televisor X9 con resolución de 4K • Altavoces Inalámbricos con Wi-Fi SRS-X9 • Auriculares MDR-1RBT • Cámara Digital DSC-RX100M2 • Altavoces SRS-BTV5 y SRS-BTM8 • SmartTags • Smartphones • SmartWatch 2 SW2

Page 154: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

154

Figura 54. Dispositivos Sony NFC

Fuente (Sony Xperia M2, 2014)

6.7.4 Bafles con NFC. La tecnología NFC también ahora la podemos encontramos encontrar en los altavoces SPC WOW y GO NFC Speaker, que puede transmitir música vía NFC o Bluetooh desde el Smartphone o Tablet a los altavoces. De fabricación española y una potencia de 5W y un subwoofer de 10W. Tienen una batería de 2.200 miliamperios con capacidad para reproducir música a un volumen alto durante un máximo de 11 horas y música a un volumen medio durante un máximo de 20 horas (Manzhirova, 2015).

Figura 55. Bafles NFC

Fuente (Manzhirova, 2015)

Page 155: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

155

6.7.5 Relojes NFC. El avance de los diferentes dispositivos móviles y con la llegada de la era del Internet de las Cosas, vemos que también los fabricantes de relojes van incluyendo nuevas tecnologías, en el mercado ya encontramos relojes con tecnología NFC, llamados Smartwatch, por el lado de Apple podemos encontrar el Apple Watch, otros fabricantes como Montblanc o Tag Heuer, Samsung, Sony entre otros fabricantes, todos ellos tienen propuestas para relojes inteligentes (Sony, 2015). Un modelo destacado es el Sony SmartWatch 3 SW2 (MN3) es un reloj inteligente con Android incluido conectividad NFC Bluetooh 3.0, su duración de batería es de 4 días, pantalla transflectiva de 1.6 pulgadas, una resolución de 320 x 320 pixeles. Desde el reloj controlar las llamadas, actualizaciones de redes sociales, correo entre otras funciones, la pantalla es multitáctil. Además tiene sensores Sensores de luz ambiente, Acelerómetro, Brújula, Giro, GPS. En rendimiento Quad ARM A7, 1.2 Ghz, 512 MB de RAM, 4 GB de eMMC (Sony, 2015).

Figura 56. Relojes NFC

Fuente (Sony, 2015) 6.7.6 Auriculares NFC. Otro dispositivo donde se está aplicando la tecnología NFC, son los auriculares inalámbricos, de esta forma acercando los auriculares y un Smartphone podemos trasmitir archivos MP3 a los auriculares. Uno de estos modelos es el auricular SHB7150FB de Philips, permitiendo el apareamiento con otros dispositivos como Mini componentes, Smartphones, este dispositivo permite recibir llamadas mientras se está escuchando música, se detiene la reproducción y se continúa en la llamada, debido a que cuenta con micrófono. Permite la conexión por cable que viene como accesorio, pesan 1.76 y otros modelos como el HP2B de Noblex, posee función de manos libres, tienen una duración de 14 de horas de batería, y una sensibilidad de 108 dB. (Castrillón, 2015).

Page 156: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

156

Figura 57. Auriculares NFC

Fuente (PHILIPS, 2014)

6.7.7 Impresoras NFC. Samsung ha creado impresoras compatibles con la Tecnología NFC, en el mercado encontramos impresoras multifuncionales monocromáticas y a color con funciones de impresión, escaneo y copia, algunos modelos son la Xpress SL-M2070FW, Xpress C410W, MFPs C460W, estas multifuncionales permiten la conexión por cable USB, Red y Wi-Fi. Cuentan con un Tag NFC y desde la página de Samsung se puede descargar un App llamada Samsung Mobile Print para realizar la impresión Tap & Print permitiendo imprimir con facilidad desde los smartphones fotografías y documentos en alta calidad (Samsung, 2013). Figura 58. Impresoras NFC

Fuente (Samsung, 2013)

Page 157: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

157

6.8 SISTEMA DE PAGOS CON NFC

6.8.1 Tap to Pay. Este sistema de pago proporciona las opciones de pago en autobuses, tren, ferry, peajes, estacionamientos, comidas entre muchos otros usos buscado como objetivo principal mejorar la eficiencia en la recaudación de tarifas, aumenta la velocidad de las transacciones y reduce los costos de operación (Tap To Pay, 2015).

Figura 59. Tap to Pay

Fuente (Tap To Pay, 2015)

6.8.2 Sasmsug Pay. Samsung ha presentado su propuesta tecnológica para realizar pagos desde los Smartphones llamada Samsung Pay, este servicio permite a los usuarios realizar compras en cualquier establecimiento comercial, para ello Samsung hace uso de la tecnología NFC y un desarrollo propio denominado Magnetic Secure Trasmission MST, para facilitar los pagos a los usuarios clientes y comercio. Esta plataforma de pago ha trabajado con las principales empresas de pagos como MasterCard y Visa y están buscando ampliar las alianzas con todos partners financieros de todo el mundo y proporcionar un mayor acceso y flexibilidad y hacer una mejor experiencia más segura y simple (SAMSUNG, 2015). Samsung Pay puede ser usado en 30 millones de locales comerciales en el mundo, lo que la convierte hasta la fecha en la única solución de pagos móviles con mayor cobertura, otra ventaja de este sistema de pago es que los usuarios pueden usarlo en locales comerciales independiente si los terminales funcionan con NFC o son lectores de tarjetas tradicionales (SAMSUNG, 2015).

Page 158: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

158

Figura 60. Samsung Pay

Fuente (SAMSUNG, 2015)

La tecnología MST permite a Samsung Pay trabajar con las tarjetas de crédito de marca propia (PLCC) con la cooperación de importantes partners como Synchrony Financial y First Data Corporation. La vinculación con comercios, bancos emisores y grandes redes de pagos ofrece a los clientes la oportunidad de utilizar una amplia variedad de tarjetas de pago y hace de Samsung Pay una solución de pagos móviles realmente universal (SAMSUNG, 2015). Para agregar las tarjetas de crédito es un proceso muy sencillo y una vez agregada el usuario solo debe deslizar su dedo desde la parte inferior de la pantalla para desplegar la aplicación de Samsung Pay, se elige la tarjeta deseada para realizar el pago y se identifica con el sensor de huella dactilar, se conecta el Smartphone con los terminales de punto de venta y permite así realizar una compra rápida y segura. Este sistema de pago tampoco guarda los números de cuenta en el dispositivo, la seguridad de pagos de Samsung se ha mejorado con su propia plataforma de seguridad móvil (Samsung KNOXTM) y ARM TrustZone®, que conjuntamente protegen la información de las transacciones frente a los delincuentes y los ataques a los datos. También se cuenta con la función la función Find My Mobile, en el caso de que se pierda un teléfono, y permite a los usuarios localizar, bloquear e incluso vaciar sus dispositivos de forma remota, garantizando que los datos de Samsung Pay nunca se vean comprometidos. (SAMSUNG, 2015)

Page 159: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

159

6.8.3 Apple Pay. Apple lanzo en San Francisco el 9 de septiembre de 2014 el Sistema de pago conocido como APPLE PLAY, que utiliza varias tecnologías para realizar pagos desde su dispositivo Iphone 6, dando funciones como una billetera electrónica, se utilizan diversas tecnologías como NFC, Touch ID, Secure Element y Passbook (Apple, 2015).

Figura 61. Tarjetas de Crédito en Apple Pay

Fuente (Apple, 2015) La aplicación permite agregar tarjetas a Passbook y luego para realizar el pago se toca el móvil para validar la huella dactilar. Apple no almacena datos como el número de la tarjeta de crédito, por si se pierde el teléfono se puede entrar a la web de Apple y desactivar el acceso a los dispositivos (Apple, 2015). Figura 62. Apple Pay

Fuente (Apple, 2015)

Page 160: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

160

Apple Play funcionará con también con el Apple Watch. Para realizar estos se podrá acercar el teléfono a la terminal de cobro y validar la huella dactilar. Está funcionando en 220.000 tiendas y cadenas de mercado como Nike, Apple, Disney, Subway entre muchas otras de los EEUU (Apple, 2015). El sistema de pagos funciona con las principales tarjetas de crédito y débito de los bancos de Estados unidos como Visa, Master Card y American Express. El usuario solo tiene que agregar sus tarjetas a Passbook (Apple, 2015). 6.8.4 Android Pay. Es la nueva plataforma de pagos móviles de Google. Utiliza el chip NFC que tiene el teléfono móvil como hacía Google Wallet. Los usuarios de esta primera solución de Google podrán portar su información de pagos al nuevo sistema porque esencialmente es la misma API. Android Pay también permitirá transacciones de pagos y almacenar tarjetas de fidelización compatibles. Su funcionamiento depende de que existan máquinas que acepten pagos NFC.Todo lo que tiene que hacer el usuario es acercar el teléfono a la máquina para pagar, y en su pantalla aparecerá la confirmación de si la transacción se ha completado con éxito. Cuando el sistema se configure por primera vez habrá que habilitar una forma de bloqueo del dispositivo con una contraseña, un patrón de desbloqueo o huella dactilar, si el teléfono dispone del hardware necesario.

Figura 63. Android Pay

Fuente (Google Android, 2015)

Page 161: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

161

6.9 APPS DE GOOGLE PLAY NFC

6.9.1 NFC TagInfo. La aplicación móvil para android NFC TagInfo permite leer la información de metadatos y datos de contacto RFID y transponders NFC. NFC TagInfo demuestra las capacidades de lectura de etiquetas de la API de Android. Los desarrolladores pueden utilizar esta herramienta para inspeccionar y verificar la información de sus etiquetas NFC y RFID. (Google Play, 2015) Características:

• Lee información detallas de etiquetas NFC y tarjetas inteligentes • Permite comprobar la información grabada en las etiquetas • Lee y visualiza datos del mensaje NDEF • Lee y visualiza metadatso de la etiqueta • Leer y visualiza datos en hexadecimal, ASCII y UTF-8 codificación de texto • Lee y visualizar las condiciones de acceso • Leer y visualizar pasaporte electrónico (DVLM electrónicos) • Guardar información de la etiqueta a los archivos Compatibles registros

NDEF: o Text Record o URI Record o Smartposter Record o Control genérico Record o Firma del Registro o NFC Geo Record

• Etiquetas compatibles para la lectura de las condiciones de acceso de datos:

o NFC Forum Type 1 o NFC Forum Type 2 / MIFARE Ultralight (EV1) / NTAG o NFC Forum Type 3 / FeliCa Lite o my-d(TM) NFC / my-d(TM) move o MIFARE Classic o MIFARE DESFire o MIFARE DESFire EV1 o FeliCa o ISO/IEC 15693 (only limited support) o NFC Barcode

Page 162: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

162

Figura 64. NFC TagInfo

Fuente (Google Play, 2015)

6.9.2 NFC TagWriter by NXP. La aplicación de NFC TAGwriter desarrollada por NXP, cuenta con funciones para almacenar contactos, favoritos, datos de ubicación geográfica, activar y enviar datos por Bluetooth, correo, mensajes de texto y muchos más opciones para trabajar con las etiquetas NFC, es útil para ser aplicada en elementos como carteles, tarjetas de visita, relojes y muchos más habilitados con NFC. Una vez que los datos se han almacenado la aplicación permite también la lectura y la visualización de los datos programados incluyendo opciones para iniciar aplicaciones automáticamente en función de los datos contenidos (Google Play, 2015). Características

• Nuevo rediseño • Interfaz de usuario intuitiva • Emparejamiento WiFi para teléfonos que soporten esta característica • Emparejamiento Bluetooth para todas las versiones de Android NFC • Lanzamiento de Aplicaciones con la opción de transferencia de datos • Crear fácilmente un tag de contenido de sus contactos y favoritos • Convertir los códigos QR en los conjuntos de datos NFC • Ver el contenido existente de una etiqueta • Exportación, importación y compartir conjuntos de datos NFC • Administre su historial de etiquetas vistas y escritas • Función lanzar para ejecutar el contenido de las etiquetas NFC con un simple

toque • Copia de seguridad de los contenidos de una etiqueta antes de escribirla

Page 163: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

163

• Borrar el contenido de una etiqueta • Protección contra escritura una etiqueta • Escribir varias etiquetas en secuencia

Los siguientes conjuntos de datos NFC son compatibles para iniciar aplicaciones:

• Contacto (vCard) para importar datos en la libreta de direcciones (Contactos) • Marcadores (URL) para abrir una dirección web determinada • Texto sin formato para mostrar mensajes sencillos directamente en la

pantalla • SMS (SMS URI) para crear un nuevo mensaje • Mail (Correo URI) para crear un nuevo mensaje de correo • Número de teléfono (TEL URI) para iniciar una llamada • Bluetooth para emparejar y conectar dispositivos • Wi-Fi para conectarse a redes Wi-Fi • Ubicación de Geo para abrir un archivo de destino

La aplicación es totalmente compatible con el NFC Forum TagTipo 1, Tag Tipo 2 Tag Tipo 3, Tag Tipo 4. Esto incluye toda una serie de NXP y de terceros con NFC IC productos sin contacto MIFARE Ultralight como, MIFARE Classic, MIFARE DESFire, NTAG 21x, NTAG I2C, ICODE SLI y muchos otros (Google Play, 2015).

Figura 65. NFC TagWriter

Fuente (Google Play, 2015).

6.9.3 WiFiTap WiFi NFC. Esta aplicación combina Wi-Fi y NFC, permitiendo a

Page 164: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

164

los amigos y familiares conectarse a la misma red inalámbrica fácilmente. No es necesario escribir el SSID y contraseña de la Red Wi-Fi, simplemente los interesados en conectarse deben agitar su Smartphone a través de la etiqueta NFC y conectarse (Google Play, 2015). 6.9.4 NFC Classic Tag Reader Writer. Esta aplicación permite de una manera muy sencilla leer y escribir información de etiquetas NFC y establecer conexiones punto a punto con sus amigos. (Google Play, 2015).

6.9.5 Trigger. Esta aplicación permite automatizar todas las acciones posibles en los dispositivos con Android. Su uso es bastante simple, usamos un activador como un tag NFC, para establecer conexiones a redes, localizaciones o eventos de calendario y establecer condicionantes entre estos para establecer tareas y activar alguno deseado (Google Play, 2015). Tiene varios usos los más comunes son:

• En el automóvil para establecer una conexión Bluetooth para abrir el GPS y abrir aplicaciones de música.

• En la mesa de noche podemos programar una etiqueta NFC para que la alarma Vibre y se apague la pantalla y ajuste la alarma.

• En el hogar permite configurar la desactivación de datos móviles cuando el teléfono detecta la red Wi-Fi.

• Abrir o cerrar aplicaciones • Cambiar el volumen o los tonos de notificación. • Enviar mensajes a Redes Sociales y SMS • Cambiar el volumen o los tonos de notificación. • Cambiar los ajustes de brillo, tiempo de espera, giro automático o luces de

notificación de la pantalla • Abrir una URL • Dictar texto • Ir a una dirección

La aplicación tiene una versión pro con mayores funcionalidades. Esta aplicación es compatible con etiquetas NFC Forum tipo 1, tipo 2, tipo 3 y tipo 4 y con etiquetas NFC activadas por terceros como MIFARE Classic, DESFire, Ultralight y Ultralight C (Google Play, 2015).

Page 165: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

165

Figura 66. NFC Trigger

Fuente (Google Play, 2015)

6.9.6 NFC Actions. Esta aplicación permite escribir varias acciones en tags, permitiendo enviar correos, ira sitios web y permite realizar varios ajustes y acciones como:

• Enciende y apagar redes Wi-Fi, activar el Bluetooth, pasar a Modo Avión. • Ejecuta aplicaciones • Marcar números telefónicos. • En Foursquare realiza un Check-in en un lugar determinado. • Enciende y apagar la luz del dispositivo. • Escribir un mail al leer un tag NFC. • Maps: Ejecuta Google Maps a través de NFC. • Ejecuta Google Maps Navigation. • Envia Sms • Street View: Abre Google Street View. • Escribir texto plano en un tag NFC. • Url: Abrir un sitio web con solo leer un tag NFC. • Wi-Fi: Permite conectar a una red Wi-Fi a través de NFC. • Youtube: Permite ver un video al leer un tag NFC. • Utilidades para resetear y clonar Tags (Google Play, 2013).

Page 166: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

166

Figura 67. NFC Actions

Fuente (Google Play, 2013)

6.9.7 NFC TagInfo by NXP. Esta aplicación es proporcionada por NXP Semiconductors, utiliza la tecnología NFC siendo estos co-inventores de NFC, la cual ayuda a explorar las características de los TagsNFC y ayuda al usuario a obtener información almacena en los tags (Google Play, 2014). Características Principales:

• Identifica aplicaciones contenidas en etiquetas y tarjetas • Identifica fabricante y tipos • Extraer y analizar conjuntos de datos NFC (mensajes NDEF) • Soportes para todo tipo de registro de NFC Forum • Mostrar detalles de las tarjetas sin contacto y etiquetas • Permite acceder al contenidos de tarjetas de transporte y pago públicos

o Soporta aplicaciones como: o CLIPPER, todo en una sola tarjeta de tránsito, área de la bahía de San

Francisco, CA, EE.UU. o Kiev Metro, Kiev, Ucrania o ORCA, una tarjeta regional para toda la región de Puget Sound, WA,

EE.UU. o OV-chipkaart, chipkaart vervoer Openbaar (transporte público chip de

la tarjeta), Países Bajos

Page 167: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

167

o Oyster, billetes electrónicos, área de Greater London, Reino Unido (algunas tarjetas no son compatibles con el acceso público)

o Myki, Victoria, Australia o Metro de Moscú, Moscú, Rusia o Nol Silver y Gold Card, Dubai, Emiratos Árabes Unidos o Pulpo, Hong Kong, China o Suica, Super Urban Tarjeta Inteligente, Japón o T: kort, Kolumbuskort, NSB-kort, Ruter Reisekortet, Noruega.

(Google Play, 2014).

Figura 68. NFC TagInfo NXP

Fuente (Google Play, 2014)

6.9.8 NFC Developer. Esta aplicación permite crear y escribir en tags NFC con el dispositivo móvil y el PC, soporta todo tipo de registros NDEF y sus tipos de datos, recordemos NDEF es el formato nativo de Android soportando Registros URI, texto, Mime entre muchos más (Google Play, 2014). Para iniciar a trabajar con esta aplicación es necesario obtener el plugin de Eclipse en http://code.google.com/p/nfc-Eclipse-plugin/, Una vez se crea el mensaje NFC, el editor automáticamente genera un código QR, que se escanea para esta aplicación, Después, simplemente tocar una etiqueta NFC para escribir el mensaje (Google Play, 2014).

Page 168: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

168

Características:

• Detección automática y vista previa de diferentes tipos de datos • Cargar / guardar en un archivo, archivo adjunto de correo electrónico • Escritura de Etiquetas como de sólo lectura • Lectura de etiquetas • Vistas previas de impresión de XML y JSON

Ejemplos en https://code.google.com/p/ndef-tools-for-android/ / para ejemplos de código y aplicaciones de demostración completos (Google Play, 2014).

Figura 69. NFC Developer

Fuente (Google Play, 2014)

6.9.9 NFC Tools. Esta aplicación permite leer y escribir las etiquetas NFC y RFID compatibles con el Smartphone. Solo basta con acercar una etiqueta y la aplicación mostrará información disponible según el tag leído por la App:

• Fabricante de la etiqueta (NXP, Nokia, IBM) • Tipo de etiqueta (MIFARE Ultralight, Ultralight C, DESFire, NTAG203) • Norma de la etiqueta (NFC Forum Type 2) • Tecnología disponible (Clases Android) • Número de serie • Tamaño de la etiqueta y de los datos presentes

Page 169: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

169

• Si la escritura es posible y si la etiqueta permite la configuración en sólo lectura

• Todos los registros presentes en la etiqueta al formato NDEF • También puede escribir diferentes tipos de datos en sus etiquetas NFC como

guardar un texto, enlaces, enlace hacia una aplicación, email, contacto, SMS, ubicaciones en GPS, direcciones, agregar una conexión Bluetooth, guardar datos personalizados y otras opciones.

• Otras características están disponibles, tales como la copia o la supresión de una etiqueta NFC (Google Play, 2015).

Figura 70. NFC Tools

Fuente (Google Play, 2015)

6.9.10 Otras Aplicaciones NFC en Google Play. En el Sitio web de Google Play (2015) nos permite ver el auge y la masificación de esta tecnología está permitiendo que cada día aumente el desarrollo de aplicaciones móviles para NFC, hemos visto como algunas ya existentes en sus versiones actualizadas cambian de nombre y son agregadas nuevas funcionalidades, con versiones Pro para mejores acciones. En el sitio web de Google Play al realizar la búsqueda de aplicaciones para NFC encontramos 170 aplicaciones siendo algunas de ellas: Tabla 11. Tabla de Aplicaciones NFC Google Play

• Conexión fácil NFC • NFC Tools • NFC Smart Tags • NFC TagInfo by NXP • Trigger • Egomotion

• Samsung GALAXY NFC Tagwriter

• Dashclock NFC Extension • NFC File Transfer • Clonificador de etiquetas NFC • NFC TagInfo

Page 170: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

170

• NFC Widget • NFC Tools - Pro Edition • NFC Daily • Banking card reader NFC (EMV) • NFC TagWriter by NXP • NFC Sniffer • NFC Enabled? • NFC ReTag FREE • NFC card UID reader • NFC Tasks • Share Tether NFC • Do I Have NFC? • PassWallet - Passbook + NFC • NFC Check by Tapkey • PlayMemories Mobile • NFC NearVox • NFC Passport Reader (Old) • acer NFC • eCL0WN: an NFC passport tool • SuperBeam | WiFi Direct Share • saldoBip NFC • Yun NFC Launcher • NFC Profile • NFC ReTag Expert Plugin • Kapaver NFC • NFC Transfer Beta • TK-FNS040BK専用キーボードソフトウェア

• Badge NFC • NFC Launcher • CardShake(business card, NFC) • Business Card Holder with NFC • NFC Ring Control • Mifare Doctor [NFC] (Free) • NFC Ring Unlock • EL LIBRO DE ALGO • WifiTap WiFi NFC • Microsoft Tag, QR & NFC

Reader • NFC Smart Card Info • Near Field NFC Tester • SmartPassLock NFC

• NFC Mifare Classic Scanner • T-money Balance Check (NFC) • NFC Actions • NFC Developer • NFC Writer by Tagstand • NFC TagReader • NFC Basic • NFC Porter • Wi-Fi GO! & NFC Remote • Drivers Reader NFC • NFC Swipe Settings • NFC On • NFC - Tasker Launcher • NFC Spy • NFC Reader • AnyTAG NFC Launcher • ABA NFC • OAKLEY NFC • Dangerous NFC (BETA) • CommBank • Crypto NFC — NFC Secret notes • NFC-Bots • My NFC Tag Free • Near Field Ninja - NFC Game • NFC Tag Manager • NFC Business Card • NFC Connection • NFC Gears • Advanced NFC System • Badge NFC PRO Key • NFC Fidelity PRO • doorbl - your NFC doorbell • Timesheet NFC Add-On • Timesheet NFC Add-On • NFC for Hue free • NFC HUNTER • DG NFC Automation • SMSP NFC • NFC TagSee • PROGRAMADOR-NFC • NFC HUD • NFC Fidelity Free

Page 171: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

171

• NFC Tools Plugin : Reuse Tag • NFC ReTag PRO • MyLog: Libro de viajes + NFC • NFC Alarm Ultra • Easy NFC Writer • NFC App Lock • nfc enabled • Mifare Doctor [NFC] (Pro) • NFC for Hue • NFC Writer by YUNNFC • NFC VIET • NFC Task Manager • NFC Checkin • NFC Chameleon • • TAGTUM NFC • NFC ítems del Finder • NFC-e SEFAZ-AM Consulta • NFC-Shopping • PPTLagartoSpock NFC • NFC.safe - Beta • NFC Service for CHT BT Dongle • Cargo NFC • NFC VOICECADDY+ • NFC Demo • NFC Guard Tour - FREE • NFC Labeler • NFC@pp • RFID / NFC Logger Application • Altran NFC Task Launcher - Poc • NFC Remote • NFC Biergarten • NFC Product Selection • LogChart-NFC • NFC ELOCK 2 Basic • Instant NFC WiFi + Notify • NFC MORE • NFC AppTag • ACR 122 USB NFC Reader Utils • Bluetooth Pairing through NFC • NFC Alarm • NFC Umbrella

• MardomDuff inventario in tasca • NFC EXPRESS • PhoneWeaver NFC plugin • Recordatorio de Pastillas NFC • NFC Business Cards • inViu NFC-tracker • NFC Tag Launcher • NFC Contacts • NFC Demo App by SIC • Smart Poster NFC Reader • NFC Detail! • NFC Inventory tags Finder • NFC Profiles+ for SVC (tags) • NFC Medic • Smart Poster NFC Writer • NFC Profiles for SVC (tags) • NFC Writer TAGLife • NFC Tag maker & HEXEDIT • NFC Flower • NFC Fighter • NFC Profile Manager • hue Switch NFC • Free NFC Writer • NFC Concentration • NFC Manager • NFC based Weight Recorder • Mobile Phone setting (NFC) • NFC Connect • NFC Tag Creator

• 크랩슨 NFC

• NFC MORE • Secure NFC • NFC TagIn' Reader • Ponto NFC • NFC Android Tag

• 국내 최초 NFC 키즈스쿨

• NFC Camera Puzzle • HAYABUSA NFC

BusinessCard_T • NFC Status Widget • Perfect Profile (Widgets, NFC)

Page 172: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

172

• ST NFC Based Pedometer • NFC OMNICard Reader • NFC Solutions • Bluetooth NFCタグライタ • CI TapKad NFC Edition • NFC FakeCall • TagCenter NFC Offers • Cabasse NFC • NeroX NFC Encoder • NFC Tracking PRO • NFC Treasure Hunt • NFC Ecosystem Game • NFC RFID Project Configurator • NFC Camera • NFC BATTLER • NFC Bulk Writer • NFC - example • Log-ic NFC Mobile App • NFC Despertador • NFC Tag ID Reader • NFC Voice • NFC Time Control • NFC sharing Windows-Android • NFC Formatter • My NFC Tag • NFC Time Tracking • NFC Time Tracking • External NFC Reader Service • NFC Wallet • Opaska Medyczna NFC • NFC Monkey • NFC Field Service • NFC Schedule Matching • NFC vCard Editor • NFC Tracking Lite • NFC Alarm Clock • NFC iShop

• NFC Wifi • NFC Widget • NFC APP BY RFID4U • Lipisha NFC • NFC Umbrella • NFC Passport Reader • NFC Passport Reader • CliqTags NFC Writer • 9-FMC12Pro NFC • NFC ToDo • NFC NDEF Writer • Safe Keeper Card DEMO NFC • NFC Mobile Key Free • testo 184 NFC • 스 마 트 일 보 NFC • NFC Driving Diary • NFC Reader • Smart Poster NFC Reader • NFC Guard Tour - FREE • NFC coupons • QR NFC NETKEY • Secret Note (NFC ver.) • Samsung NFC Connection • Asistencia NFC Tiempo checkin • NFC TagIn' • LinKad NFC Edition • PPTLagartoSpock NFC • NFC Launcher • NFC Rolodex • TimeTap NFC for Harvest • NFC Storage Tag

• NFC 진품명품

• dS NFC • NFC TaskTags • NFC ELOCK 2 Admin

Fuente (Google Play, 2015)

Page 173: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

173

6.10 TELÉFONOS CON TECNOLOGÍA NFC. El sitio Web NFC World constantemente actualizá el listado de teléfonos con tecnología NFC disponible, a continuación presentamos la lista publicada en su portal web:

Tabla 12. Lista de Teléfonos con NFC

• Acer Cloud Mobile • Acer E320 Liquid Express • Acer Liquid Glow • Acer Liquid S2 • Adlink IMX-2000 • Alcatel One Touch 922 • Alcatel One Touch 996 • Alcatel Onetouch Idol 2 • Alcatel Onetouch Idol 2 Mini S • Alcatel Onetouch Idol 2S • Alcatel Onetouch Pop Fit • Amazon Fire Phone • Apple iPhone 6 and iPhone 6 Pl

us • Apple iPhone 6s and iPhone 6s

Plus • Apple iPhone 7 and iPhone 7 Pl

us • Apple iPhone SE • Apple Watch • Asmaitha Sruta 7″ Tablet • Asus MeMO Pad 8 (ME581CL) • Asus Padfone 2 • Asus Padfone Infinity • Asus Vivo Tab • Asus Vivo Tab RT • Asus VivoTab Smart • Asus ZenFone 2 • BBK Vivo Xplay • Benq T80 • BlackBerry Bold 9790 • BlackBerry Bold 9900/9930 • BlackBerry Classic • BlackBerry Curve 9350/9360/93

70

• BQ Aquaris M5.5 • BWC ToughSlate 7″ • C-Mii 1 • C-Mii 3 • Casio DT-X8 • Casio G’zOne CA-201L • Casio IT-800 • Cat S60 • Cetrix CB250 • Cetrix CD661 • Cetrix CT973G • Cetrix CV300 • Dell Venue 11 Pro • DLI 9000 • Faea F1 • Faea F2 • Faea F2S • Famoco FX-100 • Firefox OS Flame • Fujitsu Arrows A • Fujitsu Arrows µ F-07D • Fujitsu Arrows Kiss • Fujitsu Arrows Tab • Fujitsu Arrows V • G.To N800 • Gentag GT-601v2 • Gionee Elife E7 • Google Nexus 10 • Google Nexus 5 • Google Nexus 5X • Google Nexus 6 • Google Nexus 6P

Page 174: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

174

• BlackBerry Curve 9380 • BlackBerry Dtek60 • BlackBerry Passport • BlackBerry PlayBook • BlackBerry Priv • BlackBerry Q10 • BlackBerry Q5 • BlackBerry Z10 • BlackBerry Z30 • Blu Life Pure XL • HP Elitepad 900 • HTC Desire 500 • HTC Desire 510 • HTC Desire 610 • HTC Desire 620 • HTC Desire 816 • HTC Desire C • HTC Desire Eye • HTC Droid DNA/HTC J Butterfly • HTC Droid Incredible 4G LTE • HTC Evo 4G LTE • HTC First • HTC Incredible • HTC Mini • HTC One • HTC One M8 • HTC One M9 • HTC One Max • HTC One SV • HTC One VX • HTC One X/XL • HTC Ruby/Amaze 4G • HTC Windows Phone 8X • Huawei Ascend G300 • Huawei Ascend G6 4G • Huawei Ascend G600 • Huawei Ascend G7 • Huawei Ascend Mate 7 • Huawei Ascend P2 • Huawei Ascend P7

• Google Nexus 7 (2013) • Google Nexus 9 • Google Pixel • Google Pixel XL • Google Project Tango

tablet • Hike X1 • Hike X1D • Hisense Sero 7 Pro • HP Elitebook Revolve • Kuoziro FT701W NFC

Tablet • Kyocera Hydro Elite • Kyocera Hydro Icon • Kyocera Hydro Vibe • Kyocera Torque • Lenovo K800 • Lenovo ThinkPad Tablet 2 • LG Fx0 • LG G Flex • LG G Flex 2 • LG G Pro 2 • LG G2 • LG G3 • LG G3 Beat/LG G3 S • LG G4 • LG G5 • LG Intuition • LG KU380-NFC • LG L50 • LG L70 • LG L90 • LG Mach • LG Optimus 3D Max • LG Optimus 4X HD • LG Optimus Elite • LG Optimus G • LG Optimus L5 • LG Optimus L7

Page 175: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

175

• Huawei Ascend Y201 • Huawei G620S • Huawei Honor 6 • Huawei Mate 8 • Huawei Mate 9 • Huawei P8 • Huawei Sonic/Turkcell T20 • Huawei TalkBand B1 • iBerry Auxus Nuclea N2 • iOcean X8 • Jolla by Jolla • Megafon Mint • Meizu MX3 • Meizu MX4 Pro • Microsoft Lumia 640 • Microsoft Lumia 650 • Microsoft Lumia 950 • Microsoft Lumia 950 XL • Motorola Droid Maxx • Motorola Droid Mini • Motorola Droid Razr • Motorola Droid Razr HD • Motorola Droid Razr M • Motorola Droid Razr M 4G LTE • Motorola Droid Razr Maxx HD • Motorola Droid Turbo • Motorola Droid Turbo 2/Moto X

Force • Motorola Droid Ultra • Motorola MC75A HF • Motorola Moto X • Motorola Photon Q 4G LTE • Motorola Razr D3 • Motorola Razr i/MT788 • MTS 975 • Nextbit Robin • Nokia 603 • Nokia 700 • Nokia 701

• LG Optimus LTE • LG Optimus LTE Tag • LG Optimus Net • LG Optimus Vu • LG T530 Ego • LG V10 • LG V20 • LG Viper • LG Volt • Lumigon T2 • Lumigon T2 HD • Lumigon T3 • M3 Android NFC Communi

cator • Samsung Galaxy Express • Samsung Galaxy Express

2 • Samsung Galaxy Grand 2

LTE • Samsung Galaxy Grand

Prime • Samsung Galaxy K Zoom • Samsung Galaxy Light • Samsung Galaxy Mega • Samsung Galaxy Mini 2 • Samsung Galaxy Note • Samsung Galaxy Note 3 • Samsung Galaxy Note 4 • Samsung Galaxy Note II • Samsung Galaxy Premier • Samsung Galaxy Round • Samsung Galaxy Rugby

LTE/Pro • Samsung Galaxy S

Advance • Samsung Galaxy S Blaze

4G • Samsung Galaxy S II • Samsung Galaxy S II Plus • Samsung Galaxy S III

Page 176: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

176

• Nokia 801T • Nokia 808 PureView • Nokia C7/Astound • Nokia Lumia 1020 • Nokia Lumia 1520 • Nokia Lumia 2520 • Nokia Lumia 610 NFC • Nokia Lumia 620 • Nokia Lumia 720 • Nokia Lumia 730/735 • Nokia Lumia 820 • Nokia Lumia 830 • Nokia Lumia 920 • Nokia Lumia 925 • Nokia Lumia 928 • Nokia Lumia 930 • Nokia Lumia Icon • Nokia N9 • Nokia Oro • OnePlus 3 • OnePlus One • Oppo Find 5 • Oppo Find 7 • Oppo N1 • Orange Infinity 996 • Orange San Diego • OrientPhone P6 Plus • Panasonic BizPad • Panasonic Eluga • Panasonic Eluga Power • Pantech Discover • Pantech Sky Vega LTE • Pantech Sky Vega Racer • Philips Xenium W336 • Porsche Design P’9981 • Porsche Design P’9982 • Prada phone by LG 3.0 • Runbo X6 • Samsung Ativ Odyssey

• Samsung Galaxy S III Mini • Samsung Galaxy S4 • Samsung Galaxy S4

Active • Samsung Galaxy S4 Mini • Samsung Galaxy S4 Zoom • Samsung Galaxy S5 • Samsung Galaxy S5

Active/Sport • Samsung Galaxy S5 Mini • Samsung Galaxy S6 • Samsung Galaxy S6

Active • Samsung Galaxy S6 Edge • Samsung Galaxy S7 • Samsung Galaxy S7 Edge • Samsung Galaxy

Stratosphere II • Samsung Galaxy Victory

4G LTE • Samsung Galaxy Young • Samsung S5230 NFC • Samsung S5260 NFC • Samsung SHW-A170K • Samsung Wave 578 • Samsung Wave M • Samsung Wave Y • Samsung Windows RT Ativ

Tablet • Samsung WP8 Ativ S • Sharp Aquos Phone Serie • Sharp Aquos Phone Zeta • Sharp RW-T107 NFC

Tablet • Sharp RW-T110 NFC

Tablet • Smartisan T2 • Sonim XP1301 Core NFC • Sonim XPand NFC

Page 177: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

177

• Samsung Ativ S Neo • Samsung Ativ SE • Samsung Galaxy A3 • Samsung Galaxy A3 (2016) • Samsung Galaxy A5 (2016) • Samsung Galaxy A7 (2016) • Samsung Galaxy Ace 2 • Samsung Galaxy Ace 4 LTE • Samsung Galaxy Ace Style • Samsung Galaxy Alpha • Samsung Galaxy Avant • Samsung Galaxy

Axiom/Samsung Galaxy Admire 2

• Samsung Galaxy Core 2 • Samsung Galaxy Core Advance • Samsung Galaxy Core LTE • Samsung Galaxy Exhilarate • TazTag TazPad • TazTag TPH-One • The Toughphone Defender • THL 5000 • Toughshield R-500 • Toughshield T700 • Turkcell MaxiPRO5 • Turkcell T11/ZTE Racer II • Turkcell T40 • Umi Cross • Umi X2S • Vertu Constellation • Vertu Ti • Vodafone Smart 4 Power • Vodafone Smart 4 Turbo • Vodafone Smart III • Xiaomi Mi 2A • Xiaomi Mi 5 and Mi 5 Pro • Xiaomi Mi Mix • Xiaomi Mi Note 2 • Xiaomi Mi3

• Sony SWR10 SmartBand • Sony Vaio Fit • Sony Xperia Acro S • Sony Xperia AX • Sony Xperia C5 Ultra • Sony Xperia E3 Dual • Sony Xperia Ion • Sony Xperia L • Sony Xperia M • Sony Xperia M2 • Sony Xperia M5 • Sony Xperia P • Sony Xperia S • Sony Xperia Sola • Sony Xperia SP • Sony Xperia T • Sony Xperia T2 Ultra • Sony Xperia Tablet Z • Sony Xperia V • Sony Xperia VL • Sony Xperia Z • Sony Xperia Z Ultra • Sony Xperia Z1 • Sony Xperia Z1 Compact • Sony Xperia Z2 • Sony Xperia Z2 Tablet • Sony Xperia Z3 • Sony Xperia Z3 Compact • Sony Xperia Z5 • Sony Xperia ZL • Sony Xperia ZR

Page 178: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

178

• Xolo X900 • Yota Devices YotaPhone (2014) • Yulong Coolpad 8870 NFC • Zopo ZP998 • ZTE Axon • ZTE Blade II • ZTE GoTa GH800 • ZTE Grand X IN • ZTE Kis • ZTE Nubia Z5 • ZTE Orbit • ZTE PF200 • ZTE R233

Fuente (NFC world, 2016)

Page 179: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

179

7. DISEÑO DEL SISTEMA

En este capítulo se describe el desarrollo y el prototipo en términos técnicos y de arquitectura, enmarcados en algunos estándares de Ingeniería de Software. Es de aclarar que para la implementación del prototipo no se tuvo en cuenta todos los lineamientos, debido a que el sistema no lo ameritaba, ni tampoco era el fin de este proyecto. Debido a que se realizó un gran esfuerzo en investigar una tecnología emergente, el trabajo se esforzó en entender aspectos técnicos y teóricos. Mediante la ayuda de textos adquiridos personalmente de NFC y documentación web, se logró establecer un proyecto que le sirva a la comunidad en general para la investigación y desarrollo de nuevas soluciones tecnológicas.

7.1 REQUISITOS FUNCIONALES

Los siguientes requisitos son los definidos para la el desarrollo del prototipo propuesto en este proyecto.

1. La aplicación NFCTransitoMovil debe permitir leer los tags NFC y mostrar el ID del tag leído.

2. NFCTransitoMovil debe permitir enviar vía 4G los datos leídos en el Tag NFC, que contienen la información del UID del vehículo.

3. En el caso de que se envié la información de IUD hacia webservicetransito y no se encuentre ese IUD Registrado en el sistema, debe aparecer un evento que indique que el IUD no está en el Sistema de Información.

4. La información que envía la aplicación TransitoWeb debe mostrarse de una manera amigable en el dispositivo móvil.

5. La aplicación debe poder auto-ejecutarse apenas se acerque una etiqueta NFC.

6. La base de datos debe almacenar los datos de : a. Tag Id b. Clase de vehículo (Char) c. Tipo carrocería(Char) d. Combustible(Char) e. Capacidad(Char) f. Numero Motor(Char) g. Cilindrada(Char) h. Color(Char) i. Placa (Char)

Page 180: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

180

j. Marca (Char) k. Línea(Char) l. Modelo(Char) m. Cedula propietario (Char)

7. La aplicación TransitoWeb, debe estar en la capacidad de recibir los datos

provenientes del dispositivo móvil desde la aplicación. 8. La aplicación WebTransito debe permitir editar, crear y eliminar campos de la

BD de datos del tránsito. 9. La aplicación NFCMovil debe desarrollarse para Android utilizando el API de

NFC

7.2. ARQUITECTURA DEL SISTEMA NFC VEHÍCULOS

Figura 71. Arquitectura del Sistema

Fuente: Elaboración Propia El sistema se desarrolló basado en modelos de arquitectura de software cliente servidor, gracias a las ventajas que este modelo ofrece, se puede adecuar a las necesidades de este sistema. Este modelo permite manejar las funciones de cada uno de los componentes de una forma más clara. El sistema, en este caso trabaja con un servidor Web que se

Page 181: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

181

encarga de administrar, gestionar y almacenar los datos del sistema de información de vehículos. El sistema móvil consulta los datos al servidor tomando como identificador el chip NFC leído desde la aplicación móvil.

7.3 ARQUITECTURA DE LECTURA NFC

Figura 72. Diagrama de lectura NFC Móvil

Fuente Elaboración Propia

7.3.1 Niveles.

• Dispositivo Móvil: Teléfono móvil NFC con el cual se leen o codificaron las etiquetas NFC.

• Etiquetas: Se utilizaron las etiquetas MIFARE 1K que cumplían los estándares de codificación del NFC Forum.

7.3.2 Componentes.

• LecturaNFCMovil: Aplicación móvil fue desarrollada en Eclipse + ADT

Plugin y AndroidSDK.

Page 182: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

182

• API NFC Android Developers: La cual permite la comunicación con el hardware NFC del teléfono móvil. Su funcionalidad es estrictamente de lectura de etiquetas NFC con los datos del vehículo.

7.3.3 Protocolos NFC: La lectura se lleva cabo a través de los mecanismos de la tecnología NFC para la comunicación de Targets. A nivel Físico, la lectura (al igual que la escritura), se lleva a cabo a través de lo que se llama acoplamiento inductivo.

7.4 ARQUITECTURA DE LA APLICACIÓN NFC VEHICULAR

Figura 73. Arquitectura NFC Vehicular

Fuente Elaboración Propia

7.4.1 NIVELES

• Servidor: El computador servidor aloja tanto el servidor de aplicación Asp.Net, como el servidor de base de datos en MySQL 5.0.

• Dispositivo Móvil: Teléfono móvil NFC con el cual se leen las etiquetas NFC para vehículos.

• Etiquetas: Se utilizaron las etiquetas MIFARE 1K que cumplían los estándares de codificación del NFC Forum.

Page 183: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

183

7.4.2 COMPONENTES

• AppNFCReader: Aplicación móvil fue desarrollada en Android Studio + ADT Plugin y Android SDK.

• API NFC Android Developers, que permite la comunicación con el hardware NFC del teléfono móvil. Su funcionalidad es leer la etiqueta NFC que está en el vehículo y solicitar la validación al servidor de remoto del de transito que tiene la información de los vehículos, para que finalmente muestre la información en el móvil.

• Aplicación WebTransito: Aplicación desarrollada en .Net. Esta aplicación gestiona la información que es enviada desde los equipos móviles y es la encargada de regresar la información al móvil.

• Base de datos: alojada en el sistema de gestión de base de datos MySQL, almacena todos los datos de los diferentes vehículos.

7.4.3 PROTOCOLOS

• NFC: La lectura se lleva cabo a través de los mecanismos de la tecnología NFC para la comunicación de Targets. A nivel Físico, la lectura (al igual que la escritura), se lleva a cabo a través de lo que se llama acoplamiento inductivo.

• HTTP: Es el protocolo empleado para la comunicación entre el dispositivo

móvil y la aplicación Web.

Page 184: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

184

7.5 PROCESO DE INGENIERÍA DE SOFTWARE

7.5.1 DIAGRAMA DE CLASES

Figura 74. Diagrama de clases

Fuente Elaboración Propia

Page 185: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

185

7.5.2 DIAGRAMA DE SECUENCIA SISTEMA MÓVIL

Figura 75. Diagrama de Secuencia

Fuente Elaboración Propia

Page 186: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

186

7.5.3 DIAGRAMA DE ACTIVIDADES SISTEMA MÓVIL

Figura 76. Diagrama de Actividades

Fuente Elaboración Propia

Page 187: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

187

7.5.4 DIAGRAMA COLABORACIÓN

Figura 77. Diagrama Colaboración

Fuente Elaboración Propia

Page 188: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

188

8. TECNOLOGÍAS DE SOFTWARE APLICADAS

Una de las características principales del proyecto fue la diversidad de tecnologías empleadas para el desarrollo del prototipo. A continuación se enumeran y describen las tecnologías, lenguajes de programación y API’s que fueron empleadas en este proyecto de grado:

8.1 BOOTSTRAP

Se utilizó este framework para el diseño de la aplicación web, aprovechado las características disponibles para la construcción de elementos como formularios, botones, tipografías, menús y otros elementos haciendo que las aplicaciones sean adaptables a dispositivos móviles con el uso de Css y Html y JavaScript.

8.2 JAVA

Este lenguaje se utilizó para desarrollar la aplicación sobre Android, ya que este lenguaje es el lenguaje nativo del Sistema Operativo Android y Junto con la API de NFC de Android permite acceder a una interfaz de programación que accede a información de los contaccteles NFC y teléfonos móviles con esta tecnología.

8.3 MySQL

Se eligió este Sistema de Gestión de base de datos para este proyecto por ser una plataforma de software libre bajo la GNU, lo que sirve para nuestras necesidades académicas y por las características técnicas de MySql como soportar multihilo, grandes cantidades de datos, APIs para los diferentes lenguajes, portabilidad, índices por tabla, gestión de usuarios, fácil instalación, configuración y rapidez.

Page 189: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

189

8.4 ASP.NET

Este framework permite desarrollar aplicaciones web usando lenguajes como C#. Es un producto creado por Microsoft, cuanta con una gran comunidad y usuarios en todo el mundo que lo usan para desarrollar aplicaciones web y servicios en XML. Como se desarrolló una aplicación Web que interactúa con un servicio Web, utilizamos este lenguaje debido a la experiencia y la robustez de su framework. El proyecto utilizo un servidor de Windows donde se instaló un servicio Web de Asp 2.0.

8.5 ANDROID STUDIO Y ECLIPSE

Se usaron estos dos IDE´s de Android para el desarrollo de la aplicación móvil. Android Studio es el IDE oficial para el desarrollo de aplicaciones para Android, basado en IntelliJ IDEA. Posee funciones avanzadas en sus editor de código inteligente capaz de realizar la como finalización avanzada código, refactorización, y análisis de código.

8.6 PHP

Se usó PHP por el conocimiento que se tiene sobre el lenguaje, y ser uno de los lenguajes más usados para desarrollo web, permite conectarse con la mayoría de los motores de base de datos, programar orientado a objetos, es libre, fácil de aprender y usar, cuenta con buena documentación, se tiene experiencia en el desarrollo con este lenguaje y es la mejor opción para el desarrollo de la aplicación móvil que permite administrar usuarios y tags NFC

Page 190: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

190

9. DESARROLLO DEL SISTEMA

La problemática que se desarrolló en este proyecto fue la de generar una propuesta para dar una solución a la identificación vehicular de la ciudad de Bogotá. De esa manera, el escenario que se quería emular era el de un policía de tránsito que detiene un vehículo particular o publico en un retén, mediante el teléfono móvil dotado de tecnología NFC el policía lee el Tag NFC del vehículo y la aplicación trae de un Sistema de Información Simulando al Sistema de Tránsito de Bogotá con la información asociada al vehículo. La información que le llega al oficial de tránsito le permite verificar si el vehículo está registrado en el Sistema de Tránsito, lo que permite saber y tener controlado Vehículos clonados en la ciudad de Bogotá. La aplicación Web se encuentra instalada en un Servidor IIS (Internet Information Server) Cuyo Sistema Operativo es Windows Server 2012, con procesador i7 y 4 Gigas en memoria RAM, el servidor cuenta con conectividad a internet permanente para tener siempre disponibilidad y accesibilidad del servicio Web. Las características del servidor son suficientes para que corra la aplicación Web requerida para el funcionamiento del prototipo.

9.1 REQUERIMIENTOS DE IMPLEMENTACIÓN CON NFC

Para el diseño e implementación del sistema se debe tener en cuenta la interacción conjunta de los siguientes componentes:

• Ubicación del Tag NFC Vehículo • Tipo de Tag NFC (“Estándar, forma”). • Software lectura NFC • Aplicación Web Administrador de datos.

Para el desarrollo se estableció una solución pasiva NFC en las que funciona en la frecuencia 13,56 HF.

Page 191: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

191

9.2 REQUERIMIENTOS DE SELECCIÓN DE ETIQUETA NFC ADECUADA

Para la identificación vehicular se requiere seleccionar y conocer la ubicación del tag NFC, para ello se realizaron las siguientes preguntas antes de seleccionar la etiqueta.

• ¿Qué se está etiquetando? R/ Vehículo, parabrisas del carro.

• ¿El elemento contiene líquido, o metal, o agua?

R/ El tag va a estar sobre una superficie de vidrio.

• ¿Existe un espacio de aire que permita la comunicación con el tag? R/ Si, la etiqueta NFC debido a que se comunica por acoplamiento inductivo las ondas de radio pasan el vidrio a una distancia muy corta.

• ¿A qué tipo de condiciones ambientales van a estar expuestos los tags?

¿Tendrán que soportar alta humedad, o temperaturas extremadamente altas o bajas? R/ Si, el tag va a estar por mucho tiempo expuesto al sol, lo que se estima que la vida útil de la etiqueta sea de 2 años a 3 años. Con el tiempo se puede condensar la etiqueta NFC y hay que cambiarla. La etiqueta debe de tener un una cobertura aislante que permita que la etiqueta sufra menos con la exposición de humedad y temperatura.

• ¿Cómo va a ser aplicado el tag? ¿Por quién?

R/ La etiqueta se debe colocar con un pegante epoxico que permite que se seque y adhiera rápidamente la etiqueta NFC al vidrio del vehículo. La secretaria de transito de Bogotá cuenta con un centro de etiquetado de RFID para etiquetas UHF, la idea es utilizar este mismo equipo para etiquetar los nuevos tags NFC.

• ¿Los tags serán reutilizados?

R/ Los tag NFC no se pueden reutilizar, si el tag físicamente se intenta extraer del vehículo dejara de funcionar y eso alerta al guarda de seguridad porque no deja leer la etiqueta, por tal razón debe ser reemplazado.

• ¿Cuándo y dónde el tag debe ser visto? R/ Los tags deben mirar preferentemente hacia el exterior cuando se colocan en el vidrio, con el distintivo de la secretaria de transito de Bogotá.

Page 192: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

192

• ¿Cuál será la velocidad del tag en el momento de la lectura? R/ La velocidad de lectura de la etiqueta NFC está dada por el estándar que se especifique. • ¿Hay requisitos específicos de orientación? R/ El campo de interrogación depende de la polarización de la antena, así como de la polarización de la antena del tag. En el sistema de comunicación de campo cercano no es importante la polarización de antenas, debido a que la comunicación no es por ondas de radiofrecuencia si no por acoplamiento inductivo. 9.2.1 Selección de Etiqueta NFC. Como resultado del análisis del sistema de etiquetado NFC y tipo de tags NFC para el sistema, se eligió como solución óptima la etiqueta desarrollada por la empresa UPM raflatac, que cumple con los requerimientos deseados para el sistema. El producto se llama RaceTrack NFC RFID que tiene un excelente rendimiento global y propiedades de seguridad. El producto conforme con la ISO 14443A ha sido mejorado con un circuito integrado Mifare UL C de NXP. El producto RaceTrack NFC ofrece una memoria programable de solo lectura de 1536 bits que se puede borrar electrónicamente (EEPROM), autentificación 3DES y protección contra clonación. Aunque en este proyecto no se investigo a fondo los problemas de seguridad, sabemos por las especificaciones tecnicas de esta etiqueta que el sistema de cifrado es altamente seguro. Esta empresa cuenta con tres diferentes pruebas de confiabilidad de etiquetas RFID enbebidas, ademas cuenta con pruebas de temperatura y humedad que estan estipuladas en el estandar IEC60068-2-67 y JESD22- A104-B. Figura 78. UPM Reaflatac

Fuente UPM Reaflatac

Page 193: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

193

Figura 79. UPM Reaflatac

Fuente: www.upmrfid.com

9.3 SISTEMA DE LECTURA NFC EN ANDROID

La aplicación fue desarrollada en Android 5.1 y anteriores, debido a esa distribución que tiene mayor cantidad equipos móviles instalados en el mercado.

9.4 IMPLEMENTACIÓN DEL PILOTO

Para la implementación del sistema fue necesario emular una situación real del entorno en donde seria implementado el sistema de lectura de vehículos NFC, para ello se utilizaron varias etiquetas NFC que fueron registradas en el sistema de información para cumplir con el propósito del proyecto. El trabajo consistió en el desarrollo de una aplicación móvil programada en Android, que permitía leer tag NFC desde el móvil, para el piloto se programaron varias etiquetas cada una asociada a un vehículo, la información del vehículo tiene asociada la información de placa y propietario. Cada Tag viene con un código de identificación único de fábrica por esta razón no fue necesario codificar las etiquetas.

Page 194: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

194

La aplicación web fue desarrollada en PHP, cumplía con la función de administrar y gestionar los datos del sistema de información de la base de datos que estaba en MySQL. La aplicación fue desarrollada en un equipo portátil con procesador i7, 4 Gb de memoria RAM y sistema operativo Windows 10. Esas características de hardware fueron suficientes para que el servicio web funcionara adecuadamente. La aplicación móvil fue implementada, instalada y probada sobre móviles Samsung Galaxy S3, S4, S5, Samsung Galaxy note 4 y Lg G4, suficientes para que la aplicación corriera adecuadamente.

9.5 EJECUCIÓN DEL PILOTO

La primera versión de la aplicación móvil solo contaba con la lectura de una etiqueta NFC, en esta etapa se probó la funcionalidad de lectura de celular. Posteriormente se implementó la función de conexión a un sistema de webservice, luego de varias pruebas y refinamientos se logró unificar las dos partes para que interactuaran juntas. A finales de septiembre de 2015 se hicieron algunas correcciones de bugs que tenía la aplicación, hasta que finamente a principios de Febrero la aplicación se integró completamente desde de algunas mejoras realizadas. Para la prueba se utilizaron etiquetas CONFIDEX PET TIKET, de estándar ISO 1443 A y B, muy similares a las de UPM. La prueba se ejecutó en el laboratorio del Grupo de Investigación Sintel de la Universidad Distrital, la etiqueta NFC se colocaba sobre un vidrio y una persona acercaba el teléfono hacia la etiqueta que automáticamente accionaba la aplicación de tránsito. Las pruebas se realizaron con teléfonos Samsung Galaxy S3, en el cual se instaló una etiqueta sobre un vidrio y se comprobó la lectura del tag sobre un vidrio.

Page 195: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

195

Figura 80. Pruebas de lectura de tag sobre vidrio

Fuente Elaboración Propia

Page 196: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

196

9.6 RESULTADOS DEL PILOTO

Con los resultados obtenidos satisfactoriamente se cumplen los objetivos propuestos en la tesis de grado. El sistema capturo los datos de una tarjeta NFC y la información fue transmitida y recibida vía Red Celular 4G La aplicación web móvil está en un estado muy básico, debido a que este no era el objetivo del proyecto, una implementación futura podría ser conectar el sistema móvil al sistema de información real del RUNT directamente mediante la utilización de servicios web del gobierno. Otra mejora que se podría desarrollar sería un sistema de respuesta de petición, queja y reclamo desde la aplicación móvil, para que la aplicación permita retroalimentar la información que el guarda está realizando en el punto. Una característica que se podría añadir seria visualizar la posición GPS de donde se están haciendo los registros de NFC, esto con el fin de tener un esquema geográfico de donde se están haciendo los registros.

9.7 APLICACIÓN WEB VEHÍCULOS

Para el desarrollo de la aplicación Web Vehículos a nivel de software se utilizaron las tecnologías descritas en el capítulo 8. En cuanto a hardware se usó un servidor en el cual se instaló y configuro todo para que la aplicación funcione correctamente. 9.7.1 Servidor. Para la implementación del sistema configuro un nombre dominio y un servidor con Php, IIS y Mysql y PhpMyAdmin. Características de Software del Servidor

• Mysql Versión del servidor: 5.6.26 • Php, 5.5.3 • IIS • PhpMyadmin

9.7.2 Dominio. Para acceder a la aplicación Web de vehículos se adquirió y configuro el dominio http://www.smartappsnfc.com/ donde se creó un Front para explicar lo que es la tecnología NFC y permitir al acceso fácil y desde cualquier lugar.

Page 197: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

197

9.7.3 Diseño. El diseño de la aplicación móvil se utilizó Boostrap para el diseño del Front del sistema de Información que contiene la información de los vehículos y el tag asignado a cada uno. Figura 81. Front aplicación Web

Fuente Elaboración Propia 9.7.4 Administración de la Base de Datos. Para la administración de la Base de Datos se utilizó la herramienta PhpMyadmin el cual permite crear bases de datos, tablas y realizar todas operaciones requeridas en la administración de la base de datos para la operación de la aplicación móvil. Figura 82. Base de datos smartapp_nfcappmovil en PhpMyAdmin

Fuente Elaboración Propia

Page 198: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

198

9.7.5 Base de Datos. Para el desarrollo del prototipo se creó una base de datos llamada Smartapp_nfcappmovil la cual está compuesta de tres tablas:

• Administrador: tiene el usuario y la contraseña de autenticación de la aplicación web.

• Vehículos: tiene las tablas con las características asociadas al vehículo (ïdchip, placa, ect.)

• Usertbl 9.7.6 Código SQL de la tabla Administrator. La tabla nos permite almacenar la información correspondiente a los usuarios registrados como administradores para poder ingresar al Sistema de Información móvil y registrar nuevos usuarios administradores.

-- Table structure for table `administrator`

DROP TABLE IF EXISTS `administrator`;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!40101 SET character_set_client = utf8 */;

CREATE TABLE `administrator` (

`idDataU` int(12) NOT NULL AUTO_INCREMENT,

`full_name` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

`email` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

`usuario` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

`password` varchar(50) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

PRIMARY KEY (`idDataU`),

UNIQUE KEY `usuario` (`usuario`)

) ENGINE=MyISAM AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

/*!40101 SET character_set_client = @saved_cs_client */;

Page 199: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

199

9.7.7 Código SQL de la tabla usertbl

-- Table structure for table `usertbl`

DROP TABLE IF EXISTS `usertbl`;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!40101 SET character_set_client = utf8 */;

CREATE TABLE `usertbl` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`full_name` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

`email` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

`username` varchar(20) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

`password` varchar(32) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

PRIMARY KEY (`id`),

UNIQUE KEY `username` (`username`)

) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

/*!40101 SET character_set_client = @saved_cs_client */;

9.7.8 Código SQL de la tabla Vehículos. La principal información a almacenar en esta tabla corresponde a campos como la Clase de Vehículo, combustible, Carrocería, Capacidad, Número de Motor, Cilindraje, color, Placa, Marca entre otros.

-- Table structure for table `vehiculos`

DROP TABLE IF EXISTS `vehiculos`;

/*!40101 SET @saved_cs_client = @@character_set_client */;

/*!40101 SET character_set_client = utf8 */;

CREATE TABLE `vehiculos` (

`idData` int(11) NOT NULL AUTO_INCREMENT,

`idChip` varchar(20) NOT NULL,

`claseVehiculo` varchar(50) NOT NULL,

`tipoCarroseria` varchar(50) NOT NULL,

`combustible` varchar(50) NOT NULL,

`capacidad` varchar(50) NOT NULL,

Page 200: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

200

`noMotor` varchar(50) NOT NULL,

`cilindrada` varchar(50) NOT NULL,

`color` varchar(50) NOT NULL,

`placa` varchar(50) NOT NULL,

`marca` varchar(50) NOT NULL,

`linea` varchar(50) NOT NULL,

`modelo` varchar(50) NOT NULL,

`cedulaPropietario` varchar(50) NOT NULL,

PRIMARY KEY (`idData`)

) ENGINE=MyISAM AUTO_INCREMENT=47 DEFAULT CHARSET=utf8;

/*!40101 SET character_set_client = @saved_cs_client */;

9.8 AUTENTICACION DE USUARIOS

El Sistema de Información Web de Transito cuenta con un sistema de autenticación de usuario y contraseña para el acceso a la información de los vehículos registrados. Para la demostración de la funcionalidad de la Aplicación se creó el usuario Administrator y la clave es Smartapp@2016 Figura 83. Autenticación Sistema Web vehículos

Fuente Elaboración Propia

Page 201: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

201

9.9 ADMINISTRACIÓN DE TAGS

Una vez se ha realizado el inicio de sesión se ingresa al Panel Administrador de Tags NFC. Podemos visualizar las columnas de la Base de Datos la cual nos muestra la información según el IdChip de cada Vehículo. Figura 84. Gestor de Tags Sistema Web Vehículos

Fuente Elaboración Propia Según los requerimientos planteados la aplicación permite editar cualquier campo de información o ser borrado todo el registro. 9.9.1 Menú de Navegación. Para la navegación fácil de la aplicación Web se desarrolló un menú superior con los menús: Inicio, Gestor de Tags, Gestor de Usuarios, Ayuda y Cerrar Sesión. Figura 85. Menú Sistema Web Vehículos

Fuente Elaboración Propia 9.9.2 Vista para Edición de Tags. Se creó el botón para editar los campos según el IdChip al que le corresponde al vehículo seleccionado al cual se va actualizar la

Page 202: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

202

información. Figura 86. Edición de registros de Tags para el Sistema Web Vehículos

Fuente Elaboración Propia 9.9.3 Borrar Registro de Tags. Se creó el botón para Eliminar para realizar el borrado de toda la información del tag según el registro del Vehículo en el Sistema de Información de Vehículos. Figura 87. Borrar Registros de Tags para el Sistema Web Vehículos

Page 203: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

203

Fuente Elaboración Propia 9.9.4 Registro de Nuevo Tag. Para realizar el registro de un nuevo tag se deba ir al menú Gestor de Tags lo cual desplegara el submenú “Nuevo” lo cual carga el formulario de registro para nuevos tags. Figura 88. Registro de Nuevo Tag al Sistema Web Vehículos

Fuente Elaboración Propia 9.9.5 Administración de Usuarios. Se desarrolló un administrador de usuarios el cual es accesible desde el menú superior en el menú Gestión de Usuarios, el cual

Page 204: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

204

permite listar los usuarios creados y crear nuevos registros de usuarios Administradores del Sistema. Igualmente se crearon los botones para editar o borrar usuarios. Figura 89. Administración de Usuarios del Sistema Web Vehículos

Fuente Elaboración Propia

9.10 WEB SERVICIE

Para lograr realizar consultas a la Base de Datos MySql desde Android es necesario realizar un Web Service, para el desarrollo general del prototipo fue necesario crear

Page 205: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

205

el Web Service para que haga consultas a la BD según el Id del Tag y devuelva los datos en un String para ser consumidos por el Dispositivo Móvil. Para el desarrollo del prototipo se creó un Web Service en C# usando Visual Studio 2012 y se publicó en servidor Windows Server 2012 con soporte para Asp y como servidor web Internet Information Server (IIS). Figura 90. Web Service Transito

Fuente Elaboración Propia El Web Service recibe las peticiones de consulta con ID del Tag NFC leído de la app del Smartphone Android y este realizará la petición al servidor de Base de Datos haciendo la consulta según el ID del tag, el servidor de Base de Datos ejecuta la consulta solicitada y envía el Query al Web Service para que esta sea recibida y enviada a la app Android donde se mostrará en una Activity los datos correspondientes al Query que le corresponde el Id del Tag NFC según los campos asociados al tag del Vehículo.

9.10.1 Librería KSOAP2

Para el desarrollo del servicio web con Android se trabajó con una librería OpenSoucrce y de licencia MIT, KSOAP2, es una librería con cierto tipo de características que nos sirven para realizar la comunicación entre el dispositivo

Page 206: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

206

móvil de Android y el servidor que aloja la base de datos. Es una librería ligera, eficiente y muy usada en el desarrollo de aplicaciones móviles. Para descargarla podemos acceder al enlace del proyecto en github: http://simpligility.github.io/ksoap2-android/index.html La integración de esta librería debe hacerse en el proyecto de NFC donde se crea una carpeta llamada libs y se importa KSOAP2 desde Android Studio o Eclipse. Una vez creado el proyecto de NFC y se ha importado la librería debemos tener varios datos de donde se publicara el servicio web, dirección Ip, Url, Namespace y los métodos a ejecutar.

9.10.2 Acceso a Web Service

Para acceder al Web Service desarrollado se puede ingresar a la siguiente URL: http://www.smartappsnfc.com/webservice/WebServiceTransito/WSTransito.asmx. Al hacer el acceso desde un navegador Web al Web Service este nos muestra el método creado para obtener los datos de la Base de datos al Web Service GetDataVehiculo Figura 91. Acceso Web a WebServiceTransito

Fuente Elaboración Propia

9.10.3 SOAP 1.1

Cuando se realiza la invocación al método GetDataVehiculo desde el navegador web este nos muestra el contenido XML del SOAP en versión 1.1

Page 207: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

207

En el código XML podemos ver el POST realizado al WebServiceTransito.asmx en el protocolo http/1.1 y la SoapAction solicitando los datos al servidor de BD y guardándolos en un String. El String creado será consumido por el cliente en este caso el dispositivo Android con la App Móvil NFC Transito.

POST /webservice/WebServiceTransito/WSTransito.asmx HTTP/1.1

Host: www.smartappsnfc.com

Content-Type: text/xml; charset=utf-8

Content-Length: length

SOAPAction: "http://www.smartappsnfc.com/Webservice/WebServiceTransito/GetDataVe

hiculo"

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="

http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/en

velope/">

<soap:Body>

<GetDataVehiculo xmlns="http://www.smartappsnfc.com/Webservice/WebServiceTra

nsito/">

<strIdchip>string</strIdchip>

</GetDataVehiculo>

</soap:Body>

</soap:Envelope>

HTTP/1.1 200 OK

Content-Type: text/xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="

http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/en

velope/">

<soap:Body>

<GetDataVehiculoResponse xmlns="http://www.smartappsnfc.com/Webservice/WebSe

rviceTransito/">

Page 208: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

208

<GetDataVehiculoResult>string</GetDataVehiculoResult>

</GetDataVehiculoResponse>

</soap:Body>

</soap:Envelope>

9.10.4 SOAP 1.2

Cuando se realiza la invocación al método GetDataVehiculo desde el navegador web este nos muestra el contenido XML del SOAP en versión 1.2 En el código xml podemos ver el POST en la versión del protocolo http/1.1 realizado al servidor y la SoapAction solicitando los datos al servidor de BD y guardándolos en un String

POST /webservice/WebServiceTransito/WSTransito.asmx HTTP/1.1

Host: www.smartappsnfc.com

Content-Type: application/soap+xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd

="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap

-envelope">

<soap12:Body>

<GetDataVehiculo xmlns="http://www.smartappsnfc.com/Webservice/WebServiceTra

nsito/">

<strIdchip>string</strIdchip>

</GetDataVehiculo>

</soap12:Body>

</soap12:Envelope>

HTTP/1.1 200 OK

Page 209: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

209

Content-Type: application/soap+xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd

="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap

-envelope">

<soap12:Body>

<GetDataVehiculoResponse xmlns="http://www.smartappsnfc.com/Webservice/WebSe

rviceTransito/">

<GetDataVehiculoResult>string</GetDataVehiculoResult>

</GetDataVehiculoResponse>

</soap12:Body>

</soap12:Envelope>

9.10.5 Funcionamiento de WebServiceTransito

El Web Service creado para el funcionamiento del prototipo se desarrolló en C#, teniendo en cuenta la documentación de MSDN de Microsoft, básicamente podemos decir que primero se hace la importación de las librerías requeridas para la conexión el uso de la Base de Datos, Sistema, Web Service, seguridad y otras. Luego entramos a definir en namespace del proyecto en este caso se definió como WebServiceTransito donde definimos la ubicación del WebService (url). Creamos la clase publica llamada WSTransito que hereda los métodos de las clases System.Web.Services.Webservice, en ella se definen las variables necesarias para el uso de conexión y transacción a la Base de Datos. También se crea el método Publico public WSTransito () en el cual creamos las variables que contienen los datos de la conexión al servidor de Bases de Datos, seguido creamos el WebMethod donde definimos el método llamado GetDataVehiculo, el cual realiza la conexión y ejecuta la consulta solicitando todos los campos a la Base de Datos según el Where de la Consulta bajo el ID del chip. Luego se ejecuta la consulta y entra a operar el DataReader creando una variable para cada campo de la Base de Datos. Finalmente los datos cargados son

Page 210: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

210

guardados en otras variables de tipo String retornando los datos y cerrando la conexión. 9.10.6 Código fuente WebService.

using System; // espacio de nombre System // permite distinguir unos de otros

using System.Collections.Generic;

using System.Web;

using System.Web.Services;

using System.Text;

using System.Data;

using System.Security.Cryptography;

using MySql.Data.MySqlClient;

namespace WebServiceTransito // conjunto de objetos relacionados

{

[WebService(Namespace = "http://www.smartappsnfc.com/Webservice/WebServiceTransito/")]

[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

[System.ComponentModel.ToolboxItem(false)]

public class WSTransito : System.Web.Services.WebService //clase publica

{

private MySqlConnection connection;

private MySqlTransaction _transaction;

public MySqlTransaction Transaction

{

get { return _transaction; }

set { _transaction = value; }

}

private string connConnection;

private string strQuery;

private int _intExistencias;

public int IntExistencias

{

get { return _intExistencias; }

Page 211: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

211

set { _intExistencias = value; }

}

public WSTransito()

{

//connConnection = System.Configuration.ConfigurationManager.ConnectionStrings["strConne

ction"].ConnectionString;

connConnection = "server=190.8.176.202;user=smart_nfcmiguel;port=3306;database=smartapp_

nfcappmovil;password=mF222is*;";

}

[WebMethod]

public string GetDataVehiculo(string strIdchip)

{

connection = new MySqlConnection(connConnection);

string strDataVehiculo = "Sin Dato>";

try

{

strQuery = "SELECT idChip, cedulaPropietario, claseVehiculo, tipoCarroseria, combust

ible, capacidad,noMotor, cilindrada, color, placa, marca, linea, modelo FROM Vehiculos WHERE idChip=

@idChip";

MySqlCommand cmdSelect = new MySqlCommand(strQuery, connection);

cmdSelect.CommandType = CommandType.Text;

cmdSelect.Parameters.Add(new MySqlParameter("@idChip", strIdchip));

connection.Open();

using (IDataReader dr = cmdSelect.ExecuteReader())

{

int ordIdChip = dr.GetOrdinal("idChip");

int ordCedulaPropietario = dr.GetOrdinal("cedulaPropietario");

int ordClaseVehiculo = dr.GetOrdinal("claseVehiculo");

int ordTipoCarroceria = dr.GetOrdinal("tipoCarroseria");

int ordCombustible = dr.GetOrdinal("combustible");

int ordCapacidad = dr.GetOrdinal("capacidad");

int ordNoMotor = dr.GetOrdinal("noMotor");

int ordCilindrada = dr.GetOrdinal("cilindrada");

Page 212: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

212

int ordColor = dr.GetOrdinal("color");

int ordPlaca = dr.GetOrdinal("placa");

int ordMarca = dr.GetOrdinal("marca");

int ordLinea = dr.GetOrdinal("linea");

int ordModelo = dr.GetOrdinal("modelo");

while (dr.Read())

{

if (!dr.IsDBNull(ordIdChip))

{

strDataVehiculo = dr.GetString(ordIdChip) + ">";

if (!dr.IsDBNull(ordCedulaPropietario))

strDataVehiculo = strDataVehiculo + dr.GetString(ordCedulaPropietario) + ">";

else

strDataVehiculo = strDataVehiculo + "Sin Dato>";

strDataVehiculo = strDataVehiculo + dr.GetString(ordClaseVehiculo) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordTipoCarroceria) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordCombustible) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordCapacidad) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordNoMotor) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordCilindrada) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordColor) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordPlaca) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordMarca) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordLinea) + ">";

strDataVehiculo = strDataVehiculo + dr.GetString(ordModelo) + ">";

}

} }

return strDataVehiculo;

}

catch (Exception ex)

{

return ex.Message;

}

finally

Page 213: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

213

{

connection.Close();

}

}

}

}

9.11 APP MÓVIL ANDROID

9.11.1 Aplicación Móvil Transito. La aplicación móvil fue diseñada para que corra en dispositivos móviles con Sistema Operativo Android y que tengan el hardware de NFC integrado. Para desarrollo y pruebas se utilizaron teléfonos Samsung Galaxy S3, S4, S5, y Galaxy Note 4, LG G2 y Lg G4. 9.11.2 Permiso de NFC e Internet. La app NFC debe tener configurados los permisos de Internet y NFC en el archivo AndroidManifest.xml.

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission android:name="android.permission.NFC" />

9.11.3 AndrodiManifest.xml. Este archivo es uno de los principales de las aplicaciones de Android, en el escribimos todas las configuraciones básicas de las de la app creada. Se desarrolla en XML y sirve para que Android conozca la aplicación, actividades creadas, permisos de usuario, se defina el icono, nombre de la aplicación, versión, SDK requerido y otras opciones de configuración.

9.11.4 Contenido de AndroidManifest de la Aplicación NFCAPP.

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="com.miguelgonzalez.nfcapp"

android:versionCode="2"

android:versionName="2.0" >

Page 214: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

214

<uses-sdk android:minSdkVersion="15" />

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission android:name="android.permission.NFC" />

<uses-feature

android:name="android.hardware.nfc"

android:required="true" />

<application

android:icon="@drawable/ic_launcher"

android:label="@string/app_name" >

<activity

android:name=".NFCAppActivity"

android:label="@string/app_name"

android:theme="@style/AppTheme" >

<intent-filter>

<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />

</intent-filter>

</activity>

<activity

android:name="TagViewer"

android:theme="@style/AppTheme" >

<intent-filter>

<action android:name="android.nfc.action.TAG_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

</intent-filter>

</activity>

</application>

</manifest>

Figura 92. Estructura de Proyecto NFCApp

Page 215: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

215

Fuente Elaboración Propia 9.11.5 Actividad Principal NFCAppActivity. La actividad principal define la clase pública NFCAppActivity la cual contiene los métodos: Figura 93. Clase y Métodos de la Actividad principal NFCActivity

Page 216: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

216

Fuente Elaboración Propia

package com.miguelgonzalez.nfcapp

import android.app.Activity;

import android.content.Intent;

import android.nfc.NfcAdapter;

import android.os.Bundle;

import android.os.StrictMode;

import android.view.Menu;

import android.view.MenuInflater;

import android.view.MenuItem;

import android.view.View;

import android.widget.Toast;

public class NFCAppActivity extends Activity

{

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().p

ermitAll().build();

StrictMode.setThreadPolicy(policy);

Page 217: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

217

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater inflater = getMenuInflater();

inflater.inflate(R.menu.menubar, menu);

return true;

}

@Override

public boolean onOptionsItemSelected(MenuItem item){

Intent objIntent;

switch(item.getItemId())

{

case R.id.menu_search:

makeToast("Buscando Tag...");

objIntent = new Intent(NfcAdapter.ACTION_TAG_DISCOVERED);

objIntent.setClass(this, TagViewer.class);

startActivity(objIntent);

break;

case R.id.menu_salir_Item:

makeToast("Salir...");

finish();

break;

}

return true;

}

public void onClickVer(View botton)

Page 218: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

218

{

makeToast("Buscando Tag...");

Intent objIntent = new Intent(NfcAdapter.ACTION_TAG_DISCOVERED)

;

objIntent.setClass(this, TagViewer.class);

startActivity(objIntent);

}

public void onClickSalir(View botton)

{

makeToast("Salir...");

finish();

}

public void makeToast(String message) {

Toast.makeText(this, message, Toast.LENGTH_SHORT).show();

}

}

9.11.6 TagViewer. El archivo TagViewer.java realiza las operaciones de consulta al Web service Figura 94. Estructura Activity TagViewer

Page 219: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

219

Fuente Elaboración Propia

9.11.7 Recepción de Datos de WebService

La integración de esta librería debe hacerse en el proyecto de NFC donde se crea

Page 220: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

220

una carpeta llamada libs y se importa KSOAP2 desde Android Studio. Una vez creado el proyecto de NFC y se ha importado la librería debemos tener varios datos donde se publicara el servicio web como el servidor con su dirección Ip, Url, Namespace y los métodos a ejecutar. El siguiente paso es la definición de las variables private static final String del proyecto:

private SoapObject objSoap;

private SoapSerializationEnvelope soapEnvelope;

private HttpTransportSE aht;

private static String NameSpace = "http://www.smartappsnfc.com/Webservice/WebSer

viceTransito/";

private static String Url = "http://www.smartappsnfc.com/Webservice/WebServiceTr

ansito/WStransito.asmx";

Una vez define estos datos y teniendo en cuenta que para el desarrollo de este web service se usó Visual Studio 2012 y 2015 debemos iniciar a construir la solicitud al método del servicio.

• Lo seguido a realizar es identificar parámetros y el tipo de datos que son devueltos por el método del servicio.

• Posteriormente iniciamos la construcción de la petición SOAP utilizando la clase SoapObject.

• Una vez iniciamos la petición seguido debemos construir el "sobre" del mensaje SOAP: En la parametrización, se especifica el tipo de protocolo de comunicación (SOAP1.1 / 1.2, etc..) y como característica especial si el EndPoint es un servicio dotNet

• A la petición (objeto request) se la añaden los parámetros con el método AddProperty.

• Se construye el objeto de transporte para invocar el método (clase HttpTransportSE).

• Al invocar al método "call" de la clase "HttpTransportSE" se recogen los resultados del servicio.

• Finalmente se recogen los resultados utilizando el objeto devuelto (response) e invocando al método getProperty.

private void GetData()

Page 221: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

221

{String SoapAction = "http://www.smartappsnfc.com/Webservice/WebServiceT

ransito/GetDataVehiculo";

String MethodName = "GetDataVehiculo";

TextView txtClaseVehiculo = (TextView) findViewById(R.id.tvClaseVehiculo);

TextView txtTipoCarroseria = (TextView) findViewById(R.id.tvTipoCarroceria);

TextView txtCombustible = (TextView) findViewById(R.id.tvCombustible);

TextView txtcapacidad = (TextView) findViewById(R.id.tvCapacidad);

TextView txtnoMotor = (TextView) findViewById(R.id.tvNoMotor);

TextView txtcilindrada = (TextView) findViewById(R.id.tvCilindrada);

TextView txtcolor = (TextView) findViewById(R.id.tvColor);

TextView txtplaca = (TextView) findViewById(R.id.tvPlaca);

TextView txtmarca = (TextView) findViewById(R.id.tvMarca);

TextView txtlinea = (TextView) findViewById(R.id.tvLinea);

TextView txtmodelo = (TextView) findViewById(R.id.tvModelo);

TextView txtcedulaPropietario = (TextView) findViewById(R.id.tvCedulaPropietario

);

makeToast("Cargando datos...");

objSoap = new SoapObject(NameSpace, MethodName);

objSoap.addProperty("strIdchip",_strIdChip);

soapEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER11

);

soapEnvelope.dotNet = true;

soapEnvelope.setOutputSoapObject(objSoap);

aht = new HttpTransportSE(Url);

try

{

aht.setXmlVersionTag("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");

aht.call(SoapAction, soapEnvelope);

SoapPrimitive soapResult = (SoapPrimitive) soapEnvelope.getResponse();

if(soapResult.toString() != null)

{

if(soapResult.toString().trim().length() != 0)

Page 222: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

222

{

String[] DataProdu = soapResult.toString().split(">");

if(DataProdu.length > 1)

{

txtClaseVehiculo.setText("Clase Vehiculo: " + DataProdu[0]);

txtTipoCarroseria.setText("Carroseria: " + DataProdu[1]);

txtCombustible.setText("Combustible: " + DataProdu[2]);

txtcapacidad.setText("Capacidad: " + DataProdu[3]);

txtnoMotor.setText("No Motor: " + DataProdu[4]);

txtcilindrada.setText("Cilindrada: " + DataProdu[5

txtcolor.setText("Color: " + DataProdu[6]);

txtplaca.setText("Placa: " + DataProdu[7]);

txtmarca.setText("Marca: " + DataProdu[8]);

txtlinea.setText("Linea: " + DataProdu[9]);

txtmodelo.setText("Modelo: " + DataProdu[10]);

txtcedulaPropietario.setText(" Cedula Propietario: " + DataProdu[11]);

}

Else

{

txtClaseVehiculo.setText("ID Tag no encontrado en sistema!!!");

}

}

makeToast("¡OK!");

9.11.8 Generar APK de la App NFC.Una vez realizado el desarrollo de la app en Android se procede a generar el archivo apk para poder ser instalado en el Smartphone. Desde Eclipse podemos exportar la apk, vamos al menú File �Export�Seleccionamos Android y luego Export Android Application: Figura 95. Generar APK

Page 223: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

223

Fuente Elaboración Propia Seleccionamos entre los proyectos que tengamos en Eclipse el que vamos a exportar, seguidamente creamos un keystore, asignamos un nombre y password luego diligenciamos todos los campos requeridos para la creación del KeyStore.

Page 224: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

224

Figura 96. Generar APK Key Creation

Fuente Elaboración Propia Una vez se diligencia los datos como se muestra en la figura anterior hacemos clic en next y para finalizar en Finish, esto nos generara el APK en la carpeta del proyecto. 9.11.9 Instalación de la App NFC. La aplicación puede instalarse utilizando la herramienta AirDroid http://airdroid.com/, esta app puede instalarse en Windows, Android y Mac, existen otros métodos para realizar la transferencia de la apk al teléfono móvil como puede ser por USB, Bluethooh, correo y otras aplicaciones. Para este caso lo vamos a realizar con AirDroid en Windows 10, descargamos e instalamos AirDroid. Abrimos la aplicación, se realiza el registro y luego se debe acceder con el usuario y login creados. Figura 97. Interfaz AirDroid

Page 225: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

225

Fuente Elaboración Propia Luego seleccionar el primer icono de Transferencia de Archivos, seguidamente como se ve en la imagen hacer clic en el primer icono para que abra la venta y seleccionar el apk a transferir al teléfono: Figura 98. Transferencia de Archivos AirDroid

Fuente Elaboración Propia

Una vez se realiza la transferencia del apk del Pc al Smartphone en este caso un Samsung Galaxy Note 4 modelo SM-N910C, procedemos a ir al teléfono para hacer la instalación desde el móvil.

Page 226: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

226

Abrimos la app de AirDroid desde el Smartphone y observamos que tenemos una notificación en la transferencia de un archivo, vamos a transferencia lo cual nos muestra en la pantalla en nombre de la apk, procedemos a hacer clic para descargarla como se muestra en la siguiente figura: Figura 99. Notificaciones AirDroid Transferencia

Fuente Elaboración Propia

Figura 100. Descarga de App NFCApp2016

Page 227: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

227

Fuente Elaboración Propia

Una vez se procede a descargar la app de AirDroid al teléfono hacemos clic en el icono de la aplicación para iniciar el proceso de instalación: Figura 101. Proceso de Instalación en el Smartphone

Page 228: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

228

Fuente Elaboración Propia 9.11.10 Ejecución de Aplicación NFC Transito. Luego del proceso de instalación procedemos a la ejecución de la aplicación móvil NFC Transito. Para acceder a la

Page 229: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

229

aplicación se debe ubicar el icono instalado en un escritorio del dispositivo móvil y procedemos ejecutarla. Figura 102. Icono de App en Escritorio Android

Fuente Elaboración Propia

Figura 103. Aplicación Móvil NFC Vehicular

Page 230: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

230

Fuente Elaboración Propia Para realizar la lectura de un tag, estando dentro de la aplicación hacemos clic en el botón Leer Tag, esto hará que la app realice la lectura del tag detectando e identificado el ID del Tag la aplicación envía el código único del tag al servicio web quien realizara la consulta a la Base de datos según el ID del tag y este posteriormente retornarla los datos de la consulta realizada al web service para que sean entregados a la app móvil y presentados en el segundo layout de la app móvil, en caso contrario sale un mensaje que indica que el vehiculó no se encuentra en el sistema. Figura 104. Aplicación Móvil en Lectura de Tags

Page 231: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

231

Fuente Elaboración Propia

Page 232: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

232

10. PRUEBAS Y FUNCIONAMIENTO.

En las pruebas se realizó el registro de tags correspondiente a varios vehículos, se ingresaron los datos según la aplicación web y se comprobó la carga de datos en la app móvil. Las pruebas fueron satisfactorias en todos los casos. La aplicación web y móvil no se presentó errores o problemas en la ejecución.

10.1 PRUEBAS DE REGISTRO DE TAGS

Se realizaron pruebas para ingresar al Sistema Web Vehículos para registrar tags y los datos de cada vehículo. Las pruebas se realizaron en equipos Windows con Sistema Operativo Windows 10 y Linux Fedora 23, navegador Google Chrome, las pruebas realizadas todas fueron exitosas, la interfaz web abrió sin ninguna novedad en diseño y no se presentaron errores en su ejecución. Se realizaron pruebas para ingreso de tags desde dispositivos móviles Android 5 y 6, la interfaz web cargo con el diseño Responsive Design y no se presentaron problemas registrando información de Tags al Sistema Web Vehículos.

10.2 PRUEBAS DE INSTALACIÓN DE TAGS EN VEHÍCULOS

La instalación de los tags en los vehículos se realizó sin problemas, se usaron tags adheribles al vidrio panorámico del vehículo. Se ubicó el tag al lado izquierdo. El tag seleccionado es un tag circular de color blanco que puede personalizarse con el uso de impresoras Zebra especiales para tag NFC y RFID.

Page 233: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

233

Figura 105. Tags en Vehículos

Fuente Elaboración Propia

10.3 PRUEBA DE INSTALACIÓN DE APP MÓVIL

Luego del proceso de desarrollo de la app móvil se procede a realizar la instalación de la aplicación móvil, se procede a enviar el apk al móvil y realizar el proceso de instalación como se describe en la página 224 a la página 226. La prueba de instalación finalizo exitosamente, se instaló sin ningún error en el dispositivo móvil, se creó el icono de la aplicación, se ejecutó sin cerrarse y no muestro algún mensaje de error.

10.4 PRUEBA DE WEB SERVICE

Una vez finalizado el desarrollo del Web Service se debe subir e instalar al servidor con las características técnicas mencionadas anteriormente, Con la prueba de funcionamiento de la App móvil se puede comprobar el correcto funcionamiento del Web Service al mostrar los datos en la app móvil, que es el resultado de la consulta realizada al servidor de Bases de Datos.

Page 234: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

234

10.5 PRUEBA EN DIFERENTES DISPOSITIVOS MÓVILES

La aplicación en su última versión se instaló en los dispositivos móviles Samsung Galaxy Note 4 y Lg G4. En ambos se realizaron pruebas de instalación de la aplicación móvil y lectura de tags de los vehículos. En ambos casos se recibieron los datos solicitados según el tag de cada vehículo.

10.6 PRUEBA DE LECTURA DE TAGS EN VEHÍCULOS

Una vez el tag se ha instalado en el vehículo, se puede usar cualquier app NFC para comprobar su funcionamiento y no se haya dañado su estructura durante el proceso de instalación. Para proyectos en producción es necesario realizar la impresión o personalización de los tags antes de ser adheridos a los vehículos, realizar una prueba de lectura y obtener su ID para ser ingresado al sistema de Información. La siguiente prueba se realiza con los tag NXP MIFARE Ultralight (Ultralight C) – NTAG203 y NXP mifare classic 1k con el dispositivo Samsung Galaxy Note 4 y Lg G4.

10.7 PRUEBA DE CONSULTA DE INFORMACIÓN SEGÚN TAGS

Esta prueba se realiza luego de la instalación de la aplicación móvil e ingreso de información al Sistema de Información de Tags. Se procede a abrir la aplicación móvil y acercar el teléfono al tag del vehículo, si todo el proceso es correcto se deberá mostrar la información de cada vehículo según el tag.

Page 235: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

235

Figura 106. Lectura de Tags y resultados de consulta

Fuente Elaboración Propia

Page 236: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

236

Figura 107. Prueba de lectura de Tags en Vehículos

Page 237: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

237

Fuente Elaboración Propia

Page 238: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

238

10.8 Recolección Datos y Pruebas de Lectura

Para la recolección de datos y pruebas de lectura se realizaron pruebas en una muestra de 30 vehículos de diferentes modelos ycon tres modelos diferentes de Smartphones: Samsung Galaxy Note 4, Lg G4 y Samsung Galaxy S3. Se utilizaron tags Mifare Classic de 1K que son compatibles con los tres smartphones como lo muestra la siguiente tabla: Tabla 13. Comparación De Teléfonos Usados Y Compatibilidad De Tags

MARCA MODELO SISTEMA OPERATI

VO

MIFARE CLASSIC

/ 1K

MIFARE ULTRALIGHT

NTAG

LG G4 Android No Si Si Samsung Galaxy Note 4 Android No Si Si Samsung Galaxy S3 Android Si Si Si

Page 239: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

239

Tabla 14. Prueba de lectura tags NFC en vehículos. Prueba N° 1 # de prueba 001 VEHÍCULO MODELO / MARCA

Chevrolet Cruze Nickel LS

NÚMERO DE PLACA REV317 Idchip 049b21aa973b80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.11 Samsung Galaxy S3

6.65 Lg G4 1.09

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 240: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

240

Tabla 15. Prueba de lectura tags NFC en vehículos. Prueba N° 2

# de prueba 002 VEHÍCULO MODELO / MARCA

Mazda 3

NÚMERO DE PLACA RCN567 Idchip 04990faa973b80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.58 Samsung Galaxy S3

4.78 Lg G4 1.01

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 241: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

241

Tabla 16. Prueba de lectura tags NFC en vehículos. Prueba N° 3 # de prueba 003 VEHÍCULO MODELO / MARCA

Chevrolet Sail Lt

NÚMERO DE PLACA ZYV181 Idchip 049b1caa973b80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.26 Samsung Galaxy S3

4.61 Lg G4 1.12

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 242: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

242

Tabla 17. Prueba de lectura tags NFC en vehículos. Prueba N° 4 # de prueba 004 VEHÍCULO MODELO / MARCA

Grand Vitara SZ Suzuki

NÚMERO DE PLACA CXM426 Idchip 049a18aa973b80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.57 Samsung Galaxy S3

4.53 Lg G4 1.10

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 243: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

243

Tabla 18. Prueba de lectura tags NFC en vehículos. Prueba N° 5 # de prueba 005 VEHÍCULO MODELO / MARCA

Chevrolet Sail

NÚMERO DE PLACA UUP336 Idchip 049914aa973b80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.16 Samsung Galaxy S3

5.90 Lg G4 1.32

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 244: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

244

Tabla 19. Prueba de lectura tags NFC en vehículos. Prueba N° 6 # de prueba 006 VEHÍCULO MODELO / MARCA

Chevrolet Sonic

NÚMERO DE PLACA HCW561 Idchip 043058129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.35 Samsung Galaxy S3

5.88 Lg G4 1.10

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 245: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

245

Tabla 20. Prueba de lectura tags NFC en vehículos. Prueba N° 7 # de prueba 007 VEHÍCULO MODELO / MARCA

Chevrolet Captiva

NÚMERO DE PLACA DGO999 Idchip 044558129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.32 Samsung Galaxy S3

4.46 Lg G4 1.17

Observaciones Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 246: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

246

Tabla 21. Prueba de lectura tags NFC en vehículos. Prueba N° 8 # de prueba 008 VEHÍCULO MODELO / MARCA

Ford Ecosport

NÚMERO DE PLACA CVZ682 Idchip 043b58129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.65

Samsung Galaxy S3

4.25 Lg G4 1

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 247: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

247

Tabla 22. Prueba de lectura tags NFC en vehículos. Prueba N° 9 # de prueba 009 VEHÍCULO MODELO / MARCA

Toyota Prado tx

NÚMERO DE PLACA MJU983 Idchip 043558129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.16 Samsung Galaxy S3

4.39 Lg G4 1.12

Observaciones Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 248: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

248

Tabla 23. Prueba de lectura tags NFC en vehículos. Prueba N° 10

# de prueba 0010 VEHÍCULO MODELO / MARCA

Chevrolet Aveo

NÚMERO DE PLACA KEQ609 Idchip 044058129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.27 Samsung Galaxy S3

4.16 Lg G4 0.86

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 249: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

249

Tabla 24. Prueba de lectura tags NFC en vehículos. Prueba N° 11 # de prueba 0011 VEHÍCULO MODELO / MARCA

Volkswagen Jetta

NÚMERO DE PLACA CYG370 Idchip 042458129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.71

Samsung Galaxy S3

4.53 Lg G4 1.12

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 250: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

250

Tabla 25. Prueba de lectura tags NFC en vehículos. Prueba N° 12 # de prueba 0012 VEHÍCULO MODELO / MARCA

Renault Duster Dynamique Mt

NÚMERO DE PLACA MBT721 Idchip 041f58129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.74 Samsung Galaxy S3

5.09 Lg G4 1.10

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 251: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

251

Tabla 26. Prueba de lectura tags NFC en vehículos. Prueba N° 13 # de prueba 0013 VEHÍCULO MODELO Kia Sorento NÚMERO DE PLACA RAZ099 Idchip 041a58129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.65 Samsung Galaxy S3

7.29 Lg G4 1.16

Observaciones Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 252: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

252

Tabla 27. Pruebas lectura tags NFC en vehículos. Prueba N° 14 # de prueba 0014 VEHÍCULO MODELO / MARCA

Ford Ranger

NÚMERO DE PLACA DJX857 Idchip 041c57129a4c80 TIPO DE TAG TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.48

Samsung Galaxy S3

5.57 Lg G4 0.87

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 253: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

253

Tabla 28. Pruebas lectura tags NFC en vehículos. Prueba N° 15 # de prueba 0015 VEHÍCULO MODELO / MARCA

Swift Suzuki

NÚMERO DE PLACA IMU114 Idchip 042157129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.74 Samsung Galaxy S3

5.39 Lg G4 0.94

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 254: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

254

Tabla 29. Pruebas lectura tags NFC en vehículos. Prueba N° 16

# de prueba 0016 VEHÍCULO MODELO / MARCA

Chevrolet captiva sport

NÚMERO DE PLACA KAM128 Idchip 042657129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.73 Samsung Galaxy S3

6.43 Lg G4 0.96

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 255: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

255

Tabla 30. Pruebas lectura tags NFC en vehículos. Prueba N° 17 # de prueba 0017 VEHÍCULO MODELO Kia Cerato Pro NÚMERO DE PLACA UCT349 Idchip 042d57129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.95 Samsung Galaxy S3

3.85 Lg G4 1.18

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 256: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

256

Tabla 31. Pruebas lectura tags NFC en vehículos. Prueba N° 18 # de prueba 0018 VEHÍCULO MODELO / MARCA

Chevrolet luv D max

NÚMERO DE PLACA SXN424 Idchip 043257129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.73 Samsung Galaxy S3

5.04 Lg G4 1.02

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 257: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

257

Tabla 32. Pruebas lectura tags NFC en vehículos. Prueba N° 19 # de prueba 0019 VEHÍCULO MODELO / MARCA

Nissan Pathfinder

NÚMERO DE PLACA OUE538 Idchip 043957129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.63 Samsung Galaxy S3

4.19 Lg G4 1.01

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 258: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

258

Tabla 33. Pruebas lectura tags NFC en vehículos. Prueba N° 20

# de prueba 0020 VEHÍCULO MODELO / MARCA

Renault symbol alize

NÚMERO DE PLACA MQJ984 Idchip 042958129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

2.19 Samsung Galaxy S3

4.70 Lg G4 1.08

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 259: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

259

Tabla 34. Pruebas lectura tags NFC en vehículos. Prueba N°21 # de prueba 0021 VEHÍCULO MODELO /MARCA

Chevrolet sail

NÚMERO DE PLACA IJL641 Idchip 040256129a4c81 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.25 Samsung Galaxy S3

5.80 Lg G4 1.04

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 260: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

260

Tabla 35. Pruebas lectura tags NFC en vehículos. Prueba N° 22 # de prueba 0022 VEHÍCULO MODELO / MARCA

Hyundai Tucson gls

NÚMERO DE PLACA CMD185 Idchip 04fd56129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.63 Samsung Galaxy S3

5.26 Lg G4 1.26

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 261: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

261

Tabla 36. Pruebas lectura tags NFC en vehículos. Prueba N° 23 # de prueba 0023 VEHÍCULO MODELO / MARCA

Nissan Frontier

NÚMERO DE PLACA RHR573 Idchip 04f356129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

2.21 Samsung Galaxy S3

5.03 Lg G4 1.16

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 262: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

262

Tabla 37. Pruebas lectura tags NFC en vehículos. Prueba N° 24 # de prueba 0024 VEHÍCULO MODELO / MARCA

Renault Symbol Ii Luxe

NÚMERO DE PLACA RCV582 Idchip 04f856129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.95 Samsung Galaxy S3

6.48 Lg G4 1.03

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 263: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

263

Tabla 38. Pruebas lectura tags NFC en vehículos. Prueba N° 25 # de prueba 0025 VEHÍCULO MODELO /MARCA

Mazda 6

NÚMERO DE PLACA FLM000 Idchip 04ee56129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.50 Samsung Galaxy S3

6.21 Lg G4 1.17

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 264: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

264

Tabla 39. Pruebas lectura tags NFC en vehículos. Prueba N° 26 # de prueba 0026 VEHÍCULO MODELO / MARCA

Toyota prado sumo

NÚMERO DE PLACA BYV825 Idchip 04e956129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.57 Samsung Galaxy S3

6.74 Lg G4 1

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 265: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

265

Tabla 40. Pruebas lectura tags NFC en vehículos. Prueba N° 27 # de prueba 0027 VEHÍCULO MODELO Chevrolet Optra NÚMERO DE PLACA BRC533 Idchip 04e356129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.64 Samsung Galaxy S3

5.30 Lg G4 1.16

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 266: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

266

Tabla 41. Pruebas lectura tags NFC en vehículos. Prueba N° 28 # de prueba 0028 VEHÍCULO MODELO /MARCA

Grand Vitara SUZUKI

NÚMERO DE PLACA ABP 813 Idchip 04de56129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.48 Samsung Galaxy S3

3.53 Lg G4 0.96

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 267: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

267

Tabla 42. Pruebas de lectura tags NFC en vehículos. Prueba N° 29 # de prueba 0029 VEHÍCULO MODELO / MARCA

Nissan Pathfinder

NÚMERO DE PLACA RKK441 Idchip 04d956129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

2.20 Samsung Galaxy S3

3.14 Lg G4 1.02

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 268: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

268

Tabla 43. Pruebas lectura tags NFC en vehículos. Prueba N° 30 # de prueba 0030 VEHÍCULO MODELO FORD ECO SPORT NÚMERO DE PLACA CVZ682 Idchip 04d456129a4c80 TIPO DE TAG MIFARE ULTRALIGHT TIEMPO DE LECTURA (segundos)

Samsung Galaxy Note 4

1.55 Samsung Galaxy S3

6.05 Lg G4 1.12

Observaciones Lectura sin novedad Fotografía

Lectura desde app Móvil NFCApp Vehicular

Fuente Elaboración Propia

Page 269: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

269

Tabla 44. Consolidación de Datos

# de prueba

VEHÍCULO NÚMERO DE PLACA

Idchip TIEMPO DE

LECTURA (segundos)

Samsung

Galaxy Note 4

TIEMPO DE LECTURA

(segundos)

Samsung Galaxy S3

TIEMPO DE LECTURA

(segundos)

Lg G4

1 Chevrolet Cruze NICKEL REV317 049b21aa973b80 1.11 6.65 1.09

2 Mazda 3

RCN567 04990faa973b80 1.58 4.78 1.01

3 Chevrolet Sail Lt ZYV181 049b1caa973b80 1.26 4.61 1.12

4 Grand Vitara SZ Suzuki CXM426 049a18aa973b80 1.57 4.53 1.10

5 Chevrolet Sail UUP336 049914aa973b80 1.16 5.90 1.32

6 Chevrolet Sonic HCW561 043058129a4c80 1.35 5.88 1.10

7 Chevrolet Captiva DGO999 044558129a4c80 1.32 4.46 1.17

8 Ford Ecosport CVZ682 043b58129a4c80 1.65 4.25 1

9 Toyota Prado tx MJU983 043558129a4c80 1.16 4.39 1.12

10 Chevrolet Aveo KEQ609 044058129a4c80 1.27 4.16 0.86

11 Volkswagen Jetta CYG370 042458129a4c80 1.71 4.53 1.12

12 Renault Duster Dynamique

MBT721 041f58129a4c80 1.74 5.09 1.10

13 Kia Sorento RAZ099 041a58129a4c80 1.65 7.29 1.16

14 Ford Ranger DJX857 041c57129a4c80 1.48 5.57 0.87

15 Swift Suzuki IMU114 042157129a4c80 1.74 5.39 0.94

16 Chevrolet captiva sport KAM128 042657129a4c80 1.73 6.43 0.96

17 Kia Cerato Pro UCT349 042d57129a4c80 1.95 3.85 1.18

18 Chevrolet luv D max SXN424 043257129a4c80 1.73 5.04 1.02

19 Nissan Pathfinder OUE538 043957129a4c80 1.63 4.19 1.01

20 Renault symbol alize MQJ984 042958129a4c80 2.19 4.70 1.08

21 Chevrolet sail IJL641 040256129a4c81 1.25 5.80 1.04

Page 270: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

270

22 Hyundai Tucson gls CMD185 04fd56129a4c80 1.63 5.26 1.26

23 Nissan Frontier RHR573 O4f356129a4c80 2.21 5.03 1.16

24 Renault Symbol Ii Luxe RCV582 04f856129a4c80 1.95 6.48 1.03

25 Mazda 6 FLM000 04ee56129a4c80 1.50 6.21 1.17

26 Toyota prado sumo BYV825 04e956129a4c80 1.57 6.74 1

27 Chevrolet Optra BRC533 04e356129a4c80 1.64 5.30 1.16

28 Grand Vitara SUZUKI ABP 813 04de56129a4c80 1.48 3.53 0.96

29 Nissan Pathfinder RKK441 04d956129a4c80 2.20 3.14 1.02

30 FORD ECO SPORT CVZ682 04d456129a4c80 1.55 6.05 1.12

Fuente Elaboración Propia

• # De Prueba: corresponde a cada prueba realizada, en total en esta prueba se realizaron 30 lecturas de tags NFC con tres tipos de Smartphones.

• VEHÍCULO: corresponde a la marca del vehículo sobre el cual se verifico la información y el tiempo de lectura.

• NÚMERO DE PLACA: corresponde al número de placa del vehículo a identificar

• ID CHIP: Corresponde al ID identificador de cada tag y relacionado en la aplicación Web Transito.

• TIEMPO DE LECTURA: La toma del tiempo de lectura se inicia desde que se oprime el botón “Leer Tag” de la app NFCApp Vehicular, se acerca el teléfono a una distancia de 0 a 5 cm del tag ubicado en el vidrio panorámico del vehículo, la app identifica el Id del tag lo muestra en pantalla y se mide hasta el tiempo que presenta los datos de identificación del vehículo en la pantalla del Smartphone.

Page 271: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

271

11. RESULTADOS OBTENIDOS

Como principal resultado y aporte de la investigación se desarrolló un sistema para la identificación vehicular desde un sitio y momento específico, usando la tecnología NFC en un dispositivo móvil Android por medio del uso de tags instalados en los vehículos, el cual nos permitió validar la información de identificación de las características de los vehículos en tiempo real y desde una Base de Datos validando la información leída de cada tag y el respectivo vehículo al que pertenece. Hace parte del Sistema creado tres aplicaciones que se comunican entre sí por medio de Servicio Web para el intercambio de datos entre la Base de Datos y la Aplicación móvil en el Smartphone. El Sistema desarrollado puede ser una solución para la Secretaria de Movilidad y Transito de cualquier cuidad, entidad pública o privada que desee realizar la identificación de vehículos con el uso de tecnología NFC y dispositivos móviles. El Sistema creado también es una alternativa de bajo costo para realizar el proceso de identificación de vehículos ya que no sería necesario que las entidades que ejercen control y vigilancia adquieran e implementen soluciones en Hardware y Software más costosos, como por ejemplo el proyecto realizado para el Control a Taxis en Bogotá por medio de Lectores Hand Held UHF como se describe en la página 28 de este documento. En la ciudad de Bogotá las entidades encargadas del control vehicular como la Secretaria de Movilidad, Policía de Tránsito y ninguna otra entidad encarga de realizar control vehicular en el país han implementado una solución como la realizada y documentada en esta investigación. Dado el avance y auge de la tecnología NFC, en la fase de investigación hace más de dos años aun en el mundo no había evidencia de solución similar alguna, para el año 2015 se encontró que la Policía en Valencia - España realizo un desarrollo con la tecnología NFC para la identificación vehicular, esta solución está documentada en la página 147 de este documento. Esta Sistema desarrollado aporta una alternativa de bajo costo y muy alto beneficio para realizar el proceso de identificación vehicular en nuestra ciudad y país.

Page 272: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

272

11.1 FUNCIONAMIENTO TÉCNICO DE LA TECNOLOGÍA NFC

Como principal resultado de la documentación sobre el funcionamiento de la tecnología NFC podemos afirmar que se describió y aprendió su funcionamiento, historia, ventajas, clasificación, arquitectura, comunicación, estándares, usos, modos, ecosistema NFC y protocolos. Se logró identificar las áreas donde se puede implementar esta tecnología como en Transporte, Juegos, Educación, Marketing y Publicidad, Bibliotecas, Vehículos, Hogar, Oficina, Dispositivos Multimedia, Pagos Electrónicos y Aplicaciones Móviles.

11.2 DISEÑO E IMPLEMENTACIÓN DE UNA HERRAMIENTA DE SOFTWARE MÓVIL Y WEB PARA LA IDENTIFICACIÓN Y CONTROL DE VEHÍCULOS

Como resultado se obtuvo una Aplicación web y una Aplicación móvil totalmente funcionales, probadas satisfactoriamente en el Sistema de Identificación Vehicular desarrollado. Se realizó la identificación de varios vehículos y se comprobó la información del tag correspondiera a la del vehículo.

11.3 APLICACIÓN WEB VEHÍCULOS

Como parte del resultado se desarrolló la aplicación Web Vehículos, a nivel de software se utilizaron las tecnologías descritas en el capítulo 8. En cuanto a hardware se usó un servidor en el cual se instaló y configuro todo para que la aplicación funcione correctamente. Para la implementación del sistema configuro un nombre dominio y un servidor con Php, IIS y Mysql y PhpMyAdmin. Características de Software del Servidor

• Mysql Versión del servidor: 5.6.26 • Php, 5.5.3 • IIS • PhpMyadmin

Page 273: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

273

11.4 APP MÓVIL TRANSITO

La aplicación móvil fue diseñada para que corra en dispositivos móviles con Sistema Operativo Android 5, y que tengan el hardware de NFC integrado. Para desarrollo y pruebas se utilizaron teléfonos Samsung Galaxy Note 4 y Lg G4 y Tags de lectura y escritura Tipo I correspondientes a la norma ISO 14443A.

11.5 PRINCIPALES CARACTERÍSTICAS DEL API DE ANDROID

Como resultado se documentó y desarrolló la aplicación móvil usando el API de Android para NFC - (android.nfc), para el desarrollo de aplicaciones con NFC. Se realizó una descripción de las Clases, Interfaces del API, además se aprendió a usar el Sistema de Despacho de Tags, se documentó su funcionamiento y se describieron los Intents ACTION_NDEF_DISCOVERED, ACTION_TECH_DISCOVERED y ACTION_TAG_DISCOVERED y el desarrollo en XML para cada uno de ellos. De igual manera se describió como se crean los registros NDEF, leer y escribir Tags NFC.

11.6 ESTÁNDARES DE TAGS USADOS PARA LA LECTURA CON NFC

En el documento pagina 49 a 51, se describen los estándares NFC que se utilizan en la tecnología NFC, los cuales especifican los esquemas de modulación, codificación, velocidades de transferencia y formato de marco de la interfaz RF (radio-frecuencia) de los dispositivos NFC. Definen también esquemas de inicialización y condiciones requeridas para control de colisiones de datos durante la inicialización, tanto para modos pasivos como modos activos de NFC, y protocolos de transporte, incluyendo protocolos de activación y métodos de intercambio de datos. Estos estándares ISO / IEC también son usados en los diferentes tipos de Tags y sobre el cual trabaja cada uno tanto en lectura como en escritura. Las pruebas permitieron obtener como resultado que se debe tener en cuenta que tipo de tags son compatibles con el Dispositivo móvil a usar, no todas las etiquetas NFC con compatibles con todos los móviles existentes hoy en el mercado.

Page 274: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

274

11.7 DISEÑO UN SISTEMA DE BASE DE DATOS QUE PERMITA MOSTRAR LA INFORMACIÓN DE LOS VEHÍCULOS

Como resultado se obtuvo el desarrollo de la Base de Datos llamada Smartapp_nfcappmovil la cual está compuesta de tres tablas:

• Administrador: tiene datos de los usuarios con rol de Administrador, usuario y contraseña de autenticación en la aplicación web.

• Vehículos: tiene los campos con las características asociadas al vehículo (ïdchip, placa, etc.)

• Usertbl La Base de Datos permite almacenar toda la información de los atributos de cada vehículo y su gestión por parte del Administrador del Sistema. Los atributos para los que se crearon campos en la Base de Datos son:

• IdCHip • Placa • Cedula de Propietario • Clase de Vehículo • Capacidad • N motor • Cilindraje • Color • Marca • Línea • Modelo

11.8 DESARROLLO DE UN SERVICIO WEB

El resultado del desarrollo del Web Service fue una aplicación que se comunicara con la Base de Datos y la App Móvil, se logró realizar consultas a la BD según el Id del Tag y devolver los datos en un String para ser consumidos por la App del Dispositivo Móvil. El desarrollo se realizó en C# usando Visual Studio 2012 y se publicó en servidor Windows Server 2012 con soporte para Asp y como servidor web Internet Information Server (IIS).

Page 275: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

275

El Web Service recibe las peticiones de consulta con ID del Tag NFC leído de la app del Smartphone Android y este realizará la petición al servidor de Base de Datos haciendo la consulta según el ID del tag, el servidor de Base de Datos ejecuta la consulta solicitada y envía el Query al Web Service para que esta sea recibida y enviada a la app Android donde se mostrará en una Activity los datos correspondientes al Query que le corresponde el Id del Tag NFC según los campos asociados al tag del Vehículo.

Page 276: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

276

12. ANÁLISIS DE RESULTADOS DE LAS PRUEBAS

12.1 INSTALACIÓN DE TAGS

Para la instalación del tag en el vidrio panorámico delantero del vehículo debe encontrarse libre de agua, polvo y humedad. Se retira la capa protectora y se instala como se muestra en la figura 105. Se usaron tags circulares y rectangulares Mifare Ultralight para las pruebas, lo importante es que el tag sea compatible con el móvil con el que se realiza la lectura o usar un tipo de tag universal y que sea compatible con el teléfono usar. Se decidió colocar el tag al lado izquierdo del parabrisas del vehículo para facilitar la lectura al operador que realiza la lectura del tag y poder ejercer una mejor comunicación con el conductor en caso de algún requerimiento adicional. La etiqueta NFC debido a que se comunica por acoplamiento inductivo las ondas de radio pasan el vidrio a una distancia muy corta permitiendo la lectura del tag. Es importante mencionar que el tag va a estar por mucho tiempo expuesto al sol, lo que se estima que la vida útil de la etiqueta sea de 2 años a 3 años. Con el tiempo se puede condensar la etiqueta NFC y hay que cambiarla. La etiqueta debe de tener un una cobertura aislante que permita que la etiqueta sufra menos con la exposición de humedad y temperatura.

12.2 REGISTRO DE TAGS

En las pruebas que se realizaron se logró evidenciar que el registro de Tags puede realizarse desde un Pc normal con Sistema Operativo, navegador Web y conexión a internet, la aplicación Web Transito se desarrolló bajo estándares Responsive Design lo cual permite que la interfaz se adapte a cualquier dispositivo móvil sin ningún inconveniente, ello permite un acceso fácil y rápido al Sistema de Información Web y registrar Tags. También se permite crear usuarios administradores para realizar el proceso de una manera más distribuida en caso de varios lugares en que se requiera tener un Administrador del Sistema.

Page 277: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

277

Figura 108. Tags en Vehículos desde Navegador Smartphone

Fuente Elaboración Propia

12.2 LECTURA DE TAGS Y RESPUESTA DE DATOS

Se evidencio en las pruebas realizadas a los 30 vehículos que el tiempo de lectura puede variar según el modelo y características de los smartphones con los cuales se realiza la lectura de los tags en los vehículos. De los tres modelos de Smartphones usados el que menor tiempo presento en la lectura promedio fue el Lg G4 con un tiempo promedio de 1,075 segundos, seguido del Samsung Galaxy Note 4 con un tiempo de 1,5986 Segundos y por ultimo el que mayor tiempo promedio se tomo en presentar los datos fue el Samsung Galaxy S3

Page 278: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

278

con tiempo promedio de 5,1743 segundos, este ultimo teléfono tiene menor capacidad en memoria y procesador. Todos los tags funcionaron en las pruebas de lectura y se evidencio que para realizar una lectura precisa se debe acercarse el Smartphone al tag en la posición de la batería para evitar demoras en la detección del tag. También se evidencia que según los móviles y su compatibilidad además de las aplicaciones que se tenga para usar el NFC pueden mostrarse mensajes por el Toast Informando la compatibilidad alguna etiqueta. La aplicación solo realiza la lectura, no se puede modificar algún campo desde la app móvil, solo desde la aplicación web. Para las próximas versiones se podrá hacer un campo de observaciones para que se escriba algún comentario y observación para ser guardado en la Base de Datos, de igual manera se puede cargar una imagen del vehículo y tomar una fotografía del mismo en caso de un accidente o novedad. En sitios cerrados o sin ningún tipo de conectividad es imposible que se carguen los datos, la app móvil Transito requiere conexión a Internet para comunicarse con el Servidor donde se aloja el Web Service. Figura 109. Tiempo Promedio en lectura de Tags

Fuente Elaboración Propia

0

1

2

3

4

5

6

Samsung Galaxy

Note 4

Samsung Galaxy S3 Lg G4

1,5986

5,1743

1,075

Tiempo Promedio en Lectura Tags

Segundos (s)

Page 279: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

279

Un aspecto importante para la lectura de los tags es la respuesta de la comunicación, en las pruebas realizadas se evidencio que la recepción de los resultados en la aplicación móvil puede estar entre los 1 a 6 segundos. Se comprobó que los datos obtenidos de la Base de Datos corresponden ordenadamente a los solicitados, cada valor de cadena de texto corresponde al valor de la variable solicitada. Si un campo es null en la Base de datos se muestra como vacío o espacio en blanco en la app móvil.

12.4 PRUEBA DE DATOS MÓVILES Y WI- FI

El Sistema Desarrollado requiere de conexión Wi-Fi o acceso a datos con Redes móviles 4G, 3G, en el teléfono móvil y la respuesta depende en este caso si se conecta a Redes con Datos disponibles para lograr realizar la consulta y presentar los datos a la app móvil, si no hay señal celular o conexión a redes móviles la aplicación móvil no podrá realizar la conexión al Web Servicie ni Base de Datos.

12.5 PRUEBAS DE TAGS

12.5.1 Instalación de Tags en Vehículos. Los tags a usarse en vehículos deben ser adheribles y se deben instalar después de que se hayan registrado e impreso con los logos o imágenes según la entidad que los controla. Se realizaron pruebas con tags tipo 1 con las aplicaciones de Samsung, NFCTools para realizar la escritura y lectura de tag para diferentes eventos como enviar un correo abrir una página web, enviar un mensaje de texto, realizar una llamada. Con eso se logró comprobar el funcionamiento de tags y las diferentes funciones que traen muchas apps disponibles en Google Play Store. En las pruebas realizadas anteriormente se puede observar que el Sistema de identificación móvil presenta una alta efectividad, lo que demuestra que la aplicación cumple con los requerimientos específicos. 12.5.2. Tags. Según el proyecto a realizar se debe identificar los Tags NFC a usar deben ser compatibles con el dispositivo móvil o lector NFC a usar, esto para evitar inconvenientes de compatibilidad entre los modelos de móviles y los diferentes tipos de Tags.

Page 280: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

280

Los Tags y según su tipo tienen distintas características y capacidades como la capacidad de memoria, memoria útil, longitud de textos, url, compatibilidad con dispositivos móviles, usos, distancia de escaneo, criptografía e ID, estas características permiten diferentes usos. Según el proyecto a realizar se pueden usar los tags NTAG 203 y los Ultralight que son compatibles con todos los teléfonos móviles NFC que cuentan con esta tecnología. Una recomendación de los fabricantes de Tags es que si se van a usar sobre una superficie metálica se debe utilizar tags especiales para estas condiciones como anti métales, si no se tiene en cuenta ese factor el metal va interferir en el campo magnético, evitando que se lea o escriba sobre un tag. Los Tags de la Serie NTAG son compatibles con todos los dispositivos. En el mercado se encuentran de chips NTAG. De diferentes referencias como lo son los NTAG203, NTAG212, NTAG213, NTAG215 y NTAG216. Los Tags de chip MIFARE CLASSIC 1K E ULTRALIGHT, tienen compatibilidad limitada en lectura para ciertos dispositivos móviles. De todas las pruebas realizadas y mencionadas anteriormente se puede observar que el Sistema de Identificación Vehicular compuesto por las tres aplicaciones funciona correctamente y cumple con los requerimientos requeridos como prototipo para demostrar el proceso de identificación vehicular con la Tecnología NFC, dispositivos móviles con Sistema Operativo Android.

Page 281: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

281

13. TRABAJO FUTURO

Para las próximas versiones del proyecto y trabajo futuro por realizar se plantean una serie de actividades para llegar a una versión de producción estable y comercial:

• Subir el proyecto a GitHub, en una versión básica y se libere con una licencia Opensource.

• Utilizar MVC – Modelo – Vista – Controlador para mejorar el desarrollo para la aplicación web.

• Compilar la app móvil para Android en versiones 6 y 7. • Seleccionar un proveedor de tags teniendo en cuenta el diseño

personalizado e impresión de tags. • Realizar pruebas de seguridad a los tags, aplicaciones web y móviles, se

plantea realizar pruebas para conocer el procedimiento para la clonación de tags y duplicación de Ids de cada tag.

• Implementar un login de acceso a usuarios en la App Móvil para controlar y tener un log de las consultar realizadas por cada usuario que realiza la identificación vehicular.

• Crear un campo de observaciones para que se escriba algún comentario u observación para ser guardado en la Base de Datos, de igual manera se puede cargar una imagen del vehículo y tomar una fotografía del mismo en caso de un accidente o novedad.

Page 282: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

282

14. CONCLUSIONES

La tecnología NFC se ha posicionado en los últimos años varios sectores industriales como la automotriz, transporte público, juguetería, hogar, mercadeo, seguridad y en muchos otros sectores, lo cual permite demostrar una estabilidad y un posicionamiento ya en el mercado de diversas soluciones donde se ha implementado con muchos casos de éxito en el mundo. Es una tecnología de bajo costo si se compara con otras, la inversión en un proyecto puede limitarse al desarrollo de apps móviles, tags y lectores, permitiendo un más fácil ingreso a cualquier sector industrial, implementar soluciones empresariales usando la tecnología NFC permite el mejoramiento de servicios y productos a empresas públicas o privadas. La tecnología NFC se apoya en varios estándares y especificaciones técnicas (ISO/IEC, ETSI, ECMA) para el uso, desarrollo e implementación de soluciones, cuenta con respaldo de grandes compañías como Nokia, Philips y Sony, igualmente existe La NFC Fórum, esta organización promueve el uso de la tecnología NFC, asegurando la interoperabilidad entre dispositivos y servicios, permitiendo educar al mercado acerca de la tecnología NFC. Gran parte de los dispositivos móviles como Tabletas, Smartphones, Smartwatch, Lectores NFC y una gran parte de dispositivos para el hogar ya cuentan con esta tecnología, lo asegura un mayor uso por el usuario al ser integrada por los diferentes fabricantes en sus dispositivos. NFC cuenta con tres modos de funcionamiento y en cada uno de ellos existen diversidad de aplicaciones, siendo en estos últimos dos años el más importate el Modo de Emulación de Tarjeta, para realizar pagos con Tarjetas de Crédito cargadas desde el teléfono móvil. Se brindó al lector una visión de las oportunidades de negocio alrededor de la tecnología NFC y como se ha integrado al diario vivir de los usuarios para facilitar el acceso a información a un bajo costo. Se trabajó con el Sistema Operativo Android por su auge, gran avance en el mercado y las diversas APIs de desarrollo; Android está construido sobre el Kernel de Linux el cual es soportado por Google y avanza en el desarrollo de nuevas funcionalidades en cada versión liberada según sus niveles de API, también para el desarrollo del proyecto se usaron los dos principales IDE para el desarrollo de aplicaciones en Android como lo es Android Studio y Eclipse. El prototipo realizado puede mejorar procesos para la verificación de información de vehículos a las entidades encargadas de administrar esta información como

Page 283: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

283

Secretarias de Transito y Movilidad de las principales ciudades, para controlar la información que sea requerida de cada vehículo; NFC probó ser una alternativa efectiva y posible para la solución de este problema e inclusive demostró que puede ser muchísimo más conveniente que las soluciones RFID UHF empleadas actualmente en la ciudad de Bogotá. El manejo de la Tecnología NFC se hizo menos complicado, dado que se contaba con buena documentación por parte de Google de un API para el desarrollo de aplicaciones, lo que permitió facilitar el desarrollo, para probar tags en una etapa inicial se probaron aplicaciones disponibles en el Google Play Store para escribir y leer tags y probar así sus diferentes modos de funcionamiento. Es de gran valor el que se haya podido construir un prototipo con el nivel de innovación y complejidad técnica del construido en este proyecto, y que además se haya pensado no sólo como un proyecto interesante desde el punto de vista técnico académico. La problemática explorada en este proyecto de grado puede abarcar otras aplicaciones diferentes a la identificación de campo cercano como control de gases vehiculares, cumplimiento de seguro obligatorio, control de activos entre otros y el impacto que tiene este prototipo permite visualizar nuevas oportunidades de negocio que pueden ser desarrolladas con alto grado innovación, investigación y desarrollo. Por tratarse de un desarrollo en versión prototipo, no quisimos incurrir en un proceso complejo de ingeniería de software, pues lo que se perseguía desde un principio era superar la barrera técnica de adquisición y dominio de la tecnología de comunicación de campo cercano para resolver una problemática específica que tiene la identificación del tránsito de Bogotá Como aporte de la investigación, el Grupo de Investigación SINTEL le fue aprobado por el Centro de Investigaciones de la Universidad Distrital un importante proyecto de investigación basado en tecnología NFC para desarrollar soluciones que permitan optimizar problemas de transporte, educación y seguridad. Se incentivó la investigación mediante el Grupo de Investigación SINTEL, al desarrollo de software que implique la integración de sistemas web con aplicaciones móviles NFC, los investigadores del Grupo de Investigación realizaron nuevos aportes y soluciones usando esta tecnología.

Page 284: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

284

Bibliografía

Android. (2016). Android 5.0 Lollipop. Obtenido de https://www.android.com/history/#/lollipop

Android OS. (2012). Andorid OS. Obtenido de http://androidos.readthedocs.org/en/latest/data/caracteristicas/

Apple. (2015). Your wallet. . Obtenido de https://www.apple.com/apple-pay/ Arroyo, N. (11 de julio de 2013). Biblioblog. Obtenido de http://biblioblog.org/2013/0

7/11/tecnologia-nfc-para-ampliar-la-informacion-sobre-la-coleccion-de-la-biblioteca/

CALYPSO. (2014). CNA, Calypso Networks Association. Obtenido de https://www.calypsonet-asso.org/

Canós, J. H., Letelier, P., & Penadés, M. C. (2003). Metodologías Ágiles en el Desarrollo de Software. Obtenido de Google Academico: https://scholar.google.es/citations?view_op=view_citation&hl=es&user=oQ-2_UgAAAAJ&citation_for_view=oQ-2_UgAAAAJ:M05iB0D1s5AC

Castrillón, M. H. (16 de MAYO de 2015). Dispositivos para oír música sin enredarse con los cables. Obtenido de http://www.lanacion.com.ar/1793206-dispositivos-para-oir-musica-sin-enredarse-con-los-cables

Chavarría, D. C. (2011). TECNOLOGÍA DE COMUNICACIÓN DE CAMPO CERCANO (NFC) Y SUS APLICACIONES. San José.

Contratacion, P. Ú. (2009). SECOP. Obtenido de http://www.contratos.gov.co/consultas/detalleProceso.do?numConstancia=09-11-198326

Coskun, V., Ok, K., & Ozdenizci, B. (2012). Near field communication: from theory to practice. United Kingdom: Wiley.

Costello, C. (2014, enero 10). Smartphones Will Replace Subway Cards in New York. Retrieved from http://www.smartertravel.com/blogs/today-in-travel/smartphones-will-replace-subway-cards-in-new-york.html?id=17280219

Cruz, C. (13 de Enero de 2015). NFC encuentra su futuro en los autos y el Internet de las Cosas. Obtenido de http://www.cnet.com/es/noticias/nfc-futuro-autos-y-internet-de-las-cosas-nxp-broadcom/

Csapodi, M. &. (2002). New Applications for NFC Devices. DATE, C. (2001). Introducción a los sistemas de bases de datos. Naucalpan de Ju

árez, México: Pearson Educación. Developers, A. (2016). Android Developers. Obtenido de Android Developers: http:/

/developer.android.com/intl/es/guide/topics/manifest/uses-sdk-element.html#ApiLevels

Ecma International. (2012). ECMA - Standards@Internet Speed. Obtenido de http://www.ecma-international.org/

Ecma International. (2012). Ecma International. Obtenido de http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-352.pdf

Ecma International. (Junio de 2013). NFCIP-2 - Ecma International. Recuperado el 29 de Junio de 2015, de http://www.ecma-international.org/flat/publications/files/ECMA-ST/Ecma-352.pdf

Page 285: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

285

El Espectador. (29 de 12 de 2008). El Espectador. Obtenido de En Bogotá, hay 48.000 taxis legales: http://www.elespectador.com/noticias/bogota/articulo102780-bogota-hay-48000-taxis-legales

España, D. (2011). Xpress Hosting Blog. Obtenido de Angry Birds Magic: libera niveles con NFC.: http://blog.xpress.com.mx/2011/04/angry-birds-magic-libera-niveles-con-nfc/

Etiquetas NFC. (2015). Lector NFC ACR122 USB. Obtenido de http://www.etiquetas-nfc.es/acr122-usb

Exposito G, J. (22 de Octubre de 2014). ExpoCode Tech. Obtenido de http://expocodetech.com/nfc-en-android/

GlobalPlatform. (2015). Obtenido de https://www.globalplatform.org/mediaguideSE.asp

Google. (2012). Google Wallet . Obtenido de http://www.google.com/wallet/business/in-store/nfc.html

Google Android. (Octubre de 2015). ANDROID MARSHMALLOW. Obtenido de https://www.android.com/versions/marshmallow-6-0/

Google Android. (2015). Android Pay. Recuperado el Octubre de 2015, de https://www.android.com/pay/

Google Play. (11 de Enero de 2013). NFC Actions. Obtenido de https://play.google.com/store/apps/details?id=com.nfcquickactions.appfree

Google Play. (2 de Marzo de 2014). NFC Developer. Obtenido de https://play.google.com/store/apps/details?id=com.antares.nfc

Google Play. (26 de Agosto de 2014). NFC TagInfo by NXP. Obtenido de https://play.google.com/store/apps/details?id=com.nxp.taginfolite

Google Play. (2015). Aplicaciones. Obtenido de https://play.google.com/store/search?q=NFC&c=apps

Google Play. (2015). NFC TagInfo. Obtenido de https://play.google.com/store/apps/details?id=at.mroland.android.apps.nfctaginfo

Google Play. (2 de Abril de 2015). NFC TagWriter by NXP. Obtenido de https://play.google.com/store/apps/details?id=com.nxp.nfc.tagwriter&hl=es_419

Google Play. (26 de Mayo de 2015). NFC Tools. Obtenido de https://play.google.com/store/apps/details?id=com.wakdev.wdnfc

Google Play. (21 de Marzo de 2015). Trigger. Obtenido de https://play.google.com/store/apps/details?id=com.jwsoft.nfcactionlauncher&hl=es_419

Hamblen Matt, W. T. (19 de diciembre de 2012). ¿Cuál es la historia de NFC? Obtenido de https://nfcfirststeps.codeplex.com/wikipage?title=%C2%BFCu%C3%A1l%20es%20la%20historia%20de%20NFC?

HÉBUTERNE, S., & PÉROCHON, S. (2014). Android Guía de desarrollo de aplicaciones para Smartphones y Tabletas. En S. HÉBUTERNE, & S. PÉROCHON, Android Guía de desarrollo de aplicaciones para Smartphones y Tabletas (pág. 513). Ediciones Eni.

HYUNDAI. (10 de Enero de 2013). HYUNDAI REVEALS HIGHER LEVELS OF SMARTPHONE-CAR CONNECTIVITY. Obtenido de http://www.hyundaipressoffice.co.uk/release/362/#

Kent, B. (1999). Extreme Programming Explained. Embrace Change. En K. Beck,

Page 286: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

286

Extreme Programming Explained. Embrace Change. Boston, MA, USA : Addison-Wesley Longman Publishing Co. Recuperado el 28 de Junio de 2014

Manaure, A. (4 de Mayo de 2015). BenQ lanza proyectores NFC inalámbricos para empresas. Obtenido de BenQ lanza proyectores NFC inalámbricos para empresas

Manzhirova, V. S. (9 de Mayo de 2015). SPC WOW Speaker y Go NFC Speaker, altavoces inalámbricos de diseño. Obtenido de http://www.tuexperto.com/2015/05/09/spc-wow-speaker-y-go-nfc-speaker-altavoces-inalambricos-de-diseno/

McFerran, D. (19 de Febrero de 2015). Android Lollipop vs. Android KitKat: New Features & Material Design Explored. Obtenido de http://www.knowyourmobile.com/mobile-phones/android-lollipop/22329/android-lollipop-vs-android-kitkat-new-features-material-design

Michaelson, E. (1 de Abril de 2013). Library Journal. Obtenido de http://lj.libraryjournal.com/2013/04/marketing/ad-students-aim-to-bring-the-library-to-commuters-with-nfc-technology/

MIFARE. (2012). MIFARE Reader-Writer Kit. Obtenido de https://www.mifare.net/es/productos/tools/mifare-reader-writer-kit/

MIFARE. (2015). Mifare. Obtenido de https://www.mifare.net/es/ Mobility Services for Business. (2010). Gestión OTA (Over The Air) | Mobility Servic

es for Business. Obtenido de http://www.ms4b.com/soluciones/ecosistema/OTA

Molina, Y. S. (2012). Sistema operativo android: características y funcionalidad para dispositivos móviles. Tesis de pregrado no publicada, Universidad Tecnológica de Pereira, Pereira. Recuperado el 12 de Marzo de 2013

Morales, V. &. (2008). BDIGITAL. Recuperado el 8 de Noviembre de 2014, de Universidad EAFIT: http://bdigital.eafit.edu.co/PROYECTO/P621.3845CDM828/marcoTeorico.pdf

Moreno, A. O. (2000). Modelado conceptual de bases de datos relacionales: El modelo E/R. Obtenido de http://elies.rediris.es/elies9/4-1-2.htm

Móvil arena. (2012). Iphone-NFC -Movilarena. Obtenido de http://movilarena.com/wp-content/uploads/2012/01/iphone-NFC.jpg

Movilidad, S. d. (2011). Secretaría Distrital de Movilidad. Obtenido de http://www.movilidadbogota.gov.co/hiwebx_archivos/audio_y_video/boletin%20de%20cifras%2011-07-2012.pdf

NetBrain. (Agosto de 2014). Tecnología NFC. Recuperado el 21 de Agosto de 2015, de http://www.netbrain.es/tecnologia-nfc/

NFC forum. (2015). (N. forum, Productor) Recuperado el 1 de agosto de 2012, de http://www.nfc-forum.org/aboutnfc/

NFC FORUM. (2015). About the Technology. Obtenido de http://nfc-forum.org/what-is-nfc/about-the-technology/

NFC phones: The definitive list. (2 de Junio de 2015). Obtenido de http://www.nfcworld.com/nfc-phones-list/

NFC world. (2 de Junio de 2016). NFC phones: The definitive list. Obtenido de http://www.nfcworld.com/nfc-phones-list/

Page 287: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

287

Ocampo, C. (2012). Conecti.ca. Obtenido de Actualización de foursquare para android 4.0 soportará nfc.

Omicrono. (10 de Agosto de 2012). Omicrono. Obtenido de NFC y Apple Passbook, ¿qué son y cuál es mejor?: http://www.omicrono.com/2012/10/nfc-y-apple-passbook-que-son-y-cual-es-mejor/

Orfali, R. H. (1997). Cliente/Servidor. Guía de Supervivencia. México, México D.F:: McGraw-Hill.

Pérez, D. M. (2007). Ingenieria del software en entornos de SL Barcelona. España: Eureca Media.

Perez, E. (31 de 8 de 2014). Entendiendo el impacto de ART, la nueva máquina virtual de Android. Obtenido de http://www.elandroidelibre.com/2014/08/entendiendo-el-impacto-de-art-la-nueva-maquina-virtual-de-android.html

PHILIPS. (2014). Philips Wireless Bluetooth headphones SHB7150FB Over-ear Black. Obtenido de http://www.p4c.philips.com/cgi-bin/dcbint/cpindex.pl?slg=en&scy=fr&ctn=SHB7150FB/00

Project PINGEBORG. (2013). Project INGEBORG. Obtenido de http://pingeb.org/ Ramos, T. (1 de Junio de 2015). Valencia hará de sus policías locales, agentes 2.0

en una «smart city». Obtenido de http://www.larazon.es/valencia-hara-de-sus-policias-locales-agentes-2-0-en-una-smart-city-DF9878072

Samsung. (9 de Julio de 2013). Samsung presenta sus nuevas impresoras láser y multifunción con tecnología NFC. Obtenido de http://www.samsung.com/es/news/local/samsung-presenta-sus-nuevas-impresoras

SAMSUNG. (2 de marzo de 2015). Samsung presenta Samsung Pay, un revolucionario servicio de pagos a través del móvil. Obtenido de http://www.samsung.com/es/news/local/samsung-pay

Sánchez, N. M. (2010). Universidad Carlos III de Madrid. Obtenido de http://e-archivo.uc3m.es/handle/10016/7487

Santos, A. (10 de Julio de 2012). Austrian city builds public library with nothing but QR codes, NFC and stickers. Obtenido de http://www.engadget.com/2012/07/10/austrian-city-builds-public-library-with-qr-codes-nfc-stickers/

ShopNFC, NFCque. (2017). Chips NFC - Principales Diferencias. Obtenido de http://www.shopnfc.it/es/content/11-como-elegir-la-etiqueta-nfc

Smart Card Alliance. (2015). About Smart Cards : Introduction : Standards &raquo; Smart Card Alliance. Obtenido de http://www.smartcardalliance.org/smart-cards-intro-standards/

Sony. (2015). SmartWatch 3 SWR50. Obtenido de http://www.sonymobile.com/global-es/products/smartwear/smartwatch-3-swr50/specifications/#tabs

Sony Corporation. (2015). FeliCa,NFC,contactless,smart card,reader. Obtenido de http://www.sony.net/Products/felica/about/index.html

Sony Xperia M2. (25 de abril de 2014). Sony Xperia M2, un smartphone poderoso | Xperia M2. Obtenido de http://xperiam2.com/es/sony-xperia-m2-un-smartphone-poderoso/

Soto, J. L. (26 de Abril de 2015). Criterio Hidalgo. Obtenido de http://www.criteriohidalgo.com/notas.asp?id=304858

SymbolRepairParts. (2015). Motorola Symbol Repair Parts and Accessories. Obten

Page 288: DISEÑO E IMPLEMENTACIÓN DE UN PROTOTIPO DE SISTEMA DE IDENTIFICACIÓN CON NFC … · 2018-12-05 · diseÑo e implementaciÓn de un prototipo de sistema de identificaciÓn con nfc

288

ido de http://www.symbolrepairparts.com/images/mc319z-g.jpg Tan, K. (15 de Marzo de 2013). The Underground Library. Obtenido de https://vime

o.com/58161297 Tap To Pay. (2015). Tap To Pay. Recuperado el 25 de Julio de 2015, de http://www.

taptopay.com/ Toboso, E. (2013). Programación de Aplicaciones Android. Obtenido de http://pers

o.wanadoo.es/emiliotoboso/android/introduccion.htm Transmilenio. (27 de Agosto de 2013). TARJETA TULLAVE. Obtenido de http://ww

w.transmilenio.gov.co/es/articulos/tarjeta-tullave Transmisitp, T. y. (20 de Agosto de 2013). Transmilenio y SITP - TransmiSitp. Obte

nido de http://www.transmisitp.com/ Universidad Nacional Mayor de San Marcos. (2001). Universidad Nacional Mayor

de San Marcos. Obtenido de Control ambiental de vehículos: http://sisbib.unmsm.edu.pe/bvmedioambiente/dia_tierra/control.htm

Velasto, J. J. (26 de Diciembre de 2012). NFC, el smartphone sustituye a la llave de nuestro coche. Obtenido de http://hipertextual.com/2012/12/nfc-smartphone-llave-coche

Veloz, D. (2010). BDIGITAL Escuela Politécnica Nacional. Obtenido de http://bibdigital.epn.edu.ec/handle/15000/2

W3C. (2012). World Wide Web Consortium. Obtenido de Los servicios Web en Funcionamiento: http://www.w3c.es/Divulgacion/GuiasBreves/ServiciosWeb

W3C, W. W. (2012). Guía Breve de Servicios Web. Obtenido de http://www.w3c.es/Divulgacion/GuiasBreves/ServiciosWeb