4

Modelica標準ライブラリの2つのコンポーネントを組み合わせたモデルのアイコンを作成したいと思います。これらの2つのコンポーネントは、Modelica.Blocks.Sources.SineとModelica.Electrical.Analog.Sources.SignalVoltageです。コードが次のようになるように、2つのコンポーネントを接続しました。

model test
 Modelica.Blocks.Sources.Sine sine1(freqHz = 5, amplitude = 1, offset = 10) annotation(Placement(visible = true, transformation(origin = {-51.0325,-0.884933}, extent = {{-12,-12},{12,12}}, rotation = 0)));
 Modelica.Electrical.Analog.Sources.SignalVoltage signalvoltage1 annotation(Placement(visible = true, transformation(origin = {-4.12979,-1.17994}, extent = {{12,-12},{-12,12}}, rotation = 90)));
equation
 connect(sine1.y,signalvoltage1.v) annotation(Line(points = {{-37.8325,-0.884933},{-12.9794,-0.884933},{-12.9794,-1.17994},{-12.5298,-1.17994}}));
end test;

注釈はOMEditによって自動的に行われます。

今、私は次のことを達成したいと思います:私は次のようなアイコンを作成したい

  • 信号電圧1のピンが含まれています
  • これにより、ダブルクリックしてsine1のプロパティにアクセスできます。

私はannotation(Icon(...))およびannotation(Placement(...))コマンドについて知っていますが、signalvoltage1.pとsignalvoltage1.nをアイコンレイヤーに移動する方法がわかりません。また、OMEditを使用して簡単に描画できる長方形などをダブルクリックして、sine1のプロパティにアクセスする方法がわかりません。

前もって感謝します。

4

1 に答える 1

5

今、私は次のことを達成したいと考えています:

ダブルクリックしてsine1のプロパティにアクセスできるsignalvoltage1のピンが含まれています。

ピンの OK: 通常、グラフィカル エディターは、既存のコネクタからダイアグラムの空白の場所にルートするたびに、フィッティング コネクタを自動的に作成する選択肢を提供するはずです。しかし、OMEdit はそうではありません (まだ?)。したがって、それぞれのコネクタを MSL からモデルのダイアグラム ビューにドラッグ アンド ドロップする必要があります。あなたの場合はModelica.Electrical.Analog.Interfaces.NegativePinModelica.Electrical.Analog.Interfaces.PositivePin適切に接続してください。コネクタ タイプのコンポーネントは、「外部から」接続できるように、ダイアグラム AND アイコン レイヤーに自動的に表示されます (必要があります)。

アクセスについてです。モデルのレベルで新しいパラメーターを作成し、新しいモデル内のコンポーネントがそれらのパラメーターを使用できるようにします。おそらく、上記の例を取り上げることで最もよく説明されます。

model Test
  parameter Real myfreqHz = 5 "Frequency of the sinewave";
  parameter Real myamplitude = 1 "Amplitude of the sinewave";    
  parameter Real myoffset = 1 "Offset of the sinewave";
  Modelica.Blocks.Sources.Sine sine1(freqHz = myfreqHz, 
                               amplitude = myamplitude, offset = myoffset);
  Modelica.Electrical.Analog.Sources.SignalVoltage signalvoltage1;
equation
...
end Test;
于 2013-02-19T07:27:27.373 に答える