Paso 3: Script en Python - parte 1
En este paso le voy a escribir un python script que saca los valores de la base de datos en línea y se determina el espesor correcto basado en estos valores. En el siguiente paso será ampliar este script para crear un modelo 3D del invernadero. (el script se adjunta en este paso).
En primer lugar, abierto fusión 360 y haga clic en "secuencias de comandos y complementos" en la barra de herramientas. Asegúrese de que están en la ficha secuencias de comandos, a continuación, haga clic en el botón crear. Se abrirá un nuevo cuadro de diálogo. Seleccione secuencia de comandos y, a continuación python y luego darle su escritura de un nombre, Descripción y autor. Haga clic en crear para cerrar el cuadro de diálogo. Seleccione su nuevo script y a continuación, haga clic en editar, esto será pronto Spyder para abrir. Spyder es una python edición de interfaz que se construye en la fusión, por lo que vas a hacer toda la programación aquí.
En la parte superior del archivo, añadir estas líneas de código:
adsk.core, adsk.fusion importación urllib.request #from html.parser importación xml.etree.ElementTree importación de HTMLParser como ET de importación
El siguiente paso es hacer algunas definiciones de variables. Aquí definiremos el tamaño del invernadero y cómo caliente que el interior para ser. En el futuro, la secuencia de comandos podría pedir al usuario qué quieren crecer en el invernadero, y entonces podría tirar en la temperatura correcta de otra base de datos. Por ahora la temperatura será definida por el usuario sin embargo. Aquí lo tenemos a 100 grados F.
### DEFINICIONES DE VARIABLES
### Preferido dentro de la temperatura [F]
insideTemp = 100
### Tamaño del invernadero [ft]
wallHeight = 6
roofHeight = 9
anchura = 10
Longitud = 10
### por defecto espesor de aislamiento, en cm
aislamiento = 10
### Eficiencia de flujo solar
eficiencia = 0.1
Estas líneas siguiente hacen el parseo de XML. Al final de este bloque de código, la outsideTemp de las variables y flujo tendrá los valores introducidos en la base de datos XML.
### PULL ENTRADAS DE BASE DE DATOS XML
respuesta = urllib.request.urlopen ('URL del XML de su')
pageContentsBytes = response.read()
pageContents = pageContentsBytes.decode("utf-8")
# convertir byte objeto cadena
árbol = ET.fromstring(pageContents)
outsideTemp = int(tree.find('temp').text)
flujo = int(tree.find('flux').text)
# Algunas declaraciones de impresión útiles para la depuración
Imprimir (' fuera Temp: ', outsideTemp, 'F')
Imprimir ("flujo de calor Solar: ', flujo, ' Btu/hr/ft ^ 2')
Una vez que tenemos los valores de temperatura y flujo, el siguiente paso es enchúfelos en la ecuación 8 y resolver para el espesor de la pared. Hacer, necesitamos saber algunos ámbitos (como y)así lo calculamos esos primeros. También tenga en cuenta que todas las variables de longitud se convierten eventualmente en cm, es porque usaremos el API de fusión en el paso siguiente, y utiliza cm como la unidad por defecto.
### CALCULAR EL ESPESOR DE LA PARED
# calcular las áreas, en pies ^ 2
floorArea = (ancho * longitud)
sideArea = 2*(length*wallHeight)
frontBackArea = 2*(width*wallHeight) + ((roofHeight-wallHeight) * anchura) roofArea = 2 * (((roofHeight-wallHeight) ** 2 + (anchura/2) ** 2) ** 0, 5) * longitud
totalArea = floorArea + sideArea + frontBackArea + roofArea
sunArea = roofArea ### zona el sol se aproxima a ser el área de la azotea!
# Algunas declaraciones de impresión útiles para la depuración
Imprimir (' superficie: ', floorArea, ' ft ^ 2')
Imprimir (' área Total: ', totalArea, ' ft ^ 2')
Imprimir (' área de sol: ', sunArea, ' ft ^ 2')
# convertir pies a cm
wallHeight = wallHeight * 30.48
roofHeight = roofHeight * 30.48
ancho = ancho * 30.48
longitud = longitud * 30.48
flujo # se mide en Btu/hr/ft ^ 2
aislamiento = (totalArea * (insideTemp - outsideTemp)) / (sunArea * eficiencia * flujo * 6.5)
Imprimir (' espesor de aislamiento: ', aislamiento, 'pulgadas')
# convertir las pulgadas a cm
aislamiento = aislamiento * 2.54
En este punto, todas las dimensiones del invernadero deben ser definidos, y el siguiente paso es generar el modelo de invernadero.