Arduineces y otras hierbas (Monitorizar fugas de agua)
- Anilandro
- Mensajes: 4905
- Registrado: Dom Feb 11, 2007 10:16 pm
- Ubicación: Islas Baleares, España
- Contactar:
Re: Mis primeros pasos con Arduino
Bueno, pues dejé el módulo GPS montado de nuevo, lo conecté al Arduino (que seguía usando sólo como interface a USB), y un pequeño notebook Asus con Windows-7, y para asegurar la cobertura de los satélites me dirigí a la terraza ya de noche y, ...Oh maravilla de la técnica... al poco de encender el conjunto el led azul de la plaquita GPS se puso a destellear y la pantalla del monitor serie del IDE comenzó a mostrar una serie regular de líneas de datos, letras y números, pero cuyo primer carácter era el signo de $ seguido de 5 letras... Sin duda eran señales GPS reales, aunque entre tanto símbolo era difícil entender algo concreto. No obstante estaba en el buen camino...
Líneas de datos (frames) GPS en pantalla del monitor serie del IDE de Arduino
Lo siguiente fue intentar prescindir de la placa Arduino, ya que si el microcontrolador no tiene programa y no hace nada, es un poco absurdo utilizarla. La idea inicial en este caso era poder usar el módulo GPS directamente con el ordenador, tanto el fijo que tengo en mi cuarto, como en el pequeño portátil. El fijo es un HP con doce o trece años y aún dispone de conector DB-9 (el que utiliza el RS-232) en su parte trasera, pero a causa del sitio en que está montada la torre, tengo difícil acceso a dicho conector, con lo cual me resulta mucho más fácil utilizar el USB frontal con un conversor de RS-232 a USB que compré hace años. En cuanto al notebook es mucho más moderno, y por descontado no dispone de conector DB-9, con lo cual el USB es la única opción.
Conversor RS-232 a USB
En éste último ordenador también tuve problemas para que me reconociera el conversor, ya que a pesar de tener drivers genéricos que me habían funcionado en XP, en W7 simplemente me indicaba que el "dispositivo no había podido instalarse". Busqué los drivers del presunto fabricante (digo presunto porque el conversor tiene la etiqueta borrada y no aparece ninguna marca) y al instalarlos un par de veces, acabó funcionando bien. Lo segundo fue instalar el programa Realterm, un monitor de datos muy versátil que es de código libre y puede conseguirse gratis a través de SourceForge. La ultima versión de este programa, la 2.0.0.70 daba una cadena de errores, que si no encontraba esto o aquello, pero en cambio la versión anterior 2.0.0.69 se cargó y ejecutó sin problemas...
Continuará...
Saludos a todos
Líneas de datos (frames) GPS en pantalla del monitor serie del IDE de Arduino
Lo siguiente fue intentar prescindir de la placa Arduino, ya que si el microcontrolador no tiene programa y no hace nada, es un poco absurdo utilizarla. La idea inicial en este caso era poder usar el módulo GPS directamente con el ordenador, tanto el fijo que tengo en mi cuarto, como en el pequeño portátil. El fijo es un HP con doce o trece años y aún dispone de conector DB-9 (el que utiliza el RS-232) en su parte trasera, pero a causa del sitio en que está montada la torre, tengo difícil acceso a dicho conector, con lo cual me resulta mucho más fácil utilizar el USB frontal con un conversor de RS-232 a USB que compré hace años. En cuanto al notebook es mucho más moderno, y por descontado no dispone de conector DB-9, con lo cual el USB es la única opción.
Conversor RS-232 a USB
En éste último ordenador también tuve problemas para que me reconociera el conversor, ya que a pesar de tener drivers genéricos que me habían funcionado en XP, en W7 simplemente me indicaba que el "dispositivo no había podido instalarse". Busqué los drivers del presunto fabricante (digo presunto porque el conversor tiene la etiqueta borrada y no aparece ninguna marca) y al instalarlos un par de veces, acabó funcionando bien. Lo segundo fue instalar el programa Realterm, un monitor de datos muy versátil que es de código libre y puede conseguirse gratis a través de SourceForge. La ultima versión de este programa, la 2.0.0.70 daba una cadena de errores, que si no encontraba esto o aquello, pero en cambio la versión anterior 2.0.0.69 se cargó y ejecutó sin problemas...
Continuará...
Saludos a todos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
- Anilandro
- Mensajes: 4905
- Registrado: Dom Feb 11, 2007 10:16 pm
- Ubicación: Islas Baleares, España
- Contactar:
Re: Mis primeros pasos con Arduino
...Vuelta a la terraza (serían ya las 12 de la noche y había una humedad del copón), y la cosa no salió tan bien... el GPS destellaba como antes y sin duda los datos se enviaban, pero en ventana del Realterm sólo aparecían signos raros sin ningún sentido. Probé un montón de configuraciones del programa sin conseguir arreglar la cosa, y entonces recordé un problema semejante que había tenido algunos meses atrás al probar un sistema de adquisición de datos para instrumentación que estoy programando en Visual Basic ...que para entrar los datos en el conversor RS232-USB debía invertir antes la fase de la señal...
Adaptador inversor de fase para acoplar el módulo GPS al conversor RS-232 a USB (y viceversa)
...Ese día ya era tarde para meterme con el soldador a fabricar un circuito, pero al siguiente tomé un pequeño trozo de circuito impreso y un conector DB-9 hembra, y con un transistor NPN y dos resistencias realicé un simple inversor. Otro cambio fue habilitar en el conversor una salida de 5 volts para alimentar el módulo GPS, porque del conector RS-232 es posible extraer algunos miliamperios rectificando las señales digitales de los pins 4 y 7, pero no es suficiente para el consumo de 65 mA del GPS. Incluso con la alimentación externa, sobre el mismo circuito impreso coloqué dos diodos de silicio en serie, con condensadores de filtro de 2,2 uF, para que se provocara una caída de tensión de 1.2 volts y el regulador de la placa GPS no tuviera que trabajar tanto.
El conjunto inversor-adaptador
...Una vez acabado, inserte el inversor y volví a la terraza... y esta vez sí, BINGO... como puede verse en la imagen siguiente, en la pantalla del Realterm aparecieron las mismas cadencias de datos que antes en el IDE del Arduino. El sistema ya funcionaba sin problemas y lo siguiente era poder interpretar los resultados. Para ello un amigo me facilitó la dirección de una página ( http://www.gpsinformation.org/dale/nmea.htm ) en donde se expone de forma bastante clara y extensa el protocolo de datos NMEA, sus variables y significados. Por ejemplo, las líneas de datos que más nos interesan para determinar la posición serán las que empiecen por $GPRMC, tal como:
$GPRMC,234121.00,A,3953.44488,N,00415.26344,E,0.020,,231016,,,A*7D
"Frames" de señal GPS en pantalla del monitor serie Realterm
De donde, utilizando las comas como separadores podemos extraer:
RMC : Recommended Minimum sentence (indica los tipos de datos que vienen a continuación)
234121.00 : es la hora universal UTC (de Greenwich): 23 horas, 41minutos. 21.00 segundos
A : indica que la posición está bien establecida, si fuera una V podría ser errónea
3953.44488 : es la latitud geográfica: 39 grados 53,44488 minutos
N : indica que es latitut Norte
00415.26344 : es la Longitud geográfica: 004 grados 15,26344 minutos
E : indica Longitud Este
0.020 : indica la velocidad en Nudos (millas marinas por hora) (1 milla es igual a 1.852 metros)
, , : de aparecer, indicaría nuestro rumbo en grados con respecto al norte
231016 : indica la fecha: día 23, del mes 10, de 2016
, , : de aparecer, indicaría la variación magnética local
A
*7D : checksun, valor que siempre comienza con el signo * y sirve de comprobación de que no hay errores en la cadena de caracteres
Hay otras sentencias distintas, como $GPGGA, $GPGSV, $GPGSV, $GPUTG, etc, cada una con sus informaciones específicas, que ahora no es necesario ampliar.
El siguiente paso podría ser el utilizar estos datos con un programa que los filtre, los muestre en un display y si es necesario los almacene en una tarjeta uSD, bien sea en C a través del Arduino, o conectado directamente al ordenador mediante un programa de Visual Basic ...
Continuará...
Adaptador inversor de fase para acoplar el módulo GPS al conversor RS-232 a USB (y viceversa)
...Ese día ya era tarde para meterme con el soldador a fabricar un circuito, pero al siguiente tomé un pequeño trozo de circuito impreso y un conector DB-9 hembra, y con un transistor NPN y dos resistencias realicé un simple inversor. Otro cambio fue habilitar en el conversor una salida de 5 volts para alimentar el módulo GPS, porque del conector RS-232 es posible extraer algunos miliamperios rectificando las señales digitales de los pins 4 y 7, pero no es suficiente para el consumo de 65 mA del GPS. Incluso con la alimentación externa, sobre el mismo circuito impreso coloqué dos diodos de silicio en serie, con condensadores de filtro de 2,2 uF, para que se provocara una caída de tensión de 1.2 volts y el regulador de la placa GPS no tuviera que trabajar tanto.
El conjunto inversor-adaptador
...Una vez acabado, inserte el inversor y volví a la terraza... y esta vez sí, BINGO... como puede verse en la imagen siguiente, en la pantalla del Realterm aparecieron las mismas cadencias de datos que antes en el IDE del Arduino. El sistema ya funcionaba sin problemas y lo siguiente era poder interpretar los resultados. Para ello un amigo me facilitó la dirección de una página ( http://www.gpsinformation.org/dale/nmea.htm ) en donde se expone de forma bastante clara y extensa el protocolo de datos NMEA, sus variables y significados. Por ejemplo, las líneas de datos que más nos interesan para determinar la posición serán las que empiecen por $GPRMC, tal como:
$GPRMC,234121.00,A,3953.44488,N,00415.26344,E,0.020,,231016,,,A*7D
"Frames" de señal GPS en pantalla del monitor serie Realterm
De donde, utilizando las comas como separadores podemos extraer:
RMC : Recommended Minimum sentence (indica los tipos de datos que vienen a continuación)
234121.00 : es la hora universal UTC (de Greenwich): 23 horas, 41minutos. 21.00 segundos
A : indica que la posición está bien establecida, si fuera una V podría ser errónea
3953.44488 : es la latitud geográfica: 39 grados 53,44488 minutos
N : indica que es latitut Norte
00415.26344 : es la Longitud geográfica: 004 grados 15,26344 minutos
E : indica Longitud Este
0.020 : indica la velocidad en Nudos (millas marinas por hora) (1 milla es igual a 1.852 metros)
, , : de aparecer, indicaría nuestro rumbo en grados con respecto al norte
231016 : indica la fecha: día 23, del mes 10, de 2016
, , : de aparecer, indicaría la variación magnética local
A
*7D : checksun, valor que siempre comienza con el signo * y sirve de comprobación de que no hay errores en la cadena de caracteres
Hay otras sentencias distintas, como $GPGGA, $GPGSV, $GPGSV, $GPUTG, etc, cada una con sus informaciones específicas, que ahora no es necesario ampliar.
El siguiente paso podría ser el utilizar estos datos con un programa que los filtre, los muestre en un display y si es necesario los almacene en una tarjeta uSD, bien sea en C a través del Arduino, o conectado directamente al ordenador mediante un programa de Visual Basic ...
Continuará...
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
-
- Mensajes: 126
- Registrado: Dom May 09, 2010 8:43 am
- País: Argentina
- Ciudad: General Pico (La Pampa)
- Ubicación: General Pico, La Pampa, Argentina
Re: Mis primeros pasos con Arduino
Estimadisimo Anilandro a ver si lo que dice tu dispositivo es correcto clickea aca:
https://www.google.com.ar/maps/place/39 ... d4.2543907
Saludos Pope
https://www.google.com.ar/maps/place/39 ... d4.2543907
Saludos Pope
- Anilandro
- Mensajes: 4905
- Registrado: Dom Feb 11, 2007 10:16 pm
- Ubicación: Islas Baleares, España
- Contactar:
Re: Mis primeros pasos con Arduino
...Y tanto que lo es... Vaya, qué controlados estamos, y la información que facilitamos sin darnos cuenta... la cosa asusta un poco...
...Cuando navegaba y utilizaba el sextante, podía darme por muy satisfecho si establecía una posición con dos millas de error...
Saludos
...Cuando navegaba y utilizaba el sextante, podía darme por muy satisfecho si establecía una posición con dos millas de error...
Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
- Anilandro
- Mensajes: 4905
- Registrado: Dom Feb 11, 2007 10:16 pm
- Ubicación: Islas Baleares, España
- Contactar:
Re: Mis primeros pasos con Arduino
Un par de pruebas más en la misma dirección. La primera imagen es la adquisición de datos GPS a través del ordenador con el programita de Windows HyperTerminal, que no había probado hasta ahora y que es muy ligero, ya que sólo ocupa 28 KB y no necesita instalación:
...Y la segunda imagen es más interesante para mí, ya que se trata de la primera adquisición de datos GPS que consigo con un programa de Visual Basic. De momento ya me selecciona los puertos COM y me carga los datos en una variable de cadena. Luego vendrán las rutinas para separar las variables...
Para poder obtener datos desde mi cuarto de trastear, simplemente he hecho un cable de 5 metros con conectores tipo pin macho y hembra en ambos extremos, y coloco el módulo GPS en el alféizar de la ventana metido en una bolsita de plástico transparente...
Saludos...
...Y la segunda imagen es más interesante para mí, ya que se trata de la primera adquisición de datos GPS que consigo con un programa de Visual Basic. De momento ya me selecciona los puertos COM y me carga los datos en una variable de cadena. Luego vendrán las rutinas para separar las variables...
Para poder obtener datos desde mi cuarto de trastear, simplemente he hecho un cable de 5 metros con conectores tipo pin macho y hembra en ambos extremos, y coloco el módulo GPS en el alféizar de la ventana metido en una bolsita de plástico transparente...
Saludos...
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
- Anilandro
- Mensajes: 4905
- Registrado: Dom Feb 11, 2007 10:16 pm
- Ubicación: Islas Baleares, España
- Contactar:
Re: Mis primeros pasos con Arduino
Bueno, ya le he dado otro empujoncito al programa de Visual Basic para el GPS. En realidad la idea no es hacer un programa clásico, si no una especie de monitor donde puedan verse sus variables, y que en el código las cosas estén claras, en vista a utilizarlas más adelante para cualquier otro uso.
Ayer conseguí separar la cadena de datos NMEA en los "frames" que la componen, incluyendo los dedicados a los cuatro satélites simultáneos que utiliza el sistema (de entre todos los que capta, elige los cuatro de mejor relación señal/ruido), y cuyas cabeceras son iguales.
Un detalle es que las cadenas NMEA no son estándar, sino que diversas marcas y modelos de GPS muestran variaciones. Algunas dan muchos datos y otras muy pocos, dependiendo del receptor y del hardware decodificador. El módulo que tengo parece ser del tipo medio-alto, y suministra 9 frames distintos, aunque algunos de ellos son muy específicos, por ejemplo para el cálculo de velocidad, de posicionamiento 3D o incluso uno mantiene un formato de compatibilidad con los viejos sistemas de situación ya en desuso, como el Loran-C
Saludos a todos
Ayer conseguí separar la cadena de datos NMEA en los "frames" que la componen, incluyendo los dedicados a los cuatro satélites simultáneos que utiliza el sistema (de entre todos los que capta, elige los cuatro de mejor relación señal/ruido), y cuyas cabeceras son iguales.
Un detalle es que las cadenas NMEA no son estándar, sino que diversas marcas y modelos de GPS muestran variaciones. Algunas dan muchos datos y otras muy pocos, dependiendo del receptor y del hardware decodificador. El módulo que tengo parece ser del tipo medio-alto, y suministra 9 frames distintos, aunque algunos de ellos son muy específicos, por ejemplo para el cálculo de velocidad, de posicionamiento 3D o incluso uno mantiene un formato de compatibilidad con los viejos sistemas de situación ya en desuso, como el Loran-C
Saludos a todos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
Re: Mis primeros pasos con Arduino
Hola
Yo tengo a un par de personas desarrollando una solución con un GPS de bajo consumo, empleamos en lugar de arduino una plataforma ARM cortex M0+. Si quieres información al respecto te puedo pasar, nosotros utilizamos un gps Quectel que no sale nada caro y tiene funcionalidades de bajo consumo a través de un giroscopio interno que mide el movimiento y así adecuarse.
Un saludo
Yo tengo a un par de personas desarrollando una solución con un GPS de bajo consumo, empleamos en lugar de arduino una plataforma ARM cortex M0+. Si quieres información al respecto te puedo pasar, nosotros utilizamos un gps Quectel que no sale nada caro y tiene funcionalidades de bajo consumo a través de un giroscopio interno que mide el movimiento y así adecuarse.
Un saludo
- Anilandro
- Mensajes: 4905
- Registrado: Dom Feb 11, 2007 10:16 pm
- Ubicación: Islas Baleares, España
- Contactar:
Re: Mis primeros pasos con Arduino
Gracias Jabp_EX, cualquier información es siempre bienvenida, aunque mis necesidades actuales en este tema son más bien autodidactas. Nunca había trabajado con GPS (excepto un Magellan Meridian básico que compré en 1996 como ayuda a la navegación de altura), pero ignoraba por completo el tipo de señales y su formato, y es precisamente lo que estoy descubriendo con estas pruebas.
El módulo que utilizo va muy bien, es barato (no llegó a los 7€), en cuanto al consumo, es algo elevado, sobre los 65 mA, pero es una buena idea asociarle un chip de giróscopos-acelerómetros para darse cuenta de cuando está quieto y por lo tanto puede mantenerse en modo stand-by.
Un saludo
El módulo que utilizo va muy bien, es barato (no llegó a los 7€), en cuanto al consumo, es algo elevado, sobre los 65 mA, pero es una buena idea asociarle un chip de giróscopos-acelerómetros para darse cuenta de cuando está quieto y por lo tanto puede mantenerse en modo stand-by.
Un saludo
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
*** La Web de Anilandro *** http://sites.google.com/site/anilandro
- mister_electronico
- Mensajes: 122
- Registrado: Mié Ene 15, 2014 8:44 pm
- País: España
- Ciudad: Asturias
Re: Mis primeros pasos con Arduino
Yo actualmente estoy trabajando con el lo conecto con un muy economico ft232 al PC de la siguiente forma:
https://misterelectronico.wordpress.com ... y-ne06mv2/
Le he echo un programa pero es para Linux y para una distro muy minorista que es Puppy Linux, y bajo un entorno de programacion que ademas es tambien muy minoritaria gtkdialog y C ....jejeje.
Todavia no tengo claro los comandos para hacer que funcione a 38.400 y como hacer que se le active para que de bastantes datos mas.
Estare espectante a tus desarrollos con este GPS .
Un saludo.
https://misterelectronico.wordpress.com ... y-ne06mv2/
Le he echo un programa pero es para Linux y para una distro muy minorista que es Puppy Linux, y bajo un entorno de programacion que ademas es tambien muy minoritaria gtkdialog y C ....jejeje.
Todavia no tengo claro los comandos para hacer que funcione a 38.400 y como hacer que se le active para que de bastantes datos mas.
Estare espectante a tus desarrollos con este GPS .
Un saludo.
Re: Mis primeros pasos con Arduino
Hola a todos.
Como siempre, son interesante vuestros avances, pero en esta ocasión, además descargaros entre otros muchos el "SiRFDemo".
Existen multitud de programas-aplicaciones aunque las buenas y completas son de pago.
Por mi parte aunque ya hace 10 años que lo conocía, con Arduino voy avanzando, y ahora estoy comprobando, las prestaciones del CI de Maxim DS3231, que es un RTC muy bueno y versátil de partida, y que ajustando correctamente los registros del propio chip, llega a una precisión mejor de 5 segundos al año, algo increíble para hacerlo de forma totalmente independiente sin ayuda externa y en el rango de precio que tiene.
Un saludo a todos.
Como siempre, son interesante vuestros avances, pero en esta ocasión, además descargaros entre otros muchos el "SiRFDemo".
Existen multitud de programas-aplicaciones aunque las buenas y completas son de pago.
Por mi parte aunque ya hace 10 años que lo conocía, con Arduino voy avanzando, y ahora estoy comprobando, las prestaciones del CI de Maxim DS3231, que es un RTC muy bueno y versátil de partida, y que ajustando correctamente los registros del propio chip, llega a una precisión mejor de 5 segundos al año, algo increíble para hacerlo de forma totalmente independiente sin ayuda externa y en el rango de precio que tiene.
Un saludo a todos.
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados