Parametric CAD modeling for open source scientific hardware: Comparing OpenSCAD and FreeCAD Python scripts

PLoS One. 2019 Dec 5;14(12):e0225795. doi: 10.1371/journal.pone.0225795. eCollection 2019.

Abstract

Open source hardware for scientific equipment needs to provide source files and enough documentation to allow the study, replication and modification of the design. In addition, parametric modeling is encouraged in order to facilitate customization for other experiments. Parametric design using a solid modeling programming language allows customization and provides a source file for the design. OpenSCAD is the most widely used scripting tool for parametric modeling of open source labware. However, OpenSCAD lacks the ability to export to standard parametric formats; thus, the parametric dimensional information of the model is lost. This is an important deficiency because it is key to share the design in the most accessible formats with no information loss. In this work we analyze OpenSCAD and compare it with FreeCAD Python scripts. We have created a parametric open source hardware design to compare these tools. Our findings show that although Python for FreeCAD is more arduous to learn, its advantages counterbalance the initial difficulties. The main benefits are being able to export to standard parametric models; using Python language with its libraries; and the ability to use and integrate the models in its graphical interface. Thus, making it more appropriate to design open source hardware for scientific equipment.

Publication types

  • Comparative Study
  • Research Support, Non-U.S. Gov't

MeSH terms

  • Computer-Aided Design*
  • Printing, Three-Dimensional
  • Software*

Grants and funding

N.M. and S.B. were supported by Spanish Department of Economy and Competitiveness grant RTC-2015–4167-1 (http://www.mineco.gob.es/; this department changed its name); and Spanish Department of Science, Innovation and Universities grant RTC-2017-6218-1 (http://www.ciencia.gob.es/). The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.