Skip to content

gbroques/openafpm-cad-core

Repository files navigation

OpenAFPM CAD Core

Repository containing OpenAFPM wind turbine model made with open-source CAD program FreeCAD.

Installing Package

From the root of this repository:

pip install --editable .

Installing Macros

From the root of this repository:

./link_macros.bash

Related Repositories

Prerequisites

  1. Install Micromamba.

Setup

Execute the following commands from the root of this repository.

  1. Create openafpm-cad-core conda environment.

    micromamba env create --file environment.yml
    
  2. Activate openafpm-cad-core environment.

    micromamba activate openafpm-cad-core
    
  3. Add the $CONDA_PREFIX/lib directory to $PYTHONPATH (this allows FreeCAD to be imported as a module within python).

    ./add_conda_path_to_python_path.sh
    
  4. Deactivate and re-activate openafpm-cad-core environment.

    micromamba deactivate && micromamba activate openafpm-cad-core
    
  5. Verify freecad executable is accessible:

    freecad --version
    

Docs

Run ./make_docs.sh from docs/ with openafpm-cad-core conda environment activated.

How to Upgrade FreeCAD Version

The version of FreeCAD is defined in environment.yml within the root of this repository.

  1. Check if there's a newer version from FreeCAD's GitHub releases page or Wiki.

  2. Increase version for freecad in environment.yml.

  3. Remove openafpm-cad-core conda environment created in the "Setup" section.

    micromamba remove --name openafpm-cad-core --all
    
  4. Reperform steps in the Setup section to recreate openafpm-cad-core conda environment.

  5. Regression test all functionality. (TODO: Write documentation for this)

Generating OBJ Files for openafpm-cad-visualization

  1. Activate the openafpm-cad-core conda environment.

  2. If openafpm-cad-visualization is cloned up a directory from this repository, then run:

    python macros/visualize.py ../openafpm-cad-visualization/public/
    

Troubleshooting

Run /macros from FreeCAD's GUI to see FreeCAD related warnings and errors.

Currently, macros must be manually edited to remove multi-threading to avoid a pickle-related serialization error.

Supported FreeCAD Versions

Currently tested with FreeCAD 21.2.

Links