● Proyecto · MES especializado en metalurgia

KAVANA Steelworks: gestión de la producción hecha para plantas de perfilado de acero

Casi cuatro años en Kimer como perfilador especialista y casi uno en THU, trabajando en perfiladoras: máquinas que convierten bobinas de acero en perfiles. En Kimer me encargaba también del ajuste de máquinas y del control de calidad. Steelworks es un MES especializado en ese tipo de planta: órdenes, bobinas, consumo, calidad y OEE, con la lógica de una perfiladora y no la de un programa genérico.

Tecnologías: Python (FastAPI), PostgreSQL, React y TypeScript, WebSockets. Demo pública con una planta de ejemplo.

FIFO
Entre las bobinas de la orden, se gasta primero la que entró antes
mm → kg
El operario mide el radio con un metro y el sistema calcula los kilos que quedan
±2 mm
Bloquea la bobina cuyo ancho o espesor no corresponde a la orden
4
Roles: operario, materias primas, supervisor y administrador
El origen

Por qué construí esto

En una perfiladora la materia prima es la bobina: llega con su etiqueta de peso, lote y medidas, y se va gastando turno a turno. Lo difícil es saber al final cuántos kilos se gastaron de verdad en cada orden y cuánto quedó como sobrante. Si eso se apunta en papel o en un programa pensado para la oficina, el dato llega tarde o no cuadra con la báscula.

Steelworks es la reconstrucción, con tecnología actual, de una versión anterior que hice yo mismo. Conserva la lógica que venía de la planta: el orden en que se gastan las bobinas, el cálculo de kilos a partir del radio y la comparación con la báscula.

Qué resuelve

Lo que cambia en el puesto y en el almacén

🔗

Cada bobina, vinculada a su orden

El operario escanea el QR de la etiqueta y la bobina queda asignada a su orden. El consumo se reparte por fecha de entrada entre las bobinas vinculadas, así no se gasta por error una bobina de otro turno.

📏

Fin de bobina en milímetros

Para saber lo que queda, el operario mide el radio con un metro. El sistema lo convierte en kilos con la densidad del acero, y el sobrante puede volver al almacén. La idea no es mía: la aprendí del ERP antiguo que usaba una de las empresas donde trabajé, y la recreé porque me pareció una ventaja que merecía la pena conservar.

🚫

Material equivocado, bloqueado

La orden sabe qué material necesita. Si la bobina es de otro tipo, su ancho se aleja más de 2 mm o su espesor más de un 10 %, el sistema no deja vincularla y le explica al operario por qué.

⚖️

Kilos que cuadran con la báscula

Compara lo que el sistema cree que se ha gastado con lo que pesa de verdad, para que la merma no quede escondida en un promedio.

📊

OEE del turno

Disponibilidad, rendimiento y calidad con lo que se ha registrado; si no hay datos, muestra 0 en vez de inventarse un número.

🧾

Un registro que no se puede retocar

Cada registro de producción se guarda y la base de datos impide modificarlo o borrarlo después. Pensado para que una auditoría ISO 9001 pueda seguir cada lote.

✅

Autocontroles e incidencias

Recuerda al operario los autocontroles de calidad del turno y le deja abrir una incidencia con foto desde el móvil escaneando un QR.

Criterio aplicado, no solo código

Tres decisiones que salen de la planta

🔄 Cambiar de bobina a mitad de orden

Al vincular una bobina, la orden se la queda entera. Si el operario la cambia antes de acabarla, a la orden se le descuenta lo que no ha gastado, para que cada orden refleje los kilos que consumió de verdad. ADR-019. ADR →

🗄️ Todo o nada al gastar material

Gastar una bobina, descontar el stock y apuntar el movimiento tienen que pasar a la vez o no pasar. Por eso se eligió una base de datos relacional con transacciones y reglas que impiden que los kilos no cuadren. ADR-002. ADR →

🎚️ Cada planta, su nivel de automatización

Unas plantas quieren que el sistema vincule bobinas solo; otras prefieren control manual. Las funciones se activan por planta sin cambiar el código. ADR-003. ADR →

El flujo completo

Cómo circula una bobina en planta

Materias primas (recepción) │ pesa la bobina · material · medidas · lote ▼ Almacén (stock y movimientos) │ la bobina entra con su fecha de entrada ▼ Operario (escanea el QR de la etiqueta) │ vincula la bobina a su orden · se bloquea si no corresponde ▼ Producción (consumo por fecha de entrada) │ fin de bobina medido en mm · el sobrante vuelve al almacén ▼ Supervisor OEE del turno · consumo de material por orden · trazabilidad del lote
Con honestidad

Lo que todavía no está probado

Demo en vivo

Pruébalo ahora

🏭 La demo

Entra con un clic, sin usuario ni contraseña. Como operario escaneas la bobina de ejemplo COIL-DEMO-001 para vincularla a una orden; como supervisor ves el OEE y el consumo de cada orden.

Entrar como operario → Entrar como supervisor → Entrar como materias primas → Entrar como administrador →

Abrir la demo →

💻 Código y decisiones

Repositorio público con el código, las decisiones de diseño explicadas por escrito y la descripción del flujo real del operario. También puedes preguntarle al asistente técnico de esta página (💬).

Ver en GitHub →

¿Quieres ver más?

Este es uno de los siete proyectos del portfolio. Cada uno nace de un problema real de planta o de reparto.