作ってみようTRNSYSコンポーネント(6) デバッグしてみる

作ってみようTRNSYSコンポーネントシリーズのおまけです。

コンポーネントの作成といっても、これはいわゆるプログラミングです。プログラミングといえば欠かせないのはデバッグ作業。という事で新しく作ったコンポーネントをデバッグしてみましょう。

コンポーネントをデバッグする場合、TRNSYS側もデバッグモードでビルドされている必要があります。具体的にはTRNDLL.DLLがデバッグモードじゃないとデバッグができません。

で、どうするかですが、幸いにもTRNSYSには、はじめからTRNDLL.DLLをビルドするためのソリューションが用意されています。これを使ってデバッグの準備をします。

TRNDLL.DLLのソリューションを開く

Intel Visual Fortran Composer XE 2011を起動して、以下のソリューションを開きます。

C:\Trnsys17\Compilers\IvfCXE2011\IvfCXE2011.sln

VS2008用なのでVS2010を使われている場合、開くと変換ウィザードが立ち上がります。ここは素直に「次へ」を選択して変換を行います。

コンポーネントのプロジェクトを追加する

ソリューションが無事に開けたら、新しく作成したコンポーネントのプロジェクトを追加します。ソリューションエクスプローラーで「IvfCXE2011」を選んで右ボタンクリックで表示されるメニューから[追加]-[既存のプロジェクト]の順で選択します。

 ここで前回までに作成したコンポーネントのプロジェクトを指定します。

これで新しいコンポーネントとTRNDll.DLLをまとめてビルド出来るようになりました。

プロジェクトの設定を変更する

プロジェクトに追加されたら、右ボタンクリックで表示されるメニューから[スタートアッププロジェクトに設定]を選択します。

さらに右ボタンクリックで表示されるメニューから[プロパティ]を選んで、デバッグの設定を行います。

下の図のように実行用の指定を行います。

「コマンド」の項目にはTRNSYSを実行するためのTRNexe.exeを指定します。

「コマンド引数」の項目は、新しいコンポーネントを実行するためのDckファイルを指定します。ここでは「(5) Simulation Studioで実行」で作成したプロジェクトの*.dckファイルを指定します。

デバッグモードで実行する

[ビルド]-[構成マネージャー]を選んで、表示されるダイアログで「アクティブソリューション構成」の項目を[Debug]にしてビルドします。

デバッグの状態を確認するため、出力値を設定している行にブレークポイントを設定します。

で、実行してみます。ここでいきなり警告メッセージが表示されます。これはTRNEXE.exeがデバッグモードでビルドされていないのが原因です。ここは警告を無視して「はい」を選んで続行します。

TRNSYSが起動して、ブレークポイントでプログラムの実行が一時停止したら、変数の内容が適切な値になっているか確認します。以下の図のような内容であればOKです。

これで何か問題があってもデバッグモードで処理内容を確認することができます。

——–

関連記事

(1) 準備編
(2) プロフォルマ
(3) ソースコードの生成
(4) ソースコードの編集
(5) Simulation Studioで実行
(6) デバッグしてみる
補足 FORTRANの環境設定

Pocket

6件のピンバック

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です