Translate

2013/09/27

くるっと回るアイコン

TRNSYSのSimulation Studioにはいろいろと面白い機能が用意されています。

Rotate

まずは、アイコンを選んで右クリック。ここで表示されるメニューから、[Graphic]-[Roate clockwise]を選択します。

と、こうなる。アイコンが90度回転しました。
何に使うんだ、これ?って気もしますが、アイコンの向きに意味があるような場合に便利そうな機能です。

Focus on

次はアイコンを選んで右クリック。ここで表示されるメニューから[Graphic]-[Focus on]を選択します。

と、今度は選んでいるアイコンと接続されているコンポーネント以外が非表示になります。
コンポーネントがたくさん配置されているプロジェクトでは、特定のコンポーネントの接続関係を確認するのに便利な機能です。



2013/09/26

コンポーネントが認識されない。。。(2)

さて、前回、新しく作ったコンポーネントがTRNSYSから認識されない状況に陥りました。

原因は参照しているMSVCR110.DLLが見つけられないこと。
このファイルが何かというと、一般には「Cランタイムライブラリ」と言われるファイルです。コンポーネントはFORTRANで書いているので、なんでCのランタイム参照してるんだという気もしますが、まあ、必要なんで参照してます。

単純な話、このMSVCR110.DLLをTRNSYSから認識できるパスに放り込んでやればエラーはでなくなります。

例)VS2012では以下のフォルダに格納されています。
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\redist\x86\Microsoft.VC110.CRT

このフォルダから、DLLをC:\TRNSYS17\Exeフォルダにコピーします。これであっさり解決です。

落とし穴

と、ここで落とし穴が待ち構えています。この「Cランタイムライブラリ」、TRNSYS自身も参照しています。しかも厄介なことに、少し前のバージョンを参照していてファイル名も違っています。(具体的にはMSVCRT.DLLという名前のファイル)

図にすると、こんな感じ。
ここで何が問題かというと、TRNSYS本体とコンポーネントの間で参照先が違うので、実行時に齟齬が発生するケースがあります。(大部分は問題ないのですが、一部の処理で齟齬が出ます)

なんちゅーか、初版と改訂版のテキスト混在みたいな感じですかね。同じ授業なのに人によって使っているテキスト違っているから、受講者の理解している内容が違っているみたいな。ちょっと違うか。

具体的な例としては、データファイルを参照しているコンポーネントだとTRNSYS本体が割り当てたLUがコンポーネント側から見えないといった問題となって現れます。TRNSYSのデータとしては問題ないのに、エラーで動かない状況になります。

こういう時は基本的に新しい方に合わせてしまうのがよろしい。という事でTRNSYS(TRNDLL.DLL)も同じライブラリを参照するようにビルドし直してやればOK.

図にすると、こんどは、こんな感じ。
同じライブラリを参照するようになるので、齟齬もなく安心して使えます。
実作業としてはTRNDLL.DLLを開発中のコンポーネントと同じコンパイラで再ビルドすればOKです。









2013/09/24

コンポーネントが認識されない。。。(1)

新しく作ったTRNSYSのコンポーネントがなぜか認識されない。Simulation Studioでメッセージを確認すると、どうもDLLとして認識されていないっぽい。

以下、リストファイル(*.lst)に書き出されているエラーメッセージ

*** Fatal Error at time   :         0.000000
    Generated by Unit     : Not applicable or not available
    Generated by Type     :   201
    TRNSYS Message    105 : A TYPE was called in the TRNSYS input file but was either not linked into trndll.dll or was not found in an external dll. A dummy subroutine was called in its place. Please link the TYPE or remove it from the input file
    Reported information  :  Type201 could not be located in either the trndll.dll or in an external dll. Please relink theTRNDll.dll including this Type or make sure that an external DLL in the \UserLib\DebugDLLs and \UserLib\ReleaseDLLs folders contain the Type.


はて?特殊なことはしてないはずなんだけどな?どんな理由で認識されないんだろ?
こういう時は、TRNSYSをコマンドラインから実行してみると、より詳しい原因が判ることがあります。(Simulation Studioから実行すると、Simulation Studioからのエラーメッセージが記録されてしまうので、TRNSYS本体のエラーメッセージを確認するため直接実行してみる)

で、コマンドラインから、こんな感じでTRNSYSを実行してみると。。。

C:\>C:\Trnsys17\Exe\TRNExe.exe sample.dck


DLL(MSVCR110.dll)を参照しているのに見つけられていない。

さて、エラーの原因は判ったものの、さて次はどうする???

つづく。

2013/09/18

SketchUp2013がリリースされてます。

TRNSYSで建物のモデルを作るのに便利なSketchUp。最新版SketchUp2013がリリースされています。(2013/9/17より)
SketchUp Make2013(英語版)の画面

機能的な話はともかく、無償版は名称がSketchUp Make2013に名前が変わって、商用利用禁止になっています。
  • SketchUp Make2013 無償版、ただし商用利用は禁止
  • SketchUp Pro 2013  有償(92,500円税別)
詳しくはこちら→新バージョン『SketchUp Pro2013J』リリースに関するお知らせ

このバージョンから仕事で使うならSktchUp Pro 2013を購入する必要がありそうです。価格は、この手のソフトとしてはそれほど高価ではないですが、安くはないですね。

TRNSYSのモデルを作るぐらいの用途だと、基本的な機能で出来てしまうので、ちょっと割高感がありますが、これは販売形態が変わったので仕方ないですね。予算取らなきゃ。

アカデミックの場合は、今まで通りMake2013は無償のようです。

しかし、どうでもいい話ですが、デフォルトとして表示されていた点景(Susan)が、変なおっさん(Derrickって名前らしい)になったのが、個人的にショックであります。

2013/09/18 以下、追記

TRNSYS3Dインストールの注意点

インストール先のデフォルトのパスがGoogleのフォルダになっています。2013ではフォルダが変わります。インストールする際には、新しいパスを選択してください。
図の赤線のようにパスを指定しないとプラグインとして認識されないので、注意してください。


2013/09/17

TRNSYSとJavaを連成(3)

前回に続き、TRNSYS-Java Coupler(Type299)を試しています。

設定が済んで、実行したらエラーでうまく流れませんでしたが、その後いろいろ調べて原因が特定できました。

原因はJNIのライブラリ

このコンポーネントでは、JavaのJNI(Java Native Interface)を経由して外部にあるJavaのクラスを呼び出します。JNIを利用するためにはJVM.DLLというライブラリが必要なります。要は、このライブラリのパスが環境変数に無いとエラーになってしまいます。

JVM.DLLにはServer、Clientの2種類があるようですが、通常はClientのDLLのフォルダへパスを通せばOK
具体的には、環境変数Pathに以下のパスを追加すればOKです。

例)
C:\Program Files (x86)\Java\jdk1.7.0_40\jre\bin\client;
※インストールしているJDKに合わせてパスを設定します。

実行してみる

環境変数を設定して、再度実行してみると。。。


おお、今度はちゃんと動いた。
さて、動いたものの、実用的かという、ちょっとなー、な感じです。


  • 良いところ

すべて無償のツールで賄える。コンポーネントは公開されたものですし、実行時に必要な環境はJDKだけ。
特にライセンスも必要ないので気軽に始められます。

  • 悪いところ

Javaを含め、いろいろと事前準備が必要。JDKのインストールから始まって、環境変数の設定、それにJavaのソースコードの作成とビルド。
TRNSYSの標準コンポーネントを使う場合に比べて、準備に手間がかかります。
加えて、クラスを配置するパスが固定なのもちょっと厄介。プロジェクトごとに分けて用意しようと思ってもできません。

ちょっと試すぐらいならともかく、今の仕様だと準備が手間な分、普段から使うのは難しそうですね。とはいえ、まだリリースされたばかりなので、設定項目など改良されてくれば十分使えるかな?どうだろうか?






2013/09/13

TRNSYSとJavaを連成(2)

前回の続きです。

TRNSYS-Java Coupler(Type299)のファイルを試してみました。

Javaのダウンロードインストール

まずは、Javaの動作に必要なJDK(Java Development Kit)をOracleのサイトからダウンロードしてインストール。
JDKのインストールはパスの設定とかあって、ちょっと面倒です。でも、良くしたもので解説のページなどもあるので、それらを参考にしながら設定を行います。

↓このサイトが解りやすかった。
Java(JDK)ダウンロードとインストール
http://www.javadrive.jp/install/

ちょっと注意点ですがWindow版として64bit,32bitの2種類があります。TRNSYSは32bitアプリなので、32bit版(Windows x86)をダウンロードしてインストールと設定を行います。

TRNSYS-Java Couplerのダウンロードとインストール

sourceforgeからProformaとDLLをダウンロードして、フォルダに配置します。
インストーラーはないので、サイトの説明を見ながらダウンロード、配置していきます。

説明に記載されているファイル名が一か所間違っていて、TrnsysJavaCoupler.dll と書いていあるところは、実際にはType299.dllというファイルになります。

それと動作確認用にDEMOのデータをダウンロードしておきます。

Javaのビルド

DEMOに含まれているサンプルはJavaのソースコードだけなので、実行できるようにコンパイルしておきます。

次の2つのファイルを実行用のフォルダ、C:\TrnsysJavaCoupler へコピーしておきます。

demoフォルダのTrnsysJavaCoupler.java
usageフォルダのITrnsysJavaCoupler.java


で、コンパイルはこんな感じ。

C:\TrnsysJavaCoupler> javac TrnsysJavaCoupler.java

これで、TrnsysJavaCoupler.class、ITrnsysJavaCoupler.class の2つが出来上がっていればOK.


TRNSYSの実行

Simulation StudioからdemoフォルダのTrnsysJavaCouplerDemo.tpf を開いて実行してみると。。。

エラー発生。

*** Fatal Error at time   :         0.000000
    Generated by Unit     : Not applicable or not available
    Generated by Type     :   299
    TRNSYS Message    105 : A TYPE was called in the TRNSYS input file but was either not linked into trndll.dll or was not found in an external dll. A dummy subroutine was called in its place. Please link the TYPE or remove it from the input file
    Reported information  :  Type299 could not be located in either the trndll.dll or in an external dll. Please relink theTRNDll.dll including this Type or make sure that an external DLL in the \UserLib\DebugDLLs and \UserLib\ReleaseDLLs folders contain the Type.

どうもType299.DLLが認識されていない雰囲気です。なんで???

つづく。


2013/09/11

TRNSYSとJavaを連成?(1)

TRNSYSのメーリングリスト「TRNSYS-USERS」を眺めていたら、Java対応のコンポーネントの投稿が出ていました。

これ→   [TRNSYS-users] New bi-directional TRNSYS-Java coupling Type 299

Coupling(連成)ってありますが、コンポーネント経由でJavaで書いたプログラムを呼び出す形式のようです。まあ、確かに連成ですね。。。

sourceforgeの記載を見た感じだと、Input/Outputの処理を受け取って、Javaとやり取りしてくれるようです。つまり計算自体はJavaでコーディングできると。
Javaの開発環境はオープンソースで各種揃っているので、商用ツールなしで利用できます。これは、手軽に試せそうです。
本格的な計算もそうですが、ちょっとした判定処理に使うだけでも、便利そうですよね。

ちと時間のある時に試してみたいと思います。



2013/09/06

気象情報サイト、wunderground.com

wunderground.comは天気予報、というか直近の気象データを表示してくれるサイトです。

東京周辺を表示すると、同じ都内でも気温にばらつきがあるのが見て取れてます。場所によって2度ぐらい差がありますね。羽田の気温が低いのは、東京湾のおかげでしょうか?
さらに地点をクリックすると、詳しい情報が表示されます。

しかし、気温や湿度に交じって、露点温度が表示されるのはなんで?外国だと大事な情報なんでしょうね。農業用とかでつかうのかな?
レーダーの情報なんかもオーバーレイできるので、気象データ好きには、ちょっとたまらんです。

参照しているデータがアメダスじゃなくて、空港その他らしく、地方だとデータがまばらなのが残念。


2013/09/05

Simulation Studioのアイコンの表示を変更する(おまけ)

アイコンの背景処理

さてと、前回の続きです。
アイコンのType番号の文字を大きくすると、アイコン自身に被ってしまって、かえって見苦しくなることがあります。

文字が大きくてアイコンの下半分が見えない

これは、これで見にくいので、こういう場合は背景処理を変更します。

1. 背景処理の変更

「Fill」タブを選んで、「Transparet Fill」の項目をチェック、「適用」ボタンをクリックする。
以上で、文字の背景が透明に変更されてアイコンが見えるようになります。