Comando UC — Reportes de Usuario Personalizados
Permite crear reportes customizados concatenando respuestas de múltiples comandos, texto plano y campos calculados. Ideal para integrar datos específicos en formatos a medida.
🎯 16 reportes disponibles (índices 00-0F), cada uno totalmente configurable e independiente.
¿Para qué sirve?
| Caso de uso | Descripción |
|---|---|
| 📊 Telemetría customizada | Combinar datos de GPS, sensores y estados en un solo reporte |
| 🔗 Integración con servidores | Formato específico para plataformas de tracking |
| 📝 Reportes multi-sensor | Concatenar lecturas analógicas, digitales y CAN |
| 🏷️ Identificación de cargas | Incluir códigos de cliente/pedido desde buffers XB |
| 📋 Formato JSON/CSV | Estructurar datos para APIs o procesamiento |
Comandos
| Operación | Sintaxis | Descripción |
|---|---|---|
| Configurar | SUCnn estructura | Define estructura del reporte nn |
| Borrar | SUCnn* | Elimina configuración del reporte nn |
| Consultar | QUCnn | Lee estructura configurada |
Parámetros
| Parámetro | Descripción | Valores |
|---|---|---|
nn | Índice de reporte | 00 a 0F (16 reportes) |
estructura | Definición de campos | Campos separados por | |
Respuesta
RUCnn campo1|campo2|...|campoNSintaxis de Campos
Caracteres ASCII Especiales
Usa códigos hexadecimales para insertar caracteres especiales en el reporte.
| Código | Caracter | Descripción |
|---|---|---|
\00 | NULL | Terminador |
\09 | TAB | Tabulación |
\0D | CR | Retorno de carro |
\0A | LF | Salto de línea |
\20 | SPACE | Espacio |
\2C | , | Coma |
\3A | : | Dos puntos |
\3B | ; | Punto y coma |
\5C | \ | Barra invertida |
\7C | | | Pipe |
Evaluación Inline con EVAL
Disponible desde v1.9.18 — Límite de reporte aumentado a 239 bytes.
Permite insertar expresiones EVAL directamente en el reporte usando comillas simples. Las expresiones se evalúan dinámicamente al momento de enviar.
Sintaxis
'expresión'
'expresión:formato'
'expresión:formato:valor_error'Tokens Disponibles
| Token | Descripción |
|---|---|
'CHN' | Nombre del canal de comunicación (WIFI, GPRS, etc.) |
'CHC' | Código del canal |
'CSQ' | Calidad de señal celular |
'VEL' | Velocidad GPS |
'LAT' | Latitud |
'LON' | Longitud |
'V' | Tensión principal |
'TICK' | Tick del sistema |
Funciones
| Función | Descripción |
|---|---|
'IN(x)' | Entrada digital x |
'XP(x)' | Salida digital x |
'AIN(x)' | Entrada analógica x |
'TD(x)' | Timer/Distancia x |
'MBS(x,y)' | Sensor BLE (x=índice, y=tipo) |
'MOD(a,b)' | Módulo (resto de a/b) |
Operadores Texto
Para comparaciones dentro de comillas, usa operadores texto:
| Operador | Equivale | Ejemplo |
|---|---|---|
gt | > | CSQ gt 15 |
ge | >= | V ge 120 |
lt | < | VEL lt 80 |
le | <= | AIN(0) le 500 |
eq | == | IN(0) eq 1 |
ne | != | XP(0) ne 0 |
Ejemplos EVAL Inline
// Reporte con canal, señal y velocidad formateados
>SUC00 $ID chanel:'CHN' signal:'CSQ:%02d' vel:'VEL:%d';#8002;ID=865413053386354;*61<
>RUC00 $ID chanel:'CHN' signal:'CSQ:%02d' vel:'VEL:%d';#8002;ID=865413053386354;*60<
>QU0;#8003;ID=865413053386354;*37<
>ID chanel:TRM signal:99 vel:0;#8003;ID=865413053386354;*03<
Máximo 20 tokens EVAL por reporte. Las expresiones se evalúan al momento de enviar, no al configurar.
Ejemplos
Invocación de Reportes UC
Consulta manual
>QU0<Consulta el contenido del reporte UC00.
Generación automática con eventos
>SRL50E;TRG=IGN+;ACC={GU0}<Genera reporte UC00 cuando se enciende ignición.
Para enviar el reporte al servidor usa GUn (Generador). QUn solo consulta localmente.
Limitaciones
| Parámetro | Valor |
|---|---|
| 📦 Reportes UC disponibles | 16 (00-0F) |
| 📏 Longitud máxima texto | 239 bytes |
| 🔢 Campos por reporte | ~20 (según longitud) |
| 🔢 Tokens EVAL inline | 20 máximo |
| 🚫 Comandos anidables | No (UC no puede contener UC) |
Compatibilidad
Ver También
- Reporte Ux - Consulta y generación de reportes UC
- Comando XB - Buffers de texto
- Comando EVAL - Expresiones calculadas
- Motor de Eventos - Generación automática