【アセンブリ編】SOLIDWORKSが「重い」原因はモデルにある!パフォーマンスが向上するモデルの作り方

「ファイルの保存に時間がかかる」

「モデルを回転させるとカクカクする」

「1つの合致の処理に10分も待たされる」

SOLIDWORKSを使っていて、こんなストレスを感じたことはありませんか?SOLIDWORKSの代表的なデメリットとして真っ先に挙がるのが、この「重さ」です。

原因は、PCスペック不足やシステムオプション等の設定が最適化されていないことが考えられます。

しかし、実務でさまざまなモデルを見てきた筆者の感覚としては、それ以上にモデリングのやり方が原因になっているケースが多いです。

本記事では、「速い・壊れにくい・軽い」モデリングを実現するための考え方を解説します。

PCの性能アップや環境設定も大事ですが、設計者ご自身の「モデルの作り方」で、重くて捗らない作業から脱却できます。

日々SOLIDWORKSを扱う設計者の方は、ぜひ実務で活用してみてください。

 

本記事では、アセンブリに絞って解説します。

【部品編】も公開していますので、こちらもぜひご覧ください。

ライトウェイト、大規模アセンブリモード、SpeedPakは、重くなったモデルを【軽く扱う】ための機能です。

この記事では、そもそも【重くなりにくいモデルの作り方】を解説します。

アセンブリを軽くする「作り方」

部品をドラッグして動かそうとしたとき、SOLIDWORKSは裏で合致の計算をし直しています。

部品が増えるほど合致も増えるため、それで計算負荷が大きくなってしまいます。

アセンブリを軽くするには、構成部品一つひとつの「ファイルの重さ」に加えて、合致の仕方が重要となります。

ポイント1:トップレベルの合致を減らす

関連する部品はサブアセンブリにまとめ、合致をその中で完結させます。

トップアセンブリには、サブアセンブリ同士をつなぐ少数の合致だけにします。

合致の相手は、共通の基準部品(フレームなど)にできるとなお良いです。

動かない部品は、合致を入れず【固定】にすることで、合致の計算を減らせます。

アセンブリを軽くするマクロとして「AssyFreeze」を無料配布しています。

全ての合致を抑制して、部品を固定化して、再構築の負担を削減します。詳しくはDLページをご覧ください。

sugitama

サブアセンブリを上手く活用して、アセンブリを軽量化しましょう。

後からでも【新規サブアセンブリを作成】コマンドで、選択した部品からサブアセンブリを簡単に作れます。

ポイント2:サブアセンブリはリジッド(剛体)のまま使う

サブアセンブリの扱い方は2つです。

  • リジッド(剛体):1つのかたまりとして扱う
  • フレキシブル:内部の部品も、トップアセンブリの中で個別に動かせる

推奨はリジッドです。

フレキシブルにすると、トップアセンブリとサブアセンブリの両方の合致を計算することになるため、非常に重くなります。

切り替えは、構成部品を右クリックして「構成部品プロパティ」を開き、【リジッド/フレキシブル】を選択します。

 

 

リジッドにすると、トップレベルアセンブリの中でサブアセンブリ内の部品は動かせません。

sugitama

動かして検証したいサブアセンブリのみ【フレキシブル】にしましょう。

ポイント3:同じ部品を並べるときは「部品パターン」を使う

ボルトのように同じ部品を並べるときは、1個ずつ挿入せず、【部品パターン】(直線パターン、円形パターン、ミラーなど)を使います。

部品挿入や合致の手間が減りますし、合致の計算負荷を軽減できます。

sugitama

パターンを使えば部品挿入や合致作業も簡素化できて、軽くなって、一石二鳥です。

ただし、注意点もあるので、【ポイント4】で解説します。

ポイント4:循環合致・合致エラーを避ける

循環合致を避ける

部品AとBを合致し、部品BとCを合致し、部品CとAを合致する。みたいに、合致がぐるっと輪になっている状態が【循環合致】です。計算が重くなりやすく、エラーが出やすいです。

循環合致を避けるコツは2つです。

循環合致を避けるコツ
  • 位置を決める向きを一方向にする
    例:先に挿入した部品から位置を固めていく。後で挿入した部品は、先に挿入した部品や基準部品と合致する
  • 位置を固めるための合致の相手部品は1点ないし多くても2点にする

リンク機構のように、輪を作ること自体が目的の機構は例外です。

パフォーマンス評価の「循環参照」は、部品同士が外部参照で互いを参照し合う状態で、循環合致は別物です。

パフォーマンス評価では、循環合致は検出できないので、作る段階で回避しましょう。

 

さらに、循環合致ではありませんが、再構築が遅くなる合致の入れ方があります。

  • アセンブリフィーチャーを参照する合致
  • パターン配置した部品を参照する合致

これらの合致も極力なくすようにしましょう。

sugitama

パターン配置した部品に合致を入れたい場合は、パターン元の部品に合致を入れるようにするのが軽くするコツです。

合致エラーを避ける

代表的な合致エラーが【過拘束】です。同じ自由度を二重に拘束している状態です。

過拘束を回避するポイント
  • 部品には、必要最小限の合致だけをつける
  • 過拘束はフィーチャーツリーの部品名の横に「(+)」マークが付く
  • 原因の診断には、診断ツール「MateXpert」が使える
    起動方法:エラーが出ている合致を右クリック>MateXpertを選択。

 

sugitama

1つの部品に対して3つ以下の合致で完全固定できます。4つ以上の合致は過拘束の可能性があります。

ポイント5:パフォーマンス評価で、重い原因を特定する

重くなったアセンブリは、【パフォーマンス評価】で原因を調べます。使い方・見方は以下の記事で詳しく解説しています。

≫【重いファイル対策】SOLIDWORKS「パフォーマンス評価」ツールの読み方と対処法を解説

 

アセンブリで見るのは次の3項目です。

アセンブリで確認すべき【パフォーマンス評価】の項目
  • 循環参照:
    部品同士の外部参照が循環している状態。指摘されたらその参照を解消する
  • 合致:
    遅くなる条件に当てはまる合致が指摘される。多ければポイント1〜3に戻る
  • 三角形の数:
    過剰な作り込み部品が分かる。ポイント6へ進む

指摘はエラーではありません。直すと設計意図を損なう場合は、直さなくて大丈夫です。警告をゼロにするのが目的ではありません。

ポイント6:購入部品(ねじ・ベアリングなど)を簡略化する

購入部品には、ねじ山、刻印文字、細かい面取りなど、重さの原因になる形状が入っています。

sugitama

パーツ編の「ねじ山は属性のみで表現する」と同じ考え方です。

詳細な作り込みが不要な場合は、省略して軽量化しましょう。

簡略化のポイント
  • Toolboxのネジは、形状を持たせない表示にする。
  • メーカーのモデルは、関係ない箇所は簡略処理をする。
    刻印文字を抑制したり2D化する、ねじ山を押し出しで埋める、など
    簡略コンフィギュレーションがあれば、そちらを使う。
  • STEPファイルは、インポート後に不要ボディや部品を削除する。複数ボディを結合する。

簡略化すると、干渉チェックや質量、解析の精度などに影響する場合は、元データを別名で残しましょう。

sugitama

パーツの簡略化に便利なマクロ「ParasolidRoundTrip」もあります。編集しない購入部品などは履歴削除して軽量化しておきましょう。

ポイント7:完成したサブアセンブリを、部品で保存して置き換える

もう編集しないサブアセンブリは、1つの部品にまとめて保存することで軽量化できます。

手順は次のとおりです。

アセンブリを部品として保存する手順
  1. 対象のアセンブリを開く
  2. 「名前を付けて保存」で、ファイル形式を「.sldprt」を選ぶ
  3. 保存するジオメトリを選ぶ(全構成部品/外側の面/指定した構成部品)
  4. 「ジオメトリ参照の保持」を入れる。
    あとで差し替えるとき、合致を作り直さずに済む

 

保存範囲によって、できあがる部品が変わります。

  • 全構成部品:
    複数のソリッドボディとして保存される。非表示・抑制した部品は含まれない
  • 外部面:
    外側の面だけの部品になる。ボディはすべてサーフェス(厚みのない面)になり、少し扱いにくい
sugitama

この方法は、元のパーツ/アセンブリファイルと参照関係が切れてしまいます。

軽量化のための最終手段として使ってみてください。

 

SOLIDWORKS 2024以降は、元のアセンブリと関連付けたままマルチボディ部品を作れます。

コンフィギュレーションを使っている場合、保存されるのは選択中の状態だけです。

まとめ

本記事では、SOLIDWORKSが重くならないための「アセンブリモデル」の作り方について解説しました。

軽いアセンブリモデルを作るための注意点
  1. トップレベルの合致は減らす。固定やサブアセンブリをうまく活用する
  2. サブアセンブリはリジッドにする
  3. 部品パターンを活用する
  4. 循環合致や過拘束(「(+)」マーク)はなくす
  5. パフォーマンス評価で、重い原因を調べる
  6. 購入部品は簡略化する
  7. サブアセンブリを部品保存する

これらの方法をうまく活用して、軽量で壊れにくいモデルを構築してもらえたらと思います。

 

アセンブリは元をたどるとパーツファイルから構成されます。パーツを軽く壊れにくく作ることが、アセンブリを軽量化することにもつながります。

パーツの軽量化のためのモデリング方法については、こちらの記事で解説しています。

≫【部品編】SOLIDWORKSが「重い」原因はモデルにある!パフォーマンスが向上するモデルの作り方

 

あなたの設計業務の助けになれば幸いです。

最後までお読みいただき、ありがとうございました。