Tips/FreeCAD

Last-modified: Fri, 13 Mar 2020 23:15:36 JST (1505d)
Top > Tips > FreeCAD

概要

  • FreeCADはオープンソースの汎用CADモデラー。
  • 各種CADデータをROS/URDFで読み込み可能なSTL(.stl)形式とCollada(.dae)形式に変換するのに使用できる。

対応形式

インポート

  • FreeCADは以下の入力形式に対応している。
  • 通常CADデータのやり取りにはIGES形式かSTEP形式が利用される。FreeCADもこの形式に対応している。
名称拡張子
Autodesk DWG*.dwg
Autodesk DXF*.dxf
BREP形式*.brep,*.brp
CalculiX 結果ファイル*.frd
Collada*.dae
汎用翼形状データ*.dat
ベクター形式画像ファイル*.svg,*.svgz
FEMデータ*.unv,*.med,*.dat,*.bdf
FreeCADマテリアルカード*.FCMat
IDF emn*.emn
IGES*.iges,*.igs
ラスター形式画像ファイル*.bmp,*.jpg,*.png,*.xpm
Industry Foundation Classes*.ifc
Inventor V2.1*.iv
メッシュデータ*.stl,*.ast,*.bms,*.obj,*.off,*.ply
Open CAD*.oca,*.gcad
OpenSCAD CSG*.csg
点群データ*.asc
POV-Rayファイル*.pov,*.inc
Pythonファイル*.py,*.FCMacro,*.FCScript
色付きSTEP*.step,*.stp
SVG形状データ*.svg
CSV*.csv
VRML V2.0*.wrl,*.vrml,*wrz,*.wrl.gz

形式変換

スケール設定

FreeCAD内部ではモデルデータをmm単位で管理しているが、URDFではモデルデータをm単位で扱う。
FreeCADからエクスポートする際にスケール調整してm単位にする必要がある。
以下の手順でスケール調整の設定を行う

  1. ワークベンチをArchに切り替える
    FreeCADは起動直後の状態では、何のプラグインも読み込まれておらず、エクスポートの設定画面は表示できない。そこで、エクスポート設定画面を有効にするためにワークベンチをArchに切り替える必要がある。
  2. スケール設定を行う
    設定画面からDAEのエクスポート設定でスケール調整の設定を行う。
    URDFで利用するためにm単位にスケール調整するためには、エクスポート・オプションのスケーリング係数を0.0010に設定すること。

ただし、FreeCADのCollada出力機能は非常にしょぼいので上手くいかないことも多い。その場合は下記トラブルシュートを参照の事。

Collada形式でのエクスポート

  1. コンボビューのモデルリストから出力するパーツを選択
  2. メニューから"ファイル"->"エクスポート"を選択し、Collada(*.dae)形式を選んで出力

トラブルシュート

Collada形式に変換できない

FreeCADでCollada形式に上手く変換できない場合がある。
そんな場合は、以下の手順でもスケールを調整したColladaに変換できる

  1. FreeCADなどでMeshLabなど他ツールで読み込めるSTL形式などに変換
  2. MeshLabなど他のツールを使用してColladaに形式を変換
  3. エディタでdaeファイルを開き、visual_scene/node内にscaleタグを追記する
    1. <library_visual_scenes>
    2.   <visual_scene id="VisualSceneNode" name="VisualScene">
    3.     <node id="node" name="node">
    4.       <scale> 0.001 0.001 0.001 </scale>
    5.       <instance_geometry url="#shape0-lib">
    6.         <bind_material>
    7.           <technique_common/>
    8.         </bind_material>
    9.       </instance_geometry>
    10.     </node>
    11.   </visual_scene>
    12. </library_visual_scenes>

Link