Hacer un Tracker de globo de la alto-altitud (Arduino) (5 / 8 paso)

Paso 5: Crear un bosquejo

Bosquejo:

Mi bosquejo completo está disponible en el archivo .zip en el siguiente paso, sin embargo, es útil tener una idea del plan general para facilitar la adaptación.


Interrupción:

Necesitamos para la radio por modulación de pin D5 alta/baja a una velocidad de 50 baudios. Es decir, cada 20ms necesitamos representar un nuevo pedacito de datos como una alta o baja de un 1 o 0 respectivamente. Utilizamos este flujo de datos para codificar una cadena de texto. Existen diversos métodos para ello, pero 7-bit ASCII es más común. Mantendremos un doble-buffer que contiene la cadena de transmisión y una copia que estamos preparando con datos actualizados.

Para conseguir una transmisión más eficiente y confiable y sobre todo para darnos la exacta sincronización, enviamos la cadena bajo interrupción. Esto requiere un pedazo corto y rápido de código simplemente para mantener la pista de que bit que byte de la cadena se transmite actualmente y pasar a la siguiente broca cada vez. Cuando terminamos una cadena cambiar los almacenadores intermediarios de la cadena, moviendo sobre enviar los datos más actualizados del otro buffer.

Bucle principal:

En el bucle principal, circulamos, leyendo cada uno de los sensores y el GPS cada vez que estén listos. Los últimos valores se almacenan en variables. Cuando el GPS está preparado para dar una nueva ubicación, leemos, decodificarlo y actualizar la copia de trabajo de la cadena. Tenemos que apagar interrumpe brevemente con el fin de actualizar el buffer para que no terminen de transmitir una cadena construida a mitad. Como resultado, actualizamos el tampón sólo cuando una nueva ubicación GPS está lista, para que no tengamos interrupciones durante demasiado tiempo.

Cada vez que cambiamos amortiguadores que establecemos una bandera diciendo que el bucle principal que se inicia una nueva transmisión. La vieja cadena que sólo fue enviada entonces se escribe en la tarjeta SD antes de abrir el búfer hasta que se actualiza.

También tenemos que mantener un ojo en el GPS para asegurarse de que permanece en modo de vuelo. La razón que utilizamos un GPS de Ublox módulo es que operará hasta las alturas que nos visitará - muchos GPS no funcionan encima de cerca de 14 kilómetros. Para hacer el trabajo de Ublox en altura, tenemos que asegúrese de que esté en el modo correcto.

Sensores y puertos:

La junta puede hablar con el módulo GPS por I2C o UART. He elegido usar la interfaz I2C para que puedo utilizar el UART para la depuración mediante la conexión al puerto serie del PC. También utilizaremos el I2C para hablar con el sensor de presión de Honeywell, pero los dos parecen coexistir en las líneas I2C sin conflicto.

La Junta tendrá dos sensores de temperatura DS18B20. Usé uno interno y uno externo. Estos son muy sensibles a tiempo y necesitaba desactivar interrupciones de unos microsegundos al leerlos. De lo contrario son muy fácil de usar. Usé una copia de la biblioteca de alambre que decía tener menos cuelgues que el nativo Arduino uno. Cierto o no, funcionó bien.

La tarjeta SD se encuentra en los pines SPI y está a cargo de la biblioteca de SDfat. Tarjeta SD de escritura tiene que una carga de memoria y uno de los verdaderos trucos para este bosquejo intentaba controlar cuánto SRAM gratis estaba disponible.

Artículos Relacionados

Cómo hacer un papel 3d mecedora 5" de alto

Cómo hacer un papel 3d mecedora 5" de alto

como hacer una mecedora 3D de papel 5" alto1. Imprima el patrón de 1 página en 1 pieza de cartulina papel 8-1/2 de "x 11"2. anotar todas las líneas verdes.3 cortar alrededor del exterior de la mecedora y todas las líneas rojas.4. doble toda
Cómo hacer un Origami de globo por: Oliver

Cómo hacer un Origami de globo por: Oliver

saber por favor, es super fácil y divertido!!!!!!Paso 1: haga un cuadrado 1 pliegue diagonal para hacer un triángulo rectángulo.2 corte de la parte inferior. (Yo prefiero utilizar las manos)3 desplegarPaso 2: Doblar el triángulo 1. doblar diagonalmen
Cómo hacer que parpadean a la música con un Arduino

Cómo hacer que parpadean a la música con un Arduino

esta es una guía para hacer un LED intermitente circuito que "late" a un archivo mp3 en su computadora, que puede añadir un efecto impresionante a cualquier dispositivo relacionado con el sonido, o incluso su habitación (si se extiende el concep
Cómo hacer un ornamento de globo de aire caliente

Cómo hacer un ornamento de globo de aire caliente

** si te gusta este tutorial encantaría que usted votó por mí en el concurso de regalos de vacaciones.  Banner para votar en la parte superior derecha. **Obtener inspiración de tantos lugares.  Al navegar por el sitio web de Hardware de restauración
Cómo hacer un Tracker de localización GSM AdaFruit FONA y Arduino

Cómo hacer un Tracker de localización GSM AdaFruit FONA y Arduino

IntroducciónEn este tutorial que vamos a hacer una web conectada registrador de localización utilizando el tablero de la FONA de Adafruit, un Arduino y el servicio de datos de Sparkfun. Obtendrá su localización mediante triangulación y publicar una b
Cómo hacer un disfraz de globo de aire caliente

Cómo hacer un disfraz de globo de aire caliente

yo estaba buscando un buen disfraz de Halloween este año. Quería algo original y divertido. Creo que he logrado tanto.
Hacer un robot simple de RF inalámbrico con Arduino!

Hacer un robot simple de RF inalámbrico con Arduino!

ACTUALIZACIÓN: HE AÑADIDO CONTROL DE JOYSTICK A ESTE ROBOT. POR FAVOR CONSULTE EL PASO 7 SI DESEA CONTROLAR EL ROBOT POR MEDIO DE JOYSTICK.Hola,Este es mi primer instructivo y en este tutorial voy a mostrarte, cómo construir un simple robot inalámbri
Hacer un adaptador USB de teclado de ThinkPad con Arduino

Hacer un adaptador USB de teclado de ThinkPad con Arduino

Entre las computadoras portátiles de clase de negocios, ThinkPad tiene los mejores teclados. Incluso con el cambio a teclado de estilo isla, yo diría que teclados ThinkPad todavía vencer a todos sus competidores laptop manos hacia abajo en el Departa
Cómo hacer una máquina de "bajar de mi propiedad" arduino

Cómo hacer una máquina de "bajar de mi propiedad" arduino

Este instructable le mostrará cómo hacer que mi máquina de arduino "bajar mi propiedad". El único propósito de esta máquina es eliminar objetos colocados en él. El video de arriba explica esto muy bien.Paso 1: fuentes deMateriales:X 2: 7 cm * 9
Cómo hacer un coche de Rc por cable utilizando un Arduino

Cómo hacer un coche de Rc por cable utilizando un Arduino

Voy a mostrarte cómo hacer un coche RC con un arduinoPaso 1: materiales2 unos de Arduino (que es lo que he usado).Los cables de puente y de macho a hembra de los cables2 joysticks de Arduino2 pilas de 9vbatería de coche RC recargable de 1 9.6v1 Torre
Hacer que los datos base para su escuela con arduino

Hacer que los datos base para su escuela con arduino

HolaHoy vamos a hacer un proyecto de la escuela para hacer una de datos base para ausente estudiantesaber que existe ese díaPaso 1: Lo que necesitamos vamos a necesitar:1-Arduino Uno2-cables (macho y macho-hembra)3-9 voltiosTablero de pan 45-lector (
Hacer un detector de fuego en minutos Samsung SAMIIO, Arduino UNO y frambuesa Pi

Hacer un detector de fuego en minutos Samsung SAMIIO, Arduino UNO y frambuesa Pi

Vamos a construir un dispositivo de IoT que envía datos de los sensores a utilizar WebSockets de SAMI SAMI de la llama. El dispositivo de IoT consta de un sensor estándar, Arduino UNO y Raspberry Pi.En esta implementación, un manifiesto Simple se uti
Cómo hacer un sencillo sistema de radar ultrasónico de Arduino...

Cómo hacer un sencillo sistema de radar ultrasónico de Arduino...

veo muchos proyecto en red sobre el sistema de radar ultrasónico.. .y hice este aquí i compartir este proyecto con ustedes que es fácil de hacer con arduino de sensor de ultrasonidos y servo motor.. .seguir el paso....es parte de ser necesario1 ardui
Hacer I2C LCD de Seedstudio monitor trabajo con un Arduino viejo

Hacer I2C LCD de Seedstudio monitor trabajo con un Arduino viejo

Tengo el Grove comenzó kit de Seedstudio, y he tenido problemas con su pantalla LCD de un viejo modelo de Arduino (estoy usando un Freediuno. IDE la reconoce como un "Duomilanove w / ATmega328", pero creo que muchos tableros viejo tendría un pro