Extraer modelos 3D en formato STEP de proyectos Altium (archivos .PcbDoc)

474 views
Skip to first unread message

BrainCodec

unread,
Jun 15, 2016, 8:09:29 AM6/15/16
to FPGA-WARS: explorando el lado libre
Por si a alguien le puede venir bien. Analizando un poco el archivo de la iceZUM (IceZUM_Core_HX1K.PcbDoc), resulta que no es más que un archivo comprimido, con un simple UNZIP nos generará una carpeta con todo el contenido de la PCB.

En concreto los modelos 3D de los componentes, están en la carpeta IceZUM_Core_HX1K\Root Entry\Models, eso sí, tendremos otro pequeño "handicap". En esta carpeta nos vamos a encontrar con archivos en formato binario.

Estos archivos tipo 0.dat, 1.dat, 2.dat, ... n.dat no son más que archivos comprimidos en ZIP nuevamente. Ahora bien, no disponen de la clásica cabecera "PK" de un archivo comprimido en formato ZIP. No obstante es muy sencillo descomprimirlos con el fin de obtener finalmente el archivo en formato STEP y en texto claro (ASCII), los cuales ya podremos importar por ejemplo desde FreeCAD. Para esto, podemos utilizar un pequeño script en PERL que haga uso de la librería "Compress::Zlib" y en concreto con la función "inflate()". También podemos hacerlo en python utilizando para ello la librería zlib y la función "decompress()"

De todas formas si alguno estáis interesados podéis encontrar un pequeño script en python, junto con algún ejemplo en este pequeño repositorio que acabo de crear en GitHub: https://github.com/braincodec/ExtractAltiumSTEPModels

Un saludo.

BrainCodec

unread,
Jun 15, 2016, 8:17:11 AM6/15/16
to FPGA-WARS: explorando el lado libre
Como mera curiosidad y si os fijáis en el archivo "0.step" que pongo en el ejemplo (https://github.com/braincodec/ExtractAltiumSTEPModels), se puede ver como el componente 3D del LED fue creado utilizando el software SolidWorks 2009 (el 11 de Octubre de 2009) Ahora ya está en FreeCAD, también en el repositorio!

¡Mera curiosidad! ;) 

Juan Gonzalez Gomez

unread,
Jun 15, 2016, 8:54:35 AM6/15/16
to FPGA-WARS: explorando el lado libre
Hola Braincodec!

  Gracias por la info!

  La icezum en step, exportada desde altium está en este repo:
  El fichero step se abre perfectamente con Freecad, y se pueden extraero todos los modelos 3D de ahí.


Sin embargo, un fichero .step NO son fuentes. Es un fichero en un formato estándar, que se puede ver y usar, pero que ha perdido toda la información relativa a cómo está hecha la pieza. Es un objeto 3D que podemos usar, pero que no sabemos cómo lo creó el diseñador. Igualmente, un fichero .stl de un pieza para imprimir en 3D, no contiene las fuentes de cómo está hecha, sólo la nube de puntos y caras que componen la pieza. Vamos, que es el equivalente a un PDF pero para 3D. En el PDF has perdido tos ficheros "fuentes" con los que hiciste el documento, y sólo podrás hacer modificaciones mínimas.

  El modelado 3D que estoy haciendo de los componentes 3D de la icezum va más allá:  parto del .step y lo reconstruyo usando las operaciones de freecad para tener disponible todo el árbol de operadores que dan como resultado la pieza. De esta forma, cualquiera puede realizar modificaciones, optimizar las operaciones, aprender, etc.  Para mí esa es la belleza de lo libre. No sólo que lo podemos usar, sino que tenemos accceso a absolutamente todas las tripas, para profundizar al nivel que queramos

Saludos, Obijuan



El 15 de junio de 2016, 14:17, BrainCodec <brain...@gmail.com> escribió:
Como mera curiosidad y si os fijáis en el archivo "0.step" que pongo en el ejemplo (https://github.com/braincodec/ExtractAltiumSTEPModels), se puede ver como el componente 3D del LED fue creado utilizando el software SolidWorks 2009 (el 11 de Octubre de 2009) Ahora ya está en FreeCAD, también en el repositorio!

¡Mera curiosidad! ;) 

--
Has recibido este mensaje porque estás suscrito al grupo "FPGA-WARS: explorando el lado libre" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a fpga-wars-explora...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/62d90ebc-91b1-478f-851b-8f205d1d1a7a%40googlegroups.com.

Para acceder a más opciones, visita https://groups.google.com/d/optout.

BrainCodec

unread,
Jun 15, 2016, 9:16:08 AM6/15/16
to FPGA-WARS: explorando el lado libre
Totalmente de acuerdo ObiJuan, lo bueno de esto es que podemos utilizar el STEP de cualquier proyecto Altium como "base" para el modelado de las piezas en FreeCAD, siempre más fácil y rápido que partir de cero 100%. Es más, muchas de las "partes" del modelo STEP, cuando lo importas a FreeCAD, ya pueden servir como sólidos sobre los que trabajar, sin duda un gran ahorro de trabajo. De ahí, la idea de "reutilizar" los steps de proyectos Altium, ya no solamente de la iceZUM claro está.

BrainCodec

unread,
Jun 15, 2016, 9:19:20 AM6/15/16
to FPGA-WARS: explorando el lado libre
Se me olvidaba! Por su puesto mis felicitaciones igualmente por el trabajo que estás haciendo de pasar los modelos a FreeCAD, que sin duda tiene su curro! ;)

Un saludo.

BrainCodec

unread,
Jun 15, 2016, 9:33:29 AM6/15/16
to FPGA-WARS: explorando el lado libre
Añadir también, por si alguien no lo conoce que hasta de las web como DigiKey (http://www.digikey.com/en/resources/3d-models) podemos descargarnos muchos de los modelos 3D de los componentes (en varios formatos). Nuevamente algo, que nos puede ahorrar mucho trabajo.

Al menos con estos métodos, no tenemos que tirar de medidas de los datasheets, o del calibre!!!

Un saludo.

Juan Gonzalez Gomez

unread,
Jun 15, 2016, 10:04:58 AM6/15/16
to FPGA-WARS: explorando el lado libre
Hola BrainCodec!

Correcto. Yo importo el step en freecad y a partir de él lo reconstruyo en Freecad. Tener el step es una grandísima ayuda. Una vez reconstruida la pieza, el step también sirve para verificar que está correcta, mediante comparación visual, superponiendo una sobra otra. Cualquier diferencia se detecta inmediatamente
 
Saludos, Obijuan

--
Has recibido este mensaje porque estás suscrito al grupo "FPGA-WARS: explorando el lado libre" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a fpga-wars-explora...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages