予告編
これは一連の idea プログラムの次回作の予告編である。
希求していた、重相関プログラムのパスカル化が何とか実現できて、データファイルから3D相関図に至るプロセスが全てスタンドアローンとなった。極めて快適である。
「単なる当所様式だけではもったいないので、次回は可能な限り汎用様式にも対応できて、かつ出来るだけ多くの機能は持たせたいし、3説明係数の4D重相関も可能としたい。さらにいよいよ Delphi ソースも開示できるだろう」という予告で、機能限定の3D図だけを、例によってヘビーを覚悟で管理日報3ヶ月分をリソースにしたものをアップロードする。ダウンロード idea4.exe (11854.5K)である。
最初に「多重相関データ」シートを開いてもらいたい。( glut32.dll をパスの通ったディレクトリー C:\WINDOWS\system32 等に置いておいて下さい)
Y = f ( X1・X2・X3 ) となる各変数をどの様に取ってきて計算するか、当 blog に出てきた各種相関計算例が一覧表となっている。
但し期間が3ヶ月でデータ数が少ないため、トリムなどで更に削減して行った場合、相関が取れなくなったりする場合もあるかもしれない。また特性も寄与率も違ってくるが定性的な傾向は同じはずである。
左側が元データファイルの項目名による計算式で次の様な式がある。
冷水熱量 積算 / 蒸気流量 積算 * 0.417638 = f ( 機器負荷率 ・ 冷却水入口温度 )
吸収式のCOPである。元ファイルにはCOPそのもののデータがあるが、参考までに計算で出してみた。
0.417638 =1/(662-90)/4.18605*1000 = 1 / ( 蒸気エンタルピ - ドレンエンタルピ ) / ジュール・カロリー比。
ltbrw_ct ( ltbrtp_w ( 高温再生器 溶液温度 , mp_mmhga ( 高温再生器 圧力 )) - 1)
= f ( 機器負荷率 ・ 冷却水入口温度 )
臭化リチウム溶液結晶温度の特性である。
当然ながら「Excel 関数 DLL」ページの関数がビルトインされていて使用可能となっている。
例示のように入れ子で使用でき、引数に±定数としてオフセットも掛けられるが乗除算は不要だろう。
Mpag を mmhg-abs にして、これと温度からデューリング式で濃度を求め、結晶温度にしている。
低温部の安全サイドと言う意味でパラレルフローの機械は-1%、シングルフローは+1.5%にしている。
冷却塔電力 = f ( ( 冷却水入口温度 ,-, 外気湿球温度 ) ・ 冷凍機合計冷水熱量 )
冷却塔入熱の代用として冷凍機合計冷水熱量を使用した。ターボが運転している時には適用できない。
,-,は項目名中で演算子を表すための、苦肉の策である。
冷水熱量 積算 / 冷凍機電力量 積算 * 277.778 = f ( 機器負荷率 ・ 冷却水入口温度 )
ターボのCOPである。これも計算で出してみた。
277.778 = 1 / 860 / 4.18605 * 1000000 = 1 / カロリー電力比 / ジュール・カロリー比である。
項目名は「大項目」+「・」+「項目名」の形で特定する。大項目のところが数字なのは、当所のファイルがそうなっているに過ぎない。
次いで3D画面表示名、単位となっている。3D画面表示名は英数字フォントしかないからその範囲で作成せざるを得ない。
また、現在 X3 は対応していない。計算はできるが4D相関図化をビルトインしてないだけである。
変数計算はプログラム内部では、最終的には逆ポーランド法でスマートに記述できるんだろうが、どんな計算をしたいのかまだ完全に決まってなくて、色んな関数も出てくるかも知れないので、 if と case 構文で継ぎ足し継ぎ足しして居る。
従って演算子の数や位置で判断しているので、データファイルの項目名に「+」や「*」や「/」が使用されていると誤動作するだろう。「-」は当所でも使用しているから止むを得ないが。
次回は、これらをユーザーが作成・編集し、INIファイルで扱えるようにする。
作業の順序としては、このシートでどの組み合わせの相関を調べるのかを決めてから、以下のデータ「項目選択」作業を行うことになる。運転していない時のデータでCOPを計算するのは無意味だからね。
データの「項目選択」は「If we have the explossives.」ページの既述を再掲すると、
条件を付したい項目にカーソルを持ってきて左クリックすると、選択項目欄に項目名が転送されている。これに上限下限を設定する。サンプル数値を見れば大体どんな値か分かる。
条件は2つ設定可能で、それらのアンドまたはオア条件の成立する時間帯のデータ項目全てが、「データ抽出結果」シートに格納される。また9時~18時即ち昼間10時間だけというフィルターも掛けられる。
これ以上説明不要だろうが、再度選択する場合に、1000件以上のデータのクリアーは、クリアーボタンよりプログラム再起動のほうが時間が早いだろうと言う点だけ触れておく。
再度「多重相関データ」シートを開き、計算するグループ行をクリックすると行が選択される。このステップが行われないと「get_data↓」が出来ない。だって、何をどう計算して取って来れば良いのか、プログラムには分からないから。
「get_data↓」で各変数が指定の式通り計算されて中央の表に入る。
この結果を見て、トリムを掛けたい場合は条件を設定する。時間否連続は無条件で実施。変動幅、上下限は変数ごとに設定できる。上下限の「U」「D」条件は表示をクリックすることで変わる。上下限逸脱の判定は絶対値で行っている。「D」+「10」では5や-5は撥ねられるが、-100は残る。
「トリム↓」で、これらの条件で撥ねられたデータ組は表にその旨表示されている。「delh」が否連続、「delb」が変化幅「delL」が上下限リミットである。右表にその結果が入る。データ組数が減っているね。
使い方によっては、前「項目選択」シートで制限し忘れ、あるいは制限不足をここでカバーできる。また時間の掛る「項目選択」のファイル読込条件はそこそこで1度実施したデーターを何度も使い回しができる。勿論違う計算にも供与できる。
トリムが終了したら、どちらのデータを使うかをセットして「regsup ⇒」で直ちに3D図が出来ている。これらの操作は全て1秒以内にレスポンスし、非常に快適である。
3D表示の基本的な構成は「冷却塔電力について」ページに詳述してあり、基本的にそれに準じているが変化部分を述べると、
ポリゴン表示は今までのアルファーブレンドを止めてみたが、こちらもそこそこの表示になった。4Dではアルファーブレンドが不可欠だとは思っているが。
データのY軸方向コンター色表示は、データのバラつきに合わせ好みで調整できるようにした。Ctrl パネルの下の左2つのスライダーで色調のシフトと、レンジ幅を調節できる。
ついでにデータポイントの大きさも調節できる、Ctrl パネルの下の右スライダーがそうである。ただし色調のように毎回計算していないので、変えるたびに再度「regsup ⇒」操作が必要である。色調は調節しながら結果を見たいから毎回計算するが、大きさはどうなるか予想できるのでその都度見る必要は無いからこれでよいだろう。
F1~F6で座標変換した場合のマトリクスの初期化は立て続けに3Dを作成した場合不可欠だろうと入れてある。センターリングや自動スケーリングはインプリメントしていないから、視点が前進している状態で別な図を作成したら、図が表示範囲から逸脱していることがある。あわてないで視点を後退させれば、視界に入ってくる。
それでは1例だけ実例をやってみる。
起動して「項目選択」シートの30行「AR-3 機器負荷率」をクリックし、下限を40(%)、上限を200(%)に設定する。
「data 読込み」すると、4秒後に「242 件抽出しました」となるから、「多重相関データ」シートを開く。
リソース読み込みの場合はそうではないが、ファイル読み込みの時は途中で「多重相関データ」シートに行けるため、プログレスゲージが表示してあってファイル読み込みの終了が判るようになっている。それまでの間 (と言っても数秒間だが) 以下の作業などをやろうとしたものである。
「AR-3_COP」の行の何処でもクリックすると「3行選択」となって色が水色に変るとともに「get_data↓」出来るようになる。
実行すると先ほど選択された242件の必要なデータが regsup に供するため用意された。
ちょっとシビアーに20%20%10%の変化幅で「トリム↓」をかけると、242件が146件に絞られた。Use trim data に check が入っているのでそのまま「regsup ⇒」すると今までのカーブとはちょっと傾向の違う負荷率65%で中折れする曲面が出てきた。寄与率は50%である。
十分観察したら再度「項目選択」に戻り、全てクリアーした上で、「AR-3 機器負荷率」、下限40(%)、上限200(%) と26行「AR-FE-302 冷却水流量」、下限1300(m3/h)、上限2000(m3/h) のANDで選択すると184件出てくる。
「多重相関データ」シートで再度3行目をクリックして「get_data↓」し、同一条件で「トリム↓」すると、124件になったので「regsup ⇒」する。
寄与率は60%であるが、曲面は先ほどとは低負荷部の特性が異なり、しり上がりとなる。
これが「冷却水半減で省エネ?」で提起した事象である。負荷が半分程度のとき、冷却水流量が半量および全量の玉石混淆の平均データでは効率は下がるが、冷却水全量に限定すると効率は高いままである。インバーター化で冷却水ポンプの流量まで減らして省エネしようとする場合は、冷凍機の効率低減を見越して省エネ効果を見る必要があることがグラフでしっかり判る。
下は同じ条件での溶液結晶温度のグラフだが、効率と正反対の特性を示している。
即ち同じ負荷率でも冷却水流量が多い (全量の) 方が溶液濃度が低く、結晶温度も低いのが判る。
あとは、Ctrl パネルの下のスライダーで色調を変えたり、データドットの大きさを変えて再度「regsup ⇒」したりして遊んでみてください。
また、臭化リチウム溶液結晶温度は、blog「結晶温度は負荷率により下がる」ページに既述したが、負荷率と冷却水温度でどのように変化するか、再度じっくりと見てもらえる。式はそれなりに高い寄与率を示している。
AR-4_COP では設定によっては「関連変数1個」となり、負荷率との関連が付かないことがあるようだ。結晶温度は負荷率によっても変るが。この辺に効率が低下した理由の一端が見えないだろうか。(「Excel 関数 DLL」ページ参照)
また今回気付いたのは、リソースにしておけば検索スピードが極めて速いと言うことである。3ヶ月分で4秒弱だから1年分15秒で出来ることになる(2.8GHz)。今度からそうしておこう。50Mbyte/1年になるが大した事はない。
「データと共に立体に相関図で表示されると非常に判り易い。熱プラントの運転データだけでなくいろんなデータでも扱えれば良いのに」と思っていただければ幸いである。
次回はこれの汎用化と、Delphi ソースに行く。メーカーさんに無償で差し上げると言うオファーはまだ生きている。製品に取り込んで avantage にしたいと言うメーカーさんは今の内である。
| コメント (0) | トラックバック (0)

































