Procesamiento mediante línea de comandos
Los modelos se pueden abrir y procesar de diversas maneras mediante la línea de comandos. Esto puede resultar útil para procesar varios modelos por lotes.
La sintaxis de la línea de comandos es:
“DesignBuilder” “MyFile” /process=ListOfProcesses
Al trabajar mediante la línea de comandos hay que tener en cuenta cuatro puntos clave:
- DesignBuilder es la ruta y el nombre del archivo ejecutable de DesignBuilder, por ejemplo, «C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe».
- MyFile es el nombre y la ruta del archivo del modelo. Debe ir entre comillas si contiene espacios.
- Debe haber un espacio entre MyFile y /process=.
- Los comandos de procesamiento individuales en ListOfProcesses deben separarse mediante comas.
Procesos disponibles
Los ejemplos siguientes describen el funcionamiento previsto con cierre automático. La ayuda original advierte de que, en DesignBuilder v2025.1, el programa puede permanecer abierto al terminar el procesamiento. La tabla siguiente enumera los procesos de línea de comandos que se pueden ejecutar en un modelo de DesignBuilder abierto.
| Comando | Función |
| miGSS | Cambia la vista a la pantalla de simulación |
| miGHL | Cambia la vista a la pantalla de diseño de calefacción |
| miGHG | Cambia la vista a la pantalla de diseño de refrigeración |
| miGDY | Cambia la vista a la pantalla de iluminación natural |
| miGCalculate | Cambia la vista a la pantalla de cálculo SBEM/DSM |
| miGCFD | Cambia la vista a la pantalla CFD |
| miTUpdate | Ejecuta el cálculo de la pantalla actual. Por lo general, este comando debe colocarse al final de la línea, antes de cualquier comando ChangeAttributeValue. |
| TabChange_n | Cambia la vista a la pestaña n de la pantalla actual. Por ejemplo, TabChange_2 en la pantalla de iluminación natural cambiará la vista a la pestaña de iluminación natural anual |
| SimStartDate d m | Establece la fecha de inicio con el día y el mes indicados numéricamente. Por ejemplo, SimStartDate 4 5 establece la fecha de inicio en el 4 de mayo. |
| SimEndDate d m | Establece la fecha de finalización con el día y el mes indicados numéricamente. Por ejemplo, SimEndDate 11 5 establece la fecha de finalización en el 11 de mayo |
| ChangeAttributeValue AttributeName Value |
Cambia el valor del atributo indicado en el nivel de edificio para el edificio seleccionado. Como sucede con los atributos establecidos en la interfaz, la herencia de los atributos del nivel de edificio a los niveles de bloque, zona, superficie y abertura se rige por las normas habituales de DesignBuilder, es decir, las reglas de herencia.
Pueden incluirse varios comandos ChangeAttributeValue en una sola cadena «/process= string». Deben separarse por comas, como otros comandos de proceso. Por ejemplo, el siguiente comando abre un modelo, cambia a la pantalla de luz natural, establece el multiplicador de zona en 2 a nivel de edificio, establece el tipo de simulación de luz natural en «4» (opción 4-LM-83-12) y finalmente ejecuta la simulación:
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\<somepath>\shoebox.dsb" /process=miGDY, ChangeAttributeValue ZoneMultiplier 2, ChangeAttributeValue RMSimulationType 4, miTUpdate
Sintaxis de los valores de atributos:
a. Para atributos numéricos, DesignBuilder almacena los valores internamente como códigos enteros. Por ejemplo, para establecer 0-Ninguno en Aberturas > Ventanas exteriores > Dimensiones > Tipo, el comando es:
ChangeAttributeValue Layout 0
b. Para booleanos, usa 1 o 0 para indicar verdadero o falso. Por ejemplo, para «verdadero» en Actividad > Ordenadores, el comando correcto es:
ChangeAttributeValue ComputersOn 1
c. Para números reales, añade el número con separador decimal si es necesario. Por ejemplo, para 0.5 en Actividad > Densidad de ocupación, el comando correcto es:
ChangeAttributeValue OccupancyValue 0.5 Nota: DesignBuilder almacena los valores reales en unidades SI y utiliza «.» como separador decimal. ChangeAttributeValue espera que Value se proporcione en el mismo formato nativo, independientemente de la región de Windows seleccionada en tu equipo. d. Para selecciones de tablas de la base de datos , como programaciones, construcciones, etc., la configuración se realiza mediante un identificador numérico, no mediante el nombre del elemento. Los identificadores numéricos no están disponibles directamente en la interfaz, pero se pueden obtener mediante la API, recorriendo los registros de la tabla para encontrar el elemento por nombre. Una vez devuelto el registro correcto, se puede leer su identificador (el campo cero del registro) y usarlo para establecer el identificador de la programación, construcción, etc. mediante ChangeAttributeValue. Consejo: para asegurarte de usar el AttributeName: |
| ExternalCommand_arg | Ejecuta un comando externo con argumentos opcionales |
| ImportModelData_Ruta y nombre del archivo | Importa los datos de modelo almacenados en el archivo indicado. Debe ser un archivo csv previamente exportado del modelo. |
| ImportLibraryData_Ruta y nombre del archivo | Importa los datos de biblioteca almacenados en el archivo indicado |
| miFExportAsXML | Exporta el modelo como archivo dsbXML con el mismo nombre que el modelo actual |
| UseSimManager | Usa este argumento para garantizar que la simulación se ejecuta mediante el Gestor de simulaciones. Se utilizarán las opciones Servidor y Método de servidor EnergyPlus configuradas actualmente en el modelo: de forma predeterminada, localhost y EnergyPlus , respectivamente. |
| NoClose | Impide que DesignBuilder se cierre una vez procesados todos los comandos |
Ejemplos de uso
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\<somepath>\shoebox.dsb" /process=miGSS, miTUpdate
Ejecuta una simulación EnergyPlus y cierra el programa.
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\<somepath>\shoebox.dsb" /process=miGSS, miTUpdate, ExternalCommand_ProcessResults
Ejecuta una simulación EnergyPlus, procesa los resultados en una aplicación independiente personalizada llamada ProcessResults.exe y cierra el programa. En este caso, ProcessResults.exe debe estar en la carpeta desde la que se ejecuta el comando o en una carpeta incluida en la lista de rutas de Windows.
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\<somepath>\shoebox.dsb" /process= miGHL, miTUpdate, miGHG, miTUpdate, NoClose
Ejecuta los cálculos de diseño de calefacción y de refrigeración e impide que DesignBuilder se cierre.
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\<somepath>\shoebox.dsb" /process= miGDY, miTUpdate, TabChange_2, miTUpdate
Ejecuta los cálculos de iluminancia y de iluminación natural anual y cierra el programa.
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\<somepath>\shoebox.dsb" /process= miGCFD, miTUpdate
Ejecuta la simulación CFD y cierra el programa. Que la simulación CFD sea simple o avanzada depende de las opciones de modelo configuradas previamente en Shoebox.dsb.
Procesamiento por lotes
Una forma cómoda de procesar un conjunto de modelos es ejecutar un script con varios comandos. Esto permite ejecutar varios modelos o cálculos sin supervisión.
Los scripts se pueden preparar de varias formas, por ejemplo, mediante archivos por lotes de Windows y scripts de PowerShell y Python.
Para la mayoría de los usuarios, la forma más sencilla de configurar un proceso por lotes es mediante un archivo por lotes simple. Sigue estos pasos:
1. Prepara los modelos de DesignBuilder que quieres simular con los datos y las opciones de cálculo necesarios. Cierra DesignBuilder.
2. Crea un archivo por lotes en una carpeta a la que puedas acceder fácilmente desde la línea de comandos.
a. Por ejemplo, crea una carpeta llamada «DBBatch» en la raíz de la unidad C:\.
b. Crea en esa carpeta un archivo de texto vacío llamado, por ejemplo, BatchRunDB.bat.
3. Copia los comandos que quieres ejecutar en el archivo por lotes con un editor de texto como el Bloc de notas. Por ejemplo, para ejecutar simulaciones de 3 modelos llamados Project1, Project2 y Project3 guardados en la carpeta predeterminada Documents\DesignBuilder Data, el contenido del archivo podría ser similar al siguiente:
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\Users\MyUsername\Documents\DesignBuilder Data\Project1.dsb" /process=miGSS, miTUpdate
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\Users\MyUsername\Documents\DesignBuilder Data\Project2.dsb" /process=miGSS, miTUpdate
"C:\Program Files (x86)\DesignBuilder\DesignBuilder.exe" "C:\Users\MyUsername\Documents\DesignBuilder Data\Project3.dsb" /process=miGSS, miTUpdate
Los comandos anteriores pueden aparecer repartidos en varias líneas en el navegador, pero en el archivo por lotes cada comando debe estar en 1 línea.
4. Ejecuta el archivo por lotes BatchRunDB.bat haciendo doble clic en él en el Explorador de archivos de Windows, o escribiendo «BatchRunDB.bat» en la línea de comandos y pulsando <Enter>
5. El archivo por lotes cargará cada modelo en DesignBuilder por turno y ejecutará los comandos solicitados sin intervención del usuario. Cuando se hayan ejecutado todos los comandos de un modelo, DesignBuilder guardará el modelo y se cerrará, devolviendo el control al archivo por lotes.
En el ejemplo anterior se carga Project1.dsb, se ejecuta una simulación y, cuando termina y los resultados se han cargado en el modelo, se guarda el proyecto en disco. Después se cierra DesignBuilder. El mismo proceso se repite para Project2.dsb y Project3.dsb. Una vez ejecutados todos los comandos, el proceso por lotes termina y los resultados solicitados quedan guardados en cada modelo.
6. Para recuperar los resultados de simulación, abre los archivos dsb procesados de la forma habitual.
Consejo: si quieres seguir usando el equipo mientras se ejecuta el proceso por lotes, puede ser útil minimizar la ventana principal de DesignBuilder para evitar que recupere el foco cada vez que se carga un modelo nuevo.
Limitaciones
En DesignBuilder v2025.1, tras ejecutar un proceso de línea de comandos, el programa permanece abierto y debe cerrarse manualmente mediante el Administrador de tareas:
Este problema se solucionará en una versión futura.


