制御プログラム作成プロセスの自動化のタスクを解決するためのCAMシステムの人工知能

habrをよく研究して、ニューラルネットワーク上に構築された多くの興味深いソリューションに出会いました。

また、CADトピックに関するまれなトピック、つまりCAD / CAMシステムを見つけました。これは、「開発や考えについてここに書いてみませんか?」 結局のところ、かなりの数の専門家、プログラマー、そして賢明な人々がいます。 私の地元レベルの科学および専門家のサークルでは、このトピックの微妙な点について議論することはほとんど不可能です。 少なくとも、私とのコミュニケーションを目的としたそのようなソフトウェアの開発者の検索は失敗し、彼らはまだ止まりません。



画像



ここ数年、人工知能システム(AI)を研究しており、主な作業活動はCAD / CAMシステムおよびCNC機器(数値制御)と密接に結びついています。



そして、かつて驚きに追いついたと思った? なぜ他のものと結合しないのですか? つまり AIをCADに統合してみませんか? この地域のブルジョアジーの業績に関する情報を少しずつ収集するのに約1年かかりました。 そして、それは非常に面白い写真であることが判明しました-彼らはAIを使用していますが、タスクと目標は非常に限られています。 ほとんどの場合、オブジェクト(たとえば、部品のソリッドステートモデルの典型的な要素)の分類と認識のタスクは解決されます。 しかし、制御プログラムが書かれているソフトウェア分野はどうでしょうか? 結局のところ、このプロセスは多くの手作りで飽和しています。



これが、CAD / CAMシステムの主要な代表者の綿密な研究が、書き込みプログラムの最大限の簡素化と自動化をテーマに始まった場所です。 今日まで補充された、さまざまなパッケージの経験があります。 また、展示会、会議、さらには直接外国企業の領土でも多くの有益なコミュニケーションがありました。 これはすべて何につながりましたか? そして、これが一つのことにつながりました-私はアルゴリズムの開発を始めることにしました。 私のソフトウェア開発のレベルが、プログラマーの優秀なスタッフを抱える真面目な会社のコードレベルに達することは決してないことは明らかですが、理論的な研究から始めることを誰も気にしませんでした。 そして、頭を使って考えることはとても便利です!



そのアルゴリズムのアイデアは、単純な思考から-ゆっくりと具体的で非常に具体的な現実に成長し始めました。 それは小さなものから始まりました-典型的な要素の機械加工の記述を自動化する問題の解決策で。 簡単なリファレンス:典型的な要素は、モデルの穴、ポケット、溝、および詳細そのものです(図を参照)



画像



将来のアルゴリズムの単純な名前が発明されました:“ i-feature ”。 これはスタートアップでも商用プロジェクトでもないことをすぐに言います。 それは単に魂と科学的関心の問題です。 これが私のプロジェクトのロゴです。



画像



次に、アルゴリズムの最初のテストが実行されました(ただし、これまでのところ理論的のみです)。 しかし、それについては後で。 私の開発の本質は何ですか? 基本的な穴あけによって得られる従来の穴を加工する例を示します。



画像



穴は、他の典型的な要素と同様に、独自のパラメーターを持っています。 実際には、ここにあります:



-L穴-穴の深さ;

-D resp-その直径。

-M det-処理された素材。



また、ツールもあります。ドリルには、次のパラメーターもあります。



-L ドリル -切断部分の長さ(つまり、どのくらい深くドリルできるか);

-D ドリル - ドリル径;

-M det-処理された素材。



すべてが論理的なようです。 ここで最適化できるものは何ですか? そして、ここから楽しみが始まります! 例を考えてみましょう。チタンから部品を機械加工しており、直径8 mmの穴を深さ45 mmに開ける必要があります。 そのような生活に出会った人は誰でも、掘削が困難であり、掘削深度を部分に分割する必要があることを知っています。 さらに、増分、または穴の短い距離を通過するドリルのステップの厳密な値を使用します。 ここから、すでに処理戦略に関連する別のパラメーターが発生します。



-N パス -必要な深さを達成するために必要な、ドリルでの「突く」回数。



「プッシュ」は、穴からの切りくずの除去とドリルの追加冷却の2つの目的で必要です。 ツールが壊れないだけでなく、摩耗も早くないことを保証するのに十分です。



加工条件の説明をまとめると、2つの重要なパラメーター(切断速度と送り速度)を使用することが絶対に正しいでしょう。



だから! 合計で、基本的な穴の加工を記述することができる9つのパラメーターがあります。 そして、それらをどうするか? 将来的に自動化する方法は?



ここで、開発されたi-featureアルゴリズムが動作します。 彼の作業スキームは図に示されています。



画像



すべてが非常に簡単です。線形構造で使用されるパラメーターとして-穴の直径とその深さは、ドリルの直径とその切断部分の長さと相関します。 また、知的構造のパラメーターとして、ドリルの素材、詳細、穴の深さが、処理モードとパス数とともに使用されます。



必要な切削工具を自動的に作成する(または使用可能なライブラリから適切に選択する)ために、CAMで線形パラメーターが問題なく使用されます。 考えるべき新しいものは何もありません。



しかし、知的構造とそのパラメーターはどうでしょうか? パーツには多くの類似した(まったく似ているが似ていない)穴​​があり、ドリルまたはパーツの材料の状態に基づいてすべてを処理する必要があると想像してください。 この場合、経験豊富なエンジニアは次のように言います:「我々はすべての最新のCADシステムに実装されているテンプレートを使用して救助します!」結局、テンプレートを使用すると、すべてが簡単です-すべてのパラメーターを事前に設定し、必要に応じてコピーします。 側から見ると、テンプレートは素晴らしいソリューションのように見えますが、一つだけあります!



穴の深さや処理中の材料が劇的に変化した場合はどうしますか? テンプレートを再作成しますか? または、準備されたテンプレートがない場合にすべてをペンで記述しますか?



ですから、手処理や類似パターンの雲を作成するための退屈な手動手順であり、そのようなプロセスを自動化するというアイデアの誕生を触媒しました。



そして、自分自身を制限しないために、それを完全に自動化するだけでなく、合理的でインテリジェントにすることも決定されました! システム自体がどのようにアイデアを持っていることができるようにするために、ユーザーがスリップした要素を詳細に処理することが必要です!



アイデアを開発する過程で、さまざまな方法、アルゴリズム、および既存のソリューションが頭の中で整理されましたが、選択は最終的にニューラルネットワークの使用に委ねられました。 具体的には、この問題を解決するために-エラーの逆伝播と教師のトレーニングのためのアルゴリズムを備えた多層パーセプトロンに。 結局、予測の明らかなタスクがあり、これはこのタイプのネットワークを使用する趣味です。



穴を処理するためのネットワークは次のとおりです。



画像



入力の数は3です。出力の数は3です。隠れ層の数は、式2n-1に基づいて選択されました。ここで、nは入力の数です。



ネットワークをトレーニングするために、さまざまな深さおよび切削モードでさまざまな材料を処理する例を提示するトレーニングサンプルを準備しました。 ネットワークが作成され、トレーニングされ、Matlab`e 7でモデル化され(優れたニューロソリューションを提供してくれたおかげで)、最小エラーと予測結果に関して優れた結果を示しました。



現在、理論的な形で、Unigraphics NX CADの「 i-feature 」を試験的に統合するためのアルゴリズムが開発されています。 そこで、この開発は、部品の典型的な要素を認識するための優れたモジュールと連携して機能します(FBMと呼ばれるようです)。



他のタイプの典型的な要素(溝やポケット)用のネットワークも構築されています。 線形および知的構造のすべてのパラメーターは、同様にそれらにペイントされます。



仕事は本格的です! (私の自由時間と気分に応じて)



そこに止まる欲求はありません。



この作業の主な目標は、近い将来、CAMシステムのテンプレートの概念を完全に置き換え、この種のシステムのユーザーの作業を完全に自動化し、作業を簡素化することです。



次の投稿では、既存のCAMへの統合プロセスについて説明し始めます。 この分野の新しい研究と同様に。



コメントやコメントをお待ちしております。



ご清聴ありがとうございました!



All Articles