Purpose

Manage FreeCAD model sharing and linear versioning. This is a sample app, more to see framework capabilities than to use as a real PLM (Product Lifecycle Management).

Roles

  • ROLE_ADMIN

  • ROLE_PLM_USER

See configure roles in Crew to add the role into your Intranet

Server Installation

Install everything in a new user (optional)

It is better to isolate Freecad in a specific user, in order to not override your Freecad configuration for your user.

To do so:

  1. create a new user:

    sudo useradd plm --create-home
  2. Add current plm group to current user

    sudo usermod -a -G plm <current user>
  3. Eventually change right of plm to allow group rxw

  4. Restart logout / login cycle or restart to apply group change to your user

Launch FreeCAD on the server

On a Linux server, it is better to install the following package from your distribution:

Freecad and Weston allow similar features on Wayland than Xvfb-run under X11.

Install from Server Binaries

Download the latest server binaries from releases.

Launch the server app:

Launch the server
java -jar server-0.6.jar

Server Arguments

See server/grails-app/conf/application.yml for a list of available options

Options to the server can be passed this way:

Combining Options
java -DOption1=Value1 -DOption2=Value2 ... -jar server-0.3.jar
Options
  • Path the Intranet store its files: -Dintranet.root=/home/test/someDir

  • Server port: -Dserver.port=9444

  • Database url: -DdataSource.url='jdbc:h2./prodDb2;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE'

  • Freecad path: -Dplm.freecadPath=/somePath…​

  • Dot exe path: -Dexe.dot.path=/somePath…​

Install from Source

Clone the plm repository:

Clone PLM repository
git clone https://github.com/Taack/plm.git

Then copy the content of the plm folder into your intranet app folder (see intranet installation)

Set the FreeCAD path in the server/conf/application.yml file.

Start your intranet issuing under the intranet folder:

Run Server from Source
./gradlew server:bootRun

You can produce a Jar file:

Build Server Binary from Source
./gradlew server:assemble

The server will be located under server/build/libs

FreeCAD Workbench Installation

First, install python-protobuf. If you use FreeCAD ⇐ 0.21, dependencies are not installed automatically when installing the workbench.

Install Protobuf for FreeCAD
pip install protobuf

Go into Tools > Addon Manager then refresh local cache and search for Taack.

addon screenshot

Click on install button.

Usage

plm1 screenshot
Figure 1. Select Taack PLM Workbench
plm2 screenshot
Figure 2. Click on Taack icon
plm3 screenshot
Figure 3. Enter your credential into your server

Clicking on OK button will upload the file into your Intranet. The Intranet will create a preview, this process might take time.

plmweb1 screenshot
Figure 4. The history of the part…​
If you have many links, import them from the same computer. From other computers, download the zip file from your intranet.

That’s it; I will record some videos demonstrating this app capabilities.

Todo

  • Add model graph icon

  • Update deps for a model (with Deep option)

  • Delete latest version

  • …​