齋藤芳明

モデルベース開発(Model-Based Development/Design: MB…

齋藤芳明

モデルベース開発(Model-Based Development/Design: MBD)、要求開発、バーチャルリアリティの技術や開発マネジメントについて個人的な研究や取り組みを書いていきます。

マガジン

  • Maple & MapleSim 個人的活動記録

    MapleとMapleSimを使ってみた個人的な記録を残していきます。 これからMapleやMapleSimを使う人の参考になれば幸いです。

最近の記事

  • 固定された記事

モデルベース開発に価値はあるのか?

無理なモデルベース開発の押し付けは「百害あって一利なし」「モデルベース開発って本当に良いものなの?」 「モデルベース開発を目指すべきなのかな?」 と聞かれることが結構あります。 また「あえてモデルベース開発をせずに、今までどおりに仕事していたらよいのでは?」という意見も聞くことがあります。 私の考えとしては、モデルベース開発は良いものだと思いますが、なんでもかんでもモデルベース開発を目指す必要はないとも思っています。合うものもあれば、合わないものもあるからです。「もの」と言っ

    • Mapleで制御工学の基礎虎の巻6「むだ時間のあるシステムのフィードバック制御」

      本記事では、むだ時間のあるシステムにフィードバック制御をしたときのシステムの挙動をナイキスト線図を使って見てみて、ナイキスト線図の結果とステップ応答との関係を見てみたいと思います。 本記事を見るにあたって、Mapleでのナイキスト線図の記事、ステップ応答の記事を事前に読むか理解していることを前提に話を進めます。 本記事で検討するシステムを図1に示します。 一次遅れのプラントモデルの出力をフィードバックして目標値との差分にゲインKをかけてプラントに入力します。ただし、ゲイン

      • Maple: Tips ちょっとプログラム「func:=proc(in1,in2)」の使い方

        Maple使っていて、数式処理を繰り返したいと思うことありますよね。 そういう場合に使えるのが今回紹介する「proc」によるユーザー関数です。 そんなに難しくないのですぐに誰でも使えるようになると思います。簡単なユーザー関数のフォーマットは以下のプログラム例に示します。 超簡単にまとめると、「関数を定義」して、「処理」して、「returrn」するだけです。「return」は数値だけでなく、「グラフ描け」とかも命令することができます。 # 関数の定義関数名 := proc(

        • Maple: Tips ブロック線図の結合「SystemConnect」の使い方

          システムの検討をする際に、プラントや制御器を個別に設計、要するに作って、それらを連結してシステム全体の振る舞いを見たいということがよくあります。今回はそんなとき、Mapleでどのようにシステムを連結するかを紹介します。 システムの定義 まず、Mapleでシステムやシステムの連結をするコマンドを使うための「DynamicsSystems」ライブラリを「with(DynamicSystems)」を使って読み込みます。 次に今回、連結するシステムを「TransferFunct

        • 固定された記事

        モデルベース開発に価値はあるのか?

        マガジン

        • Maple & MapleSim 個人的活動記録
          23本

        記事

          Mapleで制御工学の基礎虎の巻5「むだ時間の伝達関数をパデ近似」

          パデ近似をすると次式のむだ時間L[s]の伝達関数を有理伝達関数に近似することができます。有理伝達関数にすることで取り扱いが楽になったり、各種ツールでの計算を簡単にすることができるメリットがあります。 むだ時間の伝達関数を2次および3次のパデ近似したものは以下のようになります。次数はみなさんの目的に応じて適宜決めてくれたらよいと思いますが、私の経験では2次か3次で十分なことが多かったです。 Mapleでパデ近似してみよう Mapleでパデ近似のコマンドを使うためには「n

          Mapleで制御工学の基礎虎の巻5「むだ時間の伝達関数をパデ近似」

          Mapleで制御工学の基礎虎の巻4「周波数応答(ナイキスト線図)」

          前回の記事では周波数応答の1つであるボード線図について説明しました。今回は私がボード線図の次によく使うナイキスト線図について紹介します。他にもいろいろと周波数応答の線図はありますが、私はボード線図とナイキスト線図だけで十分に事足りています。みなさんは必要に応じて他の周波数応答も勉強してみてください。 ナイキスト線図とは? 「ボード線図だけじゃだめなの?」と思われる方もいるかと思いますが、ボード線図だけでも十分に周波数領域の特徴を見ることはできます。 「じゃぁなんでナイキ

          Mapleで制御工学の基礎虎の巻4「周波数応答(ナイキスト線図)」

          Mapleで制御工学の基礎虎の巻3「周波数応答(ボード線図)」

          前回は記事では、一定の入力に対する応答であるステップ応答と瞬間的な外乱入力に対する応答であるインパルス応答について見てみました。今回は時間的に変化のある入力に対する対象とするシステムの応答を見てみたいと思います。とは言っても、入力に対する定義を全くしないで自由に変化する入力に対する応答を見るというのでは際限がないので、一般的には周波数別のSin波形に対するシステムの応答で評価します。簡単に言うと、Sin(ωt)のωを小さいもの(低周波)から大きいもの(高周波)まで変えたとき

          Mapleで制御工学の基礎虎の巻3「周波数応答(ボード線図)」

          Mapleで制御工学の基礎虎の巻2「ステップ応答とインパルス応答」

          本記事では『Mapleで制御工学の基礎虎の巻1「ラプラス変換」』の記事で導いた図1のバネマスダンパ系の伝達関数のステップ応答やインパルス応答をMapleを使って見ていこうと思います。 なお、本記事で紹介するMapleの例は記事の最後にサンプルとして添付してあります。Mapleをお持ちの方はダウンロードして参考にしてみてください。 ステップ応答図1のシステムへの入力f(t)に図2のステップ状の入力を与えたときの出力、図1の場合x(t)の応答がステップ応答です。ステップ応答は

          Mapleで制御工学の基礎虎の巻2「ステップ応答とインパルス応答」

          Mapleで制御工学の基礎虎の巻1「ラプラス変換」

          大学時代の制御工学の授業を思い出しながら、(私の勝手な主観判断で)必要最低限の知識を「虎の巻」として書いていこうと思います。こんな記事を書こうと思ったのは、実は最近になって「ちゃんと制御を考えるように!」と、とある大先生から宿題をもらったからです。私自身、モノづくりをするときには制御をもっとしっかり論理的に検討しなければならないと思いつつも、期限の都合でほどほどで切り上げていた過去の自分に反省し、現実の開発現場と学問域の制御をどうしたらつなげられるかを考えていきたいと思いま

          Mapleで制御工学の基礎虎の巻1「ラプラス変換」

          パンフレットスペックからモデルを作ってみよう! 「作ったポンプ・モータシステムで新たな機能開発をしてみよう」

          前回作成したポンプ・モータシステム前回の記事では図1のポンプ・モータシステムをMapleSimでモデル化してみました(図2)。そして、Motor2の負荷を1.4倍にすると、当然ではありますが図3に示すように2つのモータの回転数に差が生じるようになります。今回はその差をなくすことを考えてみたいと思います。 回転数差の理由と対策を考えてみよう!Motor2の負荷が高くなると、当たり前って言えば当たり前かもしれませんが、Motor2側に油が行きにくくなります。その分、Motor

          パンフレットスペックからモデルを作ってみよう! 「作ったポンプ・モータシステムで新たな機能開発をしてみよう」

          パンフレットスペックからモデルを作ってみよう! 「作った油機モデルでポンプ・モータシステムを組んでみよう!」

          今回組むポンプ・モータシステム今回はこれまでに作ってきた不二越さん(株式会社不二越)のポンプモデル、モータモデル、そしてバルブモデルを使って、図1のような1ポンプ、2バルブ、2モータの油圧システムを作成してみたいと思います。なお、リリーフバルブはMapleSimの既存ブロックを用います。設定したリリーフ圧は油圧機器の最も弱いものに合わせて設定しました。 このようなモデリングを行うことで既製品の油圧機器を組み合わせて作った油圧システムがどのような挙動を示すのか、そしてどのよ

          パンフレットスペックからモデルを作ってみよう! 「作った油機モデルでポンプ・モータシステムを組んでみよう!」

          パンフレットスペックからモデルを作ってみよう! 「方向制御バルブ」

          今回モデル化にチャレンジする方向制御バルブ前回作成した不二越さんの油圧ポンプとモータに引き続き、今回は不二越さん(株式会社不二越)の方向制御バルブ(SS-G03-C7Y-GR-D2-J22)のモデリングにチャレンジしてみます。 パンフレットにはさまざまな情報が掲載されています。今回作成するモデルは図1のタイプの方向制御弁にします。このタイプは「C7Y」となり、最大流量を100[L/min]流したいので「G03」のDCソレノイドタイプを選ぶことになります。また、この仕様設定

          パンフレットスペックからモデルを作ってみよう! 「方向制御バルブ」

          パンフレットスペックからモデルを作ってみよう! 「油圧モータ」

          今回モデル化にチャレンジする油圧モータ前回作成した不二越さんの油圧ポンプに引き続き、今回は不二越さん(株式会社不二越)の油圧モータ(PHV-1B)のモデリングにチャレンジしてみます。今回、入手できたのはWEBページに掲載されている情報のみだったので、前回のポンプモデルより情報は少なめです。 今回のモデル化に使う情報は、モータの最大容量458.3[cc/rev]とHi-Loの変速ができることだけです。1速(Lo側)は最大容量だとして、2速(Hi側)変速時の容量はWEB情報か

          パンフレットスペックからモデルを作ってみよう! 「油圧モータ」

          MapleSimでLookup Table 2Dの使い方

          モデル化でよく使う補間計算のうち、今回は2次元補間について紹介します。一次元補間の使い方については、以前の記事「MapleSimでLookup Table 1Dの使い方」を参照してください。 一次元補間の説明ではcsvファイルを読み込む方法と直接MapleSimに設定する方法「inline」の2つの方法について記載しましたが、基本的な方法は一次元補間も二次元補間も同じなので、ここでは「inline」による方法を説明します。 まず図1のように「Lookup Table 2D

          MapleSimでLookup Table 2Dの使い方

          パンフレットスペックからモデルを作ってみよう! 「油圧ポンプ」

          今回、パンフレットスペックからモデル化してみようと思ったきっかけは、友人の安藤博士から「実際にある油圧機器をモデルにしてみない?」という提案があったからです。確かに、パンフレットの情報からどこまでモデル化できるのかは興味があるなと思いチャレンジしてみることにしました。 今回のモデル化の立ち位置モデル化をするときに一番大事なのはモデル化の立ち位置(目的)です。 この立ち位置があやふやですと、どんな粒度や精度のモデルを作ったらよいか定まりませんので、無駄に細かく作ろうとしたりす

          パンフレットスペックからモデルを作ってみよう! 「油圧ポンプ」

          MapleSimでマルチボディ入門#2

          今回はMapleSimのマルチボディブロックを使って図1のようなボールのバウンドシミュレーションをしてみましょう。 ブロックの配置 まず、図2のように5つのブロックを配置します。 ボディフレームの中なの「Fixed Frame」、機械要素の中の「Ball」 接触の中の要素にある「Sphere」と「Rectangle」、接触の中の要素にある「Sphere Rectangle Contact」を配置して図2のように結線します。 ブロックの設定 「Rectangle」の設定

          MapleSimでマルチボディ入門#2