SparkFun DEV-13712 Fotón de partículas con orificios para soldar

Presupuesto
- Nombre del producto: Registrador de datos OpenLog
- Modelo: DEV-13712
- Entrada de energía: 3.3 V-12 V (recomendado 3.3 V-5 V)
- Volumen de entrada RXItage: 2.0 V-3.8 V
- Volumen de salida TXOtage: 3.3 V
- Consumo de corriente en reposo: ~2 mA-5 mA (sin tarjeta microSD), ~5 mA-6 mA (con tarjeta microSD)
- Consumo de corriente de escritura activa: ~20-23 mA (con tarjeta microSD)
Instrucciones de uso del producto
Materiales necesarios:
- Arduino Pro Mini 328 – 3.3V/8MHz
- Módulo de conexión básico SparkFun FTDI de 3.3 V
- Cable USB SparkFun Cerberus de 6 m
- Tarjeta microSD con adaptador – 16 GB (Clase 10)
- Lector USB microSD
- Encabezados femeninos
- Cables de puente premium 6 M/M, paquete de 10
- Cabezales macho separables en ángulo recto
Lectura recomendada:
- Cómo soldar: Soldadura de orificio pasante
- Fundamentos de la comunicación en serie
- Interfaz periférica serial (SPI)
- Conceptos básicos de terminales seriales
Hardware terminadoview:
OpenLog se ejecuta con las siguientes configuraciones:
| Entrada VCC | Entrada RXI | Salida TXO | Consumo de corriente en reposo | Consumo de corriente de escritura activa |
|---|---|---|---|---|
| 3.3 V-12 V (recomendado 3.3 V-5 V) | 2.0 V-3.8 V | 3.3 V | ~2 mA-5 mA (sin tarjeta microSD), ~5 mA-6 mA (con tarjeta microSD) | ~20-23 mA (con tarjeta microSD) |
Introducción
¡Atención! Este tutorial es para OpenLog para UART serial [DEV-13712]. Si utiliza Qwiic OpenLog para IC [DEV-15164], consulte la Guía de conexión de Qwiic OpenLog.
El registrador de datos OpenLog es una solución de código abierto fácil de usar para registrar datos en serie de sus proyectos. OpenLog proporciona una interfaz en serie sencilla para registrar datos de un proyecto en una tarjeta microSD.
SparkFun OpenLog
DEV-13712

SparkFun OpenLog con encabezados
DEV-13955
No se encontró ningún producto
Materiales necesarios
Para completar este tutorial, necesitarás las siguientes piezas. Sin embargo, puede que no las necesites todas, dependiendo de lo que tengas. Añádelo a tu carrito, lee la guía y ajusta el carrito según sea necesario.
Guía de conexión de OpenLog
Lista de deseos de SparkFun


Lectura recomendada
Si no está familiarizado o no se siente cómodo con los siguientes conceptos, le recomendamos leerlos antes de continuar con la Guía de conexión de OpenLog.
- Cómo soldar: Soldadura de orificio pasante. Este tutorial cubre todo lo que necesita saber sobre la soldadura de orificio pasante.
- Comunicación serial Conceptos de comunicación serial asincrónica: paquetes, niveles de señal, velocidades en baudios, UART y más.
- Interfaz periférica serial (SPI) SPI se utiliza comúnmente para conectar microcontroladores a periféricos como sensores, registros de desplazamiento y tarjetas SD.
- Conceptos básicos de terminales seriales Este tutorial le mostrará cómo comunicarse con sus dispositivos seriales usando una variedad de aplicaciones de emulador de terminal.
Hardware terminadoview
Fuerza
OpenLog se ejecuta con las siguientes configuraciones:
Clasificaciones de potencia de OpenLog

El consumo de corriente de OpenLog es de aproximadamente 20 mA a 23 mA al escribir en una tarjeta microSD. Dependiendo del tamaño de la tarjeta microSD y de su fabricante, el consumo de corriente activo puede variar cuando OpenLog escribe en la tarjeta de memoria. Aumentar la velocidad en baudios también aumentará el consumo de corriente.
Microcontroladores
El OpenLog funciona con un ATmega328 integrado, que funciona a 16 MHz, gracias al cristal integrado. El ATmega328 tiene instalado el gestor de arranque Optiboot, lo que permite que el OpenLog sea compatible con...
Configuración de la placa “Arduino Uno” en el IDE de Arduino.

Interfaz
UART serie
La interfaz principal con OpenLog es el conector FTDI en el borde de la placa. Este conector está diseñado para conectarse directamente a un Arduino Pro o Pro Mini, lo que permite que el microcontrolador envíe los datos a OpenLog mediante una conexión serial.

¡Advertencia! Debido al orden de pines que lo hace compatible con los Arduinos, no se puede conectar directamente a una placa de expansión FTDI.

Para obtener más información, asegúrese de consultar la siguiente sección sobre Conexión de hardware.
Inspección de la inducción
También hay cuatro puntos de prueba SPI en el extremo opuesto de la placa. Puedes usarlos para reprogramar el gestor de arranque del ATmega328.
La versión más reciente de OpenLog (DEV-13712) distribuye estos pines en orificios pasantes chapados más pequeños. Si necesita usar un proveedor de servicios de internet (ISP) para reprogramar o cargar un nuevo gestor de arranque en OpenLog, puede usar pines pogo para conectarse a estos puntos de prueba.- La interfaz final para comunicarse con OpenLog es la propia tarjeta microSD. Para comunicarse, la tarjeta microSD requiere pines SPI. No solo es aquí donde OpenLog almacena los datos, sino que también permite actualizar su configuración mediante el archivo config.txt. file en la tarjeta microSD.
tarjeta micro SD
Todos los datos registrados por OpenLog se almacenan en la tarjeta microSD. OpenLog funciona con tarjetas microSD que cuentan con las siguientes características:
- 64MB a 32GB
- FAT16 o FAT32

Hay dos LED de estado en OpenLog para ayudarlo con la resolución de problemas.
- STAT1 – Este LED indicador azul está conectado al Arduino D5 (ATmega328 PD5) y se enciende y se apaga al recibir un nuevo carácter. Este LED parpadea cuando la comunicación serial está activa.
- STAT2 – Este LED verde está conectado a Arduino D13 (Línea de Reloj Serie SPI/ATmega328 PB5). Este LED solo parpadea cuando la interfaz SPI está activa. Lo verá parpadear cuando OpenLog grabe 512 bytes en la tarjeta microSD.

Conexión de hardware
Hay dos métodos principales para conectar tu OpenLog a un circuito. Necesitarás conectores o cables para la conexión. Asegúrate de soldarlo a la placa para una conexión segura.
Conexión serial básica
Consejo:Si tiene un encabezado hembra en el OpenLog y un encabezado hembra en el FTDI, necesitará cables puente M/F para conectar.

Esta conexión de hardware está diseñada para interactuar con un OpenLog si necesita reprogramar la placa o registrar datos a través de una conexión serial básica.
Realice las siguientes conexiones:
OpenLog → Conexión básica FTDI de 3.3 V
- Tierra → Tierra
- Tierra → Tierra
- VCC → 3.3 V
- TXO → RXI
- RXI → TXO
- DTR → DTR
Tenga en cuenta que no es una conexión directa entre FTDI y OpenLog: debe cambiar las conexiones de los pines TXO y RXI.
Sus conexiones deberían verse así:

Una vez que tenga las conexiones entre OpenLog y FTDI Basic, conecte su placa FTDI a un cable USB y a su computadora. Abra una terminal serie, conéctela al puerto COM de su FTDI Basic, ¡y a trabajar!
Conexión de hardware del proyecto
Consejo: Si tiene los conectores hembra soldados en el OpenLog, puede soldar conectores macho al Arduino Pro Mini para conectar las placas entre sí sin necesidad de cables.

Si bien la conexión serial con OpenLog es importante para la reprogramación o la depuración, OpenLog destaca especialmente en proyectos integrados. Este circuito general es la forma en que recomendamos conectar OpenLog a un microcontrolador (en este caso, un Arduino Pro Mini) que escribirá datos seriales en OpenLog.
Primero, deberás cargar el código en el Pro Mini que quieres usar. Consulta los bocetos de Arduino para obtener más información.ampEl código que puedes utilizar.
Nota: Si no está seguro de cómo programar su Pro Mini, consulte nuestro tutorial aquí.
Usando el Arduino Pro Mini 3.3V
- Este tutorial es tu guía sobre todo lo relacionado con Arduino Pro Mini. Explica qué es, qué no es y cómo empezar a usarlo.
- Una vez programado el Pro Mini, puede retirar la placa FTDI y reemplazarla con el OpenLog. Asegúrese de conectar los pines BLK tanto en el Pro Mini como en el OpenLog (los pines GRN en ambos también coincidirán si se hace correctamente).
- Si no puede conectar el OpenLog directamente al Pro Mini (debido a conectores no coincidentes u otras placas en el camino), puede usar cables puente y realizar las siguientes conexiones.
OpenLog → Arduino Pro/Arduino Pro Mini
- Tierra → Tierra
- Tierra → Tierra
- VCC → VCC
- TXO → RXI
- RXI → TXO
- DTR → DTR
Una vez que haya terminado, sus conexiones deberían verse como las siguientes con Arduino Pro Mini y Arduino Pro. El diagrama de Fritzing muestra los OpenLogs con los conectores reflejados. Si invierte el conector microSD respecto a la parte superior del Arduino... view, deben coincidir con el encabezado de programación como un FTDI.

Tenga en cuenta que la conexión es directa con el OpenLog “al revés” (con la microSD hacia arriba).
Nota: Dado que las conexiones Vcc y GND entre OpenLog y Arduino están ocupadas por los conectores, deberá conectar la alimentación a los demás pines disponibles en Arduino. De lo contrario, podría soldar cables a los pines de alimentación expuestos en cualquiera de las placas.
¡Encienda su sistema y estará listo para comenzar a registrar!
Bocetos de Arduino
Hay seis ex diferentesampSe incluyen bocetos que puedes usar en Arduino cuando lo conectes a un OpenLog.
- OpenLog_Benchmarking — Este ejemploampSe utiliza para probar OpenLog. Este envía grandes cantidades de datos a 115200 bps a través de múltiples... files.
- OpenLog_CommandTest — Este ejemploample muestra cómo crear y agregar un file mediante control de línea de comandos a través del Arduino.
- OpenLog_ReadExample — Este exampLe explicamos cómo controlar OpenLog a través de la línea de comandos.
- OpenLog_ReadExample_GrandeFile - ExampLe de cómo abrir un gran almacén file en OpenLog y reportarlo a través de una conexión Bluetooth local.
- OpenLog_Test_Sketch: se utiliza para probar OpenLog con muchos datos en serie.
- OpenLog_Test_Sketch_Binary: se utiliza para probar OpenLog con datos binarios y caracteres de escape.
Firmware
El OpenLog tiene dos piezas principales de software a bordo: el cargador de arranque y el firmware.
Cargador de arranque de Arduino
Nota: Si está utilizando un OpenLog adquirido antes de marzo de 2012, el cargador de arranque integrado es compatible con la configuración “Arduino Pro o Pro Mini 5V/16MHz con ATmega328” en el IDE de Arduino.
- Como se mencionó anteriormente, OpenLog tiene integrado el gestor de arranque serial Optiboot. Puedes usar OpenLog como un Arduino Uno al cargar archivos.ampel código o nuevo firmware a la placa.
- Si tu OpenLog se bloquea y necesitas reinstalar el gestor de arranque, también querrás instalar Optiboot en la placa. Consulta nuestro tutorial sobre cómo instalar un gestor de arranque de Arduino para más información.
Compilación y carga de firmware en OpenLog
Nota: Si es la primera vez que utiliza Arduino, vuelva a intentarlo.view Nuestro tutorial sobre la instalación del IDE de Arduino. Si aún no ha instalado una biblioteca de Arduino, consulte nuestra guía de instalación para instalar las bibliotecas manualmente.
- Si por alguna razón necesita actualizar o reinstalar el firmware en su OpenLog, el siguiente proceso hará que su placa funcione.
- Primero, descargue el IDE de Arduino v1.6.5. Es posible que otras versiones del IDE funcionen para compilar el firmware de OpenLog, pero hemos verificado que esta es una versión válida.
- A continuación, descargue el firmware OpenLog y el paquete de bibliotecas necesarias.
DESCARGAR EL PAQUETE DE FIRMWARE OPENLOG (ZIP)
- Una vez descargadas las bibliotecas y el firmware, instálelas en Arduino. Si no sabe cómo instalarlas manualmente en el IDE, consulte nuestro tutorial: Instalación de una biblioteca de Arduino: Instalación manual de una biblioteca.
Nota:
- Utilizamos versiones modificadas de las bibliotecas SdFat y SerialPort para determinar arbitrariamente el tamaño de los búferes de transmisión y recepción. OpenLog requiere que el búfer de transmisión sea muy pequeño (0) y el de recepción, lo más grande posible.
- El uso conjunto de estas dos bibliotecas modificadas permite aumentar el rendimiento de OpenLog.
¿Buscas las últimas versiones?
Si prefiere las versiones más actualizadas de las bibliotecas y el firmware, puede descargarlas directamente desde los repositorios de GitHub enlazados a continuación. Las bibliotecas SdFatLib y Serial Port no están visibles en el administrador de placas Arduino, por lo que deberá instalarlas manualmente.
- GitHub: OpenLog > Firmware > OpenLog_Firmware
- Bibliotecas Arduino de Bill Greiman
- SdFatLib-beta
- Puerto serie
- A continuación, para aprovechartagDe las bibliotecas modificadas, modifique el archivo SerialPort.hh file Se encuentra en el directorio \Arduino\Libraries\SerialPort. Cambie BUFFERED_TX a 0 y ENABLE_RX_ERROR_CHECKING a 0. Guarde el archivo. filey abra el IDE de Arduino.
- Si aún no lo ha hecho, conecte su OpenLog al ordenador mediante una placa FTDI. Por favor, revise la exampel circuito si no está seguro de cómo hacerlo correctamente.
- Abra el boceto OpenLog que desea cargar en el menú Herramientas>Placa, seleccione “Arduino/Genuino Uno” y seleccione el puerto COM adecuado para su placa FTDI en Herramientas>Puerto.
- Sube el código.
- ¡Listo! Su OpenLog ya está programado con el nuevo firmware. Puede abrir un monitor serial e interactuar con el OpenLog. Al encenderlo, verá 12> o 12<. 1 indica que la conexión serial está establecida, 2 indica que la tarjeta SD se ha inicializado correctamente, < indica que OpenLog está listo para registrar cualquier dato serial recibido y > indica que OpenLog está listo para recibir comandos.
Bocetos de firmware de OpenLog
Hay tres bocetos incluidos que puedes usar en OpenLog, dependiendo de tu aplicación particular.
- OpenLog: Este firmware se incluye por defecto en OpenLog. Al enviar el comando "?", se mostrará la versión del firmware instalada en la unidad.
- OpenLog_Light: Esta versión del boceto elimina el menú y el modo de comando, lo que permite aumentar el búfer de recepción. Es una buena opción para el registro de alta velocidad.
- OpenLog_Minimal: La velocidad en baudios debe configurarse en el código y cargarse. Este programa se recomienda para usuarios experimentados, pero también es la mejor opción para obtener el registro más rápido.
Conjunto de comandos
Puede interactuar con OpenLog mediante una terminal serie. Los siguientes comandos le ayudarán a leer, escribir y eliminar. files, así como cambiar la configuración de OpenLog. Necesitará estar en modo de comando para usar la siguiente configuración.
Mientras OpenLog esté en modo de comando, STAT1 se activará o desactivará con cada carácter recibido. El LED permanecerá encendido hasta que se reciba el siguiente carácter.
- Nuevo File – Crea un nuevo file nombrado File en el directorio actual. Estándar 8.3 fileSe admiten nombres. Por ejemploampPor ejemplo, “87654321.123” es aceptable, mientras que “987654321.123” no lo es.
- Example: nuevo file1.txt
- Añadir File – Añadir texto al final del FileLuego, los datos en serie se leen desde el UART en una secuencia y se agregan a la fileNo se repite en el terminal serial. Si el File no existe cuando se llama a esta función, el file se creará.
- Example: añadir nuevofile.csv
- Escribir File DESPLAZAMIENTO – Escribe texto en el File desde la ubicación OFFSET dentro del fileEl texto se lee del UART, línea por línea, y se devuelve en eco. Para salir de este estado, envíe una línea vacía.
- Example: escribir logs.txt 516
- rm File – Elimina el File del directorio actual. Se admiten comodines.
- Example: rm README.txt
- tamaño File – Tamaño de salida de File en bytes.
- Example: tamaño Log112.csv
- Salida: 11
- Leer File + INICIO+ LONGITUD TIPO – Salida del contenido de File comenzando desde INICIO y continuando hasta LONGITUD. Si se omite INICIO, todo file Se informa. Si se omite LONGITUD, se informa todo el contenido desde el punto de partida. Si se omite TIPO, OpenLog informará en ASCII por defecto. Hay tres TIPOS de salida:
- ASCII = 1
- HEX = 2
- CRUDO = 3
- Puedes omitir algunos argumentos finales. Consulta el siguiente ejemplo.ampLes.
- Lectura básica + banderas omitidas:
- Example: leer LOG00004.txt
- Salida: Acelerómetro X=12 Y=215 Z=317
- Leer desde el inicio 0 con una longitud de 5:
- Example: leer LOG00004.txt 0 5
- Salida: Aceleración
- Leer desde la posición 1 con una longitud de 5 en HEX:
- Example: leer LOG00004.txt 1 5 2
- Salida: 63 63 65 6C
- Leer desde la posición 0 con una longitud de 50 en RAW:
- Example: leer LOG00137.txt 0 50 3
- Salida: André– -þ Prueba de carácter extendida
- Gato File – Redactar el contenido de un file en hexadecimal al monitor serial para viewing. A veces es útil ver que un file está grabando correctamente sin tener que sacar la tarjeta SD y view el file en una computadora
- Example: gato LOG00004.txt
- Salida: 00000000: 41 63 65 6c 3a 20 31
Manipulación de directorios
- ls: lista todo el contenido del directorio actual. Se admiten comodines.
- Exampel: ls
- Salida: \src
- Subdirectorio md: crea un subdirectorio en el directorio actual.
- Example: md Example_Sketches
- cd Subdirectorio – Cambiar a Subdirectorio.
- Example: cd Hola_Mundo
- cd .. – Cambia a un directorio inferior en el árbol. Observe que hay un espacio entre 'cd' y '..'. Esto permite que el analizador de cadenas detecte el comando CD.
- Exampel: cd ..
- rm Subdirectorio: elimina el subdirectorio. El directorio debe estar vacío para que este comando funcione.
- Example: temperatura de la rm
- rm -rf Directorio – Elimina el directorio y cualquier files contenida dentro de ella.
- Example: rm -rf Bibliotecas
Comandos de función de bajo nivel
- ? – Este comando mostrará una lista de comandos disponibles en OpenLog.
- Disco: muestra la identificación del fabricante de la tarjeta, el número de serie, la fecha de fabricación y el tamaño de la tarjeta. EjemploampLa salida es:
- Tipo de tarjeta: SD2 ID del fabricante: 3
- ID del OEM: SD
- Producto: SU01G
- Versión: 8.0
- Número de serie: 39723042 Fecha de fabricación: 1/2010 Tamaño de la tarjeta: 965120 KB
- init: reinicializa el sistema y vuelve a abrir la tarjeta SD. Esto es útil si la tarjeta SD deja de responder.
- Sincronizar: sincroniza el contenido actual del búfer con la tarjeta SD. Este comando es útil si tiene menos de 512 caracteres en el búfer y desea grabarlos en la tarjeta SD.
- Reset: Regresa OpenLog a la ubicación cero, reinicia el gestor de arranque y luego el código de inicialización. Este comando es útil si necesita editar la configuración. fileReiniciar OpenLog y empezar a usar la nueva configuración. Reiniciar la placa sigue siendo el método preferido, pero esta opción está disponible.
Configuración del sistema
Estas configuraciones se pueden actualizar o editar manualmente en config.txt file.
- Echo STATE: Cambia el estado del sistema y se almacena en la memoria del sistema. STATE puede estar activado o desactivado. Mientras esté activado, OpenLog repetirá los datos seriales recibidos en el símbolo del sistema. Mientras esté desactivado, el sistema no lee los caracteres recibidos.
Nota: Durante el registro normal, el eco se desactivará. El consumo de recursos del sistema para reproducir los datos recibidos es excesivo durante el registro.
- Estado Verbose: Cambia el estado del informe de errores detallado. El estado puede estar activado o desactivado. Este comando se almacena en memoria. Al desactivar los errores detallados, OpenLog responderá solo con un signo "!" si hay un error, en lugar de un comando desconocido: COMMAND.D..T. Los caracteres "he" son más fáciles de analizar para los sistemas embebidos que el error completo. Si usa una terminal, mantener activado el estado Verbose le permitirá ver los mensajes de error completos.
- Baud: Este comando abrirá un menú del sistema que permite al usuario introducir una velocidad en baudios. Se admite cualquier velocidad entre 300 bps y 1 Mbps. La selección de la velocidad en baudios es inmediata y el OpenLog requiere un reinicio para que la configuración surta efecto. La velocidad en baudios se almacena en la EEPROM y se carga cada vez que se enciende el OpenLog. El valor predeterminado es 9600 8N1.
Recordar: Si la placa se bloquea con una velocidad de transmisión desconocida, puede conectar el receptor a tierra y encender el OpenLog. Los LED parpadearán intermitentemente durante 2 segundos y luego parpadearán al unísono. Apague el OpenLog y retire el puente. El OpenLog se restablece a 9600 bps al presionar el carácter de escape `CTRL-Z` tres veces consecutivas. Esta función se puede anular configurando el bit de anulación de emergencia a 1. Consulte el archivo config.txt para obtener más información.
- Configurar: Este comando abre un menú del sistema para seleccionar el modo de arranque. Esta configuración se aplicará al siguiente encendido y se almacenará en la EEPROM no volátil.
- Nuevo File Registro: este modo crea un nuevo file Cada vez que se enciende OpenLog, este transmitirá 1 (UART activo), 2 (tarjeta SD inicializada) y, a continuación, < (OpenLog listo para recibir datos). Todos los datos se registrarán en un archivo LOG#####.txt. El número ##### aumenta cada vez que se enciende OpenLog (el máximo es 65533 registros). Este número se almacena en la EEPROM y se puede restablecer desde el menú de configuración. No todos los caracteres recibidos se repiten. Puede salir de este modo y entrar en el modo de comando enviando Ctrl+z (ASCII 26). Se almacenarán todos los datos almacenados en el búfer.
- Nota: Si se han creado demasiados registros, OpenLog mostrará el error **Demasiados registros**, saldrá de este modo y accederá al Símbolo del sistema. La salida serial será similar a `12!Too many logs!`.
- Añadir File Registro: también conocido como modo secuencial, este modo crea un file Se llama SEQLOG.txt si aún no está allí y agrega cualquier dato recibido al fileOpenLog transmitirá 12<, momento en el que estará listo para recibir datos. Los caracteres no se repiten. Puede salir de este modo y entrar en el modo de comando enviando Ctrl+z (ASCII 26). Se almacenarán todos los datos almacenados en el búfer.
- Símbolo del sistema: OpenLog transmitirá 12>, momento en el cual el sistema estará listo para recibir comandos. Tenga en cuenta que el signo > indica que OpenLog está listo para recibir comandos, no datos. Puede crear files y anexar datos a files, pero esto requiere algún análisis en serie (para comprobar errores), por lo que no configuramos este modo de forma predeterminada.
- Restablecer nuevo File Número: este modo restablecerá el registro file Número a LOG000.txt. Esto es útil si recientemente borró una tarjeta microSD y desea el registro. file números para empezar de nuevo.
- Nuevo carácter de escape: Esta opción permite al usuario introducir un carácter, como CTRL+z o $, y configurarlo como nuevo carácter de escape. Esta configuración se restablece a CTRL+z durante un reinicio de emergencia.
- Número de caracteres de escape: esta opción permite al usuario introducir un carácter (como 1, 3 o 17), actualizando el nuevo número de caracteres de escape necesarios para pasar al modo comando. Por ejemplo:ampSi introduce 8, deberá presionar Ctrl+z ocho veces para acceder al modo comando. Este valor se restablece a 3 durante un reinicio de emergencia.
- Explicación de los caracteres de escape: OpenLog requiere presionar `CTRL+z` tres veces para entrar en modo comando para evitar que la placa se restablezca accidentalmente durante la carga de código nuevo desde el IDE de Arduino. Existe la posibilidad de que la placa detecte el carácter `CTRL+z` durante el arranque (un problema que vimos en las primeras versiones del firmware de OpenLog), por lo que esto pretende evitarlo. Si sospecha que su placa se ha bloqueado debido a esto, siempre puede realizar un reinicio de emergencia conectando el pin RX a tierra durante el encendido.
Configuración File
Si prefiere no utilizar la terminal serial para modificar la configuración de su OpenLog, también puede actualizar la configuración modificando el archivo CONFIG.TXT. file.
Nota: Esta función solo funciona con la versión de firmware 1.6 o posterior. Si compró un OpenLog después de 2012, deberá usar la versión de firmware 1.6 o posterior.
- Para ello, necesitará un lector de tarjetas microSD y un editor de texto. Abra el archivo config.txt. file (la capitalización de la file ¡El nombre no importa) y configúrelo! Si nunca ha encendido su OpenLog con la tarjeta SD, también puede crear manualmente el fileSi ha encendido el OpenLog con la tarjeta microSD insertada previamente, debería ver algo como lo siguiente cuando lea la tarjeta microSD.
OpenLog crea un config.txt y un LOG0000.txt file en el primer encendido. - La configuración predeterminada file tiene una línea de configuraciones y una línea de definiciones.
La configuración predeterminada file Fue escrito por OpenLog. - Tenga en cuenta que estos son caracteres visibles regulares (no hay valores no visibles o binarios) y cada valor está separado por una coma.
Los ajustes se definen de la siguiente manera:
- Baud: Velocidad de comunicación en baudios. El valor predeterminado es 9600 bps. Los valores aceptables compatibles con el IDE de Arduino son 2400, 4800, 9600, 19200, 38400, 57600 y 115200. Puede usar otras velocidades en baudios, pero no podrá comunicarse con OpenLog a través del monitor serie del IDE de Arduino.
- Escap:e El valor ASCII (en formato decimal) del carácter de escape. 26 es CTRL+z y es el predeterminado. 36 es $ y es un carácter de escape de uso común.
- Esc #: El número de caracteres de escape requeridos. Por defecto, son tres, por lo que debe pulsar el carácter de escape tres veces para pasar al modo comando. Los valores aceptables van de 0 a 254. Si se establece este valor en 0, se desactivará por completo la comprobación de caracteres de escape.
- Modo de sistema. OpenLog se inicia en modo de registro nuevo (0) por defecto. Los valores aceptables son 0 = Registro nuevo, 1 = Registro secuencial, 2 = Modo de comando.
- Verbo: Modo detallado. Los mensajes de error extendidos (detallados) están activados por defecto. Al establecerlo en 1, se activan los mensajes de error detallados (como comando desconocido: eliminar !). Al establecerlo en 0, se desactivan los errores detallados, pero se responde con un ! si hay un error. Desactivar el modo detallado es útil si intenta gestionar errores de un sistema integrado.
- Eco: Modo eco. En el modo comando, los caracteres se repiten por defecto. Al establecerlo en 0, se desactiva el eco de caracteres. Desactivarlo es útil para gestionar errores y no desea que los comandos enviados se repitan en OpenLog.II.
- IgnoreRXEmergency Override. Normalmente, OpenLog se reinicia de emergencia cuando el pin RX se baja durante el encendido. Si se establece en 1, se deshabilita la verificación del pin RX durante el encendido. Esto puede ser útil para sistemas que mantienen la línea RX baja por diversas razones. Si se deshabilita la Anulación de Emergencia, no se podrá forzar la unidad a volver a 9600 bps y la configuración... file será la única forma de modificar la tasa de baudios.
Cómo OpenLog modifica la configuración File
Hay cinco situaciones diferentes para que OpenLog modifique el config.txt file.
- Configuración file Encontrado: Durante el encendido, OpenLog buscará un config.txt file. Si el file Si se encuentra, OpenLog utilizará la configuración incluida y sobrescribirá cualquier configuración del sistema almacenada previamente.
- Sin configuración file encontrado: Si OpenLog no puede encontrar el config.txt file OpenLog creará el archivo config.txt y guardará en él la configuración del sistema almacenada. Esto significa que, si inserta una tarjeta microSD recién formateada, el sistema conservará la configuración actual.
- Configuración corrupta file Encontrado: OpenLog borrará el config.txt dañado file, y reescribirá tanto la configuración interna de la EEPROM como la configuración de config.txt file al estado conocido como bueno de 9600,26,3,0,1,1,0.
- Valores ilegales en la configuración file:Si OpenLog descubre alguna configuración que contenga valores ilegales, OpenLog sobrescribirá los valores corruptos en config.txt file con la configuración del sistema EEPROM almacenada actualmente.
- Cambios a través del símbolo del sistema: si se cambian las configuraciones del sistema a través del símbolo del sistema (ya sea mediante una conexión serial o mediante comandos seriales del microcontrolador), esos cambios se registrarán tanto en la EEPROM del sistema como en el config.txt. file.
- Reinicio de emergencia: si se reinicia el OpenLog con un puente entre RX y GND, y el bit de anulación de emergencia se establece en 0 (lo que permite el reinicio de emergencia), OpenLog reescribirá tanto la configuración interna de la EEPROM como la configuración del archivo config.txt. file al estado conocido como bueno de 9600,26,3,0,1,1,0.
Solución de problemas
Hay varias opciones diferentes para verificar si tienes problemas para conectarte a través del monitor serial, problemas con caracteres perdidos en los registros o problemas con un OpenLog bloqueado.
Comprobar el comportamiento del LED STAT1
El LED STAT1 muestra un comportamiento diferente para dos errores comunes diferentes.
- 3 parpadeos: La tarjeta microSD no se inicializó. Quizás deba formatearla con FAT/FAT16 en una computadora.
- 5 parpadeos: OpenLog ha cambiado a una nueva tasa de baudios y es necesario reiniciarlo.
Verificar dos veces la estructura del subdirectorio
- Si está utilizando el archivo OpenLog.ino predeterminadoampOpenLog solo admite dos subdirectorios. Deberá cambiar FOLDER_TRACK_DEPTH de 2 al número de subdirectorios que necesite admitir. Una vez hecho esto, vuelva a compilar el código y cargue el firmware modificado.
- Verificar el número de Files en el directorio raíz
- OpenLog solo admitirá hasta 65,534 registros files en el directorio raíz. Recomendamos formatear la tarjeta microSD para mejorar la velocidad de registro.
- Verifique el tamaño de su firmware modificado
- Si está creando un boceto personalizado para OpenLog, verifique que no supere los 32,256 500 bytes. De ser así, ocupará los XNUMX bytes superiores de la memoria flash, que utiliza el gestor de arranque serie Optiboot.
- Doble verificación File Nombres
- Todo file Los nombres deben ser alfanuméricos. MyLOG1.txt es válido, pero Hi !e _ .txtt podría no funcionar.
- Utilice 9600 Baud
- OpenLog se ejecuta en el ATmega328 y tiene una cantidad limitada de RAM (2048 bytes). Al enviar caracteres seriales a OpenLog, estos se almacenan en el búfer. La Especificación Simplificada del Grupo SD permite que una tarjeta SD tarde hasta 250 ms (sección 4.6.2.2 Escritura) en grabar un bloque de datos en la memoria flash.
- A 9600 bps, esto equivale a 960 bytes (10 bits por byte) por segundo. Esto equivale a 1.04 ms por byte. OpenLog utiliza actualmente un búfer de recepción de 512 bytes, lo que le permite almacenar en búfer unos 50 ms de caracteres. Esto le permite recibir correctamente todos los caracteres que llegan a 9600 bps. A medida que aumenta la velocidad en baudios, el búfer durará menos.
Tiempo de desbordamiento del búfer de OpenLog
| Tasa de Baud | Tiempo por byte | Tiempo hasta que el búfer se desborde |
| 9600 puntos básicos | 1.04 ms | 532 ms |
| 57600 puntos básicos | 0.174 ms | 88 ms |
| 115200 puntos básicos | 0.087 ms | 44 ms |
Muchas tarjetas SD tienen un tiempo de grabación superior a 250 ms. Esto puede verse afectado por la clase de la tarjeta y la cantidad de datos almacenados. La solución es usar una velocidad en baudios más baja o aumentar el tiempo entre los caracteres enviados a la velocidad en baudios más alta.
Recuerde utilizar una tarjeta con pocos o ningún fileEstá ahí. Una tarjeta microSD con 3.1 GB de ZIP. fileLos archivos s o MP3 tienen un tiempo de respuesta más lento que una tarjeta vacía. Si no formateó su tarjeta microSD en un sistema operativo Windows, vuelva a formatearla y cree un archivo DOS. filesistema en la tarjeta SD.
Existen muchos fabricantes de tarjetas, tarjetas reetiquetadas, tamaños y clases de tarjetas, y es posible que no todas funcionen correctamente. Normalmente usamos una tarjeta microSD de clase 8 de 4 GB, que funciona bien a 9600 bps. Si necesita velocidades de transmisión más altas o mayor espacio de almacenamiento, le recomendamos probar tarjetas de clase 6 o superior.
Al agregar un pequeño retraso entre las declaraciones Serial.print(), puede darle a OpenLog la oportunidad de registrar su búfer actual.
- Serie.begin(115200);
para (int i = 1; i < 10; i++) { Serial.print(i, DEC); Serial.println(“:abcdefghijklmnopqrstuvwxyz-!#”); }
Es posible que el registro no sea correcto, ya que se envían muchos caracteres uno tras otro. Insertar un pequeño retraso de 15 ms entre escrituras de caracteres grandes ayudará a que OpenLog registre sin perder caracteres.
- Serie.begin(115200);
para (int i = 1; i < 10; i++) { Serial.print(i, DEC); Serial.println(“:abcdefghijklmnopqrstuvwxyz-!#”); retraso(15); }
Añadir compatibilidad con el monitor serial Arduino
Si intenta usar OpenLog con la biblioteca serial integrada o la biblioteca SoftwareSerial, podría experimentar problemas con el modo comando. Serial.println() envía tanto saltos de línea como retornos de carro. Existen dos comandos alternativos para solucionar este problema.
El primero es utilizar el comando \r (retorno de carro ASCII):
Serial.print(“TEXTO\r”);
Alternativamente, puede enviar el valor 13 (retorno de carro decimal):
- Serial.print(“TEXTO”);
- Serial.write(13);
Reinicio de emergencia
Recuerde, si necesita restablecer el OpenLog a un estado predeterminado, puede restablecer la placa conectando el pin RX a GND, encendiendo el OpenLog, esperando hasta que los LED comiencen a parpadear al unísono y luego apagando el OpenLog y quitando el puente.
Si ha cambiado el bit de Anulación de emergencia a 1, deberá modificar la configuración file, ya que el reinicio de emergencia no funcionará.
Consulta con la Comunidad
Si sigues teniendo problemas con OpenLog, consulta los problemas actuales y cerrados en nuestro repositorio de GitHub aquí. Hay una gran comunidad trabajando con OpenLog, así que es probable que alguien haya encontrado una solución para el problema que estás experimentando.
Recursos y más allá
Ahora que has registrado datos correctamente con tu OpenLog, puedes configurar proyectos remotos y monitorear todos los datos que se reciban. Considera crear tu propio proyecto de Ciencia Ciudadana, ¡o incluso un rastreador de mascotas para ver qué hace Fluffy cuando está fuera!
Consulte estos recursos adicionales para solucionar problemas, obtener ayuda o inspiración para su próximo proyecto.
- GitHub de OpenLog
- Proyecto Illumitune
- Conexión del sensor de luz LilyPad
- BadgerHack: Complemento de sensor de suelo
- Introducción a OBD-II
- Puerta fotoeléctrica Vernier
¿Necesitas más inspiración? Consulta algunos de estos tutoriales relacionados:
- Sensor remoto de nivel de agua Photon
¡Aprenda a construir un sensor de nivel de agua remoto para un tanque de almacenamiento de agua y cómo automatizar una bomba en función de las lecturas! - Guía del proyecto de tablero Blynk
Una serie de proyectos Blynk que puedes configurar en la placa Blynk sin tener que reprogramarla. - Registro de datos en Hojas de cálculo de Google con Tessel 2
Este proyecto explica cómo registrar datos en Hojas de cálculo de Google de dos maneras: usando IFTTT con un web conexión o una memoria USB y “sneakernet” sin ella. - Graficar datos de sensores con Python y Matplotlib
Utilice matplotlib para crear un gráfico en tiempo real de los datos de temperatura recopilados de un sensor TMP102 conectado a una Raspberry Pi.
Si tiene algún comentario sobre el tutorial, visite los comentarios o comuníquese con nuestro equipo de soporte técnico en Soporte técnico@sparkfun.com.
Preguntas frecuentes
¿Cuál es la potencia de entrada recomendada para OpenLog?
La entrada de energía recomendada para OpenLog es entre 3.3 V y 5 V.
¿Cuánta corriente consume el OpenLog cuando está inactivo?
El OpenLog consume aproximadamente entre 2 mA y 5 mA cuando está inactivo sin una tarjeta microSD, y entre 5 mA y 6 mA cuando se inserta una tarjeta microSD.
¿Cuál es el propósito de la memoria USB microSD Reaaboutn en OpenLog?
El lector USB microSD permite una fácil transferencia de datos desde la tarjeta microSD utilizada con OpenLog a una computadora.
Documentos / Recursos
![]() |
SparkFun DEV-13712 Fotón de partículas con orificios para soldar [pdf] Guía del usuario DEV-13712, DEV-13955, DEV-13712 Fotón de partículas con orificios para soldar, DEV-13712, Fotón de partículas con orificios para soldar, Orificios para soldar, Para soldar, Soldadura |

