Home

documento final - Repositorio Digital UDB

image

Contents

1. lol Coordenadas geograficas de la zona descripci n Ltminima Lgmirima Ltmaxima Lomaximal Altu a gt Pasillo de taller de eh 13 71571673 89 15523550265 13 71573053 89 15521 76693 H Pasillo de taller de eh 13 71571673 89 15521 76693 13 71573053 89 15519983595 Pasillo de taller de eh 13 71571673 89 15519983595 13 71573053 89 1551820026 Pasillo de taller de eh 13 71571673 89 1551820026 13 71573053 89 15516416925 Pasillo de taller de eh 13 71571673 89 15516416925 13 71573053 89 1551463359 Pasillo de taller de eh 13 71571673 89 1551 2850255 13 71573053 89 1551106692 Pasillo de taller de eh 13 71571673 89 1551 463359 13 71573053 89 1551 2850255 Pasillo de taller de el 13 71571673 89 1551106692 13 71573053 89 15509283585 Pasillo de taller de eh 13 71571673 89 15509283585 13 71573053 89 1550750025 Pasillo de taller de eh 13 71571673 89 1550750025 13 71573053 89 15505716915 Pasillo de taller de el 13 71571673 89 15505716915 13 71573053 89 1550393358 Pasillo de taller de eh 13 71571673 89 1550393358 13 71573053 89 15502150245 Pasillo de taller de eh 13 71571673 89 15502150245 13 71573053 89 1550036691 Pasillo de taller de eh 13 71573053 89 15502150245 13 71574433 89 1550036691 Pasillo de taller de eh 13 71574433 89 15502150245 13 71575813 89 1550036691 Pasillo de taller de eh 13 71575813 89 15502150245 13 71577193 89 1550036691 Pasillo de taller de eh 13 71578573 89 15502150245 13 71579953 89 1550036691
2. EXAMPLES e General This section has examples of the message exchange in a number of different scenarios The purpose of these is to illustrate one possible sequence of messages between a PC and a Magellan unit e Initial sequence The following exchange will verify that a GPS unit is attached to the PC place it in handshaking and transfer modes The first phase of this exchange should be a repeated transmission of the request for a PMGNVER message from the unit Once this message is received the PC will know what unit is attached and that the connection is operating correctly The following assumes that the GPS unit starts in its default state which has handshaking mode turned off Transmit To GPS Unit Received From GPS Unit SPMGNCMD VERSION 28 SPMGNVER 015 4 01 GPS3000XL 05 SPMGNCMD HANDON 70 SPMGNCMD TON 27 SPMGNCSM 27 60 Sample Initial Handshake Sequence WAYPOINTS e Retrieving All Waypoints From the GPS Unit On of the most common tasks is to retrieve all of the waypoints stored in the unit for display and or editing on a PC This task is accomplished by sending and receiving a sequence of messages The PC starts the sequence by sending a command message to the unit The unit then responds with one or more PMGNWPL messages After all messages have been sent the Anexo 3 Protocolo de transmisi n de GPS Magellan 108 Lazarillo Electr nico unit will send the END command to indicate that all data
3. I 0 J 0 Buscar las coordenadas al punto actual Xmin Xmax Y min Ymax Si Xb X Ymin Y No Xb X Ymin Y A Imn No Si Xb X Ymin Y No lt a Xb X Ymin Y No Error en la busqueda Criterio de busqueda Buscar Ltminima lt Yb lt Ltmaxima And Leminima lt Xb lt 1lemaxima B squeda en la base de datos Selecci n de la distancia mas cercana del vector distancia ordena en forma ascendente Advacente posad 1 lugar e Subrutina de alto Capitulo 2 Definici n del Sistema 25 Lazarillo Electr nico Esta subrutina detiene la el proceso de guiado y a su vez llama la rutina donde estoy para que le indique al usuario la nueva ubicaci n en la que se encuentra El diagrama de flujo se muestra a continuaci n en la figura 9 Incicio B guiado false Timer false Actualizar pantalla en base a coordenadas Call Donde_estoy Limpiar vanables utilizadas en el proceso de guiado Figura 9 Diagrama de flujo de la subrutina alto DEFINICI N DE LAS INTERFACES F SICAS Capitulo 2 Definici n del Sistema 26 Lazarillo Electr nico Seg n lo tratado y detallado en el sumario se ve la importancia de utilizar dispositivos perif ricos aparte de la computadora donde se encontrar almacenada el software y la informaci n es por ello que en este apartado se justificar el uso de dichos dispositivos Debido a que este sistema es
4. Datal Refresh FrmPrincipal Datal RecordSource Caminos FrmPrincipal Datal Refresh End Sub Private Sub Option2_Click Datal RecordSource Lugares Datal Refresh FrmPrincipal Datal RecordSource Lugares FrmPrincipal Datal Refresh End Sub Private Sub Picture2_ MouseMove Button As Integer Shift As Integer X As Single Y As Single por el momento esto sirve para saber la posici n bLatitud Y bLongitud X If bMoverX Then If bMoverY Then VScrolll Value bmy bLatitud bConsty Anexo 1 Manual del programador 64 Lazarillo Electr nico Picture2 Top VScroll1 Value End If HScroll1 Value bmx bLongitud bConstx Picture2 Left HScroll1 Value Else If bMoverY Then VScrolll Value bmy bLatitud bConsty Picture2 Top VScroll1 Value End If End If End Sub Private Sub Picture2_ MouseDown Button As Integer Shift As Integer X As Single Y As Single Dim lat As Double Dim lon As Double Dim Yp As Double Dim Xp As Double If Button 1 Then lat Y lon X CmdNombrar Enabled True buscar Ltminima bOperLtl amp lat amp and Ltmaxima amp bOperLt2 amp lat amp and Lgminima amp bOperLgl amp lon amp and Lgmaxima amp bOperLg2 amp lon With Datal Recordset FindFirst buscar If NoMatch Then Else If CmdNombrar Caption Aceptar Then Picture2 AutoRedraw True Yp Ltminima Ltmaxima 2 Xp Lgminima Lgmaxima 2 If bN gt 0 Then If Xp
5. datos r pida e Implementar un m todo que pueda guiar a la persona no vidente a trav s de rutas predefinidas bajo previa solicitud del usuario e Conseguir que el fonema reproducido sea para el usuario inteligible y casi natural para que no tenga problemas de compresi n a la hora de escuchar las indicaciones e Realizar una consola de botones la cual sea funcional para el ciego y no presente problemas en su uso o colocaci n ya que en situaciones en que la consulta v a comando de voz fuese dificultosa ser la consola la soluci n e Lograr que el reconocimiento de la voz del usuario sea captado en la menor cantidad de intentos posibles ya que el sistema ser capaz de solicitarle nuevamente el comando si este no es reconocido o no esta definido e Lograr finalmente la realizaci n de todos los objetivos anteriores para as obtener una aplicaci n que sea capaz de realizar todo lo propuesto Objetivos 4 Lazarillo Electr nico ALCANCES Se espera obtener un alto grado de orientaci n con respecto a la ubicaci n en la zona bajo estudio En otras palabras evitar que usuario no se desv e de una ruta preestablecida El sistema ser capaz de proporcionar al usuario la informaci n solicitada en un formato audible el cual se espera seg n el proceso descrito con anterioridad que sea claro y natural El resultado de la ubicaci n ser en tiempo real lo que facilitar la velocidad de desplazamie
6. 180 grados Case Else grados End Select ladol Lado Xc Yc FINI End If End If FrmPrincipal Datal RecordSource Caminos FrmPrincipal Data1 Refresh End Sub Function Lado Xc As Double Yc As Double As String Select Case Cuadrante Case Is 1 GoTo CUADRANTE22 Case Is 2 GoTo CUADRANTEI1 Case Else GoTo FIN2 End Select CUADRANTEI1 nn If Xc Puntos 0 0 Then If Yc gt Puntos 1 0 Then If Xc gt Puntos 0 1 Then Lado derecha Else Lado izquierda End If Else Anexo 1 Manual del programador 83 Lazarillo Electr nico If Xc gt Puntos 0 1 Then Lado izquierda Else Lado derecha End If End If Else If Xc gt Puntos 0 0 Then If Yc gt Puntos 1 1 Then Lado Izquierda Else Lado Derecha End If Else If Yc gt Puntos 1 1 Then Lado derecha Else Lado izquierda End If End If End If GoTo FIN2 CUADRANTE22 If Xc Puntos 0 0 Then If Yc gt Puntos 1 0 Then If Xc gt Puntos 0 1 Then Lado izquierda Else Lado derecha End If Else If Xc gt Puntos 0 1 Then Lado derecha Else Lado izquierda ssss End If End If Else If Xc gt Puntos 0 0 Then If Yc gt Puntos 1 1 Then Lado derecha Else Lado izquierda End If Anexo 1 Manual del programador 84 Lazarillo Electr nico Else If Yc gt Puntos 1 1 Then Lado izquierda Else Lado derecha End If End If End If FIN
7. DirectSS1 Speed Val Velocidad rapidez de habla Anexo 1 Manual del programador AT Lazarillo Electr nico End Sub Private Sub mnuarchivonombre_Click solicita el nombre de usuario Usuario InputBox favor digite el nombre de usuario End Sub Private Sub mnuarchivosalir_Click emite un sonido Beep llamada a rutina que guarda la configuraci n actual Call Guardar_Configuraci n End End Sub Private Sub mnuherramientasajuste_Click quita el foco del cuadro de texto y muestra el formulario de configuraci n del motor de voz Bfoco False FrmVelocidad Show End Sub Private Sub mnuherramientasmantenimientocrearbase_Click Bfoco False Form1 Show End Sub Private Sub mnuherramientasmantenimientoModo_Click muestra el formulario de mantenimiento grafico Bfoco False FrmMantenimientoG Show End Sub Private Sub mnuherramientasmantenimientoVerbase_Click muestra el formulario con la base de datos Bfoco False FrmMantenimientob Show End Sub Private Sub mnuherramientasseleccionar Click Call Seleccionar Zona rutina para seleccionar la zona de aplicaci n bloque que actualiza el control Data y formulario Anexo 1 Manual del programador 48 Lazarillo Electr nico Datal DatabaseName Base Datal Refresh Picture2 Picture LoadPicture BMP FrmPrincipal ScaleMode vbPixels Picturel ScaleMode vbPixels Picture2 AutoSize True escala Picture2 Scale Val lonmin
8. Longitudmin blonmin SaveSetting Lazarillo2 Crear Latitudmin blatmin Anexo 1 Manual del programador 66 Lazarillo Electr nico SaveSetting Lazarillo2 Crear Longitudmax blonmax SaveSetting Lazarillo2 Crear Latitudmax blatmax SaveSetting Lazarillo2 Variables bDlat bDlat SaveSetting Lazarillo2 Variables bDlon bDlon End Sub Sub Actualizar formulario Picturel Move 0 0 Scale Width VScroll1 Width ScaleHeight HScroll1 Height Textl Height Framel Height Picture2 Move 0 0 HScroll1 Top Picturel Height HScroll1 Left 0 HScroll1 Width Picturel Width Textl Top Picturel Height HScroll1 Height Textl Left 0 Textl Width Picturel Width VScroll1 Width Framel Top Picturel Height HScroll1 Height Textl Height Framel Left 0 Framel Width Picturel Width VScroll1 Width Textl Width VScroll1 Top 0 VScrolll Left Picturel Width VScrolll Height Picturel Height HScroll1 Max Picture2 Width Picturel Width VScroll1 Max Picture2 Height Picturel Height VScroll1 Visible Picturel Height lt Picture2 Height HScroll1 Visible Picturel Width lt Picture2 Width bMoverY Picturel Height lt Picture2 Height bMoverX Picturel Width lt Picture2 Width bmx HScroll1 Max 0 Val blonmax Val blonmin bConstx Val blonmin bmx bmy 0 VScroll1 Max Val blatmax Val blatmin bConsty VScroll1 Max bmy Val
9. Route log 20 routes Points of interest Downloadable from MapSource CD ROMs Compass screen Yes Moving map display Information unavailable Map storage Yes Data storage 23 MB for map storage 9 MB basemap Sun moon rise set phase Yes Additional features Satellite status display northfinder with sun moon positions sunrise sunset calculator best fish and game calculator Display size 2 3 by 1 4 inches Display resolution 160 x 104 pixels Display color 4 level gray Backlight Yes Battery requirements 2 AA Power cable Optional Carrying case Optional Vehicle mounting bracket Optional PC cable Optional Software Optional map software available Data card No Width 2 2 inches Depth 1 3 inches Height 5 6 inches Weight with batteries 6 ounces Warranty labor 1 year Warranty parts year Anexo 2 Especificaciones t cnicas GPS 101 Lazarillo Electr nico Data Transmission Protocol Specification for Magellan Products Revision 1 0 August 16 1999 P N 21 00091 000 GENERAL e Purpose This document describes the protocol used by Magellan s consumer GPS units to transfer waypoint data to and from an external device presumably a PC This protocol is an extension of the National MarineElectronics Association NMEA 0183 Standard for Interfacing Marine Electronic Devices Version 2 10 dated October 15 1995 e Intended Audience This document does not deal with the hardware issu
10. lt gt bPuntos 0 bN 1 Or Yp lt gt bPuntos 1 bN 1 Then ReDim Preserve bPuntos 1 bN bPuntos 0 bN Xp bPuntos 1 bN Yp bN bN 1 Picture2 DrawWidth 4 Form1 Picture2 PSet Xp Yp colorl Else Anexo 1 Manual del programador 65 Lazarillo Electr nico Picture2 DrawWidth 4 Form1 Picture2 PSet Xp Yp vb White bN bN 1 ReDim Preserve bPuntos 1 bN End If Else ReDim Preserve bPuntos 1 bN bPuntos 0 bN Xp bPuntos 1 bN Yp bN bN 1 Picture2 Draw Width 4 Form1 Picture2 PSet Xp Yp vbBlue End If Picture2 AutoRedraw False End If End If End With Else DlgBase ShowColor colorl DlgBase Color End If Textl SetFocus End Sub Private Sub Form_Resize Picturel Height Form1 Height Picturel Width Form1 Width Actualizar_formulario End Sub Sub Cargar bBase GetSetting Lazarillo2 Crear bBase bBMP GetSetting Lazarillo2 Crear bBMP blonmin GetSetting Lazarillo2 Crear Longitudmin blatmin GetSetting Lazarillo2 Crear Latitudmin blonmax GetSetting Lazarillo2 Crear Longitudmax blatmax GetSetting Lazarillo2 Crear Latitudmax bDlat GetSetting Lazarillo2 Variables bDlat bDlon GetSetting Lazarillo2 Variables bDlon End Sub Sub Guardar SaveSetting Lazarillo2 Crear bBase bBase SaveSetting Lazarillo2 Crear bBMP bBMP SaveSetting Lazarillo2 Crear
11. 1 Clic en men Herramientas 2 Luego escoger Mantenimiento 3 En la ventana emergente seleccionar la opci n Crear Base de Datos posteriormente surgir una ventana en la cual habr que seleccionar lo siguiente Lazarillo Electr nico S1 el nuevo dato se almacenara en la tabla de lugares o en la de caminos Especificar si ser una rea o si la selecci n ser de forma lineal Asignar un nombre al rea introducida despu s presionar el bot n nombrar para comenzar a puntear la zona 4 Finalmente clic en Aceptar para que el nuevo dato sea almacenado ox Opciones Selecci n de tabla 3 Nombre J Nombar Caminos C Lugares Borrar Mostrar puntos Color 15711680 Lineal Altura fi Cancelar Figura 10 Ventana para crear la base de datos Ver base de datos Esta opci n permite al usuario acceder a la informaci n contenida en las tablas de caminos y lugares con el objeto de comprobar cierta informaci n o modificar el valor de uno de sus contenidos La forma de acceder y visualizar dichas tablas es de la siguiente manera 10 Lazarillo Electr nico 1 Clic en men Herramientas 2 Luego escoger Mantenimiento 3 En la ventana emergente seleccionar la opci n Ver Base de Datos posteriormente surgir un archivo de Microsoft Acces el cual contiene toda la informaci n de los campos contenidos
12. Parametros actuales Opciones Posicion actual Latitud Longitud Minima 37 Modificar Latitud mima Maxima coo 1970 Lugar gt Longitud Agregar registro Altura IESO 89 15283 Seleeci n del tipo de zona a realizar los cambios Caminos C Lugares C digo utilizado para visualizar el formulario anterior Dim Constx As Double Dim Consty As Double Dim my As Double Dim mx As Double Dim MoverY As Boolean Dim MoverX As Boolean Private Sub CmdAgregar Click agregar un nuevo registro Textl Enabled True Text2 Enabled True Text3 Enabled True Text4 Enabled True Text5 Enabled True Text6 Enabled True Datal Recordset AddNew CmdAgregar Enabled False CmdGuardar Enabled True CmdQuitar Enabled False CmdModificar Enabled False End Sub Private Sub CmdGuardar Click guarda registr nuevo Anexo 1 Manual del programador 55 Lazarillo Electr nico CmdAgregar Enabled True CmdQuitar Enabled True CmdGuardar Enabled False CmdModificar Enabled True Datal Recordset Update FrmPrincipal Datal Refresh Textl Enabled False Text2 Enabled False Text3 Enabled False Text4 Enabled False Text5 Enabled False Text6 Enabled False End Sub Private Sub CmdModificar_Click If CmdModificar Caption Modificar Then Text1 Enabled True Text2 Enabled True Text3 Enabled True Text4 Enabled True Text5 Enabled True Text6 Enabled True CmdModificar Ca
13. Pig We de tollas de ol 450 METAN an CENA CENTAC 40 AEREA An CCANA gt aT e Seleeci n del tipo de zona a realizar los cambios l Lugares e Caminos Figura 11 Ventana para ver la base de datos Utilizar modo grafico Esta opci n permite al usuario visualizar la informaci n contenida en las tablas con la variante que lo hace en un ambiente totalmente grafico es decir se puede desplazar por toda la zona bajo estudio y saber los datos de sus coordenadas La forma de acceder a este tipo de entorno es de la siguiente manera 1 Clic en men Herramientas 2 Luego escoger Mantenimiento 11 Lazarillo Electr nico 3 En la ventana emergente seleccionar la opci n Modo Grafico posteriormente surgir una ventana en la cual se tendr informaci n como latitud longitud y ubicaci n dentro del mapa del punto correspondiente antenimiento grafico 1371571673 89 1552355026 1371573053 89 1552176693 Pasillo de taller de electr nica CO 8315241 Guardar Figura 12 Ventana para ver el modo gr fico 12 Lazarillo Electr nico Seleccionar el tipo de habla Esta opci n permite al usuario cambiar el timbre de voz adem s mediante una barra de desplazamiento disminuir o aumentar con la cual ser reproducido el fonema de la voz humana La forma de cambiar esto es la siguiente 1 Clic en men Herramientas 2 Luego escoger Selecci n del Habla 3 En la ventana
14. Pmedios 1 i Anexo 1 Manual del programador 99 Lazarillo Electr nico yas True Exit For End If Next 1 If yas Then yas False Else Adyacente PosAdy Nady PXanterior PXactual PY anterior PYactual PXactual Pmedios 0 Nady PYactual Pmedios 1 Nady Xp Pmedios 0 Nady Yp Pmedios 1 Nady yas False End If Else Adyacente PosAdy 1 PXanterior PXactual PYanterior PYactual PXactual Pmedios 0 1 PYactual Pmedios 1 1 Xp Pmedios 0 1 Yp Pmedios 1 1 End If End If End Function Sub Graficar_ruta Dim X As Double Dim Y As Double Dim i As Integer For i 0 To contador Step 1 X Puntos 0 1 Y Puntos 1 1 FrmPrincipal Picture2 PSet X Y vbBlue Next End Sub Anexo 1 Manual del programador 100 Lazarillo Electr nico Technical data ESPECIFICACIONES T CNICAS GPS Receiver 12 channels Differential ready DGPS Yes Acquisition time cold 2 minutes Acquisition time warm 1 minute Update rate 1 per second continuous Position accuracy Less than 7 meters 95 2D RMS Velocity accuracy 10 meters RMS velocity of 0 1 knots RMS Dynamics 6 Gs Water resistance rating IEC 529 IPX7 Operating temperature range 5 25 to 158 25 F Interfaces 76 Datums plus 1 user defined RTCM 104 in NMEA 0183 V1 5 and 2 1 out Antenna Quadifiler Helix Battery life 14 hours Waypoints 500 Track log 2000 tracklog points Track back Yes
15. Sub Private Sub Command1_Click FrmPrincipal DirectSS1 CurrentMode Val Voz FrmPrincipal DirectSS1 Speed Val Velocidad FrmPrincipal DirectSS1 Speak Usuario amp esta es una prueba End Sub Private Sub Form_Activate FrmPrincipal Enabled False Combol Text Combo1 List Val Voz 1 Slider1 Value Val Velocidad End Sub Private Sub Form_Unload Cancel As Integer Bfoco True FrmPrincipal Enabled True FrmPrincipal DirectSS1 CurrentMode Val Voz FrmPrincipal DirectSS1 Speed Val Velocidad End Sub Private Sub Sliderl_Click Velocidad CStr Slider1 Value End Sub Esta parte es del la que se utiliza para crear la base de datos Anexo 1 Manual del programador 60 Lazarillo Electr nico w Agragar zonas Opciones estamos proban Selecci n de tabla Caminos C Lugares Lineal Nombre ALtura Jo 0000001 TEE Borrar Mostrar puntos codigo utilizado Dim bMoverX As Boolean Dim bMoverY As Boolean Dim bmy As Double Dim bmx As Double Dim bConstx As Double Dim bConsty As Double Dim bx1 As Double Dim bx2 As Double Dim by1 As Double Dim by2 As Double Dim blinea As Boolean Dim bLatitud As Double Dim bLongitud As Double Private Sub CmdBorrar_Click Datal Recordset Delete End Sub Private Sub CmdCancelar_Click bN 0 CmdNombrar Caption Nombr
16. To 1000 Next S FrmPrincipal MSComm1 Input End Sub Modulo para crear base Dim bi As Integer Dim bj As Integer Dim bk As Double Dim bl As Integer Dim bl1 As Integer Dim bXa As Double Dim bya As Double Dim bXc1 As Double Dim bXc2 As Double Dim byc As Double Dim Id As Integer Dim Repetidos As Double Dim Brepetido As Boolean Sub NombrarArea For bj 0 To bN 1 For bi bj 1 To bN 1 If bPuntos 1 bj bPuntos 1 bi Then byc bPuntos 1 bj If bPuntos 0 bj lt bPuntos 0 bi Then bXc1 bPuntos 0 bj bXc2 bPuntos 0 bi Else bXc1 bPuntos 0 bi bXc2 bPuntos 0 bj End If Anexo 1 Manual del programador 75 Lazarillo Electr nico ReDim Preserve Repetidos 1 bl Repetidos 0 bl bPuntos 0 bi Repetidos 1 bl byc bl bl 1 Call Asignar Nombre Exit For Else If bi gt bN 1 Then byc bPuntos 1 bj bXc1 bPuntos 0 bj bXc2 bXcl Call Asignar_ Nombre Exit For End If End If Next bi Next bj End Sub Sub Asignar_Nombre Form1 Picture2 AutoRedraw True For bk bXc1 To bXc2 Step bDlonX buscar Ltminima amp bOperLtl amp byc amp and Ltmaxima amp bOperLt2 amp byc amp and Lgminima amp bOperLgl amp bk amp and Lgmaxima amp bOperLg2 amp bk With Form1 Datal Recordset FindFirst buscar If NoMatch Then 0000 Else Form1 Text1 Text bNombre Form1 Text3 Text baltura Form1 Picture2 Draw Width 5 FrmPrincipal Dat
17. Width Picturel Width VScroll1 Width VScrolll Top 0 VScrolll Left Picturel Width VScrolll Height Picturel Height HScroll1 Max Picture2 Width Picturel Width VScroll1 Max Picture2 Height Picturel Height VScroll1 Visible Picturel Height lt Picture2 Height Anexo 1 Manual del programador 51 Lazarillo Electr nico HScroll1 Visible Picturel Width lt Picture2 Width MoverY Picturel Height lt Picture2 Height MoverX Picturel Width lt Picture2 Width mx HScroll1 Max 0 Val lonmax Val lonmin Constx Val lonmin mx my 0 VScroll1 Max Val latmax Val latmin Consty VScroll1 Max my Val latmin End Sub Sub Seleccionar Zona rutina que se utiliza para seleccionar la zona de aplicaci n Dim Escala As String Dim algo As String Seleccionarbase DlgBase ShowOpen Algo DlgBase FileName If algo lt gt Then Base CurDir Sitio mdb BMP CurDir Sitio bmp Escala CurDir Sitio txt Open Escala For Input As 1 Input 1 lonmin latmin lonmax latmax DLat DLon Close 1 Else If Base Then GoTo seleccionarbase End If End If DlatY Abs Val latmax Val latmin Val DLat DlonX Abs Val lonmin Val lonmax Val DLon End Sub Sub Guardar Configuraci n guarda la configuraci n actual MSComm1 PortOpen False SaveSetting Lazarillo Variables Usuario Usuario SaveSetting Lazarillo Variabl
18. _ Puntos 0 M Puntos 0 M 1 Then moverse derecha Avanzar derecha Anexo 1 Manual del programador 81 Lazarillo Electr nico Else I moverse adelante Avanzar adelante End If End If End If GoTo FIN CUADRANTE3 GoTo FIN CUADRANTE4 FIN End If End Sub Sub Orientar grados As String ladol As String Dim stree As String Dim Xc As Double Dim Yc As Double Dim P As Double Dim Q As Double Dim R As Double Dim Z As Double Dim teta stree Lugar Longitud Latitud Xc Yc If stree Then FrmPrincipal Datal RecordSource Lugares FrmPrincipal Datal Refresh stree Lugar Longitud Latitud Xc Yc If stree Then FrmPrincipal DirectSS1 Speak Usuario amp Usted esta en una zona no registrada por el sistema Else GoTo saltar End If Else saltar If Xc Puntos 0 0 And Yc Puntos 1 0 Then grados ladol Else P Dist Puntos 0 0 Puntos 1 0 Puntos 0 1 Puntos 1 1 Q Dist Puntos 0 0 Puntos 1 0 Xc Yc R Dist Xc Yc Puntos 0 1 Puntos 1 1 Anexo 1 Manual del programador 82 Lazarillo Electr nico Z P P Q Q R R 2 P Q If Round Z 1 Then teta 0 ElseIf Round Z 1 Then teta 180 Else teta Atn Z Sqr Z Z 1 2 Atn 1 180 4 Atn 1 End If Select Case Val teta Case Is 0 grados ladol adelante l 1 1 GoTo FIN Case 45 90 135 grados 135 grados Case Is 180 grados
19. bases de datos Por medio de Microsoft Access se puede administrar toda la informaci n desde un nico archivo de base de datos Dentro del archivo puede dividir los datos en contenedores de almacenamiento independientes denominados tablas puede ver agregar y actualizar datos de la tabla por medio de formularios en pantalla puede asimismo buscar y recuperar s lo los datos que desee por medio de consultas Esta base de datos servir para que cuando el usuario solicite informaci n sobre su posici n se le proporcione esto implica la ubicaci n del usuario concerniente a un punto de referencia que ser an logo a la latitud y longitud de dicho punto Otro punto a tomar en cuenta es que por ser un sistema interactivo se contar con ciertos medios de comunicaci n entre el usuario y el sistema ya que este no solo podr obtener su ubicaci n si no que adem s se ha pensado en que la persona cuente con comandos por medio de voz y de teclado esto se lograr por medio de Visual Basic Este es un lenguaje de programaci n que se disfruta debido a su entrono visual A veces escribir un programa puede ser un trabajo tedioso con este lenguaje se reduce el esfuerzo y se vuelve m s agradable la Capitulo 1 Marco Te rico 10 Lazarillo Electr nico programaci n haciendo que muchos aspectos de esta sean tan sencillos como arrastrar con el rat n objetos gr ficos en la pantalla En realidad Visual Basic es el nico lenguaje
20. comando es decir la frase destino Luego de ejecutar el comando el sistema solicitara el lugar al cual se pretende llegar para calcular la ruta mas conveniente posible A su vez el sistema ira indicando al usuario hacia que direcci n avanzar as como los lugares por donde se vaya desplazando destino destino K modo guiado Anexo 6 Codigo fuente de la ayuda 118 Lazarillo Electr nico HKS Posici n Actual Esta opci n permite al usuario saber la posici n actual donde se encuentra La forma de utilizar este comando es decir la frase donde estoy Despu s de medio segundo el sistema reproduce un fonema con el cual indica el lugar donde se encuentra donde estoy K posici n actual actual Anexo 6 Codigo fuente de la ayuda 119 Lazarillo Electr nico HKS Detener subrutina de Destino Esta comando de voz permite al usuario detener en cualquier momento la ejecuci n de la subrutina destino a su vez corre la rutina donde estoy para indicarle al usuario la posici n actual donde esta despu s de haber detenido el proceso La forma de utilizar este comando es decir la frase alto alto K detener destino alto Anexo 6 Codigo fuente de la ayuda 120 Lazarillo Electr nico HKS Cerrar la aplicaci n Esta opci n permite al usuario cerrar por completo el entorno grafico del Lazarillo Electr nico Otra forma de efectuar la
21. correspondiente con su escala End If es utilizada para cargar la base de datos Y el mapa correspondiente con su escala operadores Datal DatabaseName bBase Datal RecordSource Caminos Datal Refresh Textl DataField Descripci n Text3 DataField Altitud cargando el mapa correspondiente Picture2 Picture LoadPicture bBMP Picture2 AutoSize True Form1 ScaleMode vbPixels Picturel ScaleMode vbPixels bDlatY Abs Val latmax Val latmin Val bDlat bDlonX Abs Val lonmin Val lonmax Val bDlon Picture2 Scale Val blonmin Val blatmax Val blonmax Val blatmin Picture BorderStyle 0 Picture2 BorderStyle 0 Actualizar_formulario cuadricular End Sub Private Sub Form _Unload Cancel As Integer Guardar Bfoco True FrmPrincipal Enabled True Anexo 1 Manual del programador 63 Lazarillo Electr nico End Sub Private Sub mnuopcionescrear_Click Form2 Show End Sub Private Sub mnuopcionesseleccionar_Click Seleccionar_Zona Datal DatabaseName bBase Datal Refresh Picture2 Picture LoadPicture bBMP Form1 ScaleMode vbPixels Picturel ScaleMode vbPixels Picture2 AutoSize True escala Picture2 Scale Val blonmin Val blatmax Val blonmax Val blatmin operadores llamada a rutina que actualiza el formulario Picturel BorderStyle 0 Picture2 BorderStyle 0 Actualizar_formulario End Sub Private Sub Option1_Click Datal RecordSource Caminos
22. de programaci n actual que los programadores principiantes pueden aprender con facilidad Debido a todo lo anterior este lenguaje nos permitir manejar las consultas a la base de datos adem s contiene librer as para la generaci n y reconocimiento de voz respecto a este punto se piensa implementar una aplicaci n basada en dichas librer as para facilitar el avance en esta parte del proyecto ya que si se dise an completamente dichos motores voz tomar a mucho m s tiempo modelarlos as como tambi n el uso de otras herramientas m s complicadas como redes neuronales y otros tipos de tecnolog a existentes A su vez Visual Basic se utilizar para crear una peque a aplicaci n que permita la interacci n entre el software propio del GPS y la computadora para lograr as obtener la informaci n correspondiente a latitud y longitud IMPORTANCIA La importancia del Lazarillo electr nico radica en que ser una herramienta multimedia que se utilizar para que una persona especialmente una no vidente conozca su posici n y que adem s se desplace a trav s de un mapa en la direcci n que l desee Tambi n para que las instituciones involucradas en ayudar a personas de este tipo tomen inter s en proyectos como ste para que las personas con esta incapacidad tengan una mejor adaptaci n a la sociedad Adem s un proyecto de esta naturaleza marca la pauta para que futuras investigaciones logren basadas en esta may
23. de tipo num rico doble que contiene los valores relativos de altitud de cada lugar de referencia dentro del campo Descripci n El cual ser indispensable para diferenciar si se va en ruta ascendente o descendente Los campos que contienen los valores de latitud y longitud correspondientes a las zonas est n en grados la altura tiene valores relativos en metros Hay un criterio de b squeda para encontrar un valor en las tablas de la base de datos la cual se fundamenta en las comparaciones simult neas basadas en la siguiente regla Ltminima lt Latitud lt Ltmaxima and Lgminima lt Longitud lt Lgmaxima Donde Latitud es el valor de latitud proporcionada por el GPS Longitud es el valor de longitud proporcionado por el GPS Los otros par metros son los nombres de los campos de la base de datos Continuando con la petici n este valor textual obtenido de la base de datos se transformara a un fonema de la voz humana por medio de una librer a que posee Microsoft SAPI Capitulo 2 Definici n del Sistema 20 Lazarillo Electr nico Todo lo anterior se resume en una rutina dentro del programa principal el diagrama de flujo se detalla en la figura 5 Inicio Mandar comando de petici n de coordenadas al GPS Espera de respuesta Cargar la informaci n proveniente del GPS Filtrar la informaci n y guardar el resultado en variables Cambiar el formato hexadecimal y pasarlo a ASCII Establecer
24. del GPS como tal e La interacci n del sistema con el usuario es de facil uso esto debido a que la interface grafica cuenta con todas las herramientas que se utlizan en la aplicaci n Tambien se considero necesario agregar una ayuda incorporada la cual contiene los pasos para ejecutar cualquier comando que el usuario desee implementar es decir el sistema tiene un entorno amigable como en un principio se se planteo Capitulo 5 Conclusiones y Recomendaciones 36 Lazarillo Electr nico Debido a que el sistema contiene en su entorno muchas variables se opto por desallorar una configuraci n por defecto para que el sistema funcione con un tipo de voz zona seleccionada nombre de usuario etc preestablecido Esto luego de analizar el funcionamiento de cualquier sistema de software en la actualidad Finalmente para complementar la facilidad de la aplicaci n se dise o un archivo ejecutable del Lazarillo electr nico el cual se instala de la misma forma que otro archivo ejecutalbe Este debido a la informaci n que contiene reduce los requerimientos de software en la maquina del usuario Esto complementa la funcionabilidad del sistema El Lazarillo electr nico es un proyecto de tesis que no termina en este punto sino que con la ayuda de las siguientes recomendaciones se puede mejorar Con un GPS de mayor presicion se lograria mas eficiencia en la aplicaci n Debido a que los valores de latitud y longitud serian m
25. del programador 42 Lazarillo Electr nico MdIRComandos MdlRComandos bas Modulos que contiene las rutinas donde 33 66 estoy destino alto entre otras utilizadas para el mismo prop sito mdlRuta MdlRuta bas Modulo que contiene las rutinas de trazado de rutas y otros calculos matem ticos para realizar el mismo fin MdlVariables MdlVariables bas Modulo donde estan definidas todas las variables publicas utilizadas en la aplicaci n PROCEDIMIENTOS Descripci n de la funcion Configuracion GPS Ninguno Configura el gps para establecer la comunicaci n NombrarArea Valores de extremos de la Asigna un nombre pre establecido a un zona que se quiere nombrar area asignada NombrarLineal Punto que se quiere nombrar Asigna un nombre al punto que se selecciona Guiado Un entero que indica el lugar Dirige al usuario cuando se encuentra en de referencia en la que se modo de guiado encuentra Alto Ninguno Detiene el proceso cuando se encuentra en modo de guiado Get_GPS Ayuda Audible Ninguno Rutina que pregunta que tipo de ayuda quiere recibir el usuario TrazarRuta Par metros de coordenadas Calcula la ruta posible a seguir destino Puntos de salida y puntos de Hace la petici n de un lugar de destino destino para calcular la ruta a seguir tanto del destino como el lugar actual en el que se encuentra Adyacente Coordenadas del punto actual Decide el lugar de referencia al cual desplazars
26. dentro de una zona bajo estudio basado en un sistema de posicionamiento global GPS Anexo 1 Manual del programador 41 Lazarillo Electr nico FORMULARIOS Nombre Archivo Descripci n FrmPrincipal FrmPrincipal frm Formulario principal que muestra la aplicaci n con una barra de tareas FrmVelocidad FrmVelocidad frm Formulario en la cual se muestra las funciones de configuraci n de tipo de VOZ FrmMantenimientoG FrmMantenimientoG frm Formulario que es utilizado para poder hacer modificaciones de la base de datos en forma grafica FrmMantenimientob FrmMantenimientob Formulario en la cual se muestra los datos que estan almacenados en la base de datos FrmAcerca FrmAcerca frm Formulario que muestra la a ae informacion de la version y datos de contacto de los creadores Form 1 FrmNombrar frm Formulario que es utilizado pa ee agragar zonas a la base de datos en forma grafica Form2 FrmCrearbase frm Formulario que crea los datos que a contienen cada lugar de la zona de aplicacion MODULOS MdIiCofiguraci n MdlCofiguracion bas Contine las rutinas de configuraci n del sistema Mdlcrearbase Mdlcrearbase bas Contiene las rutinas que se utilizan para crear la base de datos asi como tambien para nombrar las zonas MdlGuiado MdlGuiado bas Modulo que contiene las rutinas que son utilizadas a la hora de guiar al usuario cuando se encuentra en modo de guiado Anexo 1 Manual
27. destino b Subrutina trazado de la ruta Esta subrutina dimensiona las matrices que se utilizan para se llevar el control de lugares de referencia y sus puntos medios Para determinar que camino resulta mas corto se llama a la subrutina adyacente diagrama de flujo en la siguiente figura 8 que genera una matriz que se Capitulo 2 Definici n del Sistema 23 Lazarillo Electr nico compara con la de la subrutina de trazado de ruta si la matriz arrojada por adyacente es el lugar de destino la subrutina llega a su fin En l neas generales la subrutina adyacente en base a las coordenadas actuales de posici n en la que se encuentra hace la selecci n del lugar adyacente al cual desplazarse Luego se comienza a evaluar cada rea tomando un punto de ella si esta en el rea se toma la distancia hacia el punto de destino y se guarda en una matriz que lleva el control esto se hace para los cuatro lugares adyacentes para luego hacer una selecci n de cual es el lugar mas cercano al destino y la que cumple la condici n este es el lugar devuelto por la rutina El diagrama de flujo de la subrutina se muestra en la figura 7 Contador 0 4 0 Matriz a A a l contador contador 1 Matriz A call Adyacente Matriz A destino Si Figura 7 Diagrama de flujo de la subrutina trazado de ruta Capitulo 2 Definici n del Sistema 24 Lazarillo Electr nico Figura 8 Diagrama de flujo de la subrutina adyacente
28. el criterio de b squeda Busca Ltminima Latitud Ltmaxima and Lgminima Longitud lt Lgm axima Si No Buscar en la base de datos Enviar mensaje de lugar no Invocar el campo Descripci n de la registrado base de datos desde el motor de voz Fin Figura 5 Diagrama de flujo de la rutina donde estoy Capitulo 2 Definici n del Sistema 21 Lazarillo Electr nico e Desplazamiento de un lugar a otro a trav s de rutas predefinidas Para este modo de funcionamiento el usuario introducir el comando de voz distintivo destino Posteriormente indicara el lugar al que quiere llegar entonces el sistema lo guiara a trav s de una ruta determinada Para esto la rutina se dividir en tres posibles estados a Subrutina destino La cual buscara en la base de datos la posici n del lugar que el usuario ha introducido a trav s del micr fono Una vez identificado llamara la subrutina de trazado de la ruta El diagrama de flujo de esta subrutina se presenta en la figura 6 Capitulo 2 Definici n del Sistema 22 Lazarillo Electr nico lt Call Buscar_Posicion Es el lugar actual No Enviar mensaje de Ubicaci n actual destino Encontr lugar de destino Bguiado true Timer true Mensaje de ubicarse en otro Limpiar variables utilizadas en el proceso Mensaje de lugar no registrado Figura 6 Diagrama de flujo de la subrutina
29. el dispositivo que recibe las coordenadas de latitud longitud y altitud que provienen de los sat lites e Computadora port til Es el dispositivo que se utiliza para albergar el software que necesita la aplicaci n y d Visual Basic Es el lenguaje de programaci n en el cual se desarrolla el programa principal e Free speach 2000 Es el software que se utiliza para reconocer las instrucciones de petici n que el usuario realizara por medio del micr fono f SAPI 4 Es el software que el programa se apoyara para generar las instrucciones que la persona escuchara a trav s del audifono g Access Capitulo 4 Dise o e Implementaci n de la Aplicaci n 34 Lazarillo Electr nico Es el tipo de software par crear bases de datos y la cual se utiliza para realizar consultas de acuerdo a criterios de b squeda compatible con visual Basic Costos de producci n y venta Cantidad Descripci n Precio unitario Precio total 1 GPS Magellan 212 00 212 00 SportTrack HandHeld 500 00 500 00 1 Set de cables de 23 00 23 00 comunicaci n de GPS 5 00 2 00 10 00 Otros 500 50 00 pot E Preciode venta Total _ STIS 5353 31 El precio final para el usuario variar debido a que este no tendr la necesidad de adquirir mapas ni herramientas para la elaboraci n del sistema y en otros casos este pudiera ya obtener una port til lo que reducir a aun m s el costo Capitu
30. emergente seleccionar el tipo de voz y desplazar el bot n hacia la derecha para aumentar o izquierda para disminuir la velocidad a utilizar 4 Si se desea tener una idea de c mo ser el tipo de voz seleccionado hacer clic en el bot n Probar 5 Finalmente cerrar la ventana Selecci n del habla x AJUSTE Welocidad j Minimo xImo Volumen AAA 2 Minimo Maximo SELECCI N DE YOZ Probar Hombre Adulto Mujer Anciana Hombre Anciano Hombre Adulto hombre joven Ni o Mujer Adulta Mujer Joven Figura 13 Ventana para seleccionar el tipo del habla 13 Lazarillo Electr nico Ayuda Presenta el contenido de las funciones del Lazarillo Electr nico Temas de Ayuda Lazarillo Electronico j z x Contenido indice Buscar Haga clic en un Tema y despu s en presentar o en otra ficha p ej ndice 2 Introduccion Salir del programa Restaurar Valores Predeterminados ta Comandos de voz Desplazarce a un lugar de destino especifico Identificar posicion actual Detener proceso de Destino a Funciones de lugar o Funciones de usuario o Funciones de Mantenimiento o Funciones de Voz Imprimir Cancelar Figura 14 Ventana para visualizar la ayuda del sistema Versi n de la aplicaci n Muestra el nombre y versi n de la aplicaci n adem s algunos datos acerca de los creadores de la aplicaci n as como sus respectivos contactos w Acerca de Lazaril
31. has been sent This sequence is shown below which assumes that there are only two waypoints stored in the unit Sent To GPS Unit Received From GPS Unit SPMGNCMD WAYPOINT 7 1 SPGMNCSM 71 63 SPMGNWPL IllLlLa vyyyy yy a e c hh SPGMNCSM hh hh SPGMNCSM hh hh SPMGNCMD END 3D SPGMNCSM 3D 12 Retrieving All Way Points Anexo 3 Protocolo de transmisi n de GPS Magellan 109 Lazarillo Electr nico MAPA DE LA UNIVERSIDAD DON BOSCO ESCALA 1 1000 Anexo 4 Mapa de la universidad Don Bosco 110 Lazarillo Electr nico GEOSARIO Comando definici n Palabra o frase hablada con el prop sito de obtener cierto resultado En FreeSpeech los comandos son usados para dictar y editar textos navegar por programas y mucho m s Control definici n Mediante el uso de su voz puede moverse por ventanas cuadros de di logo documentos etc en el entorno Windows Dictado definici n Hablar por un micr fono para convertir el habla en texto Entrenamiento definici n Durante el Entrenamiento Usted lee textos en voz alta mientras FreeSpeech aprende sus caracter sticas vocales FreeSpeech genera un archivo de referencia vocal para mejorar el porcentaje de reconocimiento Se recomienda hacer este Entrenamien
32. la propia Microsoft Un API es un Interfaz de Programaci n de Aplicaciones que nos facilita realizar programas de forma independiente de lo que halla a un nivel inferior y en este caso se trata de unas librer as para hacer programas relacionados con varios aspectos del habla Speech ya sea s ntesis de voz y o reconocimiento de esta Este SAPI ha sido desarrollado por Microsoft y su uso es muy amplio SAPI est compuesto por varios API s b sicos especializados en ciertas tareas Voice Command API Reference Es el interfaz de alto nivel que permite incorporar controles y comandos de voz en las aplicaciones Windows Voice Dictation API Reference Es el interfaz de alto nivel que permite incorporar dictado por voz en las aplicaciones Windows Voice Text API Reference Es el SAPI de alto nivel para incorporar texto hablado en aplicaciones Windows Voice Telephony API Reference Es el interfaz SAPI de alto nivel para incorporar habla en las aplicaciones de telefon a de Windows Direct Speech Recognition API Reference Es el interfaz de bajo nivel para incorporar reconocimiento de habla en aplicaciones Windows Direct Text To Speech API Reference Es el interfaz de bajo nivel de la SAPI para incorporar texto hablado en aplicaciones Windows Capitulo 4 Dise o e Implementaci n de la Aplicaci n 32 Lazarillo Electr nico Speech Tools Reference Describe varias herramientas proporcionadas para aumentar la
33. misma operaci n es la siguiente 1 Clic en menu Archivo 2 Luego escoger Salir Sino presionando la combinaci n de teclas Ctrl S salir K cerrar aplicaci n cerrar Anexo 6 Codigo fuente de la ayuda 121 Lazarillo Electr nico HKS Reestablecer Valores Predeterminados Puede restablecer la configuraci n de la aplicaci n a valores predeterminados incluidos los valores de tono y velocidad de la voz del emulador Otra forma de efectuar la misma operaci n es la siguiente 1 Clic en menu Archivo 2 Luego escoger Configuraci n Inicial default K reestablecer valores i predeterminados Anexo 6 Codigo fuente de la ayuda 122 Lazarillo Electr nico HKS Crear Base de Datos Esta opci n permite al usuario agregar o modificar la informaci n contenida en las tablas adem s posee una interfase grafica la cual hace esta operaci n bastante sencilla e interactiva La forma de agregar lugares o caminos a la base de datos es de la siguiente manera 1 Clic en men Herramientas 2 Luego escoger Mantenimiento 3 En la ventana emergente seleccionar la opci n Crear Base de Datos posteriormente surgir una ventana en la cual habr que seleccionar lo siguiente Si el nuevo dato se almacenara en la tabla de lugares o en la de caminos Especificar si ser una rea o si la selecci n ser de forma lineal Asignar un nombre al rea introducida despu s presionar
34. se comenzaron a realizar aplicaciones con vocabularios peque os dependientes del locutor y con palabras de flujo discreto El flujo discreto es la forma como hablan los locutores es decir con peque as pausas entre palabras y frases Para los 70 s se desarrollo el primer sistema de reconocimiento de voz comercial Se mejoraron las aplicaciones de los sistemas dependientes del locutor que requer an una entrada discreta y tenia un vocabulario peque o Tambi n durante esa poca hubo grandes avances Capitulo 1 Marco Te rico 14 Lazarillo Electr nico tecnol gicos ya que se cambio del enfoque basado en reconocimiento de patrones a m todos de modelado probabil sticos como los modelos ocultos de Markov Para los 90 s los costos de las aplicaciones de reconocimiento de voz continuaron decreciendo y los vocabularios extensos comenzaron a ser normales Tambi n las aplicaciones independientes del locutor y de flujo continuo lo contrario al flujo discreto es decir en el habla no hay pausas significantes comenzaron a ser m s comunes e Conversores de texto a voz Recientemente los conversores texto voz est n alcanzando un nivel de calidad que posibilita su uso en aplicaciones tanto personales como dirigidas al gran p blico Existen algunos sistemas de alta calidad de conversi n texto voz para idiomas como el ingles y el franc s mientras que la mayor a de los disponibles para el espa ol son adaptaciones de lo
35. specified in the next field POINTS deletes all user waypoints deletes all user routes K deletes all points in the track buffer deletes all saved fixes deletes all of the above RAFT fdata when multiple NMEA records have been sent that does not deletes all aircraft characteristics include a record count identifier Send Ephemeris data Begin sending fix information until a STOP command is received off handshaking mode on handshaking mode Send Route messages STOP TRACK UNABLE VERSION WAYPOINT CHECKLIST FLIGHTPLAN AIRCRAFT TON TOFF MPHDR MPUPLOAD PIHDR PIUPLOAD MESSAGES ADDRESSES Commands uz dl PMONTRK ae PMGNVE WPI PMGN PMGNLS PMGN PMGN PMGNMPH Discontinue sending stream data at completion of current block Send Track messages Sent by the unit when a previous command cannot be complied with Send a string giving product and software version information Send NMEA Way Point Messages Send aircraft check list data Send aircraft flight plan data Send aircraft characteristic data urn on transfer mode for support of higher baud rates urn off transfer mode Send map header information aes Put unit into map upload mode PMGNPIH Send POI header information fs Put unit into POL upload mode PMGNMSG PMGNADR Send email messages Send addresses from address book Anexo 3 Protocolo de transmisi n de GPS Magellan 107 Lazarillo Electr nico
36. stick to the limitations described in the NMEA standards The primary affect of this is to limit most characters to ASCII characters with values of 20 hex to 60 hex This comprises numbers uppercase letters and most of the punctuation characters Some early Magellan units supported the use of an Icon within a text string These graphics characters are defined as binary values above the NMEA limit of decimal 125 These characters were transmitted through an escape character mechanism This consisted of using three bytes to represent the icon s code an ASCII ESC character followed by two characters that represented the icon s code For example an icon whose code is 03 would be represented by the three character string lt ESC gt 03 e Baud Rates This protocol can be implemented at any baud rate For reasons dealing with the internal priority structure of the software inside most Magellan consumer GPS units in normal mode this protocol will work best at 4800 baud If the unit is put into transfer mode with the TON command see below higher baud rates are possible Anexo 3 Protocolo de transmisi n de GPS Magellan 103 Lazarillo Electr nico Message Sequences The data communications messages as described in the following sections may be sent in any order The Magellan unit will process each command as it is received even if it means interrupting the command that is currently in process Since a user may cause the
37. voz seleccionado hacer clic en el bot n Probar 5 Finalmente cerrar la ventana voz voz s tipo de voz Anexo 6 Codigo fuente de la ayuda 115 Lazarillo Electr nico KS Personalizar Nombre Esta opci n permite al usuario ser llamado por su nombre al momento que el sistema le transmita alg n tipo de informaci n La forma de personalizar el nombre en el mensaje es la siguiente 1 Clic en menu Archivo 2 Luego escoger Nombre de Usuario 3 Digitar en la casilla en blanco el nombre 4 Clic en Cerrar para finalizar nombre K personalizar nombre nombre Anexo 6 Codigo fuente de la ayuda 116 Lazarillo Electr nico HKS Ajuste de velocidad del habla Esta opci n permite al usuario mediante una barra de desplazamiento disminuir o aumentar con la cual ser reproducido el fonema de la voz humana La forma de personalizar la velocidad de reproducci n es la siguiente 1 Clic en men Herramientas 2 Luego escoger Selecci n del habla 3 En la ventana emergente desplazar el bot n hacia la derecha para aumentar o izquierda para disminuir la velocidad 4 Clic en Cerrar para finalizar velocidad velocidad del habla habla Anexo 6 Codigo fuente de la ayuda 117 Lazarillo Electr nico K Desplazarse a un lugar de destino especifico Esta comando de voz permite al usuario colocar al sistema en modo guiado La forma de utilizar este
38. 10 13 7161300603 89 1535296328 13 7161484734 89 1535116269 13 7161300603 89 1535460387 13 7161484734 89 1535298328 13 7161300603 89 1535662446 13 7161484734 09 1535480397 0 0000000000 0 0000000000 0 0000000000 0 0000000000 0 0000000000 0 0000000000 0 0000000000 g 0000000000 0 0000000000 0 0000000000 0 0000000000 0 0000000000 0 0000000000 0 0000000000 Figura 4 Campos comprendidos en la base de datos Descripci n Este campo tipo texto contiene el nombre del lugar f sico al cu l har referencia el resultado de la b squeda Ltminima Es un campo de tipo num rico doble que contiene los valores de latitud minina correspondiente a la horizontal inferior de cada lugar de referencia dentro del campo Descripci n Capitulo 2 Definici n del Sistema 19 Lazarillo Electr nico Ltmaxima Es un campo de tipo num rico doble que contiene los valores de latitud m xima correspondiente a la horizontal superior de cada lugar de referencia dentro del campo Descripci n Lgminima Es un campo de tipo num rico doble que contiene los valores de longitud m nima correspondiente a la vertical izquierda de cada lugar de referencia dentro del campo Descripci n Lgmaxima Es un campo de tipo num rico doble que contiene los valores de longitud m xima correspondiente a la horizontal derecha de cada lugar de referencia dentro del campo Descripci n Altitud Es un campo
39. 2 End Function Sub indicar Dim stree As String Dim streel As String Dim i As Integer contador trae el valor del numero de lugares de referencia por las cuales se t ene que pasar If 1 lt contador Then funcion que devuelve el nombre del lugar de referencia correspondiente a latitud y longitud puntos medio y altura stree Lugar Longitud Latitud Xp Yp Altura Si no encuentra cambia de tabla If stree Then FrmPrincipal Datal RecordSource Lugares FrmPrincipal Datal Refresh stree Lugar Longitud Latitud Xp Yp Altura End If 1 1 gt 0 Then Call Cruzar 1 End If comparaci n si esta en el rango o alrededor del lugar de referencia If Xp Puntos 0 1 Or Bx And Yp Puntos 1 1 Or By And UCase Ruta l UCase stree Then If 1 gt 0 Then comparaci n con el objetivo de no repetir constante el lugar por donde se encuentra If Ruta l Ruta l 1 Or indicador 6 Then determina si hay que subir o bajar gradas If Alturanterior lt Altura Then FrmPrincipal DirectSS1 Speak subir amp Ruta l Alturanterior Altura ElseIf Alturanterior gt Altura Then Anexo 1 Manual del programador 85 Lazarillo Electr nico FrmPrincipal DirectSS1 Speak bajar amp Ruta l Alturanterior Altura Else FrmPrincipal DirectSS1 Speak usted est en amp Ruta l Alturanterior Altura End If indicador 0 Else controla las veces de repetici n del lugar de referencia por donde se encuentra ind
40. CUADRANTE2 comparaci n para determinar si se mueve en longitud constante If Puntos 0 M Puntos 0 M 1 Then determina si se mueve hacia la izquierda derecha o hacia adelante If Puntos 1 M gt Puntos 1 M 1 Then If Puntos 0 M gt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse a la derecha Avanzar derecha ElseIf Puntos 0 M lt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse izquierda Avanzar izquierda Else moverse adelante Avanzar Adelante End If Anexo 1 Manual del programador 80 Lazarillo Electr nico Else If Puntos 0 M gt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse izquierda Avanzar izquierda ElseIf Puntos 0 M lt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse derecha Avanzar derecha Else moverse adelante Avanzar Adelante End If End If Else If Puntos 0 M gt Puntos 0 M 1 Then If Puntos 1 M lt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse a la derecha Avanzar derecha ElseIf Puntos 1 M gt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse izquierda Avanzar izquierda Else moverse adelante Avanzar Adelante End If Else If Puntos 1 M lt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse izquierda Avanzar izquierda ElseIf Puntos 1 M gt Puntos 1 M 1 And
41. ElseIf Xp Puntos 0 1 1 Or Bx And Yp Puntos 1 1 1 Or By And UCase Ruta l 1 UCase stree Then debido a que si el GPS da una lectura adelante 1 1 2 Else FrmPrincipal DirectSS1 Speak Usuario amp se dirige en una direcci n no establecida FrmPrincipal DirectSS1 Speak favor repita el lugar de destino Bguiado False FrmPrincipal Picture2 Refresh 1 0 X2 0 Y2 0 FrmPrincipal TxtComandos SetFocus FrmPrincipal Timerl Enabled False End If End If End If Else Bguiado False FrmPrincipal Picture2 Refresh FrmPrincipal TxtComandos Text 1 0 FrmPrincipal Timerl Enabled False FrmPrincipal TxtComandos SetFocus End If FrmPrincipal Datal RecordSource Caminos FrmPrincipal Datal Refresh End Sub Sub Cruzar M As Integer If Puntos 0 M Puntos 0 M 1 Then By False Bx True Else Anexo 1 Manual del programador 87 Lazarillo Electr nico By True Bx False End If End Sub Sub Corregir M As Integer Dim i As Integer Dim Encontro As Boolean Encontro False For i 0 To contador If Xp Puntos 0 i And Yp Puntos 1 1 Then Encontro True Exit For End If Next i If Encontro Then M i 1 Else M M End If End Sub Modulo de comandos Sub donde_estoy Dim lugarl As String Dim Xp As Double Dim Yp As Double en este bloque se convoca la informaci n del GPS para luego compararla con la informaci n de la base de datos y devolver el mensaje en forma de habla
42. End With siguiente evaluaci n NET bloque utilizado para ordenar la matriz de lugares adyacente en orden ascendente jl j For j 1 Tojl Fori 1 Tojl If Distancia j gt Distancia i And j lt 1 Then Temp Distancia i Distancia i Distancia j Distancia jj Temp1 Temp2 PosAdy i Anexo 1 Manual del programador 98 Lazarillo Electr nico PosAdy i PosAdy j PosAdy j Temp2 Temp3X Pmedios 0 1 Temp3Y Pmedios 1 1 Pmedios 0 1 Pmedios 0 J Pmedios 1 1 Pmedios 1 j Pmedios 0 j Temp3X Pmedios 1 j Temp3Y End If Next i NET j lazo que determina cuantos lugares adyacentes hay Nady 0 Fori 1 Tojl Step 1 If PosAdy i lt gt Then Nady Nady 1 End If NET se utiliza para evaluar el lugar adyacente que mejor cumple las condiciones para que al final de el mejor lugar determina si el lugar adyacente es de donde se viene si es cierto buscar los siguientes lugares por lo contrario establecer el lugar If Pmedios 0 1 PXanterior And _ Pmedios 1 1 PYanterior And _ Nady gt 1 Then evalua lugares adyacentes que no son repetidos For i 2 To Nady si no es repetido determinar el lugar por lo contrario evaluar el siguiente If Pmedios 0 1 lt gt Puntos 0 a i Or _ Pmedios 1 1 lt gt Puntos 1 a 1 Then Adyacente PosAdy i PXanterior PXactual PYanterior PYactual PXactual Pmedios 0 i PYactual Pmedios 1 i Xp Pmedios 0 i Yp
43. KB ii a Publicar este archivo en Web i Enviar este archivo por correo electr nico X Eliminar este archivo A aaa a Figura 1 Proceso de instalaci n del Lazarillo Electr nico Cuando aparezca el ayudante del instalador presione el bot n 22 Instalaci n de aja q Bienvenidos al Programa de instalaci n de aja p El programa de instalaci n no puede instalar los archivos del sistema o actualizar los archivos compartidos si est n en uso Antes de continuar le recomendamos que cierre cualquier aplicaci n que se est ejecutando Figura 2 Ayudante del instalador Seleccione la ruta donde se instalara el programa por defecto 2 Instalaci n de aja Inicie la instalaci n para ello haga cic en el bot n que aparece abajo Haga clic en este bot n para instalar el software de aja en el directorio de destino especificado p Directorio C Archivos de programa Prototipo Cambiar directorio salir Figura 3 Ruta donde quedara almacenado el programa Lazarillo Electr nico Presione el bot n 2 aja Elegir grupo de programas El programa de instalaci n agregar los elementos al grupo mostrado en el cuadro Grupo de programa Puede escribir un nombre de grupo nuevo o seleccionar uno de la lista Grupos existentes Grupo de programas sa Grupos existentes Digital Camera Manager Inicio Micro DVD Player Microsoft Web Publishing Palm Desktop a Figura 4 Prog
44. Ltmaxima FrmPrincipal Datal Recordset Fields Lgmaxima Lgmaxima FrmPrincipal Datal Recordset Fields Descripcion bNombre FrmPrincipal Datal Recordset Fields Altitud baltura FrmPrincipal Datal Recordset Fields Id Id FrmPrincipal Datal Recordset Update FrmPrincipal Datal Refresh Yp Ltminima Ltmaxima 2 Xp Lgminima Lgmaxima 2 Anexo 1 Manual del programador 77 Lazarillo Electr nico Form1 Picture2 PSet Xp Yp colorl Form1 Picture2 DrawWidth 1 End If Next End With Form1 Picture2 AutoRedraw False End Sub Modulo de guiado Dim indicador As Integer Dim Lanterior As Integer Dim Indicadorstree As Integer Dim Xp As Double Dim Yp As Double Dim Bcruzar As Boolean Sub Guiado M As Integer Avanzar As String comparaci n si se va moviendo en direcci n paralelo a latitudes o longitudes IfM gt 0 And M lt contador Then determina el cuadrante en el que se encuentra Select Case Cuadrante Case Is 1 GoTo CUADRANTEl Case Is 2 GoTo CUADRANTE2 Case Is 3 GoTo CUADRANTE3 Case Is 4 GoTo CUADRANTE4 Case Else End Select GoTo FIN CUADRANTE comparaci n para determinar si se mueve en longitud constante If Puntos 0 M Puntos 0 M 1 Then determina si se mueve hacia la izquierda derecha o hacia adelante If Puntos 1 M gt Puntos 1 M 1 Then If Puntos 0 M lt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then movers
45. Magellan unit to start data transmission at any time the PC to which it is connected must expect any message to be received at any time In normal mode there is no acknowledgement returned by the unit when it processes a message This means that the PC cannot determine whether a message has been received and or understood In order to receive acknowledgement based handshaking a hand shaking mode has been implemented as part of this protocol It is recommended that this mode be used when implementing this protocol Otherwise processor load and limited buffer size in the GPS unit could cause commands and data to be lost In order to activate this mode the first message that should be sent to the Magellan unit is the command HANDON see below After the next message is sent the sending program should wait until either the Checksum response or the Unable response is received from the Magellan unit before transmitting again NMEA Messages Some of the messages in this protocol are duplicates of those described in the NMEA 0183 specification Whatever the origin of their format all the messages described in this document are treated the same and operate as described Magellan s consumer GPS units also have the capability of outputting streams of standard NMEA 0183 messages These are used to convey information regarding position velocity time navigation data GPS satellite status etc Under certain conditions for example the user has acti
46. Universidad Don Bosco Facultad de Ingenieria Escuela de Electr nica LAZARILLO ELECTR NICO TESIS DE GRADUACI N PARA OPTAR AL TITULO DE Ingeniero en Electr nica PRESENTADO POR Marvin No Artiga Tejada Mario Wilfredo Beltr n Fuentes Carlos Jonathan L pez Cisneros MARZO DE 2004 San Salvador El Salvador C A UNIVERSIDAD DON BOSCO RECTOR ING FEDERICO MIGUEL HUGUET VICERECTOR ACAD MICO VICTOR BERM DEZ SECRETARIO GENERAL LIC MARIO RAFAEL OLMOS DECANO DE LA FACULTAD DE INGENIER A ING CARLOS BRAN UNIVERSIDAD DON BOSCO FACULTAD DE INGENIERIA git gt T east y E JURADO EVALUADOR DEL TRABAJO DE GRADUACI N ING CARLOS HURTADO ING JULIO RIVERA ING WALTER SANCHEZ ING SERGIO MARTIN ING ISRAEL CARDONA DEDICATORIA Agradesco primeramente a nuestro Dios todo poderoso por acompa arme durante toda mi vida e iluminarme el camino al xito A mis padres Maximiliano Artiga Bonilla y Mar a Graciela de Artiga a quienes amo mucho Por darme todo el cari o y apoyo necesario para mi porvenir ya que gracias a ellos he alcanzado otra meta m s y espero no fallarles con mis esfuezos A mis hermanos Wilfredo Max Concepci n Sandra Francisca Yaneth Rolando por apoyarme en los momentos mas dif ciles de la etapa de mis estudios y ayud ndome en tomar decisiones importantes en mi vida A gradesco tambien a todas a
47. Val latmax Val lonmax Val latmin Operadores llamada a rutina que actualiza el formulario Picturel BorderStyle 0 Picture2 BorderStyle 0 Call Actualizar_formulario End Sub Private Sub Picture2_ MouseDown Button As Integer Shift As Integer X As Single Y As Single If Button 1 Then Activar el microfono TxtComandos SetFocus ElseIf Button 2 Then llamar a rutina donde estoy Call Alto End If End Sub Private Sub Picture2_ MouseMove Button As Integer Shift As Integer X As Single Y As Single TxtComandos SetFocus End Sub Private Sub Picture MouseUp Button As Integer Shift As Integer X As Single Y As Single If Button 1 Then desactivar el micr fono End If End Sub Private Sub Picture2_Paint If Bguiado Then Call Graficar_ruta End If If Bfoco Then TxtComandos SetFocus End If Anexo 1 Manual del programador 49 Lazarillo Electr nico End Sub Private Sub Timerl1_Timer por el momento esto sirve para saber la posici n Dim G As String Dim Lad As String Call Get_GPS Longitud Latitud If Longitud lt gt 0 And Latitud lt gt 0 Then Call Mover_Pantalla If Bguiadol Then Call Orientar G Lad If Lad lt gt adelante And Lad lt gt Then DirectSS1 Speak Usuario amp desplazarse amp G amp hacia amp Lad By True Bx True Bguiadol False Bguiado True ElseIf G And Lad lt gt Then Bguiadol False Bguiado True End If End If b
48. aci n se tendr n reas inaccesibles al usuario desde el punto de vista que el sistema asumir que por su situaci n el desplazamiento por estas no es necesario Alcances Y Limitaciones 6 Lazarillo Electr nico CAPITULO 1 MARCO TEORICO ORIGENES Anteriormente se han implementado los GPS para aplicaciones de ubicaci n de sitios edificios militares y civiles as como de personas Tambi n en el rea de la cartograf a es ampliamente utilizado para la elaboraci n de mapas Las empresas mar timas usan cada d a m s esta tecnolog a de posicionamiento para sus barcos A la vez se han hecho muchas aplicaciones en el ramo de motores de voz y o voces artificiales De tal forma se han combinado los GPS los tel fonos m viles y computadoras para desarrollar aplicaciones que van mas all de la simple ubicaci n geogr fica haciendo mucho m s complejas y tiles sus aplicaciones dando as m s soluciones a diversas necesidades DEFINICIONES El desarrollo de la aplicaci n se basar principalmente en un conjunto GPS software y computadora que determine la latitud y longitud en donde se encuentra el usuario la cual se traducir a puntos de referencia correspondientes al sitio geogr fico en que se encuentre e Localizaci n geogr fica de un punto Se puede realizar detallando uno de estos dos par metros 1 Coordenadas geogr ficas en formatos de longitud y latitud 2 Coordenadas X Y UTM Uni
49. al Recordset AddNew FrmPrincipal Datal Recordset Fields Ltminima Ltminima FrmPrincipal Datal Recordset Fields Lgminima Lgminima FrmPrincipal Datal Recordset Fields Ltmaxima Ltmaxima FrmPrincipal Datal Recordset Fields Lgmaxima Lgmaxima FrmPrincipal Datal Recordset Fields Descripcion bNombre FrmPrincipal Datal Recordset Fields Altitud baltura FrmPrincipal Datal Recordset Fields Id Id FrmPrincipal Datal Recordset Update Anexo 1 Manual del programador 76 Lazarillo Electr nico FrmPrincipal Datal Refresh Yp Ltminima Ltmaxima 2 Xp Lgminima Lgmaxima 2 Form1 Picture2 PSet Xp Yp color Form1 Picture2 DrawWidth 1 End If End With Next bk Form1 Picture2 AutoRedraw False End Sub Sub NombrarLineal Form1 Picture2 AutoRedraw True With Form1 Datal Recordset For bi 0 To bN 1 Step 1 bXa bPuntos 0 bi bya bPuntos 1 bi buscar Ltminima amp bOperLtl amp bya amp and Ltmaxima amp bOperLt2 amp bya amp and Lgminima amp bOperLgl amp bXa amp and Lgmaxima amp bOperLg2 bXa FindFirst buscar If NoMatch Then 0000 Else Form1 Text1 Text bNombre Form1 Text3 Text baltura Form1 Picture2 Draw Width 5 FrmPrincipal Datal Recordset AddNew FrmPrincipal Datal Recordset Fields Ltminima Ltminima FrmPrincipal Datal Recordset Fields Lgminima Lgminima FrmPrincipal Datal Recordset Fields Ltmaxima
50. amp Usted est en una zona no registrada por el sistema End If FrmPrincipal Datal RecordSource Caminos FrmPrincipal Data1 Refresh End If End Function Sub Get_GPS LGx As Double LTy As Double Dim Dato As String Dim Laty As String Dim Lonx As String Dim Repetir As Integer Repetir 0 LA FrmPrincipal MSComm1 Output PMGNCMD WAYPOINT 78 amp Chr 10 amp Chr 13 For i 0 To 1000 Next Dato FrmPrincipal MSComm1 Input Anexo 1 Manual del programador 92 Lazarillo Electr nico If Mid Dato 1 1 lt gt Or Len Dato lt 27 Then Repetir Repetir 1 If Repetir lt 30 Then GoTo LA Else Repetir 0 Dato End If End If Lonx Mid Dato 19 7 Laty Mid Dato 8 7 LGx grados Lonx LTy grados Laty End Sub Function grados G As String As Double Dim HG As String Dim LG As String parte alta del valor HG Mid G 1 2 parte baja LG Mid G 3 5 grados Val HG Val LG 60 End Function Modulo para trazar ruta Dim Distancia As Double Dim PosAdy As String Dim Pmedios As Double Dim Ymax As Double Dim Ymin As Double Dim Xmax As Double Dim Xmin As Double Dim PXanterior As Double Dim PYanterior As Double Dim PYactual As Double Dim PXactual As Double Dim a As Integer Dim yas As Boolean funcion que de vuelve en la matriz Ruta los nombres de los puntos de referencia por donde se trazo la ruta X Y X2 Y2 son los puntos medios de p
51. andera Bguiado se activa ala hora de guiar If Bguiado Then Call indicar End If End If TxtComandos SetFocus End Sub Private Sub TxtComandos_KeyPress KeyAscii As Integer por el momento se hace as para reconocer la voz por medio del programa freespeech comparaci n si el car cter es enter If KeyAscii vbKeyReturn Then KeyAscii 0 TxtComandos Text LTrim TxtComandos Text comparaci n si la bandera destino es verdadero que se pone en True cunado el comando de voz es destino If Bdestino Then Bdestino False Ldestino TxtComandos Text Anexo 1 Manual del programador 50 Lazarillo Electr nico llamada a rutina que determina el destino Call Destino Else Comando UCase TxtComandos Text identificaci n del comando de voz Select Case Comando Case Is DONDE ESTOY Call donde_estoy Case Is ALTO Call Alto Case Is DESTINO Bdestino True DirectSS1 Speak favor diga lugar de destino Case Else DirectSS1 Speak Comando no v lido repita por favor End Select TxtComandos Text End If End If TxtComandos SetFocus End Sub Sub Actualizar_formulario rutina que actualiza el formulario a las nuevas condiciones Picturel Move 0 0 ScaleWidth VScroll1 Width ScaleHeight HScroll1 Height TxtComandos Height Picture2 Move 0 0 HScroll1 Top Picturel Height HScroll1 Left 0 HScroll1 Width Picturel Width TxtComandos Top Picture Height HScroll1 Height TxtComandos Left 0 TxtComandos
52. ar ReDim Preserve bPuntos 1 bN End Sub Private Sub CmdGraficar_Click Text1 SetFocus graficar End Sub Private Sub CmdNombrar_Click Anexo 1 Manual del programador Lazarillo Electr nico If CmdNombrar Caption Aceptar Then If Command1 Caption Lineal Then bNombre Text2 Text baltura Text3 Text NombrarLineal bN 0 Else bNombre Text2 Text baltura Text3 Text NombrarArea bN 0 End If CmdNombrar Caption Nombrar Else CmdNombrar Caption Aceptar End If End Sub Private Sub Command1_Click If Command1 Caption Lineal Then Command1 Caption Area Else Command1 Caption Lineal End If End Sub Private Sub Form Activate FrmPrincipal Enabled False End Sub Sub Seleccionar Zona Dim Escala As String Dim algo As String seleccionarbase DlgBase ShowOpen algo DlgBase FileName If algo lt gt Then bBase CurDir Sitioc mdb bBMP CurDir Sitio bmp Escala CurDir Sitio txt Open Escala For Input As 1 Input 1 blonmin blatmin blonmax blatmax bDlat bDlon Close 1 Else If bBase Then GoTo seleccionarbase End If Anexo 1 Manual del programador 62 Lazarillo Electr nico End If operadores End Sub Private Sub Form_Load Call Cargar bN 0 If bBase Or bBMP Or blatmin Or blatmax Or blonmin Or blonmax Then Seleccionar Zona es utilizada para cargar la bBase de datos Y el mapa
53. artida y llegada respectivamente para trazar la ruta Anexo 1 Manual del programador 93 Lazarillo Electr nico Sub TrazarRuta X As Double Y As Double X2 Y2 Dim Trazada As Boolean Trazada False a 0 por el momento para efectos de prueba se esta utilizando la variable contador con el motivo de llevar el conteo de los lugares de referencia que se establecen en la ruta contador 0 se guarda la distancia entre el punto de partida y destino ReDim Preserve Distancia 0 Distancia 0 Dist X Y X2 Y2 ReDim Preserve PosAdy 0 PosAdy 0 Lugar X Y X Y ReDim Preserve Pmedios 1 0 Pmedios 0 0 X Pmedios 1 0 Y ReDim Preserve Ruta a Ruta a PosAdy 0 ReDim Preserve Puntos 1 0 Puntos 0 0 X Puntos 1 0 Y PXactual X PYactual Y PXanterior X PYanterior Y yas False Do variable que lleva el control de lugares de referencia encontrados a a l contador contador 1 ReDim Preserve Ruta a Ruta a Adyacente X Y X Y rutina que devuelve el nombre del lugar adyacente y el punto medio de su rea almacena el punto medio del lugar de referencia encontrado ReDim Preserve Puntos 1 a Puntos 0 a X Puntos 1 a Y Ifa gt 2 Then Anexo 1 Manual del programador 94 Lazarillo Electr nico compara si el lugar de referencia ya a sido encontrado If Puntos 0 a Puntos 0 a 2 And Puntos 1 a Puntos 1 a 2 Then borra el lugar de referencia s
54. as exactos lo que ayudaria al sistema a determinar con menos margen de error la posici n actual del usuario El uso de una pc puede sustituirse por otro dispositivo como PALM que contenga un puerto serial Para que la portabilidad y ergonomia del sistema en conjunto sea mayor En todo caso para una computadora portatil ayudaria el hecho de omitir el uso de dispositivos perifericos que no estas incluidos en los requerimientos minimos del sistema Investigar mas acerca de algoritmos de trazado de rutas Con el objeto de mejorar el prototipo utilizado en esta aplicaci n ya que si bien este funciona seria bueno considerar la estructura de otros algoritmos que han sido dise ados para un fin similar El usuo de equipo multimedia dirigido a trabajar en entornos ruidosos con el objeto de que este no afecte la interaccion del usuario y el sistema Capitulo 5 Conclusiones y Recomendaciones 37 Lazarillo Electr nico REFERENCIAS BIBLIOGRAFICAS www nautigalia com gps www aero org publications GPSPRIMER www tel uva es jpozdom telecomunicaciones portadagps html Manual de usuario GPS Magellan SportTrack HandHeld http www speech philips com FreeSpeech 2000 Referencias Bibliograficas 38 Lazarillo Electr nico ANEXOS Anexos 39 Lazarillo Electr nico Anexo 1 Manual del programador Lazarillo Electr nico Sistema para determinar la posici n del usuario
55. ase de datos Crear base de datos DER Datos creados condiciones par crear base de datos Xmaxima 9 151891 Xminima 89 1564 Ltminima Ymaxima 13 717732 Yminima 13 7140 N CuadrosX 250 N cuadrosY 200 Ltmaxima Lgminima Lgmaxima 0 0000001 SS aceptar Altitud Nombre estamos probando 0 100 M 4 Datal pir seleccionar tabla Caminos C Lugares Dim EscalaY As Double Dim EscalaX As Double Dim DeltaX As Double Dim DeltaY As Double Dim CuadrosX As Double Dim CuadrosY As Double Dim ValorY1 As Double Dim ValorY2 As Double Dim ValorX As Double Dim Nom As String Dim basel As String Private Sub Command Click Dim bi As Integer Dim bj As Integer Dim contador As String Anexo 1 Manual del programador 69 Lazarillo Electr nico Command 1l Enabled False contador 0 For bj 1 To Cuadros Y ValorY2 ValorY1 Delta Y ValorX Val Text5 Text For bi 1 To CuadrosX Datal Recordset AddNew TxtLtminima Text ValorY1 TxtLtmaxima Text ValorY2 TxtLgminima Text ValorX ValorX ValorX DeltaX TxtLgmaxima Text ValorX Text7 Text Nom contador contador 1 If ProgressBar Object lt ProgressBarl Max Then ProgressBar1 Object contador End If Txtdescripci n Text contador Datal Recordset Update Next ValorY 1 ValorY2 Next Command2 Enabled True Label14 Caption basede datos creada End Sub Private Sub Command2_ Cl
56. blatmin End Sub Sub operadores If Val blatmin lt Val blatmax Then bOperLtl lt bOperLt2 gt byl Val blatmin Anexo 1 Manual del programador 67 Lazarillo Electr nico by2 Val blatmax bOpy Else bOperLtl gt bOperLt2 lt byl Val blatmax by2 Val blatmin bOpy End If If Val blonmin lt Val blonmax Then bOperLgl lt bOperLg2 gt bx1 Val blonmin bx2 Val blonmax bOpx Else bOperLgl gt bOperLg2 lt bx1 Val blonmax bx2 Val blonmin bOpx np End If End Sub Private Sub Picture MouseUp Button As Integer Shift As Integer X As Single Y As Single blinea False End Sub Private Sub Picture2_Paint cuadricular End Sub Sub cuadricular Picture2 DrawWidth 1 For bi bx1 To bx2 Step bDlonX Picture2 Line bi by1 bi by2 Next For bi byl To by2 Step bDlatY Picture2 Line bx1 bi bx2 bi Next End Sub Sub graficar Dim JK As Double Picture2 AutoRedraw True Anexo 1 Manual del programador 68 Lazarillo Electr nico With Datal Recordset Picture2 DrawWidth 5 Do MoveNext If EOF Then Exit Do End If If Idescripci n lt gt Then Yp Ltminima Ltmaxima 2 Xp Lgminima Lgmaxima 2 Form1 Picture2 PSet Xp Yp colorl End If Loop End With Picture2 AutoRedraw False Picture2 Draw Width 1 End Sub Crea los valores de la b
57. borar un software el cual defina la ruta conveniente para el traslado de un lugar a otro y pueda hacer la diferencia entre sitios validos por los cuales si se puede circular Para obtener el valor an logo pero ya a nivel de un sitio de referencia Ambas tablas poseen los mismos campos los cuales se detallan en la siguiente figura E Microsoft Access Archivo Edici n Yer Insertar Formato Registros Herramientas Ventana X nlShri li Bas o e Nal Aar ia rx at 0 _ descripci n Ltminima Lgminima Ltmaxima Lgmaxima Altitud edificio a 13 7161484734 89 1534752150 13 7161668865 89 1534570091 0 0000000000 El edificio a Ei edificio a E edificio a E edificio a E edificio a edificio a m edificio a El edificio a al edificio a edificio a E edificio a E edificio a edificio a edificio a 13 7161484734 89 1534934210 13 7161668865 89 1534752150 13 7161484734 09 1535116269 13 7161668865 69 1534934210 13 7161484734 09 1535290328 13 7161668865 69 1535116269 13 7161484734 69 1535460387 13 7161668865 89 1535298328 13 7161484734 89 1535662446 13 7161668865 89 1535480307 13 7161484734 69 1535644506 13 7161668865 89 1535662446 13 7161484734 89 1536026565 13 7161668865 89 1535844506 13 7161484734 89 1536208624 13 7161666865 89 1536026565 13 7161300603 89 1534752150 13 7161484734 89 1534570091 13 7161300603 89 1534934210 13 7161484734 89 1534752150 13 7161300603 89 1535116269 13 7161484734 89 15349342
58. caciones y comandos del proyecto LAZARILLO ELECTRONICO ica 113 Detener subnitina de Destini ii 120 Cerrar la Aplicaci A ead aak a A 121 Reestablecer Valores Predeterminados id 122 Cea Doe ae A A a de ebia stale ast weaves 123 Lazarillo Electr nico Lazarillo Electr nico Instalaci n del Lazarillo Electr nico Objetivos Al terminar este modulo usted ser capaz de realizar las siguientes acciones Y Identificar los requisitos necesarios para la instalaci n v Instalar correctamente el Lazarillo Electr nico Requisitos necesarios para la instalaci n del Lazarillo Electr nico e HARDWARE Pentium II 233 Hz Pentium III 500 Hz RAM 64 MB RAM 128 MB VIDEO VIDEO 16 MB CDROM 24X CD ROM Disco Duro 4GB Disco Duro_ 10 GB Tabla 1 Requisitos de Hardware para la instalacion e SOFTWARE Y Se requiere como sistema operativo a Windows 98 o superior v La resoluci n debe establecerse en 1024 x 768 p xeles Lazarillo Electr nico Proceso de Instalaci n Con un doble clic ejecute el instalador del Lazarillo Electr nico amp instDEMO Archivo Edici n Ver Favoritos Herramientas Ayuda a 3 Q rs Q ei j B squeda E gt Carpetas E Direcci n E C Documents and Settings MELARA Escritorio Jos mioslinstDEMO v Ear Tareas de archivo y carpeta 2 an Support 5 DEMO 5 045K8 mj Cambiar nombre a este archivo Mover este archivo SETUP LST Copiar este archivo I
59. de determinar la posici n latitud longitud Un factor que puede afectar la precisi n del GPS es la geometr a satelital En t rminos m s sencillos con geometr a satelital nos referimos a la ubicaci n de cada sat lite con respecto a los dem s sat lites desde la perspectiva de la unidad GPS Este problema se puede presentar si todos los sat lites que en un momento dado proveen de se al a una unidad se encuentran en la misma latitud e Qu tan preciso puede ser un GPS Un GPS de uso civil standard entrega una precisi n de entre 15 y 70 metros dependiendo del n mero de sat lites disponibles y la geometr a de dichos sat lites Unidades m s sofisticadas y costosas pueden llegar a entregar una precisi n de cent metros utilizando m s de una frecuencia De todas maneras un GPS standard puede mejorar su precisi n de 5 metros y a veces hasta menos de un metro mediante un proceso llamado GPS Diferencial DGPS El DGPS emplea un segundo receptor para computar correcciones a las mediciones del GPS Estos servicios est n disponibles dependiendo del pa s y pueden tener un costo extra e Reconocimiento y generaci n de voz motores de voz Capitulo 4 Dise o e Implementaci n de la Aplicaci n 31 Lazarillo Electr nico Como se dijo anterior En la actualidad los modelos de interfaz m s extendidos son JSAPI Java Speech API de Sun Microsytems SRAPI Speech Recognition API de Novell y SAPI Speech API de
60. denadas correspondientes al lugar que se le indica por medio de la variable Lugar Sub Coordenadas Lugar As String Xp1 As Double Yp1 As Double Xp As Double Yp As Double Dim D As Double Dim Da As Double Dim pd As Boolean Dim Xpn As Double Dim Ypn As Double pd False With FrmPrincipal Datal Recordset Xp 0 Yp 0 FindFirst Descripci n like amp Lugar amp If NoMatch Then GoTo SALIR Else Ypn Ltminima Ltmaxima 2 Xpn Lgminima Lgmaxima 2 D Dist Xp1 Yp1 Xpn Ypn Da D Xp Xpn Yp Ypn End If busca el lugar mas cercano Do FindNext Descripci n like amp Lugar amp If NoMatch Then Exit Do Else Ypn Ltminima Ltmaxima 2 Xpn Lgminima Lgmaxima 2 D Dist Xp1 Yp1 Xpn Ypn If D lt Da Then Da D Xp Xpn Yp Ypn End If End If Anexo 1 Manual del programador 96 Lazarillo Electr nico Loop End With SALIR End Sub funcion que eval a los lugares adyacentes validos al punto actual Function Adyacente X As Double Y As Double Xp As Double Yp As Double As String Dim sitio As String Dim Nady As Integer Dim i As Integer Dim j As Integer Dim k As Integer Dim jl As Integer Dim Xa As Double Dim ya As Double Dim Xb As Double Dim Yb As Double Dim Temp1 As Double Dim Temp As String Dim Temp3X As Double Dim Temp3Y As Double Dim distan As Double sitio Lugar X Y Temp3X Temp3Y con esta funcion se conoce ala vez las coordenadas m ximas y m nimas de
61. e a la derecha Anexo 1 Manual del programador 78 Lazarillo Electr nico Avanzar derecha ElseIf Puntos 0 M gt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse izquierda Avanzar izquierda Else moverse adelante Avanzar Adelante End If Else If Puntos 0 M lt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse izquierda Avanzar izquierda ElseIf Puntos 0 M gt Puntos 0 M 1 And _ Puntos 1 M Puntos 1 M 1 Then moverse derecha Avanzar derecha Else moverse adelante Avanzar Adelante End If End If Else determina si se mueve hacia la izquierda derecha o hacia adelante If Puntos 0 M gt Puntos 0 M 1 Then If Puntos 1 M lt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse a la izquierda Avanzar izquierda ElseIf Puntos 1 M gt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse derecha Avanzar derecha Else moverse adelante Avanzar Adelante Anexo 1 Manual del programador 79 Lazarillo Electr nico End If Else If Puntos 1 M lt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse dereCha cccccccococoo Avanzar derecha ElseIf Puntos 1 M gt Puntos 1 M 1 And _ Puntos 0 M Puntos 0 M 1 Then moverse izquierda Avanzar izquierda Else moverse adelante Avanzar adelante End If End If End If GoTo FIN
62. e en base a distancia Anexo 1 Manual del programador 43 Lazarillo Electr nico Graficar_ruta Vector de lugares de Grafica la ruta el cual se tiene que seguir referencia Valores de latitud y longitud Hace la petici n al gps y busca el lugar de referencia en una base de datos FUNCIONES Nombre Par metros que devuelve Descripci n de la funci n Lado Los grados al cual desplazarse y la Calcula la direcci n al cual se direcci n tiene que orientar grados Grados de desplazamiento Calcula los grados para la orientaci n Dist Distancia entre el punto actual y el Calcula la distancia entre dos destino puntos Buscar Posici n Par metros de destino nombre del lugar Se utiliza para buscar las de destino coordenadas del lugar de destino Formulario principal Anexo 1 Manual del programador 44 Lazarillo Electr nico LAZARILLO ELECTRONICO Prototipo MINENE 072004 Archivo Herramientas Ayuda 4 Inicio fm PROYECTO FINAL El c digo siguiente es utilizado para poder visualizar el formulario anterior Dim Constx As Double Dim Consty As Double Dim Programa As Double Dim maxscroll As Double Dim Comando As String Dim MoverX As Boolean Dim MoverY As Boolean Dim my As Double Dim mx As Double Private Sub Form_Load recuperaci n de configuraci n Call Cargar carga la los ultimos cambios modificados desde la ultima vez que se utilizo el siste
63. el bot n nombrar para comenzar a puntear la zona 4 Finalmente clic en Aceptar para que el nuevo dato sea almacenado crearbase K crear base base Anexo 6 Codigo fuente de la ayuda 123 Lazarillo Electr nico HKS Ver Base de Datos Esta opci n permite al usuario acceder a la informaci n contenida en las tablas de caminos y lugares con el objeto de comprobar cierta informaci n o modificar el valor de uno de sus contenidos La forma de acceder y visualizar dichas tablas es de la siguiente manera 1 Clic en men Herramientas 2 Luego escoger Mantenimiento 3 En la ventana emergente seleccionar la opci n Ver Base de Datos posteriormente surgir un archivo de Microsoft Acces el cual contiene toda la informaci n de los campos contenidos verbase K ver base base Anexo 6 Codigo fuente de la ayuda 124 Lazarillo Electr nico HKS Entrar en modo Gr fico Esta opci n permite al usuario visualizar la informaci n contenida en las tablas con la variante que lo hace en un ambiente totalmente grafico es decir se puede desplazar por toda la zona bajo estudio y saber los datos de sus coordenadas La forma de acceder a este tipo de entorno es de la siguiente manera 1 Clic en men Herramientas 2 Luego escoger Mantenimiento 3 En la ventana emergente seleccionar la opci n Modo Grafico posteriormente surgir una ventana en la cual se tendr informaci n como latit
64. erLt1 As String Public bOperLt2 As String Public bOperLgl As String Public bOperLg2 As String Public blatmin As String Public blonmin As String Public blatmax As String Public blonmax As String Public bBase As String Public bBMP As String Public bDlat As String Public bDlon As String Public bPuntos As Double Public bN As Integer Public bNombre As String Public baltura As String Public bOpx As String Public bOpy As String Public color Public bDlatY As Double Public bDlonX As Double modulo de configuraci n de puerto y GPS con esta rutina se configura la comunicaci n con el gps Sub Configuracion GPS Dim Abierto As Boolean Dim S Dim i As Integer Abierto FrmPrincipal MSComm1 PortOpen If Abierto Then FrmPrincipal MSComm1 PortOpen False FrmPrincipal MSComm1 CommPort 1 FrmPrincipal MSComm1 Settings 4800 n 8 1 FrmPrincipal MSComm1 Handshaking comXOnXoff FrmPrincipal MSComm1 PortOpen True Else FrmPrincipal MSComm1 CommPort 1 FrmPrincipal MSComm1 Settings 4800 n 8 1 FrmPrincipal MSComm1 Handshaking comXOnXoff FrmPrincipal MSComm1 PortOpen True Anexo 1 Manual del programador 74 Lazarillo Electr nico End If S PMGNCMD VERSION 28 FrmPrincipal MSComm1 Output S For i 0 To 1000 Next S FrmPrincipal MSComm1 Input S PMGNCMD HANDON 70 FrmPrincipal MSComm1 Output S For i 0 To 1000 Next S PMGNCMD TON 27 FrmPrincipal USComml1 Output S For i 0
65. ererererereree 27 CAPITULO 4 DISE O E IMPLEMENTACION DE LA APLICACI N 29 Defic OM tt A Ao aAA do D RAA A MRENA 29 e Caracteristicas 0 IAE E N E EN 29 e Requerimientos m nimos de hardware y de SO tWAf8 ooonconnnonncnnnnnncnnnnconcnoncnnnonnos 33 e Descripci n de los componentes id A A 33 Costos de producci n y Venta lidia ai ice 35 CAPITULO 5 CONCLUSIONES Y RECOMENDACIONES O 36 Referencias BIDMO ORAM CS raid 38 ANEXO pi cal 39 e Anexo 1 Manual del programadot cccececseesseceseceeeceeeeeeeeeeeseecaeeneeneeeensees 40 e Anexo 2 Especificaciones t cnicas GPS ccecccccceesceesceeeeceteceeeeeeseecsaecneenees 101 e Anexo 3 Protocolo de comunicaci n GPS ceceeseesseesteceteeceteeeeeeenseeeaeenes 102 e Anexo 4 Mapa de la universidad Don BOSCO cccceeeeeceseeeseeeeeeeeeeeteeeeeeensees 110 Anexo 5 Glosa Ona iaia a a e a a meso eas 111 o Anexo 6 C digo fuente de la ayuda a 113 e Anexo 7 Manual del usuario cece cece ec ccceececceccscceeceseseseesesL 27 Lazarillo Electr nico INTRODUCCI N El Lazarillo electr nico es la conclusi n de un proyecto de tesis orientado a la ayuda de personas no videntes en El Salvador A continuaci n se presenta una peque a rese a de cada uno de los cap tulos que componen el documento En primer lugar se presenta el marco te rico de el Lazarillo electr nico es decir las definiciones b sicas por ejemplo que es latitud long
66. es Base Base SaveSetting Lazarillo Variables BMP BMP SaveSetting Lazarillo Variables Longitudmin lonmin SaveSetting Lazarillo Variables Latitudmin latmin SaveSetting Lazarillo Variables Longitudmax lonmax SaveSetting Lazarillo Variables Latitudmax latmax SaveSetting Lazarillo Variables Dlat DLat SaveSetting Lazarillo Variables Dlon DLon SaveSetting Lazarillo Variables Velocidad Velocidad SaveSetting Lazarillo Variables Voz Voz Anexo 1 Manual del programador 52 Lazarillo Electr nico cierra el programa freespeech AppActivate Programa SendKeys F4 True SendKeys True End Sub Sub Cargar carga los registros con la ultima modificaci n que se le hizo Usuario GetSetting Lazarillo Variables Usuario Marvin Base GetSetting Lazarillo Variables Base BMP GetSetting Lazarillo Variables BMP lonmin GetSetting Lazarillo Variables Longitudmin latmin GetSetting Lazarillo Variables Latitudmin lonmax GetSetting Lazarillo Variables Longitudmax latmax GetSetting Lazarillo Variables Latitudmax DLat GetSetting Lazarillo Variables Dlat DLon GetSetting Lazarillo Variables Dlon Velocidad GetSetting Lazarillo Variables Velocidad 120 Voz GetSetting Lazarillo Variables Voz 3 End Sub Priva
67. es necessary to implement this protocol Electrical issues involved in connecting a GPS unit to a PC or other device are not covered If necessary which pins are used for data transmission to and from a Magellan GPS unit can be obtained from Magellan technical support The intended user of this document is assumed to have some level of familiarity with serial data transfer as used by PCs and other devices The user is assumed to be familiar with the concepts of bytes bit order general messaging concepts acknowledgement based protocols and the purpose of checksums The intended use of this document is to provide sufficient information to a developer so that data can be properly formatted for communications between Magellan products and an external Personal Computer or similar device While not specified in this document it is assumed that a user Anexo 3 Protocolo de transmisi n de GPS Magellan 102 Lazarillo Electr nico interface will be provided on the Personal Computer to handle all necessary control functions to accomplish the task at hand Data Transmisi n e Format All data formats in this document are assumed to be based on an 8 bit byte as the fundamental unit of transfer All byte 0 to 255 may be used in a transmitted message unless otherwise indicated all bytes are encoded as per ASCII standards Although any arbitrary byte value could be used in a message that is part of this protocol an effort has been made to
68. es y comandos del proyecto LAZARILLO ELECTRONICO El usuario puede obtener informaci n acerca de los siguientes temas Debido a que es orientado para usuarios no videntes este utiliza varios comandos de voz los cuales realizan diferentes funciones Por la naturaleza del proyecto este ser capaz de funcionar bajo diferentes lugares lo que lo vuelve un sistema abierto y m s funcional Para adaptarse al o do de cada usuario este sistema tendr la posibilidad de modificar la velocidad y el timbre del emulador de voz ooo principal Anexo 6 Codigo fuente de la ayuda 113 Lazarillo Electr nico K Seleccionar Zona Esta opci n permite al usuario cambiar la zona en la que se esta desplazando La forma de cambiar el mapa es la siguiente 1 Clic en menu archivo 2 Luego escoger seleccionar zona Buscar en la ventana del explorador el archivo con extensi n MDB que contiene la informaci n de las coordenadas de la nueva zona zona K cambio de zona zona Anexo 6 Codigo fuente de la ayuda 114 Lazarillo Electr nico K Cambio de tipo de voz Esta opci n permite al usuario cambiar el timbre de voz por una masculina o femenina La forma de cambiar la voz es la siguiente 1 Clic en men Herramientas 2 Luego escoger Selecci n del Habla 3 En la ventana emergente seleccionar el tipo de voz a utilizar 4 Si se desea tener una idea de c mo ser el tipo de
69. establecer el criterio de b squeda los valores de latitud y longitud tienen que traer los le dos por el GPS lee los valores de latitud y longitud del archivo ya creado Call Get_GPS Longitud Latitud If Longitud lt gt 0 And Latitud lt gt 0 Then lugar Lugar Longitud Latitud Xp Yp If lugarl lt gt Then FrmPrincipal DirectSS1 Speak Usuario amp Usted est en amp lugarl Call FrmPrincipal Mover_ Pantalla Anexo 1 Manual del programador 88 Lazarillo Electr nico FrmPrincipal Picture2 PSet Xp Yp vbBlack Else FrmPrincipal Datal RecordSource Lugares FrmPrincipal Datal Refresh lugarl Lugar Longitud Latitud Xp Yp If lugarl lt gt Then FrmPrincipal DirectSS1 Speak Usuario amp Usted est en amp lugarl Call FrmPrincipal Mover Pantalla FrmPrincipal Picture2 PSet Xp Yp vbBlack Else FrmPrincipal DirectSS1 Speak Usuario amp Usted est en una zona no registrada por el sistema End If FrmPrincipal Datal RecordSource Caminos FrmPrincipal Datal Refresh End If Else FrmPrincipal DirectSS1 Speak petici n fallida End If End Sub Sub Alto deshabilita el procedimiento de guiado Bguiado False FrmPrincipal Timerl Enabled False FrmPrincipal Picture2 Refresh Call donde estoy 1 0 X2 0 Y2 0 End Sub Sub Destino Dim sitio As String Dim Xi As Double Dim Yi As Double FrmPrincipal TxtComandos Text sitio Buscar Posici n X1 Yi Alturanterior If sitio l
70. fuerzo comprensi n y amor A mis hermanos Olinda Fredy Cesar y Karina asi como mi novia por aguantar mi mal humor en fechas de evaluaciones y apoyarme siempre en la b squeda de mis metas A mis familiares que han apoyado tanto a mis padres como a mi para ayudarme a lograr este triunfo asi como los que ya no estan con nosotros pero que nos cuidan desde el cielo mi abuela Eva Romero Q D D G Y finalmente a todos mis amigos amigas y personas que de alguna manera han estado presentes en mi caminar hacia el cumplimiento de esta meta Jonathan Cisneros NDICE A A TN 3 O eee ea 4 Alcances y Limitaciones ca AAA AA 5 CAPITULO 1 MARCO TEORICO rinine a E A E E aA 7 IN 7 e DIEB aiT e TE a AE A A A A IES 7 e Importancia dd 11 e Caracter sticas de las tecnolog as ti A dd 12 CAPITULO 2 DEFINICI N DEL SISTEMA ccccsccccscssssescsessesceessssssessceesvesssvsneeeseeees 16 e Planteamiento del sistema o ocococonnncnononnnnonononononononannnnnnonononononono nono nononononononononos 16 e Planteamiento de la soluci n ococccnncnnnnnnnnnnnononononononononononononononononononononononononnnos 16 e Definici n de las interfases fisicas ooooooconononoooonononononononononononononononononononononnnnnos 26 CAPITULO 3 METODOLOG A INVESTIGACI N DE CAMPO Dic 27 e Recolecci n de los datos rerestore e at a a i 27 e Correcci n de los datos sseseseeessseesesesesssesesreerrererrrrrrrrrrrrrrrrrrererererrrer
71. hen a line feed The checksum consists of the byte wise exclusive OR of all bytes in the message This includes the leading dollar sign and is terminated by the asterisk immediately before the checksum which is included in the checksum e General Rules for Position and Time Unless otherwise indicated all position information is referenced to the WGS 84 datum All altitude information is referenced to the geoid e g it is height above mean sea level All date and time information is in UTC Anexo 3 Protocolo de transmisi n de GPS Magellan 105 Lazarillo Electr nico MESSAGE LIST The messages that are contained in this protocol are listed in the following table Enee Message Unit Unit p PMGNEMD X Command Messages Checksum of message that was just received PMGNTRK_ X Track information IPMGNVER X Hardware and software version numbers Description of a single waypoint Aircraft Characteristics PMGNPLN Aircraft Flight Plans LPMGNMPH X Mapheader PMGNMPU X Begin mapupload o O PMGNPIH X POlheader oo PMGNPIU X BegimPOlupload 2222 Protocol Messages Due to different information needs in different GPS units it is possible that not all empty fields at the end of the message will be transmitted Missing or empty fields are to be set to the default state for each field When receiving additional data beyond that which is defined in this document the extra data
72. i esta repetido a a 2 contador contador 2 ReDim Preserve Ruta a ReDim Preserve Puntos 1 a End If End If determina si ya se llego al destino If X X2 And Y Y2 Or UCase Ruta a UCase Ldestino Then Trazada True End If Loop Until Trazada True Call Graficar_ruta grafica la ruta establecida End Sub funcion que saca la distancia entre dos puntos Function Dist X As Double Y As Double X2 Y2 As Double Dist Sqr X2 X 2 Y2 Y 2 End Function funcion que devuelve el lugar seg n la coordenada y los puntos m nimos m ximos del rango o rea XY son puntos dentro del rango Function Lugar X As Double Y As Double Xp As Double Yp As Double Optional H As Double As String establece el criterio de b squeda buscar Ltminima amp OperLtl amp Y amp and Ltmaxima amp OperLt2 8 Y amp and Lgminima amp OperLgl amp X amp and Lgmaxima amp OperLg2 amp X With FrmPrincipal Datal Recordset busca en la base se datos FindFirst buscar determina si encontr If NoMatch Then Lugar Else asigna los valores de los campos a las variables Lugar descripci n Ymax Ltmaxima Ymin Ltminima Xmax Lgmaxima Xmin Lgminima H Altitud calcula el punto medio Anexo 1 Manual del programador 95 Lazarillo Electr nico Yp Ltminima Ltmaxima 2 Xp Lgminima Lgmaxima 2 End If End With End Function este procedimiento busca en la base de datos las coor
73. icador indicador 1 End If End If bloque utilizado para realizar la correcci n del lugar de referencia por donde se debe pasar Call Guiado l stree Call Guiado 1 stree1 If UCase stree IZQUIERDA Or UCase stree DERECHA _ And UCase stree1 IZQUIERDA Or UCase streel DERECHA Then 1 1 2 If Indicadorstree 5 Then FrmPrincipal DirectSS1 Speak desplazarse hacia adelante Indicadorstree 0 End If Indicadorstree Indicadorstree 1 ElseIf UCase stree IZQUIERDA Or UCase stree DERECHA _ And UCase stree1 lt gt IZQUIERDA Or UCase stree1 lt gt DERECHA Then If 1 lt gt Lanterior Then FrmPrincipal DirectSS1 Speak desplazarse hacia amp stree End If Lanterior Call Corregir 1 Else If Indicadorstree 5 Then FrmPrincipal DirectSS1 Speak desplazarse hacia amp stree Indicadorstree 0 End If l 1 1 Indicadorstree Indicadorstree 1 End If FrmPrincipal TxtComandos SetFocus Anexo 1 Manual del programador 86 Lazarillo Electr nico Else 1 1 gt 1 Then comparaci n que determina si se encuentra en el lugar de referencia anterior o si se a salido de la ruta If Xp Puntos 0 1 1 Or Bx And Yp Puntos 1 1 1 Or By And UCase Ruta l 1 UCase stree Then 00000000 ElseIf Xp Puntos 0 2 Or Bx And Yp Puntos 1 1 2 Or By And UCase Ruta l 2 UCase stree Then debido a que si el GPS da una lectura de atr s l 1 1
74. ick Command 1l Enabled True Command2 Enabled False ProgressBar1 Object 0 EscalaX Val Text1 Text Val Text5 Text EscalaY Val Text2 Text Val Text6 Text CuadrosX Val Text3 Text CuadrosY Val Text4 Text DeltaX EscalaX CuadrosX DeltaY EscalaY Cuadros Y ValorX Val Text5 Text ValorY 1 Val Text6 Text ValorY2 Val Text6 Text Nom Text7 Text ProgressBar1 Min 0 ProgressBar1 Max Val Text3 Text Val Text4 Text End Sub Anexo 1 Manual del programador 70 Lazarillo Electr nico Private Sub Form_Activate Form1 Enabled False Command1 Enabled False Label14 Caption seleccionar Datal DatabaseName basel Datal RecordSource Caminos Datal Refresh Textl Text lonmax Text2 Text latmax Text5 Text lonmin Text6 Text latmin Text3 Text bDlon Text4 Text bDlat End Sub Sub seleccionar Dim Escala As String Dim algo As String seleccionarbase Cdlgcrear ShowOpen algo Cdlgcrear FileName If algo lt gt Then basel CurDir Sitioc mdb Else GoTo seleccionarbase End If bDlatY Abs Val latmax Val latmin Val bDlat bDlonX Abs Val lonmin Val lonmax Val bDlon End Sub Private Sub Form Unload Cancel As Integer Form1 Enabled True End Sub Private Sub Option ClickQ Datal RecordSource Caminos Datal Refresh End Sub Private Sub Option2_Click Datal RecordSource Lugares Datal Refresh End Sub Ane
75. iendo muy limitados en precisi n y funcionalidad A principios de los a os 70 se propuso un nuevo proyecto el GPS Este concepto promet a satisfacer todos los requerimientos del gobierno de los Estados Unidos principalmente l poder determinar en cualquier momento y bajo cualquier condici n atmosf rica una posici n precisa en cualquier punto de la superficie terrestre El GPS es un sistema basado en sat lites artificiales dispuestos en una constelaci n de 24 de ellos para brindar al usuario una posici n precisa En este punto es importante definir el t rmino precisi n Para un sujeto que se encuentre en el desierto la precisi n significa m s o menos 15 m Para un barco en aguas costeras la precisi n significa 5m Para un top grafo la precisi n significa lcm o Capitulo 1 Marco Te rico 12 Lazarillo Electr nico menos El GPS se puede emplear para obtener todos estos rangos de precisi n la diferencia radicar en el tipo de receptor a emplear y en la t cnica aplicada El GPS fue dise ado originalmente para emplearse con fines militares en cualquier momento y sobre cualquier punto de la superficie terrestre Poco tiempo despu s de presentarse las propuestas originales de este sistema resultaba claro que el GPS tambi n pod a ser utilizado en aplicaciones civiles y no nicamente para obtener el posicionamiento personal como era previsto para los fines militares Las dos primeras aplicaciones principa
76. ientos b sicos La soluci n se divide en dos aplicaciones las cuales se plantean a continuaci n e Petici n de la ubicaci n actual La persona har la petici n ya sea por medio de un comando de voz donde estoy o por medio de una consola de botones el software que se dise o tiene la capacidad de identificar este comando Lo descrito con anterioridad se muestra en el flujograma a continuaci n Capitulo 2 Definici n del Sistema 17 Lazarillo Electr nico INICIO Inicializaci n de variables constantes configuraci n de controles GPS COM etc Habilitar el micr fono E spera de comando y el resultado se guarda en la variable Comando Deshabilitar micr fono Si Si Comando Donde estoy Saltar a rutina DONDE ESTOY Si Saltar a rutina ALTO Se manda un mensaje Si Si Comando Destino Saltar a rutina DESTNO Figura 3 Diagrama de flujo del programa principal Si el comando es Donde estoy le indicar que debe realizar una lectura desde el GPS Magellan SporTrak Handheld para despu s identificar los valores de latitud y longitud en los que se encuentra Capitulo 2 Definici n del Sistema 18 Lazarillo Electr nico Despu s estos valores se procesaran en la base de datos que poseen dos tablas lugares y caminos El motivo de incluir en la base de datos dos tablas es pensando en la aplicaci n de ela
77. is to be ignored Fields described in this document as lt reserved gt must be transmitted empty as shown as they are reserved for implementation of features that have not yet been released by Magellan When they are released Magellan will revise this document to reflect those fields Persons implementing this protocol that decide to use these fields without the concurrence of Magellan risk having their implementation break when Magellan begins to utilize these fields e PMGNCMD This message is used to command the GPS unit to do something This could result in data messages being sent from the unit the unit going into a certain mode etc The commands are Anexo 3 Protocolo de transmisi n de GPS Magellan 106 Lazarillo Electr nico sent as ASCII text in upper case Where the Command requires more than one field the command and its fields will be sent consecutively within the same message In no case may a command be given in one message with the second field sent in a different message Fields that are not needed need not be sent SPMGNCMI Note that the PC program can send the END and UNABLE commands D c C p p hh lt CR gt lt LF gt all of these commands The unit however will only send COMMAND REPLY DESCRIPTION Send Empti WAY ALMANAC PMGNALM Liana HANDOFF HANDON ROUTE PMGNRTE TRAC FIX ALL AIRC End o Turns Turns ROUTES Almanac Data es the data buffer
78. itud etc La importancia de un proyecto de este tipo y las caracter sticas de cada una de las tecnolog as a utilizar El capitulo dos se mostrar en l neas generales como se concibe ser el funcionamiento del sistema y de que partes constara software y hardware Se incluyen las diferentes subrutinas con sus respectivos flujogramas Enseguida en el tercer capitulo se aborda el topico de la investigaci n de campo de c mo se obtuvo una copia del mapa Asi mismo se da a conocer la forma como se obtiene un factor de correccion de los datos que se obtiene del GPS En le capitulo cuatro se presentan las descripci n y caracter sticas de cada componente de la aplicaci n as como los costos de producci n y venta Se presentan las valoraciones finales de los estudiantes as como las sugerencias para futuras mejoras al sistema se mostraran en el capitulo cinco El anexo contiene informaci n de suma relevancia por que contiene las especificaciones t cnicas del GPS codigo fuente de la aplicaci n etc Introducci n 3 Lazarillo Electr nico OBJETIVOS e Adquirir un GPS capaz de alcanzar niveles de precisi n aceptables para la aplicaci n que se piensa implementar e Lograr una conexi n entre el GPS con la computadora de tal forma que se obtenga una lectura de los par metros requeridos latitud y longitud e Generar una base de datos eficiente de manera que el acceso sea f cil y la obtenci n de
79. itud lleva incluida la elecci n de la posici n espacial del punto con respecto al meridiano origen as se designa posici n Oeste W cuando esta a la izquierda y Este E cuando esta situada a la derecha El valor de longitud minimo posible es 0 hasta un m ximo de 180 tanto Este como Oeste e Zona Geogr fica Para la Aplicaci n del Sistema Adem s debido a que el rea de trabajo para la cual se implementar este sistema ser el campus de la Universidad Don Bosco se ha pensado en dividir la zona de aplicaci n en Capitulo 1 Marco Te rico 9 Lazarillo Electr nico puntos cr ticos de referencia los cuales ser n correspondientes a latitudes y longitudes respectivas y servir n para el trazado de rutas de desplazamientos predeterminadas Las rutas determinadas y puntos de referencias dentro de la universidad deber n estar adaptados al mapa geogr fico con el fin de dar un mayor realismo del entorno e Lenguajes de Programaci n Debido a la naturaleza del funcionamiento del sistema se tendr una amplia cantidad de puntos y rutas determinadas lo que implica una gran cantidad de informaci n que debe ser debidamente almacenada por ello es necesario almacenar la informaci n en una base de datos que contenga campos num ricos y alfanum ricos Una herramienta que cuenta con todas estas caracter sticas y es de uso relativamente sencillo es Microsoft Access este es un programa para crear y manejar
80. l rea If sitio Then mandar alg n mensaje de posici n actual no valida Else j 0 Fori 1 To 4 Step 1 este bloque se va a utilizar para establecer el lugar adyacente determina los valores de evaluaci n del lugar de referencia adyacente al lugar actual Select Case 1 Case Is 1 Xa X ya Ymin Val Opy amp Str DlatY 2 Case Is 2 Xa X ya Ymax Val Opy amp Str DlatY 2 Case Is 3 Xa Xmin Val Opx amp Str DlonX 2 ya Y Case Is 4 Xa Xmax Val Opx amp Str DlonX 2 ya Y Case Else Dim Mensaje As Integer Anexo 1 Manual del programador 97 Lazarillo Electr nico Mensaje MsgBox error en buscar lugar adyacente 1 35 _ Usuario End Select criterio de b squeda buscar Ltminima OperLtl amp ya amp and Ltmaxima amp OperLt2 amp ya amp and Lgminima amp OperLgl amp Xa amp and Lgmaxima amp OperLg2 amp Xa With FrmPrincipal Datal Recordset FindFirst buscar If NoMatch Then hooooooo0o00000000 Else j j 1 guarda el punto medio del lugar de referencia encontrada Yb Ltminima Ltmaxima 2 Xb Lgminima Lgmaxima 2 ReDim Preserve Pmedios 1 j Pmedios 0 j Xb Pmedios 1 j Yb ReDim Preserve Distancia j calcula la distancia y la almacena temporalmente Distancia j Dist Xb Yb X2 Y2 ReDim Preserve PosAdy j almacena temporalmente la descripci n del lugar de referencia PosAdy j descripci n End If
81. l servir para que cuando el usuario quiera desplazarse de un punto A hacia un punto B le indicara si va en la direcci n correcta esto se realizar mediante un monitoreo continuo de su posici n con respecto al entorno Otro punto a tomar en cuenta es que por ser un sistema interactivo se contar con ciertos medios de comunicaci n entre el usuario y el sistema ya que este no solo podr obtener su ubicaci n si no que adem s se ha pensado en que la persona cuente con comandos por medio de voz para introducir un punto de destino y que el software sea capaz de decirle al usuario si se acerca o aleja del punto al cual quiere llegar PLANTEAMIENTO DE LA SOLUCI N Para que el sistema funcione adecuadamente se tiene que contar con tres archivos con extensiones bmp txt mdb todos con el nombre de sitio los cuales le dar n al sistema informaci n de la zona e Elarchivo sitio bmp contiene el croquis de la zona bajo estudio e Sitio mdb archivo de base de datos que contiene la informaci n correspondiente a las coordenadas Capitulo 2 Definici n del Sistema 16 Lazarillo Electr nico e Sitio txt contiene la informaci n de las coordenadas superior derecha e inferior izquierda de toda la zona Estos datos son utilizados a la hora de generar la base de datos y adaptar el mapa al sistema Estos tres archivos son de vital importancia para sincronizar todo el sistema Ya teniendo el sistema con estos requerim
82. les de tipo civil fueron aquellas para navegaci n y topograf a Hoy en d a el rango de aplicaciones va desde la navegaci n de autom viles o la administraci n de una flotilla de camiones la automatizaci n de maquinaria de construcci n hasta un Lazarillo para personas no videntes e Motores de voz Recientemente los conversores texto voz est n alcanzando un nivel de calidad que posibilita su uso en aplicaciones tanto personales como dirigidas al gran p blico Existen algunos sistemas de alta calidad de conversi n texto voz para idiomas como el ingles y el franc s mientras que la mayor a de los disponibles para el espa ol son adaptaciones de los anteriores y no siempre proporcionan una calidad suficiente La tarea de los sistemas texto a voz motores de voz es convertir un texto entero en un discurso que represente justamente el sentido que conlleva el texto La generaci n debe hacerse de forma autom tica sin mediar correcciones o ajustes por parte de un operador en ninguna de las etapas del proceso La meta de la conversi n texto voz es producir habla emulando en lo posible el modo en que un ser humano lee No bastara que se pueda entender lo que el conversor dice inteligibilidad sino que adem s debe ser apreciado por oyentes humanos como semejante a un hablante humano naturalidad Capitulo 1 Marco Te rico 13 Lazarillo Electr nico e Historia del reconocimiento de voz La historia del reco
83. lo 4 Dise o e Implementaci n de la Aplicaci n 35 Lazarillo Electr nico CAPITULO 5 CONCEUSIONES Y RECOMENDACIONES Desde un inicio se tubo una vision de lo que se pretendia realizar como Lazarillo electr nico A medida que se fue desarrllando el proyecto se cumplieron objetivos y a su vez surgieron algunos incovenientes varios de ellos tomados desde un inicio como limitantes otros aparecieron en el camino a raiz de las observaciones realizadas en cada una de las defensas A continuaci n se detallan lo que el grupo concluye luego de haber modelado e implemetado la aplicaci n e Se vio la necesidad de que el sistema fuera capaz de adaptarse a cualquier zona geograf a Es por ello que fue necesario que dentro del algoritmo del sistema se creara un modulo que normalizar la creaci n de la base de datos a un nivel de medida est ndar para cualquier escala que posea el mapa e Despu s de analizar la forma en que realmente se produciria el fonema de la voz humana el sistema creado tiene la capacidad de ajustarse a la recepci n auditiva de cada usuario Ademas para complementar esta herramienta se agrego al sistema la facilidad de variar la velocidad y tonalidad de dicho fonema e Luego de experimentar con diferentes metodos de captura de datos provenientes del GPS via puerto serial se implemento finalmente un metodo en el cual esta lectura se realiza de forma instant nea Esto sin tomar en cuenta el tiempo de respuesta
84. lo electr nico 5 Lazarillo Electr nico versi n 1 0 pu Lay derechos reservados exclusivos e para UD 2 an o na ra F Creadores Contacto Marvin No Artiga Tejada martiga_79 hotmail com Mario Wilfredo Beltran Fuentes mbeltran americatel com sv Carlos Jonathan Lop z Cisneros cilopez americatel com sv Figura 15 Ventana para visualizar la version y autores del sistema 14
85. ma DirectSS1 Visible False Operadores Call Configuracion_GPS comparaci n para determinar si hay registros If Base Or BMP Or latmin Or latmax Or lonmin Or lonmax Then Seleccionar Zona rutina que es utilizada para cargar la base de datos Y el mapa correspondiente con su escala Anexo 1 Manual del programador 45 Lazarillo Electr nico End If configuraci n del control Data Datal DatabaseName Base Datal RecordSource Caminos Datal Refresh cargando el mapa correspondiente BMP trae la direcci n correspondiente Picture2 Picture LoadPicture BMP configuraci n de controles del formulario principal FrmPrincipal ScaleMode vbPixels Picturel ScaleMode vbPixels procedimiento para que el cuadro de imagen del fondo tome el tama o original del mapa Picture2 AutoSize True determinando la escala las variables tienen el valor correspondiente a las coordenadas del mapa DlatY Abs Val latmax Val latmin Val DLat DlonX Abs Val lonmin Val lonmax Val DLon Picture2 Scale Val lonmin Val latmax Val lonmax Val latmin Picturel BorderStyle 0 Picture2 BorderStyle 0 Call Actualizar formulario procedimiento que actualiza el formulario bloque de configuraci n de inicializaci n de variables variables que se utilizan a la hora del guiado Bguiado False Bguiadol False Timer Enabled False condiciones de inicio del motor de voz DirectSS1 C
86. mite la identificaci n del sat lite Los datos de efem rides son constantemente transmitidos por cada sat lite y contienen informaci n como por ejemplo el status del sat lite buen o mal funcionamiento fecha actual y hora Sin esta parte del mensaje la unidad de GPS no sabr la fecha ni la hora actual Los datos de almanaque comunican a la unidad GPS donde se deber an encontrar ubicados cada sat lite en todo momento del d a Cada sat lite transmite datos comunicando su trayectoria y las de los dem s sat lites de la red Capitulo 4 Dise o e Implementaci n de la Aplicaci n 30 Lazarillo Electr nico Cada sat lite transmite un mensaje que b sicamente dice Soy el GPS N X mi posici n actual es Y esta informaci n fue enviada en la hora de zona horaria Z La unidad de GPS lee el mensaje guarda las efem rides y la informaci n de almanaque para el uso continuo Esta informaci n tambi n puede ser utilizada para setear o corregir el reloj interno de la unidad Luego para determinar la posici n el GPS comparar la hora en que una se al fue transmitida por un sat lite con la hora en que esa se al fue recibida por la unidad La diferencia de tiempo comunica al GPS la distancia en que ese sat lite se encuentra Si a esto se suman mediciones de distancias con otros sat lites podemos triangular la posici n Es esto precisamente lo que hace una unidad de GPS Con un m nimo de tres o m s sat lites el GPS pue
87. mos probando 13 71404938 8915627892672 137140677931 89 1562607208 ol estamos probando 13 71404938 89 1562607208 13 7140677931 89 15624251488 0 estamos probando 13 71404938 89 15624251488 13 7140677931 89 15622430896 o estamos probando 13 71404938 89 15622430896 13 7140677931 89 15620610304 o estamos probando 13 71404938 89 15620610304 13 7140677931 89 15618789712 0 estamos probando 13 71404938 89 15618789712 13 7140677931 89 1561696912 o 89 1561696912 3 7140677931 a Ei 48 31 o 11 89 15613327936 3 7140677931 6915611507344 D AA TEM COTTA al al 7 4 1 1 Seleeci n del tipo de zona a realizar los cambios Caminos C Lugares C digo utilizado para visualizar el formulario anterior Private Sub Form_Activate FrmPrincipal Enabled False carga labase de datos y la tabla a mostrar Datal DatabaseName Base Datal RecordSource Caminos Datal Refresh End Sub Private Sub Form_Unload Cancel As Integer pone Bfoco en true para darle el foco al cuadro de texto del formulario principal Bfoco True FrmPrincipal Enabled True End Sub Private Sub OptCaminos Click Datal DatabaseName Base Datal RecordSource Caminos Datal Refresh End Sub Private Sub OptLugares Click Datal DatabaseName Base Datal RecordSource Lugares Datal Refresh End Sub Formulario que se muestra en modo grafico Anexo 1 Manual del programador 54 Lazarillo Electr nico ya Mantenimiento grafico
88. n un mapa de la zona de aplicaci n la cual fue facilitado por la ciudadela Don Bosco ya que est es la zona de estudio Dicho mapa estaba dividido en tres partes Se hizo necesario tener el mapa en un formato digital por lo cual se creo en autocad a una escala aproximada 1 1000 Otro de los factores importantes es tener las coordenadas geogr ficas del mapa ya que en base a estas es la que se trabajar para obtenerlas se realizaron pruebas con el GPS en lugares apropiados para luego asociar los valores con la zona de aplicaci n CORRECCI N DE LOS DATOS A medida se realizaron pruebas con el prototipo de la aplicaci n fue necesario tomar ciertos consideraciones como podemos mencionar que hay ciertos puntos donde el GPS proporciona lecturas no muy congruentes de acuerdo a la necesidad por lo cual se saco un factor de correcci n a la hora de realizar las lecturas Fc lectura deseada lectura obtenida Lectura deseada Esta formula se realizo en puntos cr ticos para as tomar un promedio y ocupar el factor Capitulo 3 Metodolog a Investigaci n de campo 28 Lazarillo Electr nico CAPITULO 4 DISE O E IMPLEMENTACI N DE LA APLICACI N DEFINICION yA a Figura N 10 Definici n de la aplicaci n CARACTER STICAS DE LOS COMPONENTES e Funcionamiento del GPS El sistema NAVSTAR GPS se basa en la medida simult nea entre el receptor y al menos 4 sat lites El sistema ofrece las siguie
89. nd Sub Function Buscar_Posici n Xn As Double Yn As Double Optional H As Double As String Dim sitio As String Dim Xp As Double Dim Yp As Double Dim Xpn As Double Dim Ypn As Double Dim D As Double Dim Da As Double Dim pd As Boolean pd False sitio Lugar Longitud Latitud Xp Yp H If sitio lt gt Then Xn Xp Yn Yp Buscar Posici n sitio Else FrmPrincipal Datal RecordSource Lugares FrmPrincipal Datal Refresh sitio Lugar Longitud Latitud Xp Yp H If sitio lt gt Then FrmPrincipal Datal RecordSource Caminos FrmPrincipal Datal Refresh buscar Descripci n like amp sitio amp _ amp and Ltminima amp OperLtl amp Yp amp and Ltmaxima OperLt2 amp Yp amp _ amp or Lgminima amp OperLgl amp Xp amp and Lgmaxima amp OperLg2 amp Xp amp With FrmPrincipal Datal Recordset Buscar Posici n Do FindNext buscar If NoMatch Then Exit Do Anexo 1 Manual del programador 91 Lazarillo Electr nico Else If pd Then Y pn Ltminima Ltmaxima 2 Xpn Lgminima Lgmaxima 2 D Dist Xp Yp Xpn Ypn If D lt Da Then H Altitud Buscar Posici n sitio Da D Xn Xpn Yn Ypn End If Else Ypn Ltminima Ltmaxima 2 Xpn Lgminima Lgmaxima 2 D Dist Xp Yp Xpn Ypn Da D Buscar Posici n sitio H Altitud Xn Xpn Yn Ypn pd True End If End If Loop End With Else FrmPrincipal DirectSS1 Speak Usuario
90. nocimiento de voz empez en el a o 1870 Alexander Graham Bell quiso desarrollar un dispositivo que capaz de proporcionar la palabra visible para la gente que no escuchara Bell no tuvo xito creando este dispositivo sin embargo el esfuerzo de esta investigaci n condujo al desarrollo del tel fono Mas tarde en los a os 30 Tihamer Nemes cient fico H ngaro quiso patentar el desarrollo de una maquina para la transcripci n autom tica de la voz La petici n de Nemes fue negada y a este proyecto lo llamaron poco realista Fue hasta 1950 80 a os despu s del intento de Bell cuando se hizo el primer esfuerzo para crear la primera maquina de reconocimiento de voz La investigaci n fue llevada a los laboratorios AT amp T El sistema tuvo que ser entrenad para reconocer el discurso de cada locutor individualmente pero una vez especializada la maquina tenia una exactitud de un 99 de reconocimiento El primer sistema de reconocimiento de voz fue desarrollado en 1952 sobre una computadora anal gica que reconoc a d gitos del O al 9 este sistema era dependiente del locutor Los experimentos dieron una exactitud de reconocimiento del 98 Mas tarde en esa misma poca se creo un sistema que reconoc a consonantes y vocales Dudley 58 Durante los 60 s los investigadores que trabajaban en el rea de reconocimiento de voz empezaron a comprender la complejidad del desarrollo de una verdadera aplicaci n dentro del reconocimiento de voz y
91. ntes informaciones Capitulo 4 Dise o e Implementaci n de la Aplicaci n 29 Lazarillo Electr nico 1 Posici n del receptor 2 Referencia temporal muy precisa La distancia entre el receptor y el sat lite se obtienen mediante el retardo temporal entre el sat lite que env e la se al hasta que el receptor la recibe Los sat lites emiten dos portadoras a la misma frecuencia Estas portadoras est n moduladas en fase por diferentes c digos pseudoaleatorios El receptor GPS calcula la correlaci n entre los c digos del receptor y los c digos enviados por los sat lites de esta forma 1 Se pueden separar la informaci n de los diferentes sat lites 2 Y finalmente se obtiene el retardo temporal Las trayectorias que estos sat lites siguen los mueven en un rea que abarca hasta 60 Norte y 60 Sur en latitudes Esto significa que se puede recibir se ales satelitales en cualquier lugar del mundo en cualquier momento A medida que se aproxima a los polos se seguir captando se al de GPS simplemente no vendr n directamente de encima del receptor Esto puede afectar la geometr a satelital o la precisi n pero solo un poco e Qu tipo de informaci n transmite un sat lite GPS La se al GPS contiene un c digo pseudo rango efem rides los cuales dan a la ubicaci n de los sat lites y datos de almanaque El c digo pseudo rango identifica al sat lite que est enviando la se al en otras palabras trans
92. nto del usuario No es necesario que la persona tenga grandes conocimientos de computaci n ya que el sistema tendr un sencillo y f cil uso Que ayude no solo a no videntes sino tambi n a usuarios que desconozcan la zona bajo estudio LIMITACIONES El alcance del sistema se aplicar a una zona geogr fica establecida la cual ser correspondiente al mapa cargado en el sistema campus de la Universidad Don Bosco La precisi n se espera que este en un rango de tolerancia aceptable para la aplicaci n esto depender directamente de la calidad del GPS que se obtenga para la aplicaci n Adem s dicha precisi n ser requerida e lugares m s cr ticos de ubicaci n o desplazamiento Alcances Y Limitaciones 5 Lazarillo Electr nico e La introducci n de informaci n se llevara a cabo por medio de introducir un reducido numero de comandos de voz entre 5 y 8 comandos y en circunstancias que estos no apliquen se cuenta con una consola de botones los cuales proporcionar n el mismo funcionamiento e En el m todo utilizado para desplazar al usuario de un punto a otro se tendr n muchas rutas sin embargo el sistema tratar de darle la ruta que presente la menor distancia entre los puntos seg n el entorno geogr fico e Debido a la tecnolog a que utilizan los GPS hay puntos en los cuales la se al de estos es demasiado imprecisa e Debido a los accidentes geogr ficos con que cuenta la zona de aplic
93. ores prestaciones multimedia mejor precisi n y ergonom a En el anexo 3 se muestra mas informaci n acerca del protocolo de comunicaci n NMEA Capitulo 1 Marco Te rico 11 Lazarillo Electr nico CARACTER STICAS DE LAS TECNOLOG AS e Introducci n a los GPS s GPS es la abreviatura de NAVSTAR GPS Este es el acr nimo en Ingl s de NAVigation System with Time And Ranging Global Positioning System que en Espa ol significa Sistema de Posicionamiento Global con Sistema de Navegaci n por Tiempo y Distancia Durante muchos siglos se empleo al Sol y las estrellas para navegar Asimismo en tierra los top grafos y los exploradores utilizaban puntos conocidos hacia los cuales hac an referencia para sus mediciones o para encontrar su camino Estos m todos cumpl an su cometido dentro de ciertos l mites pues el Sol y las estrellas no pueden ser observados cuando el cielo est nublado Adem s a n efectuando las mediciones lo m s precisas posibles la posici n no pod a ser determinada en forma muy exacta Despu s de la Segunda Guerra Mundial se hizo necesario que el Departamento de Defensa de los Estados Unidos de Norteam rica encontrara una soluci n al problema de determinar una posici n absoluta y exacta Se llevaron a cabo muy diversos proyectos y experimentos entre los que se cuentan los sistemas Transit Timation Loran Decca etc Todos ellos permit an determinar posiciones pero continuaban s
94. ption Cerrar CmdQuitar Enabled False CmdAgregar Enabled False Else Textl Enabled False Text2 Enabled False Text3 Enabled False Text4 Enabled False Text5 Enabled False Text6 Enabled False CmdModificar Caption Modificar CmdQuitar Enabled True CmdAgregar Enabled True End If End Sub Private Sub CmdQuitar_Click Dim Mensaje As Integer procedimiento para quitar un registro actual Mensaje MsgBox Desea Quitar el registro actual 1 35 _ Usuario If Mensaje 6 Then Datal Recordset Delete End If End Sub Anexo 1 Manual del programador 56 Lazarillo Electr nico Private Sub Form_Activate CmdGuardar Enabled False Textl Enabled False Text2 Enabled False Text3 Enabled False Text4 Enabled False Text5 Enabled False Text6 Enabled False configurando el control data Datal DatabaseName Base Datal RecordSource Caminos Datal Refresh enlazando los cuadros de textos con el control data Textl DataField Ltminima Text2 DataField Ltmaxima Text3 DataField Lgminima Text4 DataField Lgmaxima Text5 DataField descripci n Text6 DataField Altitud cargando el mapa correspondiente Picture2 Picture LoadPicture BMP desactiva el formulario principal FrmPrincipal Enabled False configuraci n del formulario de mantenimiento FrmMantenimientoG ScaleMode vbPixels Picturel ScaleMode vbPixels Picture2 AutoSize True la escala Pict
95. quellas persona que confian y creen en mis capacidades ya que gracias a los animos que ellos me brindan tengo deseos de seguir adelante a pesar de las dificultades Y por ultimo quiero agradecerle tambi n al asesor por apoyarnos durante todo el tiempo que duro la tesis al igual que a todos los que fueron mis profesores durante toda mi educaci n Marvin No Artiga Tejada DEDICATORIA A Dios todo poderoso pues es quien brinda la sabidur a nunca me ha desamparado y siempre me ha iluminado como un mentor espiritual Sin su ayuda y amor no hubiera alcanzado este xito profesional A mis padres Medardo Beltr n y Maura Fuentes de Beltr n quienes siempre han creido en mi fueron y son luz en mi camino He coronado esta carrera gracias a su apoyo moral su incansable esfuerzo y amor incondicional Gracias totales los amo A mi hermana Flor de Maria Beltr n por su apoyo absoluto y desinteresado Este triunfo no solo es mio y de mis padres es tambien tuyo Un beso a mis queridas sobrinas Karen y Chelsea A todos los catedraticos instructores familiares y demas personas que de una u otra manera me transmitieron sus conocimentos Muchas gracias a todos Mario Wilfredo Beltr n Fuentes DEDICATORIA Quiero agradecer a DIOS TODO PODEROSO por darme los mejores padres del mundo Carlos alberto Lopez Beltran y Reyna Emperatriz Cisneros ya que ellos han sido el pilar mas grande en mi vida y el mejor ejemplo de dedicacion es
96. r nico If MoverY Then VScroll1 Value my Y Consty Picture2 Top VScroll1 Value End If End If End Sub Sub Actualizar formulario Picturel Move 0 0 Scale Width VScroll1 Width ScaleHeight HScroll1 Height Framel Height 8 Frame4 Height Picture2 Move 0 0 HScroll1 Top Picturel Height HScroll1 Left 0 HScroll1 Width Picturel Width VScroll1 Top 0 VScrolll Left Picturel Width VScrolll Height Picturel Height HScroll1 Max Picture2 Width Picturel Width VScrolll Max Picture2 Height Picturel Height VScroll1 Visible Picturel Height lt Picture2 Height HScroll1 Visible Picturel Width lt Picture2 Width MoverY Picturel Height lt Picture2 Height MoverX Picturel Width lt Picture2 Width mx HScroll1 Max 0 Val lonmax Val lonmin Constx Val lonmin mx my 0 VScroll1 Max Val latmax Val latmin Consty VScroll1 Max my Val latmin End Sub Private Sub HScroll1_Change Picture2 Left HScroll1 Value End Sub Private Sub VScrolll_Change Picture2 Top VScroll1 Value End Sub Anexo 1 Manual del programador 59 Lazarillo Electr nico Este es la parte que muestra el form de velocidad Selecci n del habla AJUSTE Velocidad gt Minimo Volumen M nimo M ximo SELECCI N DE VOZ Hombre Adulto X Probar codigo utilizado Private Sub Combo1_Click Voz CStr Combo1 ListIndex 1 End
97. ramas relacionados con el archivo Despu s de esto se inicia el proceso de instalaci n 22 Instalaci n de aja Archivo de destino C Archivos de programa Prototipo udb sitio mdb Figura 5 Proceso de instalaci n Finalmente presione para finalizar Instalaci n de aja La instalaci n de aja ha finalizado correctamente Aceptar Lazarillo Electr nico Funcionamiento b sico de la aplicaci n Objetivos Al terminar este modulo usted ser capaz de realizar las siguientes acciones Y SOKN OB OR RO O Cambiar el nombre del usuario Seleccionar zona bajo estudio Configuraci n inicial Cerrar la aplicaci n Crear base de datos Ver base de datos Utilizar modo gr fico Seleccionar el tipo de habla Ayuda Versi n de la aplicaci n Cambiar el nombre del usuario Esta opci n permite al usuario ser llamado por su nombre al momento que el sistema le transmita alg n tipo de informaci n La forma de personalizar el nombre en el mensaje es la siguiente 1 Clic en menu Archivo 2 Luego escoger Nombre de Usuario 3 Digitar en la casilla en blanco el nombre 4 Clic en Cerrar para finalizar Prototipo x favor dijite el nombre de usuario Ea m Figura 6 Ventana para cambiar nombre del ususario Lazarillo Electr nico Seleccionar zona bajo estudio Esta opci n permite al usuario cambiar la zona en la que se esta desplazando La forma de cambiar el mapa es la sig
98. s anteriores y no siempre proporcionan una calidad suficiente La tarea de los sistemas texto a voz motores de voz es convertir un texto entero en un discurso que represente justamente el sentido que conlleva el texto La generaci n debe hacerse de forma autom tica sin mediar correcciones o ajustes por parte de un operador en ninguna de las etapas del proceso La meta de la conversi n texto voz es producir habla humana emulando en lo posible el modo en que un ser humano lee No bastara que se pueda entender lo que el conversor dice inteligibilidad sino que adem s debe ser apreciado por oyentes como si fuese un hablante humano naturalidad Afortunadamente Visual Basic posee una librer a relacionada con la conversi n de texto a fonemas de la voz humana Para este caso no se utilizar el FreeSpeech 2000 si no que simplemente se utilizar la librer a Microsoft Direct Text To Speech API Capitulo 1 Marco Te rico 15 Lazarillo Electr nico CAPITULO 2 DEFINICI N DEL SISTEMA PLANTEAMIENTO DEL SISTEMA El desarrollo de la aplicaci n se basara principalmente en un conjunto GPS software y computadora que determine la latitud y longitud en donde se encuentra el usuario la cual se traducir a direcciones correspondientes al sitio geogr fico en que se encuentre este sitio ser correspondiente al mapa cargado en el sistema campus de la Universidad Don Bosco Se definir una base de datos la cua
99. sea saber la direcci n Public Bsaberdirec As Boolean Public Bguiado As Boolean Public Bguiadol As Boolean indica si esta en modo de guiado Public Bx As Boolean Public By As Boolean Public Bcorregir As Boolean Public BSalto As Boolean Public BSisalto As Boolean Public BSicorregir As Boolean Public Bfoco As Boolean se utiliza para establecer el foco en el cuadro de texto del form principal variable utilizada para establecer el criterio Public buscar As String variable que es utilizada para almacenamiento temporal del lugar actual Public sitio As String Variable que es utilizada para la hora del guiado Public 1 As Integer variables que se utilizan para almacenar el valor obtenido por el GPS por ahora se leen las coordenadas x y de la posici n del puntero Public Latitud As Double Public Longitud As Double Public Altura As Double Public Altura As Double Public Alturanterior As Double bandera utilizada para indicar si el comando fue destino para luego saber que el siguiente reconocimiento de voz es el lugar de destino Public Bdestino As Boolean Public Ldestino As String variable que almacena el nombre del usuario Public Usuario As String se almacena el numero m ximo de puntos de referencia por Anexo 1 Manual del programador 73 Lazarillo Electr nico donde el usuario debe pasar Public contador As Integer Public Cuadrante As Integer variables para crear base de datos Public bOp
100. t gt Then Call Coordenadas Ldestino Xi Yi X2 Y2 If Xi lt gt X2 Or Yi lt gt Y2 Then If X2 lt gt 0 And Y2 lt gt 0 Then TrazarRuta Xi Yi X2 Y2 Bguiadol True FrmPrincipal DirectSS1 Speak Usuario amp favor desplazarse hacia adelante FrmPrincipal Timerl Enabled True Else Anexo 1 Manual del programador 89 Lazarillo Electr nico FrmPrincipal DirectSS1 Speak Lugar destino no encontrado End If Else FrmPrincipal DirectSS1 Speak Usuario amp usted esta en amp sitio End If Else FrmPrincipal DirectSS1 Speak favor ubicarse en otro sitio End If X2 0 Y2 0 1 0 End Sub Sub operadores Dim gl As Integer Dim g2 As Integer Dim G As Integer If Val latmin lt Val latmax Then OperLtl lt OperLt2 gt ylmin Val latmin y2max Val latmax Opy np gl 2 Else OperLtl gt OperLt2 lt ylmin Val latmax y2max Val latmin Opy gl 4 End If If Val lonmin lt Val lonmax Then OperLgl lt OperLg2 gt x1min Val lonmin x2max Val lonmax Opx np g2 Else OperLgl gt OperLg2 lt x1min Val lonmax x2max Val lonmin Opx n_n g2 5 End If Anexo 1 Manual del programador 90 Lazarillo Electr nico G gl g2 Select Case G Case Is 3 Cuadrante 1 Case Is 7 Cuadrante 2 Case Is 9 Cuadrante 3 Case Is 5 Cuadrante 4 Case Else Cuadrante 1 End Select E
101. ta orientado a un cierto grupo de la sociedad en su mayor a personas no videntes se ve la necesidad de utilizar alg n tipo de dispositivo transductor el cual sirva para transformar se ales an logas a ac sticas lo cual se logra con una bocina similar a las que poseen los aud fonos Pensando en que la mayor a de usuarios solamente est n con la incapacidad visual se piensa utilizar otro tipo de transductor el cual transforme las se ales ac sticas a se ales an logas para que de esta forma el usuario se comunique o interactu de una forma m s directa con el sistema lo cual se logra con el uso de un micr fono Actualmente en el mercado se encuentran gran variedad de estos dispositivos sin embargo se puede obtener ambos en un solo elemento con el fin de mejorar la comodidad del usuario se usar un manos libres freehand los cuales son dispositivos mucho mas ergon micos utilizados actualmente en tel fonos celulares Finalmente el complemento de todos estos dispositivos ser una computadora port til la cual en estos d as es de uso com n para una gran variedad de aplicaciones y el dispositivo por medio del cual se tendr n las coordenadas del usuario ser un GPS del cual se hizo referencia en otro apartado de este documento Capitulo 2 Definici n del Sistema 27 Lazarillo Electr nico CAPITULO 3 METODOLOG A INVESTIGACI N DE CAMPO RECOLECCI N DE LOS DATOS Priemero se necesito contar co
102. te Sub TxtComandos LostFocus If Bfoco Then TxtComandos SetFocus End If End Sub Sub Mover Pantalla If MoverX Then If MoverY Then VScrolll Value my Latitud Consty Picture2 Top VScroll1 Value End If HScroll1 Value mx Longitud Constx Picture2 Left HScroll1 Value Else If MoverY Then VScrolll Value my Latitud Consty Picture2 Top VScroll1 Value End If End If End Sub Este es formulario que muestra la base de datos Anexo 1 Manual del programador 53 Lazarillo Electr nico E Mantenimiento de la base de datos Id descripci n Ltminima Laminima Ltmaxima Lamaxima Altitud gt estamos probando 0 0001 0 000001 0 0000001 0 0000001 0 0000001 ES estamos probando 1371404938 8915644278 137140677931 8315642457408 0 ia b 83 15642457408 137140677831 83 15640638816 E al estamos probando 89 15640636816 137140677931 o estamos probando 13 71404938 89 15638816224 13 7140677931 8915 0 estamos probando 13 71404938 8915636995632 13 7140677931 1 o estamos probando 13 71404938 89 156351 7504 13 7140677931 8915633354448 0 estamos probando 13 71404938 8915633354448 13 7140677931 8915631533856 O estamos probando 13 71404938 8915631533856 13 7140677931 89 15629713264 o estamos probando 13 71404938 89 15629713264 13 7140677931 89 15627892672 D esta
103. to FreeSpeech definici n Aplicaci n de reconocimiento del habla Brinda habla en texto dictado y la funci n de Comando amp Control para varios usuarios Es posible dictar en diferentes idiomas Modo definici n Forma de trabajar con FreeSpeech El programa tiene cuatro modos el Modo de dictado para dictar textos el Modo de deletreo para deletrear palabras el Modo de comando para usar las funciones de Comando amp Control y el Modo de descanso para que FreeSpeech est en standby Modo de comando definici n Modo de FreeSpeech que le permite navegar por el sistema operativo los programas cuadros de di logo documentos y tambi n formatear y editar textos Reconocimiento continu del habla definici n Reconocimiento del habla natural es decir sin pausas entre las palabras FreeSpeech transforma las palabras habladas en texto mientras usted habla de manera natural Anexo 5 Glosario 111 Lazarillo Electr nico Reconocimiento del habla definici n Sistema computarizado mediante el cual el programa transforma el texto hablado en texto escrito o ejecuta los comandos de voz Tarjeta de sonido definici n Tarjeta de adaptador del hardware de su computadora que permite la entrada y salida de se ales de audio por ejemplo por medio de un micr fono y altavoces Anexo 5 Glosario 112 Lazarillo Electr nico CODIGO FUENTE DE LA AYUDA Ayuda sobre las diferentes aplicacion
104. ud longitud y ubicaci n dentro del mapa del punto correspondiente modografico K modo grafico grafico Anexo 6 Codigo fuente de la ayuda 125 Lazarillo Electr nico Pronunciar el comando de voz en forma clara y legible estoy Asegurarse de tener encendido los parlantes para escuchar el resultado de su selecci n probar Estos suelen ser palabras cortas que ejecutan una acci n especifica comandos Lo que implica seleccionar y cargar el mapa de la zona en que me encuentro lugares Esto es por si el usuario esta acostumbrado a una fluidez de palabras especifica ajuste Tener la opci n de escoger entre una voz femenina o masculina timbre Configuraci n con la que se cargaran todas las opciones luego de instalar la aplicaci n predeterminados E E predeterminados Anexo 6 Codigo fuente de la ayuda 126 Lazarillo Electr nico Manual del Usuario Anexo 7 Manual del usuario Lazarillo Electr nico Manual Lazarillo Electr nico Sistema para determinar la posici n del usuario dentro de una zona bajo estudio basado en un sistema de posicionamiento global GPS Anexo 7 Manual del usuario 128 INDICE FORWULAR AAA 42 MODUL AAA untae abi dlaeitaenses telson stead aban aeaeeaat dust 42 PROCEDIMIENTOS A 43 FUNCIONES as IS AS etl iliac etal sd 44 Ayuda sobre las diferentes apli
105. uiente 1 Clic en menu archivo 2 Luego escoger seleccionar zona Buscar en la ventana del explorador el archivo con extensi n MDB que contiene la informaci n de las coordenadas de la nueva zona Abrir Buscar en jar e E FA sitio E Historial E Escritorio ae Mis documentos LE EN EDF Nombre de Mi PC bre E sl a z Tipo de archivos t mD8 y Cancelar Mis sitios de red Abrir como s lo lectura Z Figura 7 Ventana para seleccionar zona Lazarillo Electr nico Configuraci n inicial Esta opci n permite usuario cargar la aplicaci n con los valores predeterminados del sistema la forma de ejecutar esta herramienta es la siguiente Archivo Herramientas Ayuda Nombre de usuario 8 Ctril N Selecionar Zona Ctrl E Configuraci n inicial Ctri s Figura 8 Menu para seleccionar la configuraci n inicial Cerrar la aplicaci n Esta opci n permite cerrar de manera m s f cil y r pida la aplicaci n Archivo Herramientas Ayuda Nombre de usuario Ctri N Selecionar Zona Ctrl E Configuraci n inicial Figura 9 Menu para seleccionar salir del programa Crear base de datos Esta opci n permite al usuario agregar o modificar la informaci n contenida en las tablas adem s posee una interfase grafica la cual hace esta operaci n bastante sencilla e interactiva La forma de agregar lugares o caminos a la base de datos es de la siguiente manera
106. ure2 Scale Val lonmin Val latmax Val lonmax Val latmin rutina que actualiza el formulario Picturel BorderStyle 0 Picture2 BorderStyle 0 Operadores Actualizar_formulario End Sub Private Sub Form_Unload Cancel As Integer Anexo 1 Manual del programador 57 Lazarillo Electr nico activa el formulario principal Bfoco True FrmPrincipal Enabled True End Sub Private Sub OptCaminos_Click Datal RecordSource Caminos Datal Refresh End Sub Private Sub OptLugares_Click Datal RecordSource Lugares Datal Refresh End Sub Private Sub Picture2_ MouseDown Button As Integer Shift As Integer X As Single Y As Single Dim lat As Double Dim lon As Double lat Y lon X buscar Ltminima amp OperLtl amp lat 8 and Ltmaxima amp OperLt2 amp lat amp and Lgminima amp OperLgl amp lon amp and Lgmaxima 8 OperLg2 amp lon With Datal Recordset FindFirst buscar If NoMatch Then FrmPrincipal DirectSS1 Speak Lugar no registrado Else FrmPrincipal DirectSS1 Speak descripci n End If End With End Sub Private Sub Picture2_ MouseMove Button As Integer Shift As Integer X As Single Y As Single TxtLatitud Text Y TxtLongitud Text X If MoverX Then If MoverY Then VScroll1 Value my Y Consty Picture2 Top VScroll1 Value End If HScroll1 Value mx X Constx Picture2 Left HScroll1 Value Else Anexo 1 Manual del programador 58 Lazarillo Elect
107. urrentMode Val Voz tipo de voz DirectSS1 Speed Val Velocidad rapidez de habla Indicador 0 bandera que se utiliza para control del foco del cuadro de texto de comandos Bfoco True Anexo 1 Manual del programador 46 Lazarillo Electr nico bandera que se pone en True a la hora de dictar el lugar de destino Bdestino False procedimiento para abrir freespeech Programa Shell C Archivos de programa FreeSpeech 2000 BIN free exe vbNormalFocus End Sub Private Sub Form_LostFocus If Bfoco Then TxtComandos SetFocus End If End Sub Private Sub Form_Resize Picturel Height FrmPrincipal Height Picturel Width FrmPrincipal Width Call Actualizar_formulario Yamada para actualizar formulario End Sub Private Sub Form_Unload Cancel As Integer llamada a rutina que guarda la configuraci n actual Guardar_Configuraci n End Sub Private Sub mnuArchivoCongifuracion_Click Datal DatabaseName Base Datal RecordSource Caminos Datal Refresh Picture2 Picture LoadPicture BMP FrmPrincipal ScaleMode vbPixels Picturel ScaleMode vbPixels Picture2 AutoSize True DlatY Abs Val latmax Val latmin Val DLat DlonX Abs Val lonmin Val lonmax Val DLon Picture2 Scale Val lonmin Val latmax Val lonmax Val latmin Picture BorderStyle 0 Picture2 BorderStyle 0 Call Actualizar_formulario Voz 3 DirectSS1 CurrentMode Val Voz tipo de voz Velocidad 175
108. vated these commands the GPS unit is receiving GPS signals the unit is not in transfer mode these messages will be interspersed with the messages described in this document In such cases responsibility for handling these interruptions of the protocol reside with the external software Anexo 3 Protocolo de transmisi n de GPS Magellan 104 Lazarillo Electr nico MESSAGES SUPPORTED e Format In general the Messages defined by this specification follow the NMEA Message structure in that they consist of a header one or more fields followed by a hex checksum and ended by a Carriage Return Line Feed delimiter as follows SPMGNxxx lt fields gt hh lt CR gt lt LF gt The Header portion of the message in conformance with NMEA standards consists of the dollar sign and the letter P indicating that this is a private message Magellan s registered private message identifier of MGN is next followed by the command name In the example above the lower case xxx is replaced with the command identifier in upper case A comma terminates the Header field The data part of the message consists of one or more fields as described in this document Commas separate each field in the data Each field and the data values that they can contain are described under the various commands as shown in this document The tail of the message consists of a two character checksum hexadecimal notation followed by a carriage return t
109. velocidad de desarrollo de la aplicaci n En nuestro caso los API s que m s nos interesan son el Direct Text To Speech API el Direct Speech Recognition API y el Voice Text API La gran ventaja de SAPI es su compatibilidad con todas las tarjetas de sonido que funcionan en ambiente Windows Por otra parte tiene soporte para el software de reconocimiento de voz de IBM Phillips Lernout amp Hauspie y Dragon Systems Para la tesis se utilizar el FreeSpeech 2000 de Phillips el cual como si dijo anteriormente utiliza el SAPI FreeSpeech emplea la herramienta Microsoft Active Accessibility MSAA para algunas de las funciones de Comando amp Control REQUERIMIENTOS M NIMOS DE HARDWARE Y DE SOFTWARE Los requerimientos m nimos de hardware para la aplicaci n son los siguientes Procesador Pentium a 200 MHz Memoria RAM de 64 MB Tarjeta de video de 2MB Tarjeta de sonido standard Los requerimientos de software son los siguientes Microsoft Windows 98 Free Speech 2000 Microsoft SAPI 4 0 DESCRIPCI N DE LOS COMPONENTES a http www speech philips com FreeSpeech 2000 Capitulo 4 Dise o e Implementaci n de la Aplicaci n 33 Lazarillo Electr nico Los componentes utilizados en la aplicaci n son los siguientes a Micr fono y audifonos Son los encargados de ser la puerta de entrada para los comandos de voz del usuario y salida para las instrucciones que genere la aplicaci n b GPS Es
110. versal Transversa Mercator Cada una de estas formas de localizar un punto sobre la superficie terrestre debe cumplir los siguientes requisitos a El punto a ubicar debe de ser nico b Identificaci n del sistema de proyecci n empleado para localizar el punto Capitulo 1 Marco Te rico T Lazarillo Electr nico e Que permita referenciar la coordenada Z del punto e Latitud y longitud a Latitud Se denomina latitud geogr fica 0 de un punto P al ngulo formado por la vertical a la tierra que pasa por dicho punto con el plano paralelo al ecuador LATITUD Figura N2 1 C lculo de la latitud de un punto La vertical se considera la uni n del punto con el origen o centro de la tierra obteniendo la latitud midiendo el ngulo sobre el meridiano que pasa por el punto P Z OAP El valor de la latitud m xima y m nima va desde los 0 hasta los 90 ya sea hacia el sur o el norte Los 90 de latitud coinciden con los polos norte y sur Capitulo 1 Marco Te rico 8 Lazarillo Electr nico b Longitud Se define longitud A de un punto como el valor del ngulo formado por l intercepto del plano meridiano que pasa por P y el meridiano origen 0 meridiano de Greenwich ver figura N 2 La longitud es gr ficamente el ngulo formado por OAB X Z OAB LONGITUD Figura N2 2 C lculo de la longitud de un punto La designaci n de la long
111. xo 1 Manual del programador Lazarillo Electr nico m dulos variables globales variables ocupadas para almacenar las coordenadas del punto de destino Public X2 As Double Public Y2 As Double Matriz que se utiliza para almacenar los puntos de referencia definidos por la ruta Public Ruta As String guarda la distancia de los puntos de referencia Public Puntos As Double variables que almacenan las coordenadas m ximas y m nimas de la escala del mapa Public latmin As String Public lonmin As String Public latmax As String Public lonmax As String Public DLat As String Public DLon As String Public DlatY As Double Public DlonX As Double variables utilizadas para determinar los tipos de operadores para determinar el criterio de b squeda Public OperLtl As String Public OperLt2 As String Public OperLg1 As String Public OperLg2 As String Public Opx As String Public Opy As String Public Velocidad As String utilizada para el control de velocidad del habla Public Voz As String variable que guarda la direcci n donde se encuentra la base de datos en cuesti n Public Base As String variable que guarda la direcci n donde se encuentra el mapa de bit en cuesti n Public BMP As String Anexo 1 Manual del programador 72 Lazarillo Electr nico bandera que se utiliza para indicar que se tiene que desplazar Public Bdesplazar As Boolean bandera que se utiliza para indicar que de

Download Pdf Manuals

image

Related Search

Related Contents

User`s Manual    TUB GUIA DE PRODUCTO.indd  

Copyright © All rights reserved.
Failed to retrieve file