You are on page 1of 15

FIX INGENIERIA

www.fixingenieria.com

GPS MDULO RECEPTOR


Diseado en cooperacin con "Grand Idea Studio" (www.grandideastudio.com) el Sistema de Posicionamiento Global Parallax es un mdulo completamente integrado, de bajo costo con una antena integrada. Usando el chip estndar de la industria SiRF Star III, el GPS es una solucin completa en una pequea tarjeta (50 x 36 mm). Todos los archivos de diseo, incluyendo el esquemtico y el cdigo Parallax SX/B estn disponibles desde la pgina www.parallax.com buscando con el cdigo de producto "28146" El GPS proporciona cadenas estndar raw NMEA0183 (National Marine Electronics Association) o datos especficos requeridos por usuario a travs de los comandos de interface serial, rastreando hasta 20 satlites, y funcionalidad WAAS/EGNOS (Wide Area Augmentation System/European Geostationary Navigation Overlay Service) para resultados ms precisos en el posicionamiento. El mdulo proporciona datos actuales, tiempo, latitud, longitud, velocidad y orientacin/direccin de viaje, junto con otros datos y puede usarse en una amplia variedad de aplicaciones comerciales, incluyendo navegacin, sistemas de rastreo, mapeo , administracin de flotas, auto-piloto y robtica.

Caractersticas
GPS Completamente integrado, receptor de bajo costo con una antena pasiva integrada Interface serial de un solo cable al BASIC Stamp, Propeller y otros micro controladores Proporciona cadenas NMEA0183 o datos especficos requeridos por usuario a travs del comando interface. Usa un chip estndar SIRF Star III Espaciado de .100" para uso fcil en prototipos e integracin Cdigo abierto completamente con todos los archivos de diseo disponible

Especificaciones clave
Requerimientos de potencia +5VDC @ 65 mA Comunicacin: Asncrona serial 4800 bps a nivel TTL Dimensiones 49 x 36 x 15 mm
Temperatura de operacin: 0 a 70 C

TRADUCCION AL ESPAOL PUBLICADA: 30 ABRIL 2011

DERECHOS RESERVADOS PARALLAX INC.

GPS PARALLAX 28146

PAGE 2

Conexiones Elctricas
Pin Nombre Tipo Funcin

1 2 3

GND VCC SIO

G P I/O

/RAW

Tierra del sistema. Conectar a la terminal de tierra de la fuente de poder. Potencia del sistema +5VDC entrada Comunicacin Serial (comandos enviados A el mdulo y recibidos DEL mdulo) Asncrono, Interface de nivel TTL. 4800 bps, 8 bits de datos, no paridad, 1 bit de paro, no invertido. Pin de seleccin de modo. Entrada digital activa BAJO. Internamente puesta en ALTO por defecto. Cuando el pin /RAW se desconecta, el modo inteligente se habilita, donde los comandos para los datos especficos GPS pueden solicitarse y se regresa el resultado (Ver el protocolo de comunicacin en la pgina 4). Cuando /RAW se pone en BAJO el modulo ingresar el modo raw y transmite cadenas estndar NMEA0183 permitiendo a los usuarios avanzados usar la informacin directamente.

Nota: Tipo I= Entrada, O= Salida, P= Potencia, G= Tierra El mdulo receptor GPS puede integrase en cualquier diseo utilizando un mnimo de 3 conexiones:

Los cuatro pins integrados permiten que el mdulo se pueda colocar en una tarjeta prototipo. Si se desea el modo inteligente por defecto y el modo /RAW no se usar entonces se puede conectar el mdulo con un cable de 3 pins similar al de los servos. (Parallax 805-00001). El modulo est diseado para montarse horizontalmente para que la antena pueda ver hacia el cielo. Tiene perforaciones de montaje en cada esquina para un montaje slido. Para mejores resultados el mdulo debe usarse con una vista clara hacia el cielo, sta es la naturaleza del GPS y no una limitacin del producto. Con una vista no obstruida hacia el cielo el GPS trabaja las 24 horas del da, siete das a la semana en cualquier parte del mundo. Por favor observe que productos como motores, computadoras y diseos inalmbricos RF los cuales emiten altos de campos magnticos e interferencias pueden hacer que el funcionamiento del mdulo decremente. Adems cuando se usa el modulo en aplicaciones de automviles la posicin ideal de montaje es el techo del automvil. Si el mdulo se usa dentro del carro asegrese que la antena tenga una vista clara al cielo, colocndolo en el tablero y donde no est bloqueado por ningn objeto metlico. Para mayor informacin del funcionamiento del GPS vea la seccin de Breve Tecnologa GPS en la pagina 6.

GPS PARALLAX 28146

PAGE 3

Indicador de Estado
El mdulo GPS contiene solo un LED rojo para indicar el estado del sistema. El LED est localizado en la esquina inferior derecha del mdulo. Una cubierta blanca en el mdulo se usa para reflejar la luz del LED hacindolo ms sencillo de ver. El LED denota dos estados para el mdulo: 1. Parpadea: Esta buscando por satlites o no ha encontrado satlites fijos 2. Solido: Se adquiri informacin adecuadamente (un mnimo de 3 satlites se requiere antes de que el mdulo comience a transmitir datos vlidos GPS) Una vez encendido el GPS en una nueva posicin puede tomar hasta 5 minutos para tomar la informacin de los satlites. Durante este tiempo el LED del mdulo estar parpadeando. Cuando la suficiente informacin de los suficientes satlites haya sido recibida el LED se pondr en un modo slido. Si el LED rojo est apagado existe un problema, por favor verifique el cableado y la configuracin del mdulo.

Seleccin de Mdulo
El pin /RAW permite al usuario seleccionar los dos mdulos de operacin: Modo Inteligente. Cuando el modo /RAW se pone en ALTO o se deja desconectado (el pin internamente se pone en alto) el modo por defecto es el modo inteligente, donde los comandos especficos para datos GPS pueden solicitarse y se regresa el resultado. vea el protocolo de comunicacin para mayores detalles. Modo Raw. Cuando el pin /RAM se pone BAJO se habilita el modo RAW con el cual el mdulo transmitir cadenas estndar NMEA0183 (GGA, GSV, GSA y RMC) permitiendo a los usuarios utilizar la informacin directamente.

GPS PARALLAX 28146

PAGE 4

Protocolo de Comunicacin (para uso en modo inteligente nicamente)


El mdulo GPS est controlado por el host a travs del estndar nivel-TTL, interface de comunicacin asncrona. Un pin sencillo (SIO) transfiere los comandos enviados AL mdulo y los datos recibidos DESDE el mdulo. Toda la comunicacin sucede a 4800 bps, 8 Bits de Datos, 1 Bit de paro, No invertido. Para enviar un comando al mdulo GPS el usuario debe enviar la cadena del encabezado ASCII de !GPS seguido de la instruccin byte hexadecimal especifica de su eleccin. Dependiendo de la instruccin un nmero variable de datos se regresar: Instruccin 0x00 0x01 0x02 0x03 0x04 0x05 Constante GetInfo GetValid GetStats GetTime GetDate GetLat Descripcin Versin del mdulo GPS Verifica los datos de la cadena Nmero de satlites (Mximo 20) Tiempo (UTC/GTM) Fecha (UTM/GTM) Latitud Bytes de regreso 2 1 1 3 3 5 Variables * Hardware, Firmware 0= No valido 1= Valido Satlites Horas, Minutos, Segundos Mes, Da, Ao Grados, Minutos, Minutos Fraccionales (Word) Direccin (0=N, 1=S) Grados, Minutos, Minutos Fraccionales (Word) Direccin (0=E, 1=O) Altitud (Word) Velocidad (Word) Direccin (Word) Altitud (Word)

0x06

GetLong

Longitud

Altitud sobre el nivel del mar en dcimas de metros. 6553.5 m Max. 0x08 GetSpeed Velocidad (En dcimas de nudos) 999.9 nudos Max. 0x09 GetHead Orientacin/Direccin de viaje (en dcimas de grados) 0x0A GetAltExt Modo extendido de altitud. Altitud sobe el nivel del mar (en metros) 65535 m Max. * Las variables son de 1 byte a menos que se especifique lo contrario

0x07

GetAltitude

2 2 2 2

Otras especificaciones
Rango de Actualizacin de Navegacin una vez por segundo (1Hz) Alta sensibilidad de -159 dBm Precisin de posicin de +/- 5 metros Precisin de velocidad de +/- 0.1 metros/segundo

GPS PARALLAX 28146

PAGE 5

Caractersticas Elctricas
Rango de Valores Absolutos Condicin Temperatura de Operacin Temperatura de Almacenaje Voltaje requerido (Vcc) Voltaje de Tierra (Vss) Voltaje en cualquier pin respecto a Vss Valor 0 a 70C -55 a 100C +4.5VDC a +5.5VDC 0V -0.6V a +(Vcc +0.6)V

NOTA: Utilizar el equipo sobre las caractersticas enlistadas en los Rangos Absolutos Mximos puede ocasionar dao permanente al equipo. Estos son rangos nicamente y la operacin funcional del equipo a estas u otras condiciones indicadas en la lista de operaciones de esta especificacin no est implicada. La exposicin a los rangos mximos por periodos extendidos puede afectar la confiablidad del equipo. Caractersticas DC Especificacin Mnima 4.5 ---

Parmetro Voltaje Corriente

Smbolo Vcc Icc

Condicin de Prueba -----

Tpica / Promedio 5.0 65

Mxima 5.5 ---

Unidad V mA

Dimensiones del Mdulo

GPS PARALLAX 28146

PAGE 6

Breves Comentarios sobre Tecnologa GPS


Alguna informacin proporcionada est basada en la informacin proporcionada por las Preguntas Frecuentes del Sistema de Posicionamiento Global (www.gpsy.com/gpsinfo/gps-faq.txt) Desarrollado y operado por el Gobierno de los Estados Unidos, el GPS (Sistema de Posicionamiento Global) es un sistema usado en todo el mundo para sistema de radio navegacin formado por una constelacin de 24 satlites y sus estaciones en tierra. Con una vista clara del cielo el GPS trabaja 24 horas al da, siete das a la semana. El Sistema de Posicionamiento Global consiste en tres componentes interactivos: 1. El Segmento del espacio -- Satlites orbitando la Tierra 2. El Segmento de Control -- el control y monitoreo de las estaciones correo por el Departamento de Defensa de los Estados Unidos (no se discute en esta documentacin) 3. El Segmento del Usuario -- los recibidores GPS adquiridos por civiles y militares El segmento del espacio consiste en una constelacin de 24 satlites activos (y uno o mas repuestos en rbita) orbitando la tierra cada 12 horas. Cuatro satlites estn localizados en cada una de las seis rbitas y sern visibles en un 95% del tiempo. Las rbitas estn distribuidas igualmente alrededor del atierra y estn inclinadas 55 grados con respecto al ecuador. Los satlites en rbita estn a una altura aproximada de 1,000 millas nuticas. Cada satlite transmite dos seales: L1 (1575.42 MHz) y L2 (1227.60 MHz). La seal L1 es modulada con dos semi-seales - el cdigo protegido (P) y el cdigo curso/adquisicin (C/A). La seal L2 solo acarrea cdigo P. Los receptores de Navegacin civil solo utilizan el cdigo C/A en la frecuencia L1. Cada seal de cada satlite contiene un mensaje repetido, indicando la posicin y los parmetro orbitales del mismo y otros satlites (almanaque), una lista de la salud de los satlites y el tiempo atmico preciso. El receptor mide el tiempo requerido por la seal para viajar del satlite al receptor al conocer el tiempo en el que la seal deja el satlite y observando el tiempo en el que se recibe la seal, basado en su reloj interno. Si el recepto tiene un reloj perfecto exactamente en sincrona con los de los satlites, tres mediciones, de los tres satlites sera suficiente para determinar la posicin en tres dimensiones a travs de una triangulacin. Sin embargo este no es el caso, as que un cuarto satlite se necesita para resolver el error del reloj. Con cuatro o ms satlites un GPS puede proporcionar un preciso tiempo y posicin. Observe que los datos de posicin y precisin se ven afectados o degradados por la geometra del satlite, la interferencia electromagntica y el multicamino, un grupo de reflexiones impredecible y/o ondas directas con cada una de sus atenuaciones y retrasos. Midiendo la altitud usando un GPS puede inducir un error de 1.5 veces la posicin precisa del receptor (en el caso del Receptor GPS de Parallax esto es +/- 7.5 metros en direccin vertical). Las seales de GPS trabajan en la banda de radio de microondas. Pueden pasar a travs de vidrio pero se absorben por las molculas del agua (por ejemplo madera o follaje) y se reflejan en concreto acero y rocas. Esto significa que el modulo GPS tiene problemas para operar en bosques, junglas urbanas, caones profundos, dentro de automviles y botes y en tormentas de nieve. Estos obstculos ambientales degradan la precisin de posicin haciendo difcil alcanzar una posicin fija del satlite.

GPS PARALLAX 28146

PAGE 7

La mayora de los GPS tienen una salida de datos que pueden ser utilizados e interpretados por otros equipos. El formato ms comn (usado por el receptor GPS de Parallax en modo RAW) es NMEA0183 desarrollado para comunicaciones entre instrumentos marinos. Algunos receptores tambin tienen propiedad de formatos para transferir listas, rastrear registros y otros datos entre el GPS y una computadora. Tales formatos no se cuben por el estndar NMEA. NMEA0183 se proporciona como una cadena de series de coma delimitada en ASCII, cada uno precedido con un encabezado de identificacin. Cualquier micro controlador con un puerto serie puede extraer los datos de un mdulo GPS. Pero los mdulos no producen texto de la informacin de la localidad. En cambio crean sentencias estandarizadas tales como: $GPGGA,170834,4124.8963,N,08151.6838,W,1,05,1.5,280.2,M,-34.0,M,,,*75 $GPGSA,A,3,19,28,14,18,27,22,31,39,,,,,1.7,1.0,1.3*34 $GPGSV,3,2,11,14,25,170,00,16,57,208,39,18,67,296,40,19,40,246,00*74 $GPRMC,220516,A,5133.82,N,00042.24,W,173.8,231.8,130694,004.2,W*70 Los programadores pueden entonces convertir estas cadenas para obtener la informacin que necesitan, incluyendo tiempo, fecha, latitud, longitud, velocidad y altitud. Para ms detalles de la estructura de las sentencias NMEA0183 visite: http://home.mira.net/~gnb/gps/nmea.html www.gpsinformation.org/dale/nmea.htm

El modo inteligente del GPS Parallax recibir instrucciones del usuario y automticamente pasara esta informacin NMEA0183 para proporcionar la informacin requerida, como se muestra en la salida de abajo usando el ejemplo de cdigo que comienza en la pgina 8
Parallax GPS Receiver Demo -------------------------Hardware Version: 1.0 Firmware Version: 2.0 Signal Valid: Yes Acquired Satellites: 7 Local Time: 12:45:40 Local Date: 28 FEB 2010 Latitude: 037 46' 51.5" N ( 37.7809 ) Longitude: 122 27' 50.8" W (-122.4641 ) Altitude: 45.3 meters ( 147 feet ) Extended Altitude: 45 meters ( 147 feet ) Speed: 28.5 Knots ( 32.7 MPH ) Direction of Travel: 87.7

Estas son tres notaciones estndares para desplegar longitud y latitud: Coordenadas GPS (Grados, minutos y minutos fraccionales) Ej: 36 grados 35.9159 minutos DDMMSS (Grados, Minutos, Segundos) Ej: 36 grados, 35 minutos, 55.3 segundos Grados Decimales Ej: 36.5986 grados

GPS PARALLAX 28146

PAGE 8

En modo inteligente el receptor GPS transmite latitud y longitud al usuario en formato coordinado GPS (Grados, Minutos y Minutos Fraccionales). La conversin de las otras dos notaciones, DDMMSS y Grados Decimales, es simple y se demuestra en el cdigo que comienza en la pgina 8. Para desplegar grficamente la posicin GPS usando Mapas Google vaya a http://maps.google.com/ e ingrese sus coordenadas en el campo "Bsqueda" (por ejemplo "36.5989, -118.0599" sin las comillas). Para desplegar grficamente una serie de puntos, SPG Visualizer (www.gpsvisualizer.com) es una utilidad en lnea gratuita que genera mapas y perfiles de datos GPS. GPS Visualizer puede leer datos de diferentes fuentes, incluyendo RAW NMEA, Tab-Delimitado, o Coma-Separada del texto de datos relevantes de GPS. Algunos recursos adicionales y artculos se pueden encontrar en:
Where in the World is my BASIC Stamp?, Jon Williams, The Nuts and Volts of BASIC Stamps (Volume 3; Column 83), que puede encontrar en el Tabulador de recursos en www.parallax.com. Stamping on Down the Road, Jon Williams, The Nuts and Volts of BASIC Stamps (Volume 4,Column 103), que puede encontrar en el Tabulador de recursos en www.parallax.com.

Programa BASIC Stamp 2


El siguiente ejemplo de cdigo demuestra el GPS en modo inteligente y despliega el nmero de satlites, tiempo local, fecha, latitud y longitud, longitud extendida, velocidad y direccin de viaje. El cdigo est disponible para descarga en la pgina de Parallax bajo el Mdulo GPS #28146
' ========================================================================= ' ' File...... GPSDemoV2.0.B22 ' Purpose... Demonstrates features of the Parallax GPS Receiver Module ' Author.... Joe Grand, Grand Idea Studio, Inc. [www.grandideastudio.com] ' E-mail.... support@parallax.com ' Updated... 03 MAR 2011 ' ' {$STAMP BS2} ' {$PBASIC 2.5} ' ' ========================================================================= ' -----[ Program Description ]--------------------------------------------' ' Este programa demuestra la capacidad del modulo GPS ' ' Antes de correr este demo asegrese que el pin /RAW est desconectado ' o jale a alto para habilitar el modo intelligente ' ' For an application that requires constant monitoring of multiple GPS ' data components, it is recommended to use the "raw" mode of the GPS ' Receiver Module by pulling the /RAW Pin LOW. In this mode, the module ' will transmit a constant stream of raw NMEA0183 data strings, which can ' then be parsed by the host application. ' ' See the user manual for more details. ' -----[ I/O Definitions ]----------------------------------------------

GPS PARALLAX 28146 Sio PIN 15 ' connects to GPS Module SIO pin

PAGE 9

' -----[ Constants ]------------------------------------------------------T4800 Open Baud MoveTo CON ClrRt FieldLen EST CST MST PST EDT CDT MDT PDT UTCfix DegSym MinSym SecSym CON CON CON 188 $8000 Open | T4800 ' Open mode to allow daisy chaining ' DEBUG positioning command ' clear line right of cursor ' length of debug text ' Eastern Standard Time ' Central Standard Time ' Mountain Standard Time ' Pacific Standard Time ' Eastern Daylight Time ' Central Daylight Time ' Mountain Daylight Time ' Pacific Daylight Time ' set based on time zone location ' degrees symbol for report ' minutes symbol ' seconds symbol

2 CON 11 CON 22 CON -5 CON -6 CON -7 CON -8 CON -4 CON -5 CON -6 CON -7 CON PST CON 176 CON 39 CON 34

' GPS Module Commands GetInfo CON $00 GetValid CON $01 GetSats CON $02 GetTime CON $03 GetDate CON $04 GetLat CON $05 GetLong CON $06 GetAlt CON $07 GetSpeed CON $08 GetHeading CON $09 GetAltExt CON $0A ' -----[ Variables ]------------------------------------------------------char VAR workVal VAR eeAddr VAR ver_hw VAR ver_fw VAR valid sats VAR VAR Byte Word workVal Byte Byte Byte Byte Byte Byte Byte Byte Byte Byte ' signal valid? 0 = not valid, 1 = valid ' number of satellites used in positioning calculations ' time fields

' for numeric conversions ' pointer to EE data

tmHrs VAR tmMins VAR tmSecs VAR day month year VAR VAR VAR

' day of month, 1-31 ' month, 1-12 ' year, 00-99

GPS PARALLAX 28146 degrees minutes minutesD dir W) VAR VAR VAR VAR Byte Byte Word Byte ' latitude/longitude degrees ' latitude/longitude minutes ' latitude/longitude decimal minutes ' direction (latitude: 0 = N, 1 = S, longitude: 0 = E, 1 =

PAGE 10

heading VAR WORD alt VAR WORD altExt VAR WORD supported in GPS firmware <= 2.0) speed VAR WORD ' speed in 0.1 knots

' heading in 0.1 degrees ' altitude in 0.1 meters ' altitude in meters (no decimal, extended range,

' -----[ EEPROM Data ]----------------------------------------------------NotValid IsValid DaysInMon MonNames DATA DATA DATA DATA DATA "No", 0 "Yes", 0 31,28,31,30,31,30,31,31,30,31,30,31 "JAN",0,"FEB",0,"MAR",0,"APR",0,"MAY",0,"JUN",0 "JUL",0,"AUG",0,"SEP",0,"OCT",0,"NOV",0,"DEC",0

' -----[ Initialization ]-------------------------------------------------Initialize: PAUSE 250 DEBUG CLS DEBUG MoveTo, 0, 1, ' let DEBUG open ' clear the screen "Parallax GPS Receiver Demo"

Draw_Data_Labels: DEBUG MoveTo, 0, 3, " Hardware Version: " DEBUG MoveTo, 0, 4, " Firmware Version: " DEBUG MoveTo, 0, 6, " Signal Valid: " DEBUG MoveTo, 0, 7, "Acquired Satellites: " DEBUG MoveTo, 0, 9, " Local Time: " DEBUG MoveTo, 0, 10, " Local Date: " DEBUG MoveTo, 0, 12, " Latitude: " DEBUG MoveTo, 0, 13, " Longitude: " DEBUG MoveTo, 0, 14, " Altitude: " DEBUG MoveTo, 0, 15, " Extended Altitude: " DEBUG MoveTo, 0, 16, " Speed: " DEBUG MoveTo, 0, 17, "Direction of Travel: " ' -----[ Program Code ]---------------------------------------------------Main: GOSUB Get_Info GOSUB Get_Valid GOSUB Get_Sats GOSUB Get_TimeDate GOSUB Get_Lat GOSUB Get_Long GOSUB Get_Alt GOSUB Get_AltExt GOSUB Get_Speed GOSUB Get_Heading GOTO Main ' -----[ Subroutines ]----------------------------------------------------Get_Info: SEROUT Sio, Baud, ["!GPS", GetInfo]

GPS PARALLAX 28146 SERIN Sio, Baud, 3000, No_Response, [ver_hw, ver_fw] DEBUG MoveTo, FieldLen, 3, HEX ver_hw.HIGHNIB, ".", HEX ver_hw.LOWNIB DEBUG MoveTo, FieldLen, 4, HEX ver_fw.HIGHNIB, ".", HEX ver_fw.LOWNIB RETURN ' ---------------------------------------------------Get_Valid: SEROUT Sio, Baud, ["!GPS", GetValid] SERIN Sio, Baud, 3000, No_Response, [valid] DEBUG MoveTo, FieldLen, 6 LOOKUP valid, [NotValid, IsValid], eeAddr GOSUB Print_Z_String DEBUG ClrRt IF (valid = 0) THEN Signal_Not_Valid RETURN ' ---------------------------------------------------Get_Sats: SEROUT Sio, Baud, ["!GPS", GetSats] SERIN Sio, Baud, 3000, No_Response, [sats] DEBUG MoveTo, FieldLen, 7, DEC sats RETURN ' ---------------------------------------------------Get_TimeDate: SEROUT Sio, Baud, ["!GPS", GetTime] SERIN Sio, Baud, 3000, No_Response, [tmHrs, tmMins, tmSecs] SEROUT Sio, Baud, ["!GPS", GetDate] SERIN Sio, Baud, 3000, No_Response, [day, month, year] GOSUB Correct_Local_Time_Date DEBUG MoveTo, FieldLen, 9, DEC2 tmHrs, ":", DEC2 tmMins, ":", DEC2 tmSecs DEBUG MoveTo, FieldLen, 10, DEC2 day, " " eeAddr = (month - 1) * 4 + MonNames ' get address of month name GOSUB Print_Z_String ' print it DEBUG " 20", DEC2 year RETURN ' ---------------------------------------------------Get_Lat: SEROUT Sio, Baud, ["!GPS", GetLat] SERIN Sio, Baud, 3000, No_Response, [degrees, minutes, minutesD.HIGHBYTE, minutesD.LOWBYTE, dir] ' convert decimal minutes to tenths of seconds workVal = minutesD ** $0F5C ' minutesD * 0.06 DEBUG MoveTo, FieldLen, 12, DEC3 degrees, DegSym, " ", DEC2 minutes, MinSym, " " DEBUG DEC2 (workVal / 10), ".", DEC1 (workVal // 10), SecSym, " " DEBUG "N" + (dir * 5) ' convert to decimal format, too workVal = (minutes * 1000 / 6) + (minutesD / 60) DEBUG " (", " " + (dir * 13), DEC degrees, ".", DEC4 workVal, " ) " RETURN ' was the signal valid? ' get answer from EE ' print it ' clear end of line

PAGE 11

GPS PARALLAX 28146 ' ---------------------------------------------------Get_Long: SEROUT Sio, Baud, ["!GPS", GetLong] SERIN Sio, Baud, 3000, No_Response, [degrees, minutes, minutesD.HIGHBYTE, minutesD.LOWBYTE, dir] ' convert decimal minutes to tenths of seconds workVal = minutesD ** $0F5C ' minutesD * 0.06 DEBUG MoveTo, FieldLen, 13, DEC3 degrees, DegSym, " ", DEC2 minutes, MinSym, " " DEBUG DEC2 (workVal / 10), ".", DEC1 (workVal // 10), SecSym, " " DEBUG "E" + (dir * 18) ' convert to decimal format, too workVal = (minutes * 1000 / 6) + (minutesD / 60) DEBUG " (", " " + (dir * 13), DEC degrees, ".", DEC4 workVal, " ) " RETURN ' ---------------------------------------------------Get_Alt: SEROUT Sio, Baud, ["!GPS", GetAlt] SERIN Sio, Baud, 3000, No_Response, [alt.HIGHBYTE, alt.LOWBYTE] DEBUG MoveTo, FieldLen, 14, DEC (alt / 10), ".", DEC1 (alt // 10), " meters " workVal = alt / 10 ' remove tenths from altitude ' convert altitude from meters to feet workVal = (workVal * 3) + (workVal ** $47E5) ' 1 meter = 3.2808399 feet DEBUG " ( ", DEC workVal, " feet ) " RETURN ' ---------------------------------------------------' The newer version of the Parallax GPS Receiver Module (firmware version >= 2.0) using the PMB-648 supports an extended altitude command. ' See the user manual for more details. Get_AltExt: IF (ver_fw.HIGHNIB >= 2) THEN SEROUT Sio, Baud, ["!GPS", GetAltExt] SERIN Sio, Baud, 3000, No_Response, [altExt.HIGHBYTE, altExt.LOWBYTE] DEBUG MoveTo, FieldLen, 15, DEC altExt, " meters " ' convert altitude from meters to feet workVal = (altExt * 3) + (altExt ** $47E5) ' 1 meter = 3.2808399 feet DEBUG " ( ", DEC workVal, " feet ) " ELSE DEBUG MoveTo, FieldLen, 15, "N/A" ENDIF RETURN ' ---------------------------------------------------Get_Speed: SEROUT Sio, Baud, ["!GPS", GetSpeed] SERIN Sio, Baud, 3000, No_Response, [speed.HIGHBYTE, speed.LOWBYTE] DEBUG MoveTo, FieldLen, 16, DEC (speed / 10), ".", DEC1 (speed // 10), " Knots " ' convert speed from knots to MPH workVal = speed + (speed ** $2699) ' 1 knot = 1.1507771555 MPH

PAGE 12

GPS PARALLAX 28146 DEBUG " ( ", DEC (workVal / 10), ".", DEC1 (workVal // 10), " MPH ) " RETURN ' ---------------------------------------------------Get_Heading: SEROUT Sio, Baud, ["!GPS", GetHeading] SERIN Sio, Baud, 3000, No_Response, [heading.HIGHBYTE, heading.LOWBYTE] IF speed = 0 THEN DEBUG MoveTo, FieldLen, 17, "N/A " ELSE DEBUG MoveTo, FieldLen, 17, DEC (heading / 10), ".", DEC1 (heading // 10), DegSym, " " ENDIF RETURN ' ---------------------------------------------------No_Response: DEBUG MoveTo, 0, 18, "Error: No response from GPS Receiver" PAUSE 5000 GOTO Initialize ' ---------------------------------------------------Signal_Not_Valid: DEBUG MoveTo, FieldLen, 7, "?", ClrRt ' clear all fields DEBUG MoveTo, FieldLen, 9, "?", ClrRt DEBUG MoveTo, FieldLen, 10, "?", ClrRt DEBUG MoveTo, FieldLen, 12, "?", ClrRt DEBUG MoveTo, FieldLen, 13, "?", ClrRt DEBUG MoveTo, FieldLen, 14, "?", ClrRt DEBUG MoveTo, FieldLen, 15, "?", ClrRt DEBUG MoveTo, FieldLen, 16, "?", ClrRt DEBUG MoveTo, FieldLen, 17, "?", ClrRt GOTO Main ' ---------------------------------------------------' Adjust date for local position ' Fixed by JZ for proper month adjustment in Location_Lags Correct_Local_Time_Date: workVal = tmHrs + UTCfix ' add UTC offset IF (workVal < 24) THEN Adjust_Time ' midnight crossed? workVal = UTCfix ' yes, so adjust date BRANCH workVal.BIT15, [Location_Leads, Location_Lags] Location_Leads: ' east of Greenwich day = day + 1 ' no, move to next day eeAddr = DaysInMon * (month - 1) ' get days in month READ eeAddr, char IF (day <= char) THEN Adjust_Time ' in same month? month = month + 1 ' no, move to next month day = 1 ' first day IF (month < 13) THEN Adjust_Time ' in same year? month = 1 ' no, set to January year = year + 1 // 100 ' add one to year GOTO Adjust_Time Location_Lags: ' west of Greenwich day = day - 1 ' adjust day IF (day > 0) THEN Adjust_Time ' same month?

PAGE 13

GPS PARALLAX 28146 month = month - 1 IF (month > 0) THEN ' same year? eeAddr = DaysInMon + (month - 1) ' same year, but different month, READ eeAddr, day ' so need to adjust the day GOTO Adjust_Time ' before adjusting the time. ENDIF month = 1 ' no, set to January eeAddr = DaysInMon * (month - 1) READ eeAddr, day ' get new day year = year + 99 // 100 ' set to previous year Adjust_Time: tmHrs = tmHrs + (24 + UTCfix) // 24 ' localize hours RETURN ' ---------------------------------------------------' Print Zero-terminated string stored in EEPROM ' -- eeAddr - starting character of string Print_Z_String: READ eeAddr, char ' get char from EE IF (char = 0) THEN Print_Z_String_Done ' if zero, we're done DEBUG char ' print the char eeAddr = eeAddr + 1 ' point to the next one GOTO Print_Z_String Print_Z_String_Done: RETURN ' ----------------------------------------------------

PAGE 14

GPS PARALLAX 28146

PAGE 15

Revisiones
Desde Marzo del 2011 el mdulo receptor GPS de Parallax se actualiz del PMB-248 al PMB648. Las versiones anteriores pueden identificarse con las marcas que se muestran en esta foto:

Las unidades anteriores son idnticamente funcionales a las nuevas excepto por las siguientes caractersticas: Caracterstica Chip GPS Grupo de Instrucciones Satlites mximos Corriente Sensibilidad de seal Mdulo PMB-248 Sony CXD2951GA-4 GetAltExt no soportado 12 115 mA tpico -152 dBm Mdulo PMB-648 SiRF Star III GetAltExt soportado 20 65 mA tpico -159 dBm

La documentacin y el Frimware para la V 1.1 (PMB-248) puede encontrarse en la pgina del producto en el sitio de parallax.com Por favor contacte a support@parallax.com para mayor informacin o para soporte en espaol contacte a direccion@fixingenieria.com

NOTA: Esta traduccin al espaol realizada por FIX Ingeniera-Mxico (www.fixingenieria.com) tiene fines educativos nicamente. Todos los Derechos Reservados por Parallax Inc. Agradeceremos sus comentarios y/o identificacin de cualquier error detectado en este manual.

You might also like