ギア モデルの組み立て
以下の例では、ギアのボディの位置と向きを設定して、さまざまなギア拘束ブロックのアセンブリ要件を満たす方法を説明します。各例は、関連するギアの寸法と座標系の配置の概要から開始されます。これらの属性は、ギアを必ず噛み合うよう組み立てるために必要な、剛体変換を選択する際の指針となります。
モデルは同じブロック線図トポロジを共有し、ボディ、ジョイント、ギア拘束といったモデル コンポーネントが各ケースの運動学的ループに配置されます。次の図は、単純なループを示しています。各例において、枠のボディはワールド座標系に固定されていると見なされ、結果としてその慣性は考慮の必要がないほど小さくなるためボディは完全に無視されます。
モデルは、以下の 4 つのタイプの Simscape™ Multibody™ ブロックで構成されます。
File Solid — ギアのジオメトリ、慣性、および色を提供します。歯やねじ山を備えることで噛み合ったギアをより明確に示すギアのジオメトリは、STEP ファイルからインポートされます。ギア ジオメトリに対するギアの基準座標系の姿勢も同じファイルから取得されます。
Joint — 必要な自由度をギアのボディに提供します。Revolute Joint ブロックは、1 本の軸を中心とした回転を可能にします。Prismatic Joint ブロックは、1 本の軸に沿った並進を可能にします。Joint ブロックで指定した速度状態ターゲットによってギアが動かされます。
Rigid Transform — ジョイントとそれに接続されたギア ボディを、噛み合いに適切な配置となるよう回転させ、並進させます。Rigid Transform ブロックによって、ギアの配置を変更してギアのアセンブリ要件を満たす手段が提供されます。
Gear Constraint — ギア ボディの運動を組み合わせます。Gear Constraint ブロックはギア間の 1 自由度を排除し、ギアが噛み合っているかのように動かします。例では、さまざまなギア拘束ブロックを 1 つずつ紹介します。
かさ歯車
DocBevelGearStart
モデルは、かさ歯車のアセンブリの例です。このモデルを開くには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocBevelGearStart.slx')
Bevel Gear Constraint ブロックを基にしたこのモデルはあらゆる点で完全ですが、ただ 1 点、すべての剛体変換がゼロであるため両ギアの基準座標系が空間内で一致しています。
この短いチュートリアルでは、ギアの寸法とアセンブリの拘束からどのように容易に適切な変換が得られるかについて、また、Rigid Transform ブロックで適切な変換を指定すると、ギアのモデルがどのようにエラーなしで噛み合うように組み立てられるかについて説明します。
ギアのジオメトリ
かさ歯車 "A" および "B" はサイズが等しく、それぞれのピッチ半径は 2.8
cm
です。ギアの基準座標系は、原点をギアの中心に置き、"z" 軸をギアの回転軸に揃えてギア シャフトの反対側を向くように配置されます。この配置は、"z" 軸を中心とした回転のみを許可する Revolute Joint ブロックと整合性があります。
ギアのアセンブリ
ギアの回転軸は直角に交わります。かさ歯車 "A" の基準座標系は、ワールド座標系に対し、直交座標で [2.8, 0, 0]
cm
オフセットした位置にあります。かさ歯車 "B" の基準座標系は、ワールド座標系に対して [0, 0, 2.8]
cm
オフセットした位置にあり、またワールド座標系の "y" 軸と 90 deg
の角度をなしています。
モデルの完成
ギア アセンブリの概略図に示された剛体変換を指定して、かさ歯車のモデルを完成させます。次の概念アニメーションは、モデルの更新中に剛体変換が順次適用された場合に与えられる漸進的な効果を示しています。
まだ実行していない場合は、次を入力して未完成のかさ歯車モデルを開きます。
openExample('sm/DocGearModelExample','supportingFile','DocBevelGearStart.slx')
Rigid Transform A ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたかさ歯車 A の位置を、ギア アセンブリの概略図で示されているように設定します。
Rigid Transform B ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたかさ歯車 B の位置を、ギア アセンブリの概略図で示されているように設定します。
Rigid Transform B ブロックのダイアログ ボックスで、次の表に示す [Rotation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたかさ歯車 B の向きを、ギア アセンブリの概略図で示されているように設定します。
モデルをシミュレートします。Mechanics Explorer が開かれ、この例の初めに示した動的なギアの可視化が表示されます。かさ歯車の完全なモデルを確認するには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocBevelGear.slx')
Simscape Multibody によって、この例で説明した剛体変換をもつかさ歯車のモデルが開かれます。
外接平歯車
この DocCommonGearExternalStart
モデルは、外接平歯車のアセンブリの例です。このモデルを開くには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocCommonGearExternalStart.slx')
Common Gear Constraint ブロックを基にしたこのモデルはあらゆる点で完全ですが、ただ 1 点、すべての剛体変換がゼロであるため両ギアの基準座標系が空間内で一致しています。
この短いチュートリアルでは、ギアの寸法とアセンブリの拘束からどのように容易に適切な変換が得られるかについて、また、Rigid Transform ブロックで適切な変換を指定すると、ギアのモデルがどのようにエラーなしで噛み合うように組み立てられるかについて説明します。
ギアのジオメトリ
小さい平歯車 "A" のピッチ半径は 4
cm
です。大きい平歯車 "B" のピッチ半径は 8
cm
です。ギアの基準座標系は、原点をギアの中心に置き、"z" 軸をギアの回転軸に揃えてギア シャフトの反対側を向くように配置されます。この配置は、"z" 軸を中心とした回転のみを許可する Revolute Joint ブロックと整合性があります。
ギアのアセンブリ
平歯車の回転軸は互いに平行です。小さい平歯車の基準座標系は、ワールド座標系に対し、直交座標で [-4, 0, 0]
cm
オフセットした位置にあります。大きい平歯車の基準座標系は、これもワールド座標系に対し、[-8, 0, 0]
cm
オフセットした位置にあります。
モデルの完成
ギア アセンブリの概略図に示された剛体変換を指定して、外接平歯車のモデルを完成させます。次の概念アニメーションは、モデルの更新中に剛体変換が順次適用された場合に与えられる漸進的な効果を示しています。
まだ実行していない場合は、次を入力して未完成の外接平歯車のモデルを開きます。
openExample('sm/DocGearModelExample','supportingFile','DocCommonGearExternalStart.slx')
Rigid Transform A ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準とした小平歯車 A の位置を、ギア アセンブリの概略図で示されているように設定します。
Rigid Transform B ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準とした大平歯車 B の位置を、ギア アセンブリの概略図で示されているように設定します。
モデルをシミュレートします。Mechanics Explorer が開かれ、この例の初めに示した動的なギアの可視化が表示されます。外接平歯車の完全なモデルを確認するには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocCommonGearExternal.slx')
内接平歯車
この DocCommonGearInternalStart
モデルは、内接平歯車のアセンブリの例です。このモデルを開くには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocCommonGearInternalStart.slx')
Common Gear Constraint ブロックを基にしたこのモデルはあらゆる点で完全ですが、ただ 1 点、すべての剛体変換がゼロであるため両ギアの基準座標系が空間内で一致しています。
この短いチュートリアルでは、ギアの寸法とアセンブリの拘束からどのように容易に適切な変換が得られるかについて、また、Rigid Transform ブロックで適切な変換を指定すると、ギアのモデルがどのようにエラーなしで噛み合うように組み立てられるかについて説明します。
ギアのジオメトリ
平歯車 "A" のピッチ半径は 4
cm
です。輪歯車 "B" のピッチ半径は 8
cm
です。ギアの基準座標系は、原点をギアの中心に置き、"z" 軸をギアの回転軸に揃えてギア シャフトの反対側を向くように配置されます。この配置は、"z" 軸を中心とした回転のみを許可する Revolute Joint ブロックと整合性があります。
ギアのアセンブリ
ギアの回転軸は互いに平行です。平歯車の基準座標系は、ワールド座標系に対し、直交座標で [-4, 0, 0]
cm
オフセットした位置にあります。輪歯車の基準座標系は、原点と "z" 軸がワールド座標系と一致する位置にそのまま残されます。
モデルの完成
ギア アセンブリの概略図に示された剛体変換を指定して、内接平歯車のモデルを完成させます。次の概念アニメーションは、モデルの更新中に剛体変換が順次適用された場合に与えられる漸進的な効果を示しています。
まだ実行していない場合は、次を入力して未完成の内接平歯車モデルを開きます。
openExample('sm/DocGearModelExample','supportingFile','DocCommonGearInternalStart.slx')
Rigid Transform A ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準とした平歯車 A の位置を、ギア アセンブリの概略図で示されているように設定します。
モデルをシミュレートします。Mechanics Explorer が開かれ、この例の初めに示した動的なギアの可視化が表示されます。内接平歯車の完全なモデルを確認するには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocCommonGearInternal.slx')
ラック アンド ピニオン
この DocRackAndPinionStart
モデルは、ラック アンド ピニオンのアセンブリの例です。このモデルを開くには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocRackAndPinionStart.slx')
Rack and Pinion Constraint ブロックを基にしたこのモデルはあらゆる点で完全ですが、ただ 1 点、すべての剛体変換がゼロであるため両ギアの基準座標系が空間内で一致しています。
この短いチュートリアルでは、ギアの寸法とアセンブリの拘束からどのように容易に適切な変換が得られるかについて、また、Rigid Transform ブロックで適切な変換を指定すると、ギアのモデルがどのようにエラーなしで噛み合うように組み立てられるかについて説明します。
ギアのジオメトリ
ピニオン "A" のピッチ半径は 2
cm
です。ピニオンの基準座標系は、原点をピニオンの中心に置き、"z" 軸をピニオンの軸に沿わせて配置されます。ラックの基準座標系は、原点をラックの端から 3.75
cm
の位置に置き、"z" 軸をラックの長手方向に沿わせて配置されます。座標系の配置は、"z" 軸周りの運動のみを許可する Revolute Joint ブロック、および z 軸に沿った運動のみを許可する Prismatic Joint ブロックと整合性があります。
ギアのアセンブリ
ラックの並進軸はピニオンの回転軸に対して直角です。ピニオンの基準座標系は、ワールド座標系に対し、直交座標で [0, 2, 0]
cm
オフセットした位置にあります。ラックの基準座標系は、ワールド座標系の "y" 軸の正方向に対し 90
deg
の角度をなす位置にあります。
モデルの完成
ギア アセンブリの概略図に示された剛体変換を指定して、ラック アンド ピニオンのモデルを完成させます。次の概念アニメーションは、モデルの更新中に剛体変換が順次適用された場合に与えられる漸進的な効果を示しています。
まだ実行していない場合は、次を入力して未完成のラック アンド ピニオン モデルを開きます。
openExample('sm/DocGearModelExample','supportingFile','DocRackAndPinionStart.slx')
Rigid Transform A ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたピニオン A の位置を、ギア アセンブリの概略図で示されているように設定します。
Rigid Transform B ブロックのダイアログ ボックスで、次の表に示す [Rotation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたラック B の向きを、ギア アセンブリの概略図で示されているように設定します。
モデルをシミュレートします。Mechanics Explorer が開かれ、この例の初めに示した動的なギアの可視化が表示されます。ラック アンド ピニオンの完全なモデルを確認するには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocRackAndPinion.slx')
ウォーム ギア
この DocWormAndGearStart
モデルは、ウォーム ギアのアセンブリの例です。このモデルを開くには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocWormAndGearStart.slx')
Worm and Gear Constraint ブロックを基にしたこのモデルはあらゆる点で完全ですが、ただ 1 点、すべての剛体変換がゼロであるため両ギアの基準座標系が空間内で一致しています。
この短いチュートリアルでは、ギアの寸法とアセンブリの拘束からどのように容易に適切な変換が得られるかについて、また、Rigid Transform ブロックで適切な変換を指定すると、ギアのモデルがどのようにエラーなしで噛み合うように組み立てられるかについて説明します。
ギアのジオメトリ
ウォーム "A" のピッチ半径は 0.85
cm
です。ギア "B" のピッチ半径は 3.75
cm
です。ウォームとギアの基準座標系はジオメトリの中心を原点とし、"z" 軸をそれぞれの回転軸に揃えて配置されます。この配置は、"z" 軸を中心とした回転のみを許可する Revolute Joint ブロックと整合性があります。
ギアのアセンブリ
ウォームの回転軸はギアの回転軸に対して直角です。ウォームの基準座標系は、ワールド座標系に対し、直交座標で [0, -0.85, 0]
cm
オフセットした位置にあります。ギアの基準座標系は、ワールド座標系に対して [0, +3.75, 0]
cm
オフセットし、正の "y" 軸の周りを 90 deg
回転した位置にあります。
モデルの完成
ギア アセンブリの概略図に示された剛体変換を指定して、ウォーム ギアのモデルを完成させます。次の概念アニメーションは、モデルの更新中に剛体変換が順次適用された場合に与えられる漸進的な効果を示しています。
まだ実行していない場合は、次を入力して未完成のウォーム ギア モデルを開きます。
openExample('sm/DocGearModelExample','supportingFile','DocWormAndGearStart.slx')
Rigid Transform A ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたウォーム A の位置を、ギア アセンブリの概略図で示されているように設定します。
Rigid Transform A ブロックのダイアログ ボックスで、次の表に示す [Translation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたギア B の位置を、ギア アセンブリの概略図で示されているように設定します。
Rigid Transform B ブロックのダイアログ ボックスで、次の表に示す [Rotation] パラメーターを指定します。これらのパラメーターは、ワールド座標系を基準としたギア B の向きを、ギア アセンブリの概略図で示されているように設定します。
モデルをシミュレートします。Mechanics Explorer が開かれ、この例の初めに示した動的なギアの可視化が表示されます。ウォーム ギアの完全なモデルを確認するには、MATLAB コマンド プロンプトで次を入力します。
openExample('sm/DocGearModelExample','supportingFile','DocWormAndGear.slx')