Jump to content

Kosuke IKEDA

Members
  • Content count

    131
  • Joined

  • Last visited

Everything posted by Kosuke IKEDA

  1. モータの入力条件は、角度、角速度、角加速度、トルクの4パターンで指示可能です。 結果として、角度、角速度、角加速度および入力トルク/反トルク履歴が得られます。 添付動画/モデルは角度入力の反トルク出力になります。 inspire_motoin_tutorial02_motor.mp4 pipe_motor.stmod
  2. 概念設計ツールAltair Inspireのモーション機能を用いれば、CAD形状をベースにリンク機構などの機構解析が簡単に行えます。 今回はチュートリアル2をやってみました。 ユニバーサルジョイントを含むモデルを例に、ジョイント、モータの設定方法、結果のプロット方法を学習できます。 概念設計ツールAltair Inspire : http://solidthinking.jp/product/inspire/ inspire_motoin_tutorial02-1.mp4
  3. 回転ジョイントに角度制限を付ける場合のモデル化方法を紹介します。 簡単な方法はImpact関数を用いて、ある角度以上になると、大きな力で押し返すというものです。 システムファイルを作成しましたので、みなさまのモデルにも簡単に取り付けて使用することができます。 是非、お試しください。 システムファイルの作り方、使い方は下記トピックも参照ください。 sys_rev_stopper.mdl revolute_stopper.mdl ms_revolute_stopper.mp4
  4. 先のサンプルモデルでは、角度正方向、負方向それぞれの角度制限を2つのImpact関数でモデル化していましたが、 Bistop関数を用いれば、一つの関数で上限、下限値を定義できます。 Bistop関数に修正したものを添付しますので、こちらをご利用ください。 revolute_stopper2.zip
  5. Altair ActivateはC++、OML(Altair Compose / Matlab)、Modelica言語のほか、バージョン2019からはSpice言語のブロックを提供しています。 今回は、C++、OML、Modelica言語の3つの使い方を紹介します。 題材は1Dモデリング&システムシミュレーション入門で作成したDCモータとします。 先の例題では、DCモータをシグナルブロック、Modelicaブロック、Modelicaブロック+MotionSolveの3通りでモデル化しましたが、 今回は、さらにカスタムブロックの言語3通りでモデル化したいと思います。 まずは、Altair ComposeやMatlabで採用されているOMLでモデル化します。 高次の微分はすべて一階微分に変換し、微分項をすべて左辺に整理します。 微分項の数=状態変数の数となり、この状態変数を数値積分することで、解を得ます。 1DシミュレーションツールAltair Activate : http://solidthinking.jp/product/activate/ activate_custom1.mp4 customblock.zip
  6. 最後に、Modelica言語を用いたカスタムブロックの作成方法を紹介します。 Modelica言語の特徴は、A=Bが代入式ではなく、等式として扱われる点です。 したがって、A=Bと書いても、B=Aと書いても、同じ結果が得られます。 OMLやC++のように微分項を左辺に整理する必要はありません。 みなさまが立てた微分方程式をそのまま記述するだけで、解が得られます。状態変数も気にする必要はありません。 ただし、高次微分の演算式はありませんので、一階微分にだけは変換してください。 activate_custom3.mp4
  7. つづいて、C++になります。 OMLとほとんど同じなので、作業は割愛しています。添付のモデルをご確認ください。 activate_custom2.mp4
  8. 機械を稼動させた場合に、各部品にどのような応力が生じているか確認したいケースがあると思います。Altair Inspireを用いれば、機構解析による荷重予測 -> 部品の応力解析が簡単に行えます。 今回はチュートリアル1のリンク機構モデルを例に、機構解析 -> 部品の応力評価を行いました。 デフォルト設定では、ジョイント荷重のピーク値を検出しますので、危険箇所を見逃しません。 また、機構解析から構造解析へのピーク荷重の受け渡しも自動で行いますので、作業も簡単です。 是非、みなさまのモデルでもお試しください。 概念設計ツールAltair Inspire : http://solidthinking.jp/product/inspire/ inspire_motoin_stress.mp4
  9. Altair Composeの特徴の一つとして、HyperWorks他、LS-DYNAやAbaqus等のCAE結果のバイナリファイルを直接読み込める機能があります。 これまにで、Composeデータ処理サンプル集にて、この機能を用いて、CAE結果をExcelに出力するサンプルを紹介しました。 今回は、各ソルバー用に若干スクリプトを修正したので、その整理を行い、同一スクリプトで対応できるようにしました。また、ダイアログウィンドウを適用し、使い勝手を改善しました。 様々なソルバーを使われる方は、ポスト処理を統一し、効率化を図れますので、お試しください。 Composeデータ処理サンプル集 : https://altairhyperworks.jp/product/solidThinking-Compose/dataprocess-sample 科学技術計算ソフトウェアAltair Compose : http://solidthinking.jp/product/compose/ compose_cae_excel_dlg.mp4 script.zip
  10. LS-DYNA、Abaqus、HyperWorks H3D、ABFのサンプルファイルです。 sample_data.zip
  11. サンプル集のFFT処理を例に処理するファイルをダイアログボックスで選択する方法を紹介しました。 今回は、さらにダイアログボックスで値を入力する方法を紹介します。 inputdlgコマンドを使用すれば、ポップアップしたダイアログにて値、文字列を入力することができます。 これを用いて、FFTに使用する区間を変更できるように修正しました。 使い勝手が大きく改善されますので、是非習得して、他のファイルにも適用してください。 科学技術計算ソフトウェアAltair Compose : http://solidthinking.jp/product/compose/ サンプル事例02FFT : https://altairhyperworks.jp/product/solidThinking-Compose/sample02 ui_input_value.zip compose_inputdlg.mp4
  12. ダイアログボックスで複数の数値を入力できるよう修正しました。 今回は二つですが、いくつでも増やせますので、是非みなさまのスクリプトに合わせて、使ってみてください。 ui_input_value2.zip compose_inputdlg2.mp4
  13. 別Topicで紹介しました「システムシミュレーションを用いたパーソナル e-モビリティの電気モータの最適化」にて、 モータ質量や制御パラメータを変えると、応答性や消費電力が変わることを確認しました。 今回は、それらをHyperStudyで自動化したいと思います。 制御パラメータとモータ質量を設計変数として、DOEを行い、応答性、消費電力を確認します。 複数のファイルから設計変数を抽出したり、スクリプトで複数計算実行したりなど、いろいろ便利なテクニックが入ってますので、ご視聴ください。 1DシミュレーションツールAltair Activate : http://solidthinking.jp/product/activate/ マルチボディソルバAltair MotionSolve : https://www.altairhyperworks.jp/product/motionsolve 最適化ツールAltair HyperStudy : https://altairhyperworks.jp/product/hyperstudy activate_ms_hst.zip activate_ms_hst1.mp4
  14. モデリング位置と釣合い位置が異なる場合は、初期の釣合い計算を行うことで、計算初期のノイズを減らし、精度のよい動解析が行えます。 ただし、複雑なモデルだと初期の釣合い計算が収束しなかったり、釣合い位置がユーザが意図したものではないことがあります。それは、釣合い位置が無数にあるために発生します。 それを回避するためには、初期の釣合い計算時に正しく拘束条件を追加することが必要です。拘束条件により、釣合い位置を一つに限定することで、収束性が改善され、ユーザが意図した釣合い状態が得られます。 今回は簡単な台車モデルに対して、車両のXY面内位置、ヨー姿勢、ホイールの回転を拘束した状態で、釣合い計算を行い、先の拘束を外して、動解析を行うサンプルを用意しました。ご確認ください。 下記と同じスクリプトシミュレーション手法を用いています。 マルチボディソルバAltair MotionSolve : https://www.altairhyperworks.jp/product/motionsolve マルチボディモデリングAltair MotionView : https://altairhyperworks.jp/product/motionsolve/motionview ms_static1.mp4 static_simple_car.zip
  15. 続きです。動解析にて釣合い計算用に追加した拘束を外すセッティングを行います。 ms_static2.mp4
  16. MotionSolveの弾性体には、荷重による剛性変化(幾何剛性)を考慮することができます。 方法は二つ提供されています。 1. 初期荷重による剛性変化を考慮する  OptiStructのSTATSUBを用いることで、静解析の後、固有値解析を行って、MotionSolve用の弾性体を生成します。  ボルト締結をモデル化する場合などに利用できます 2. 解析中の荷重変化による剛性変化を考慮する  MotionSolveのGeoStiff機能を用いて、MotionSolve用の弾性体を生成します。  MotionSolveの解析中に取り付け点に作用する荷重の大小によって、弾性体の剛性、固有振動数が変化します  遠心力により剛性が増加するロータのブレードなどに利用できます 簡単な板モデルでサンプルモデルを作成しました。動画の中で、設定方法、効果の違いなどを確認してますので、ご視聴ください。 CMS_GEOSTIFF_PRELOAD.zip マルチボディソルバAltair MotionSolve : https://www.altairhyperworks.jp/product/motionsolve 構造解析・構造最適化Altair OptiStruct : https://altairhyperworks.jp/product/optistruct ms_cms_geostiff1.mp4
  17. Kosuke IKEDA

    荷重による剛性変化を考慮する

    幾何剛性については下記記事もご参照ください。今回の手法1と同様STATSUBを使用しています。
  18. Kosuke IKEDA

    荷重による剛性変化を考慮する

    続きです。MotionSolveのGeoStiffの機能を確認します。 HyperStudyのDOEで引張り力、一次モードの振動数の関係を調べました。 最適化ツールAltair HyperStudy : https://altairhyperworks.jp/product/hyperstudy ms_cms_geostiff2.mp4
  19. ある規則に則って配置されたたくさんのポイントやボディを簡単に定義する方法を紹介します。 MotionViewのモデルファイル.mdlファイルはasciiファイルでテキストエディタで編集することができます。 これにtemplexの言語を利用すれば、for loopでたくさんのポイントやボディを作成することができます。 ここで紹介したポイント、ボディのほか、ジョイントやグラフィックすべてのエンティティに適用できますので、お試しください。 templex.zip mv_templex1.mp4
  20. 引き続きSystemを利用した方法を紹介します。 先の方法では、templexでメインのモデルファイルを書き出していましたので、エンティティの数を変えるため、templexでモデルを再作成すると、GUI上で追加設定したものはすべて無効になってしまいます。 templexでsystemのモデルファイルを作成することで、メインのモデルにインポートできますので、GUI上での追加設定をメインモデル上で行えば、templexでのモデル再作成時も、systemファイルを差し替えるだけですので、他の設定を保持できます。 templex2.zip mv_templex2.mp4
  21. 解析の途中にジョイントを無効にし、引き続き解析を続ける方法を紹介します。 たとえば、動画の最初に示しますように、ボールを放り投げるような解析が行えます。 MotionViewのtemplateエンティティを使い、MotionSolveの入力ファイルであるxmlファイルに直接コマンドを追加します。 他、Sensorエンティティの使い方も紹介します。 本機能を使うことで、様々なシミュレーションが行えますので、是非ご活用ください。 マルチボディソルバAltair MotionSolve : https://www.altairhyperworks.jp/product/motionsolve マルチボディモデリングAltair MotionView : https://altairhyperworks.jp/product/motionsolve/motionview ms_script1.mp4 scipt_simulation.zip
  22. 続きです。 Sensorエンティティを用いて、振り子が真下に来たときに、ジョイントを切り離します。 ms_script2.mp4
  23. ついでに、dlmwriteを用いて出力ファイルのフォーマットを整えました。 また、下記を応用し、ラベル行も追加してみました。 compose_uigetfile2.mp4
  24. サンプル集のFFT処理を例に処理するファイルをダイアログボックスで選択する方法を紹介します。 uigetfileコマンドを使用すれば、ダイアログボックスで選択したファイルのファイル名およびディレクトリ名を取得できます。 使い勝手が大きく改善されますので、是非習得して、他のファイルにも適用してください。 科学技術計算ソフトウェアAltair Compose : http://solidthinking.jp/product/compose/ サンプル事例02FFT : https://altairhyperworks.jp/product/solidThinking-Compose/sample02 ui_input.zip compose_uigetfile1.mp4
×