# Diccionario de sensores
sensores_info <- data.table(
archivo = c("PS1","PS2","PS3","PS4","PS5","PS6",
"EPS1","FS1","FS2",
"TS1","TS2","TS3","TS4",
"VS1","CE","CP","SE"),
nombre = c("Presion 1","Presion 2","Presion 3","Presion 4",
"Presion 5","Presion 6",
"Potencia Motor","Flujo Vol. 1","Flujo Vol. 2",
"Temperatura 1","Temperatura 2","Temperatura 3","Temperatura 4",
"Vibracion","Efic. Enfriamiento","Pot. Enfriamiento","Factor Eficiencia"),
unidad = c(rep("bar",6),"W",rep("l/min",2), rep("C",4),"mm/s","%","kW","%"),
frecuencia = c(rep(100,6),100,rep(10,2), rep(1,4),1,1,1,1),
cols_esperadas = c(rep(6000,6),6000,rep(600,2), rep(60,4),60,60,60,60)
)
# Cargar todos los sensores
datos_sensores <- list()
inventario <- data.table()
for (i in 1:nrow(sensores_info)) {
sensor <- sensores_info$archivo[i]
ruta <- file.path(DIR_DATASET, paste0(sensor, ".txt"))
if (!file.exists(ruta)) next
dt <- fread(ruta, header = FALSE, sep = "\t")
datos_sensores[[sensor]] <- dt
inventario <- rbind(inventario, data.table(
Sensor = sensor,
Nombre = sensores_info$nombre[i],
Unidad = sensores_info$unidad[i],
`Hz` = sensores_info$frecuencia[i],
Filas = nrow(dt),
Columnas = ncol(dt),
Esperadas = sensores_info$cols_esperadas[i],
Coincide = ifelse(ncol(dt) == sensores_info$cols_esperadas[i], "OK", "ERROR"),
Nulos = sum(is.na(dt)),
`Tam (MB)` = round(file.size(ruta) / 1024^2, 1)
))
}