CADの部屋

Assembly operation for “Free CAD”

Free CADでアセンブリモデルの作成)

1.前書き

自分が仕事で主に使ってきたのはPTC社のPro/ENGINEER(略称Pro/E)というソフトウェアだった。今はCREOと名前が変わっているらしい。

25年以上前のこいつの導入時には、導入教育すべてを委託したコンサル会社がホントにポンコツだったせいで、えらく苦労させられた。あまりにも上手く行かなかったのでコンサルを別の会社に変え、それまでに作ったモデルも大部分は作り変えてなんとか走り出した。

(これについては別途記述)

2008年に会社を移った際、遅れていた3D化を進める部署の責任者になった。メインの設計ソフトウェアはCATIAだったが、Pro/Eの経験が大いに役に立った。設計者は同じような悩みを抱えて苦しんでいたため、上記の上手く行ったほうのコンサル会社に来てもらって、何回も教育をやっていただいた。こっちの会社でも何とか設計のフル3D化が上手く行ったのはこの方たちのおかげと思っている。

会社を移ってからは、自分で実際に仕事に使うためのモデリングをすることはまったく無くなってはいたが、自分の私用パソコンにはPro/EStudentバージョン、Solid Edge(いずれもフリー)、それにAuto Cadが入っていたので、操作を忘れないために自分の趣味の楽器作りのモデリングや図面化などに細々と使っていた。

 今回、自分のパソコンが新しくなったのを機に、新しい3D設計ソフトを数種類インストールしてみた。Windows Me時代から長く使ってきたPro/ESolid Edgeが、新しいWindowsに対応していなかったこともその理由の一つだった。昔に比べるとフリーで使える3Dモデラーも格段に進歩していて、どれをメインにするか迷ったが、速度、機能、登録の簡易さなどの理由から最終的にFree CADを選んだ。基本的にオープンソースのため、日々進化していく点が素晴らしいところであり、またそれが難点(覚えた操作が変わってしまう)でもあるのだが、しばらくはこれを使ってみようと思う。

 

2.Free CADのアセンブリ手法について

パーツのモデリング方法は基本的にCATIAPro/Eなどとほとんど同じなので何という事はなかったが、アセンブリの操作には非常に苦労した。元々のソフトウェア開発思想が、例えば3Dプリンター用のデータ作成などがメインで、そもそもそんなに複雑なアセンブリモデルを組み上げることはあまり考慮されていなかったのかもしれない。このアセンブリに関する機能も、オープンソースで世界中のユーザーが追加したアドウェアでの提供となっている。

Assembly4」というこのアドウェア、YouTubeの動画含めて解説しているサイトもあるにはあるが、どうもあまりよろしくない。形ばかりのアセンブリモデルは出来るが、完成したパーツを組み上げるだけの内容だったり、パーツを設計変更してもアセンブリに反映されないような作りだったりするので、たぶん、あまり設計実務経験のない方が作られているのだろう。パーツのモデリングも、いわゆる「回転コマンド」が多用されていたりした。(回転コマンドは出来る限り使わない、というのが自分たちのポリシーだったので、「回転コマンドで簡単にモデリングできます」みたいな解説があると、はなから信用できないと思ってしまう。偏見かもしれないが・・)

通常の、いわゆる「開発設計」業務においては、パーツが先に完成してからおもむろにアセンブリにとりかかる、というようなことは非常に稀で、多くの場合、パーツとアセンブリの作成が同時進行していく。アセンブリの状況を見ながらそれぞれのパーツの詳細を設計するという作業が必須なのである。残念ながらこの方法を解説してくれているところはほとんど無かった。

インストールから1ヶ月くらいかけて、海外の解説サイトも参考にしながら、何とか上位CADと同じようなアセンブリの使用方法を見つけることができた。この方法を使えば、容量や速度の面を除けば、上位ハイグレードソリッドモデラにもほぼ匹敵する設計作業が可能であることもわかったため、自分の備忘も兼ねてAsemmbly4の操作マニュアルを作ってみた。同じように悩まれている方に少しでもご参考になれば幸いである。

お急ぎの方はこちらから Free CAD アセンブリの作り方

 

3.アソシエティビティの罠

前書きのところに少し書いたが、Pro/Eの導入時に混乱を極めた原因は、このソフトが持っている「アソシエティビティ」(双方向連携)機能、「パラメトリック」(変数設計)機能、それに「リレーション」(相互関係)機能だった。簡単に言うと、「どれか部品の形状や寸法を変更すると、それに関係する部品やアセンブリもすべて自動的に変わる」というもの。導入教育を受け持ったコンサルの操作指導も、まさにこの点を主眼に置いたものだった。

どこかの会社では携帯電話の設計のためにこの機能を駆使していて、そのおかげで設計期間が以前の3分の1になった、というのがその触れ込みであった。初めて3D設計を学ぶ我々設計者は、その言葉を完全に信じ、操作講習が終了した者から順次、教えられたそのままの手法で設計を進めていった。

この機能を使うためには、ひとつの新しい部品を作る際に、既にある他の部品の形状や寸法と関連付ける作業が必要となる。我々が使っていたPro/Eにおいては、この「関連付け」が自然にできるような設定となっていた。

結果、どんなことが起きたか? 思い出すのも嫌なことではあるが・・・

複数の設計者で同時進行している比較的大きなプロジェクト、自分が担当してモデリングをしているパーツ形状に加工が難しいところがあることに気がつき、少し寸法を変更して保存し直したとする。翌朝、チームの他の誰かから悲鳴が上がる。彼の担当している部分に突然エラーが出て、再生できなくなったという。原因を探っていくと、どうも自分が変更したパーツのせいらしい。知らないうちに自分のパーツと関連付けされていた他のパーツ上に、寸法変更による形状矛盾が生じ、そのためにそのパーツばかりでなくアセンブリまで再生できなくなってしまったらしい。

設計を進めて行くうちに、このような事がチーム員間で頻発するようになった。そのために原因追及とモデル復旧作業が必要となり、とても設計作業などできない事態となった。当然スケジュールはベタ遅れ、モデルを成立させるために自分の欲しい理想的な形状を捨てなければならない、などという完全な本末転倒も起きていた。チーム内で話が済めばまだ良いほうで、他のチームで作った小さなパーツを共用するために引っ張ってきたら、全然関係の無い別プロジェクトのパーツが数百個くっついてきた、というようなまるで笑い話みたいな現象も実際に発生した。もちろん笑い話では済まなかったけれど。

操作コンサルに相談しても、「別の会社ではこのやり方で上手く行っていた。それはあなた方の使い方に問題があるのではないか?」と言われるばかり。後からよくよく考えてみれば、少なく見積もっても数千点の部品で構成され、かつ長年にわたって設計変更を重ねながら使っていく我々の製品と、部品点数がせいぜい数十点、しかも使い捨てに近い携帯電話の筐体設計とでは、同じように行くわけがなかった。

最終的に開発業務を一時中断し、別のコンサル会社に再度操作教育をお願いして、それまでに作っていたモデルは全て一から作り直すということをやった。彼らの指導の主な内容は、Pro/Eの売りであったはずの「アソシエティビティ」機能と「リレーション」機能を、ごく限られた場合を除いて使わないようにする、というものだった。開発は半年遅れとなったが、それでようやく仕事が回りだした。

 

Free Cadは幸いにしてこのような双方向連携機能は持っていないか、持っていたとしても勝手に関連がつくことはない。