NTT DATA — Trusted Global Innovator

株式会社NTTデータエンジニアリングシステムズ

No.46 システム紹介

PLM技術レポート(第4回)
「Space-E V5、CATIA V5を使用した、
カスタマイズ事例(マクロによる自動化)」

システムソリューション統括部 開発技術部
PLM開発グループ
グループマネージャ 田中 信治 / 関戸 基之

はじめに

まず最初に、CATIAのカスタマイズ手法についてご説明します。このカスタマイズには、以下の3つの手法があり、各々特徴があります。

① ナレッジ・ウエアを使用した開発

  • 3Dモデルに標準設計やルールを設定して、モデルの配布、再利用をすることで、標準化や効率化の向上、また技術の伝承を行うことができます。
  • 開発作業を容易に始めることができます。
  • ナレッジ機能の一部は、作成や使用するときに別のワークベンチが必要になります。
  • ※ 例:UDF(幾何形状をカプセル化し、それを再利用して目的の形状を容易に作成する。)
    UDFの作成には、PKTワークベンチが必要で、UDFを使用するには、KT1ワークベンチが必要になります。

② Automationを使用したスクリプト開発

  • 簡易言語でCATIAをコントロールします。
  • 開発作業を容易に始めることができます。
  • 開発環境は、標準で用意されています。

③ CAAを使用したプログラム開発

  • C++を使用したCATIA V5のコマンドと同レベルのコマンドを開発できます。
  • 開発作業を始めるための環境構築に手間と、別途費用が必要になります。

今回ご紹介するマクロは、上記のカスタマイズ手法の②に該当します。それでは、マクロを利用した簡単な自動設計や工程の自動作成をご紹介します。

マクロで使用する各言語の特徴

CATIAには、マクロの開発用としてCATScript*1、VBScript*2、VBA*3の3種類のスクリプト言語があります。このスクリプト言語により、CATIAのAPIを使用して高度な自動化を実現できます。それでは、各言語の特徴を説明します。

① CATScript

  • 言語の知識がなくても、CATIAのコマンドを使用することでマクロの作成や実行ができます。より高度な機能を開発するときには、言語の知識が必要になります。
  • 本格的なGUI(グラフィカルユーザインターフェース)は作成できませんが、基本的なメッセージBOXなどは作成できます。

② VBScript

上記の①と同様です。

③ VBA (Visual Basic for Applications)

  • IntelliSense機能により、効率よくプログラムが作成でき、編集も容易です。例えば、プログラム作成中に、「bodies1.c」と入力すれば、その後に続くキーワードの候補が表示されるので、該当する候補を選択します。
  • デバッガにより、いち早く正常動作するプログラムを作成できます。デバッガとは、不具合の発見や修正作業を支援するツールです。
  • ツールボックスを利用して、容易にGUIを作成できます。(図1)
図1 GUI の作成例
図1 GUI の作成例
  • *1 CATScript:CATIA固有のスクリプト言語。
  • *2 VBScript:マイクロソフト社のスクリプト言語。
  • *3 VBA:Visual Basic for Applicationsの略。マイクロソフト社のMicrosoft Office製品に含まれるプログラミング言語で、Excel、 Wordなどのカスタマイズができる。

マクロの操作手順

この手順では、直方体(110×90×20)を自動作成するためマクロの作成から編集、実行までを説明します。

① マクロの作成

「記録を開始」コマンドを選択します。次に「使用言語」を選択後、「マクロ名」を入力して、「開始」を指示します。

② 形状の作成

110×90×20の直方体を作成します。
作成が終われば、画面内に表示されている「マクロ記録を終了」アイコンを指示します。

③ マクロの実行

新規作成の画面を表示します。
次に「マクロ」コマンドを選択後、上記①で作成したマクロを選択し、「実行」を指示します。
その結果、②で作成した直方体が自動作成されます。

④ ソースの修正

「マクロ」コマンドを選択します。
①で作成したマクロを選択後、「編集」を指示します。その結果、上記②で作成したマクロのソースファイル(プログラム)が表示されます。ここでは、110×90×20の寸法値を探して、220×60×10など違う値に変更します。
※ソースファイルの各行は、オンラインヘルプで説明しています。

⑤ 実行(検証)

ソースファイルを閉じて、「実行」を指定します。
その結果、④で修正した値で直方体(220×60×10)が作成されたことを確認できます。

このように、CATIAのマクロは容易に作成できます。

マクロの適用事例

業務効率を向上させるマクロの事例をご紹介します。

・点座標のCSV出力

指示した点要素の座標をCSVファイルに出力するマクロです。

  • 事前に点要素を指示します。(図2)
  • マクロを実行します。
  • 座標値がCSVファイルへ出力されます。(図3)
図2 点要素を指示
図2 点要素を指示
図3 CSVファイルの表示
図3 CSVファイルの表示

・加工工程の自動作成

対象モデルを呼び出して、マクロを実行すると加工工程を自動作成できます。(図4)

図4 加工工程の自動作成
図4 加工工程の自動作成
(上図をクリックすると拡大図が表示されます)

おわりに

ここでご紹介したマクロは、簡単な自動設計や工程の自動作成です。より高度な機能を実現するには、プログラム言語の知識が若干必要になりますが、これに取り組むことにより、設計や加工の各業務において、効率化、自動化の範囲が広がります。ものづくりを支援するCATIAを使いこなすために、マクロに取り組まれてはいかがでしょうか。

今回は、CATIAのカスタマイズ手法のひとつであるマクロをご紹介しました。次回は、より多くの事例をご紹介する予定です。また、カスタマイズや運用の品質を高めるには、より上流工程である要件定義が重要です。今後は、その要件定義の方法もご紹介します。

― この記事に関連するソリューション ―