¿Qué es el formato de archivo MF4?
.mf4 es la extensión de archivo para ASAM MDF 4 (Measurement Data Format versión 4), el estándar abierto de la industria automotriz para almacenar datos de medición de series temporales de ECU, buses CAN/LIN/Ethernet y sensores. El estándar es mantenido por ASAM e.V. y fue codesarrollado por Vector Informatik y Robert Bosch GmbH.
Cada archivo .mf4 comienza con un bloque de ID de 64 bytes que lleva el identificador ASCII MDF (8 bytes con espacios finales), seguido de una lista enlazada jerárquica de bloques tipados: Cabecera (HD), Grupos de Datos (DG), Grupos de Canales (CG), definiciones de Canales (CN) y bloques de Datos (DT/DZ). Cada canal lleva su nombre de señal, unidad física y fórmula de conversión de valores en el mismo archivo, lo que hace que .mf4 sea autodescriptivo.
La compresión de datos - DEFLATE, LZ4 o Transpose+DEFLATE - se puede aplicar por bloque de datos desde MDF 4.1. El formato admite bloques de adjuntos para incrustar archivos de calibración o imágenes, y una bandera de finalización marca si una grabación se cerró correctamente. Las grabaciones no finalizadas comienzan con la cadena ASCII UnFinalizedMDF en lugar del bloque de ID estándar.
.mf4 se utiliza en pruebas HIL/SIL, adquisición de datos de vehículos y flujos de trabajo de calibración AUTOSAR. Los archivos pueden alcanzar decenas de gigabytes en sesiones de prueba de conducción completas. La biblioteca de código abierto de Python asammdf (pip install asammdf) proporciona acceso rápido de lectura/escritura; MATLAB, CANape y CANalyzer son las herramientas comerciales dominantes. El formato predecesor .mdf (MDF 3.x, de 1991) comparte el mismo prefijo de identificador de archivo pero utiliza una estructura de bloques diferente.
Seguridad y protección
RIESGO: LOWMF4 es un archivo de datos binarios; no es ejecutable. Los archivos pueden contener datos de medición automotriz patentados (señales del vehículo, parámetros de la ECU) que son comercialmente sensibles. Compartir archivos .mf4 externamente puede exponer datos confidenciales de calibración o rendimiento.
Detalles del formato
en pocas palabrasProgramas que abren archivos MF4
Detalles técnicos
especificación profunda| Organismo de estandarización | ASAM e.V. (Association for Standardization of Automation and Measuring Systems) |
| Identificador de archivo | ASCII de 8 bytes 'MDF ' (MDF + 5 espacios) en el desplazamiento 0 del bloque de ID de 64 bytes |
| Orden de bytes | Little-endian (predeterminado); big-endian permitido por la especificación pero raramente utilizado |
| Estructura de bloques | Lista enlazada jerárquica: bloques ID → HD → DG → CG/CN → DT/DZ mediante punteros de posición de bytes absoluta |
| Compresión | Opcional DEFLATE (zlib), LZ4 o Transpose+DEFLATE por bloque de datos (MDF 4.1+) |
| Tamaño de archivo típico | 1 MB - 10 GB (grandes sesiones de registro de ECU/CAN) |
| Metadatos de señal | Nombre de la señal, unidad física y fórmula de conversión de valores almacenados por canal dentro del archivo |
| Codificación de versión | Cadena ASCII de 4 caracteres en el desplazamiento 8 del bloque ID (ej. '4.10', '4.20') |
| Soporte de registro de bus | Registro de tramas CAN, LIN, FlexRay y Ethernet (añadido en MDF 4.1+) |
| Verificación de integridad | Adjunto de suma de comprobación MD5 opcional; bandera de finalización en MDF 4.1+; los archivos no finalizados comienzan con 'UnFinalizedMDF' |
| Acceso desde Python | Biblioteca asammdf (pip install asammdf) - lectura/escritura de código abierto |
| Tasa de muestreo | Metadatos por canal; bus CAN típicamente 1-1 000 Hz, datos de sensores hasta el rango de MHz |
| Sistemas operativos | Windows, Linux |
| Lanzado | 2009 (ASAM MDF 4.0 published as official standard) |
| Última versión | ASAM MDF 4.2.0 (2019); 4.3.0 planned |
| Estándar abierto | Sí · libre de regalías |
| Especificación | www.asam.net |
Conversiones de MF4
Preguntas y respuestas de la comunidad
preguntado por usuariosPreguntas frecuentes
¿Qué es un archivo .mf4?
¿Cómo abro un archivo .mf4 de forma gratuita?
¿Puede MATLAB abrir archivos .mf4?
¿Cómo convierto .mf4 a CSV?
from asammdf import MDF; MDF('file.mf4').export('csv'). O ábralo en CANape y use su función de exportación.