メインコンテンツ

バネ-マス-ダンパー システムのパワー解析

この例では、Powertrain Blockset™ の関数を使用してバネ-マス-ダンパー システムの機械動力およびエネルギーを解析する方法を示します。この例では、autoblks.pwr.PlantInfo (Powertrain Blockset)オブジェクトを使用してシステムのエネルギーを解析し、Power Accounting Bus Creator (Powertrain Blockset)ブロックを使用してシステムのパワーとエネルギーの使用についてレポートします。さらに、この例ではcreateSankeyPlot (Powertrain Blockset)関数を使用して、バネ-マス-ダンパー システムとサブシステムを流れるパワー フローを示します。

パワー解析から得られる洞察は、パフォーマンスの最適化、効率の向上、系の信頼性の確保に活用できます。

Block diagram of a mass-spring-damper system with two mass components and three sets of spring-damper components.

バネ-マス-ダンパー システムの分解

バネ-マス-ダンパー システムには次のサブシステムがあり、それぞれで異なる成分のセットをモデル化しています。

  • Spring-Damper 1

  • Mass 1

  • Spring-Damper 2

  • Mass 2

  • Spring-Damper 3

パワー計算の概要

システム レベルでのパワーとエネルギーの計算はエネルギー保存を満たします。

Ptrans+Pnottrans=Pstore

バネ-ダンパーのパワー フロー

次の図は、バネ成分とダンパー成分の力の向きを示しています。

力は次の方程式を使用して計算されます。

Fd=d(vR-vL)Fk=k(xR-xL)FL=Fd+FkFR=-Fd-Fk

Power Accounting Bus Creator のパワー信号

次の表に、バネ-ダンパー成分について Power Accounting Bus Creator ブロックで作成されるパワー情報バスの信号を示します。

信号

説明

定義

PwrTrnsfrdPwrFrcLeft

左側の接続で伝達されるパワー

FLv

PwrTrnsfrdPwrFrcRight

右側の接続で伝達されるパワー

FRv

PwrNotTrnsFrdPwrDampingLoss

ダンパーによるパワー損失

-Fd(vR-vL)

PwrStoredPwrSpringStored

バネに蓄積されるパワー

Fk(vR-vL)

質量のパワー フロー

次の図は、質量成分の力の向きを示しています。

質量の速度と位置は次の方程式で制御されます。

mx¨=FL+FR+Fext

Power Accounting Bus Creator のパワー信号

次の表に、質量成分について Power Accounting Bus Creator ブロックで作成されるパワー情報バスの信号を示します。

信号

説明

定義

PwrTrnsfrdPwrFrcLeft

左側の接続で伝達されるパワー

FLv

PwrTrnsfrdPwrFrcRight

右側の接続で伝達されるパワー

FRv

PwrNotTrnsFrdPwrDampingLoss

外力によるパワー

Fextv

PwrStoredPwrKinetic

運動エネルギーとして蓄積されるパワー

(FL+FR+Fext)v

詳細については、Power Signals (Powertrain Blockset)を参照してください。

シミュレーションの実行

[実行] をクリックして autoblks.pwr.PlantInfo オブジェクトを作成します。PwrUnits プロパティと EnrgyUnits プロパティを使用して単位を設定します。

SysName = 'powerAnalysis';
open(SysName);
SysPwrAnalysis = autoblks.pwr.PlantInfo(SysName);
SysPwrAnalysis.PwrUnits = 'kW';
SysPwrAnalysis.EnrgyUnits = 'kJ';

run メソッドを使用して、ログをオンにしてシミュレーションを実行し、ログ データをオブジェクトに追加します。

SysPwrAnalysis.run;

エネルギーの値の概要

各サブシステムの最終的なエネルギーの値を表示します。

SysPwrAnalysis.dispSysSummary
 
    System Name      Efficiency    Energy Loss (kJ)    Energy Input (kJ)    Energy Output (kJ)    Energy Stored (kJ)  
----------------------------------------------------------------------------------------------------------------------
powerAnalysis             0.144               -18.8                   22                     0                  3.17  
  Mass 1                  0.755               -5.05                 20.7                 -15.6                     0  
  Mass 2                  0.594               -10.6                 26.1                 -15.5                     0  
  Spring-Damper 1         0.957               -0.48                 11.2                 -9.46                  1.26  
  Spring-Damper 2         0.993             -0.0718                  9.8                 -9.33                   0.4  
  Spring-Damper 3         0.741               -2.61                 10.1                 -5.97                   1.5  
 

概要をスプレッドシートに書き込みます。

SysPwrAnalysis.xlsSysSummary(fullfile(fileparts( ...
    which('GenerateEnergyReport')), 'EnergySummary.xlsx'));

createSankeyPlot 関数を使用して、システムのパワー フローを可視化する Sankey プロットを生成します。

createSankeyPlot(SysPwrAnalysis);

Figure contains an object of type autoblks.pwr.internal.plotsankey.

Spring-Damper 1 サブシステムの概要

dispSignalSummary メソッドを使用して、autoblks.pwr.PlantInfo オブジェクトの Spring-Damper 1 サブシステムのエネルギーを表示します。

SpringDamper1Name = 'powerAnalysis/Spring-Damper 1';
SpringDamper1PwrAnalysis = SysPwrAnalysis.findChildSys(SpringDamper1Name);
SpringDamper1PwrAnalysis.dispSignalSummary;
 
powerAnalysis/Spring-Damper 1
Average Efficiency = 0.957
 
       Signal         Energy (kJ)  
-----------------------------------
Inputs                       11.2  
  Transferred                11.2  
    Left force                  0  
    Right force              11.2  
  Not transferred               0  
    Damping loss                0  
Outputs                     -9.46  
  Left force                    0  
  Right force               -9.46  
Losses                      -0.48  
  Damping loss              -0.48  
Stored                       1.26  
  Spring                     1.26  
 

createSankeyPlot 関数を使用して、Spring-Damper 1 サブシステムのパワー フローを可視化する Sankey プロットを生成します。

SpringDamper1PwrAnalysis.createSankeyPlot();

Figure contains an object of type autoblks.pwr.internal.plotsankey.

Mass 1 サブシステムの概要

dispSignalSummary メソッドを使用して、autoblks.pwr.PlantInfo オブジェクトの Mass 1 サブシステムのエネルギーを表示します。

Mass1Name = 'powerAnalysis/Mass 1';
Mass1PwrAnalysis = SysPwrAnalysis.findChildSys(Mass1Name);
Mass1PwrAnalysis.dispSignalSummary;
 
powerAnalysis/Mass 1
Average Efficiency = 0.755
 
            Signal              Energy (kJ)  
---------------------------------------------
Inputs                                 20.7  
  Transferred                          14.2  
    Left force                         9.46  
    Right force                        4.72  
  Not transferred                      6.47  
    Externally applied force           6.47  
Outputs                               -15.6  
  Left force                          -11.2  
  Right force                          -4.4  
Losses                                -5.05  
  Externally applied force            -5.05  
Stored                                    0  
  Kinetic                                 0  
 

createSankeyPlot 関数を使用して、Mass 1 サブシステムのパワー フローを可視化する Sankey プロットを生成します。

Mass1PwrAnalysis.createSankeyPlot();

Figure contains an object of type autoblks.pwr.internal.plotsankey.

Spring-Damper 2 サブシステムの概要

dispSignalSummary メソッドを使用して、autoblks.pwr.PlantInfo オブジェクトの Spring-Damper 2 サブシステムのエネルギーを表示します。

SpringDamper2Name = 'powerAnalysis/Spring-Damper 2';
SpringDamper2PwrAnalysis = SysPwrAnalysis.findChildSys(SpringDamper2Name);
SpringDamper2PwrAnalysis.dispSignalSummary;
 
powerAnalysis/Spring-Damper 2
Average Efficiency = 0.993
 
       Signal         Energy (kJ)  
-----------------------------------
Inputs                        9.8  
  Transferred                 9.8  
    Left force                4.4  
    Right force              5.39  
  Not transferred               0  
    Damping loss                0  
Outputs                     -9.33  
  Left force                -4.72  
  Right force                -4.6  
Losses                    -0.0718  
  Damping loss            -0.0718  
Stored                        0.4  
  Spring                      0.4  
 

createSankeyPlot 関数を使用して、Spring-Damper 2 サブシステムのパワー フローを可視化する Sankey プロットを生成します。

SpringDamper2PwrAnalysis.createSankeyPlot();

Figure contains an object of type autoblks.pwr.internal.plotsankey.

Mass 2 サブシステムの概要

dispSignalSummary メソッドを使用して、autoblks.pwr.PlantInfo オブジェクトの Mass 2 サブシステムのエネルギーを表示します。

Mass2Name = 'powerAnalysis/Mass 2';
Mass2PwrAnalysis = SysPwrAnalysis.findChildSys(Mass2Name);
Mass2PwrAnalysis.dispSignalSummary;
 
powerAnalysis/Mass 2
Average Efficiency = 0.594
 
            Signal              Energy (kJ)  
---------------------------------------------
Inputs                                 26.1  
  Transferred                          10.6  
    Left force                          4.6  
    Right force                        5.97  
  Not transferred                      15.5  
    Externally applied force           15.5  
Outputs                               -15.5  
  Left force                          -5.39  
  Right force                         -10.1  
Losses                                -10.6  
  Externally applied force            -10.6  
Stored                                    0  
  Kinetic                                 0  
 

createSankeyPlot 関数を使用して、Mass 2 サブシステムのパワー フローを可視化する Sankey プロットを生成します。

Mass2PwrAnalysis.createSankeyPlot();

Figure contains an object of type autoblks.pwr.internal.plotsankey.

Spring-Damper 3 サブシステムの概要

dispSignalSummary メソッドを使用して、autoblks.pwr.PlantInfo オブジェクトの Spring-Damper 3 サブシステムのエネルギーを表示します。

SpringDamper3Name = 'powerAnalysis/Spring-Damper 3';
SpringDamper3PwrAnalysis = SysPwrAnalysis.findChildSys(SpringDamper3Name);
SpringDamper3PwrAnalysis.dispSignalSummary;
 
powerAnalysis/Spring-Damper 3
Average Efficiency = 0.741
 
       Signal         Energy (kJ)  
-----------------------------------
Inputs                       10.1  
  Transferred                10.1  
    Left force               10.1  
    Right force                 0  
  Not transferred               0  
    Damping loss                0  
Outputs                     -5.97  
  Left force                -5.97  
  Right force                   0  
Losses                      -2.61  
  Damping loss              -2.61  
Stored                        1.5  
  Spring                      1.5  
 

createSankeyPlot 関数を使用して、Spring-Damper 3 サブシステムのパワー フローを可視化する Sankey プロットを生成します。

SpringDamper3PwrAnalysis.createSankeyPlot();

Figure contains an object of type autoblks.pwr.internal.plotsankey.

結果のプロット

sdiSummary 関数を使用して、autoblks.pwr.PlantInfo オブジェクトのパワートレインのエネルギーとパワーの解析結果をプロットします。

SysPwrAnalysis.sdiSummary({SpringDamper1Name, Mass1Name, ...
    SpringDamper2Name, Mass2Name, ...
    SpringDamper3Name});

たとえば、システムの入力エネルギー、エネルギー損失、蓄積エネルギーをプロットします。

close('all')

参考

(Powertrain Blockset) | (Powertrain Blockset)

トピック