Capítulo 18: Diseño paramétrico de piezas en FreeCAD - Obijuan/videoblog GitHub Wiki
VideoBlog 18
VER VIDEO:
Descripción
A partir de la versión 0.16 de Freecad, podemos hacer diseños paramétricos de piezas usando la hoja de cálculo integrada en el banco de trabajo Spreadsheet. En todas las propiedades de nuestro objetos podemos incluir una expresión para calcular el valor de esa propiedad, en vez de ser un número constante. Estas expresiones nos permiten obtener datos de la hoja de cálculo. De esta manera, simplemente cambiando los parámetros en la hoja de cálculo, se nos genera automáticamente la pieza paramétrica.
Es un gran avance para Freecad y para el patrimonio tecnológico de la humanidad
Portamuestras paramétrico
Vamos a abrir el portamuestras diseñado por Angel Larrañaga, del dpto de innovación y robotica de BQ (bqlabs). Es un objeto paramétrico que nos permite seleccionar el número de muestras que quieres que tenga. A partir de este número se genera la pieza en 3D
Image | Description |
---|---|
![]() |
Porta muestras de 8 unidades |
![]() |
Porta muestras de 20 unidades |
Pinchamos en la el objeto Spreadsheet para que se nos abra la hoja de cálculo. Vemos que aparece una celda con el texto "Number of samples" (Número de muestras) y a continuación el valor 15. Este es el parámetro que indica el número de uniades de portaobjetos que queremos tener
Le damos a la opción Windows/Arrange icons para ver las dos ventanas una al lado de la otra: la hoja de cálculo y el diseño del portamuestras. Ahora cambiamos el número de muestras a 8 en la hoja de cálculo. Automáticamente se empieza a recalcular la pieza (puede tardar varios segundos dependiendo del ordenador) y nos aparece un flamante portamuestras de 8 unidades :-)
Ejemplo hola mundo: recipiente parámétrico
Para aprender a hacer objetos paramétricos vamos a hacer uno muy sencillo: un recipiente cilíndrico, con sólo dos parámetros: la altura y el diámetro. Los grosores los dejaremos en 3mm
Image | Description |
---|---|
![]() |
Recipiente con diámetro = 50mm, altura = 20mm |
![]() |
Recipiente con diámetro = 40mm, altura = 40mm |
Arrancamos freecad y abrimos el fichero parametric-container-init.fcstd, que contiene una moneda de un euro que nos servirá de referencia para el tamaño del recipiente
Vamos al banco de trabajo Spreedsheet y le damos al icono de crear una hoja de cálculo nueva
Se nos abre una hoja en blanco:
Igual que en cualquier hoja de cálculo, escribimos los parámetros altura y diámetro y les damos unos valores iniciales (por ejemplo 50mm para el diámetro y 20 para la altura). Usamos 4 celdas:
Las etiquetas de altura y diámetro son campos de texto normales, que nos sirven como documentación. Lo que nos interesa es usar los valores de las celdas numéricas. Para ello primero tenemos que asignarles un nombre para poder acceder a ellas desde nuestro objetos de freecad. Nos colocamos sobre la celda que contiene el valor del diámetro y con el botón derecho abrimos sus propiedades. En la pestaña de Alias le damos un nombre. Por ejemplo diametro
Ahora la celda que contiene el valor del diámetro se pondrá con el fondo amarillo. Esto significa que tiene definido un parámetro. Repetimos los mismo para la altura. Le damos el nombre altura
Los dos parámetros, diámetro y altura, estarán con el fondo amarillo
Abrimos el banco de trabajo part y creamos un cilindro. Nos vamos a su propiedad de radio y pinchamos en el icono azul de la derecha que pone f(x):
Ahí hacemos referencia al parámetro definido en la hoja de cálculo escribiendo Spreadsheet.diametro/2:
Obsérvese que hemos usado el parámetro diámetro aplicando una división entre 2 para obtener el radio. Y es que los parémetros de los objetos los podemos definir mediante funciones, lo que nos permite aplicar operadores. Una vez creada la función en las propiedades del radio nos aparecerá el valor actual (25mm) y a la derecha el símbolo f(x) tendrá el fondo azul, indicando que hay una función definda para ese parámetro.
Repetimos para el parámetro de la altura:
En la derecha veremos f(x) con fondo azul:
Creamos un segundo cilindro y a su radio le asignamos la función Spreedsheet.diametro/2 - 3
A su altura le asignamos: Spreedsheet.altura y lo posicionamos 3mm sobre el eje z para que sobresalga sobre el primer cilindro
Al primer cilindro le restamos el segundo, obteniendo así nuestro recipiente cilíndrico:
Ahora nos vamos a la opción Windows / Arrange Icons del menú superior para ver a la vez el objeto 3D y la hoja de cálculo
¡Ahora ya podemos modificar los parámetros en la hoja de cálculo y ver cómo se genera automáticamente nuestro recipiente! Por ejemplo, diḿetro = 30, altura = 50.
Enlaces
-
Proyecto OpenLab. El portamuestras paramétrico de Angel Larrañaga está en este proyecto
Créditos
- Angel Larrañaga es el autor del portamuestras paramétrico. ¡Gracias!
- David Estévez por descubrirme esta nueva funcionalidad de freeCAD. ¡Gracias!