OS-T:5070 トルクコントロールアームの疲労最適化

本演習では、トルクコントロールアームのフリー形状疲労最適化を実行します。最適化の目的は、モデルの形状を変化させることによって、コントロールアームの疲労寿命を延ばすことです。

トルクコントロールアームには、ブレーキ力と鉛直力がかかっています。2つの荷重の時刻歴は1 Hzで279秒間得られています。コントロールアームに用いられる材料はスチールで、そのS-N曲線。

5070_model
図 1. 疲労最適化に用いるコントロールアームモデル

5070_fig1a
図 2. 鉛直力の荷重時刻歴

5070_fig1b
図 3. ブレーキ力の荷重時刻歴

5070_fig3
図 4. スチールのS-N曲線

HyperMeshの起動とOptiStructユーザープロファイルの設定

  1. HyperMeshを起動します。
    User Profilesダイアログが現れます。
  2. OptiStructを選択し、OKをクリックします。
    これで、ユーザープロファイルが読み込まれます。ユーザープロファイルには、適切なテンプレート、マクロメニュー、インポートリーダーが含まれており、OptiStructモデルの生成に関連したもののみにHyperMeshの機能を絞っています。

モデルのセットアップ

Process Managerの起動とモデルの読み込み

  1. Process Managerを起動します。
    1. メニューバーTools > Fatigue Process > Create Newをクリックします。
      Create New Sessionダイアログが開きます。
    2. New Session Name欄に、セッション名を入力します。
    3. Working Folder欄で、自身の作業ディレクトリにナビゲートします。
    4. Createをクリックします。

    現在ロードされている疲労プロセステンプレートの内容を保存するための新しいファイルが生成されます。

    Process Managerが開きます。

  2. モデルを読み込みます。
    1. パネル領域で、Model File typeをOptiStructに設定します。
    2. Model file path欄でfiles_panelをクリックし、optistruct.zipファイルから自身の作業ディレクトリに保存したtarm_fatigue.femファイルを開きます。
    3. Importをクリックします。

    5070_import_model
    図 5.
    コントロールアームモデルが読み込まれます。このモデルには2つの静的サブケースの完全な定義、要素セット、材料と静的プロパティなどが含まれています。
  3. Applyをクリックします。

疲労サブケースの生成

タスクFatigue SubcaseがProcess Managerで選択されていなければなりません。
  1. パネル領域で、Create new fatigue subcase欄にfatsubと入力します。
  2. Createをクリックします。
  3. Select existing fatigue subcase欄に新たに生成された疲労サブケースfatsubを選択します。
    fatsubがアクティブな疲労サブケースとして選択されました。続くプロセス(解析パラメータ、疲労評価の要素とプロパティ、載荷順序など)はこのサブケースで行われます。

    newsubcase
    図 6.
  4. Applyをクリックします。
    現在の定義が保存されます。

疲労解析パラメータの適用

タスクAnalysis ParametersがProcess Managerで選択されていなければなりません。
  1. Analysis typeをS-Nに設定します。
  2. Stress combination methodをAbs. Max. Principalに設定します。
  3. Mean stress correctionをGOODMANに設定します。
  4. FEA stress unitをMPAに設定します。
  5. Rainflow typeをLOADに設定します。
  6. Gate欄に0.0と入力します。
  7. Certainty of survival欄に0.5と入力します。
  8. Applyをクリックします。
現在の定義が保存されます。

analysis_params
図 7.

疲労要素と材料の付与

タスクElements and MaterialsがProcess Managerで選択されていなければなりません。
  1. パネル領域で、Addをクリックします。
    Material Dataダイアログが開きます。
  2. Element entity typeを Property-PSHELLに設定します。
  3. Element entity nameにshellsを選択します。
  4. Ultimate tensile strength (UTS)欄に、1800と入力します。
  5. Input methodをEstimate From UTSに設定します。
  6. input_methodをクリックしてSN曲線定義を確認し、続いてCloseをクリックします。
    SN Method descriptionダイアログがSN材料パラメータの生成方法を紹介します。
  7. Material typeをSteelにセットし、Estimateをクリックします。
    SN 曲線定義の全てのデータが自動的に推定されます。
  8. Plot SN CurveをクリックしてSN曲線を確認し、Closeをクリックします。
  9. Layer of stress results in shell elementsをTOP and BOTTOMに設定します。
  10. Surface finishをNo Finishに設定します。
  11. Surface treatmentをNo Treatmentに設定します。
  12. Fatigue strength reduction factorの欄は空白のままにしておきます。
  13. Saveをクリックし、選択された要素へのSNデータ定義を保存します。
  14. Applyをクリックします。
現在の定義が保存されます。

5070elemsandmaterials
図 8.

荷重時刻歴の適用

タスクLoading InformationがProcess Managerで選択されていなければなりません。
  1. Process Managerで、Loading Informationの下のLoad-Time Historyを選択します。
  2. 荷重-時間履歴hist_yを作成します。
    1. パネル領域で、Add by Fileをクリックします。
      Load Time Historyダイアログが開きます。

      5070_time_history
      図 9.
    2. Load-time history name欄にhist_yと入力します。
    3. Load-time historyタイプをCSVに設定します。
    4. Select load-time history file欄でfiles_panelをクリックし、tarm_loadY.csvファイルを開きます。
    5. Importをクリックします。
    6. Plot L-Tをクリックし、荷重-時間履歴を表示させます。
    7. Saveをクリックし、新しい荷重-時間履歴をHyperMeshデータベースに書き込みます。
    8. Load Time Historyダイアログを閉じます。
  3. もう1つの荷重-時間履歴hist_xを tarm_loadX.csvを読み込んで生成します。
  4. Applyをクリックします。
現在の定義が保存されます。

荷重順序の定義

タスクLoading SequenceがProcess Managerで選択されていなければなりません。
このステップでは、2つの荷重時刻歴の1つのイベントが生成されます。言い換えれば、2つの荷重時刻歴で生じる応力の線形の重ね合わせが、解析の間に要求されたことになります。このイベントを用いて、1つの荷重順序が構成されます。
  1. 荷重定義を追加します。
    1. パネル領域で、Addをクリックします。
      Loading Definitionダイアログが開きます。

      5070_loading_def
      図 10.
    2. Select static loadcaseをloadxに設定します。
    3. Select load-time historyをhist_xに設定します。
    4. Scale欄に1.0と入力します。
    5. Create newを選択し、Event1と入力します。
    6. Saveをクリックします。
  2. もう1つの荷重定義を追加します。
    1. Addをクリックします。
      Loading Definitionダイアログが開きます。
    2. Select static loadcaseをloadyに設定します。
    3. Select load-time historyをhist_yに設定します。
    4. Scale欄に1.0と入力します。
    5. Existingを選択し、Event1をクリックします。
    6. Saveをクリックします。
  3. Applyをクリックします。
疲労問題のセットアップが完了しました。

5070_loading_def_2
図 11.

最適化のセットアップ

フリー形状設計変数の作成

  1. Analysisページからパネルoptimizationをクリックします。
  2. free shapeパネルをクリックします。
  3. 設計変数upperを作成します。
    1. createサブパネルを選択します。
    2. desvar=欄にupperと入力します。
    3. nodes > by setsをクリックします。
    4. node set upperを選択し、selectをクリックします。
    5. createをクリックします。
  4. 設計変数upperのパラメータを更新します。
    1. parametersサブパネルを選択します。
    2. optionsを選択します。
    3. nsmooth=欄に10と入力します。
    4. mvfactor=欄に0.25と入力します。
    5. updateをクリックします。
  5. 34を繰り返して、lowerという名称の新しい設計変数を節点セットnode set lowerで作成します。
  6. return をクリックしてパネルを終了します。

最適化の応答の作成

  1. Analysisページからoptimizationをクリックします。
  2. Responsesをクリックします。
  3. 設計空間の体積率を定義する体積の応答を作成します。
    1. responses=欄に、volumeと入力します。
    2. response typeの下で、volumeを選択します。
    3. regional selectionをtotalno regionidに設定します。
    4. createをクリックします。
  4. 疲労応答を作成します。
    1. response=欄にlifeと入力します。
    2. response typeをfatigueに設定します。
    3. プロパティセレクターを使って、shellsを選択します。
    4. no regionidに切り替えます。
    5. no regionidの下で、lifeを選択します。
    6. createをクリックします。
  5. returnをクリックし、Optimization panelに戻ります。

設計制約条件の作成

  1. dconstraintsパネルをクリックします。
  2. constraints=欄にcon_lifeと入力します。
  3. response =をクリックしlifeを選択します。
  4. lower boundの横のボックスにチェックマークを入れ、2.0E4と入力します。
  5. 荷重ステップセレクターを使って、fatsubを選択します。
  6. createをクリックします。
  7. returnをクリックし、Optimization panelに戻ります。

目的関数の定義

  1. objectiveパネルをクリックします。
  2. minが選択されていることを確認します。
  3. responseをクリックし、Volumeを選択します。
  4. createをクリックします。
  5. returnを2回クリックし、Optimization panelを終了します。

SHAPEカードの定義

デフォルトでは、変位と応力の結果のみが_s#.h3dファイルに得られます。HyperViewで、モデルに加えられた形状変化に重ねた結果(変位 / 応力 / 温度)を得るには、SHAPEカードを定義する必要があります。
  1. Analysisページからパネルcontrol cardsをクリックします。
  2. Card Imageダイアログで、SHAPEをクリックします。
  3. FORMATをH3Dに設定します。
  4. TYPEをALLに設定します。
  5. OPTIONをALLに設定します。
  6. returnを2回クリックし、メインメニューに戻ります。

最適化の実行

タスクSubmit AnalysisがProcess Managerで選択されていなければなりません。
  1. パネル領域で、.femファイルをフィールドfiles_panelとして保存します。
  2. Select Fileダイアログでファイルを保存するディレクトリを選択し、ファイルをtarm_fatigue_opti.femとして保存します。
  3. run optionsのトグルをoptimizationにセットします。
  4. Submitをクリックします。

    5070_submit
    図 12.

OptiStructが疲労最適化を実行します。

ジョブが成功した場合、OptiStructモデルファイルが書かれたディレクトリに新しい結果ファイルがあるはずです。そのディレクトリに書かれるデフォルトのファイルは:
tarm_fatigue_opti.0.4.fat
反復ステップでのそれぞれの疲労サブケースの疲労解析結果を含むASCIIフォーマットファイル。
tarm_fatigue_opti_s4.h3d
静解析の結果とフリー形状疲労最適化の結果の両方のHyper 3Dバイナリ結果ファイル。
tarm_fatigue_opti.out
ファイルのセットアップ、疲労問題のセットアップ、計算時間の情報などを含むOptiStruct出力ファイル。ワーニングやエラーもこのファイルで確認します。
tarm_fatigue_opti.stat
解析のプロセスの間のそれぞれのステップでのCPU情報を提供する、解析/最適化プロセスの要約。

結果の表示

タスクPost ProcessingがProcess Managerで選択されていなければなりません。疲労最適化が正常に終了すると、このタスクに自動的に移動します。
  1. パネル領域で、Load H3D Results(HV)をクリックします。

    os_5070_loadH3D
    図 13.
    HyperViewが起動し、形状結果に重ねてtarm_fatigue_opti_s4.h3d結果ファイルが読み込まれます。
  2. Resultsブラウザから、最終反復計算(Iteration 11)を選択します。
  3. AnimationツールバーでanimationPause-24をクリックし、アニメーションを停止します。
  4. Animation modeをanimationTransient-24 (Transient)に設定します。
    形状結果に重ねて寿命コンターが表示されます。
  5. ResultsツールバーでresultsContour-16をクリックし、Contour panelを開きます。
  6. LegendタブでEdit Legendをクリックし、図 14および図 15と同じになるようレジェンドを編集します。
  7. Exitをクリックし、Fatigue Process Managerをアンロードします。

os_5070_contour
図 14. 反復計算0の寿命コンター. volume = 4.674E+02、minimum Life = 2.053E+04.

os_5070_contour2
図 15. 反復計算11の寿命コンター. volume = 3.78213E+02、minimum Life = 2.053E+04.