Diseño automatizado a HMI
Crear pantallas HMI manualmente es una de las tareas más laboriosas en la automatización. Con T-IA Connect, puedes transformar tus estructuras de datos (UDTs y DBs) en objetos gráficos (botones, medidores, campos de entrada) posicionados y vinculados automáticamente a tus variables.
Requisitos previos
- Proyecto TIA Portal con una estación HMI (Comfort o Unified)
- Servidor T-IA Connect activo
- Tabla de variables (Tags) definida para el HMI
Paso 1: Listar y explorar las vistas HMI
Usa la API para recuperar la lista de pantallas existentes y comprender la jerarquía de tu proyecto HMI.
curl http://localhost:9000/api/hmi/screens
{
"screens": [
{ "name": "Main_Overview", "width": 1280, "height": 800 },
{ "name": "Motor_Control", "width": 1280, "height": 800 },
{ "name": "Alarms_History", "width": 1280, "height": 800 }
],
"total": 3
}Paso 2: Crear objetos gráficos dinámicos
Envía una solicitud para añadir objetos a una pantalla. Puedes especificar el tipo de objeto, posición, tamaño y, lo más importante, su vinculación con una variable PLC.
curl -X POST http://localhost:9000/api/hmi/screens/Motor_Control/objects \
-H "Content-Type: application/json" \
-d '{
"type": "Circle",
"name": "Status_Light",
"left": 100,
"top": 150,
"width": 50,
"height": 50,
"bindings": [
{
"property": "BackColor",
"tag": "DB_Motors.Motor_1.Running",
"converter": "BooleanToColor",
"params": { "true": "Green", "false": "Red" }
}
]
}'{
"success": true,
"objectId": "obj_987654",
"name": "Status_Light",
"status": "Created & Linked"
}Paso 3: Exportar y compilar el HMI
Una vez generadas las pantallas, usa la API para lanzar una compilación global de la estación HMI para verificar la coherencia de los enlaces.
curl -X POST http://localhost:9000/api/hmi/compile \
-H "Content-Type: application/json" \
-d '{ "stationName": "HMI_TP1200", "rebuildAll": false }'{
"success": true,
"errors": 0,
"warnings": 2,
"compileTimeMs": 14500,
"binaryPath": "C:\\Projects\\Output\\HMI_Data.fw"
}La automatización HMI garantiza que cada variable de tu DB tenga su equivalente gráfico sin ningún riesgo de errores de entrada de datos.