作ってみようTRNSYSコンポーネント C/C++編(3) ソースコードを読んでみよう
前回はソースコードのスケルトン(雛形)の書き出しと、ひとまずビルドできたので、今回はソースコードを読みながら一部書き換えて計算式を記述していきます。
はじめる前にちょっとプロフォルマで設定した内容のおさらいです。プロフォルマでは以下の様な設定を行なっていました。
Parameters:Mult (デフォルト:1)
Inputs:
Inp1
Inp2
Outputs:
Out1
パラメーターを1個、入力は2個で、出力は1個です。この設定に沿ってソースコードを見て行きます。
1. ソースコードの確認
まず、ソリューションエクスプローラーからType201.cppをダブルクリックしてソースコードを表示します。
![ソースコードを表示](https://i0.wp.com/www.kankyoukei.com/wp-content/uploads/2019/04/57d69aba3e8cb4266b326b9f368ba1ca.png?resize=800%2C483&ssl=1)
ソースコードを上から順に見ていくと110行目付近に変数の宣言箇所があります。(Ctrl+Gで直接指定行にジャンプできます。これ使うと探しやすいです)
![変数の宣言と初期化](https://i0.wp.com/www.kankyoukei.com/wp-content/uploads/2019/04/fb615710105b11053cf391f25e2717e6.png?resize=800%2C307&ssl=1)
プロフォルマの設定と見比べると分かりやすいですが、ここでParameters, Inputsの項目として登録したものが宣言されているのがわかります。 さらに下の方にPrameterとInputsに値を設定している箇所があります。この部分でSimulation Studioで設定した値や他のコンポーネントから受け取った値(Inputsの値)を変数に設定しています。
でもって、最後は270行目付近に前回、Outputの処理を書き加えた箇所があります。通常ここで計算した結果をOutputsの値して書き出します。
![出力処理](https://i0.wp.com/www.kankyoukei.com/wp-content/uploads/2019/04/99494c030e33cabd3727fdc1b11e8da4.png?resize=800%2C161&ssl=1)
2. 処理の追加
試しに簡単な計算を為てみます。Parameters、Inputsの値を使って処理を記述してみましょう。処理内容はInputsの値2つを足してPrameterの値を掛けるシンプルなものです。
xout[0] = (Inp1 + Inp2) * Mult;
![処理を追加する](https://i0.wp.com/www.kankyoukei.com/wp-content/uploads/2019/04/c4d27e1b0e101f756535c7237a824762.png?resize=646%2C176&ssl=1)
以上で、ソースコードの変更は終了です。 コンポーネントの処理は次のような流れで順番に処理されます。
Parameters,Inputsの値を受け取る
↓
計算する
↓
出力する
これの繰り返しです。簡単ですよね?コンポーネントは基本的にはこのようにシンプルな仕組みで動作します。
3. ビルドする
ソースコードの変更が終わったらビルドして実際に動かしてみます。この時、メニューから[ビルド]-[構成マネージャー]を選択して、「アクテイブソリューションの構成」で「Release」を選択しておきます。(DebugモードだとTRNSYSが認識てくれないので必ずReleaseでビルドしてください)
![Releaseモードでビルド](https://i0.wp.com/www.kankyoukei.com/wp-content/uploads/2019/04/b67360923cae94a3b6fa496f45ccc691.png?resize=800%2C492&ssl=1)
[ビルド]-[ソリューションのビルド]を選択してビルドします。エラーにならずビルドができたらコンポーネントの完成です。
次回は、実際にSimulation Studioで動かしてみたいと思います。
つづく。
—————————————————-
以下、このシリーズの目次
作ってみようTRNSYSコンポーネント C/C++編
(1) 基本情報
(2) ソースコードの生成
(3) ソースコードを読んでみよう
(4) Simulation Studioで実行してみよう
(5) コンポーネントが呼び出されるタイミング
(6) ヘッダーファイル・基本編
(7) ヘッダーファイル・実践編
6件のピンバック
作ってみようTRNSYSコンポーネント C/C++編(2) ソースコードの生成 – 建築環境工学系日記
作ってみようTRNSYSコンポーネント C/C++編(5) コンポーネントが呼び出されるタイミング – 建築環境工学系日記
作ってみようTRNSYSコンポーネント C/C++編(7) ヘッダーファイル・実践編 | 建築環境工学系日記
作ってみようTRNSYSコンポーネント C/C++編(4) Simulation Studioで実行してみよう | 建築環境工学系日記
作ってみようTRNSYSコンポーネント C/C++編(1) 基本情報 | 建築環境工学系日記
作ってみようTRNSYSコンポーネント C/C++編(6) ヘッダーファイル | 建築環境工学系日記