Excel 関数 DLL
続いて、吸収式を初めとする省エネ計算に有用な、Excelにビルトインして関数としても使えるDLLを紹介する。
ダウンロードしてもらうのは、ダウンロード ltbrfunc2.dll (416.5K)と、それに蒸気計算ではあらゆる場面で有用な Steam97.dllと、最後にダウンロード ltbrfunc2.xls (81.0K)ファイルである。
Steam97.DLL は筆者も重宝に使わせていただいており、http://www.tab2.jp/mysoft/steam97.html に解説がある。配布する時は「Steam97.DLLおよびそのソースコードは、利用・配布・改造が自由であり、また無償で入手できること」を知らせることになっている。
これは excelfunc2.xls の中で高再蒸気、冷媒蒸気の計算を行っているので添付したものである。ltbrfunc2.dll とともに、例によってパスの通っているディレクトリー (C:\WINDOWS\system32 等) に置いた上で excelfunc2.xls を開いてもらう。勿論マクロを有効にしてね。
但し今までと違うところが2つある。今までC:\WINDOWS\system32 等に置いたのは、3D表示に必要な glut32.dllだけだった。それも自分でダウンロードしてきたもので出所は明らかだ。「今度は2つとも筆者が揃えてきて置けと言っている。こいつ大丈夫か?変な悪さをするコードが入ってないなんて信用できるか?文章を見る限りまあ誠意は感じられないことも無いが、時々変な発作も起こしているようだぞ。Steam97.DLL は自分で探してきてもよいけど・・・。今まで実行した奴だって悪さをしようと思えば出来たんだ。まあ、ここは信用するしかないか」
さて、ltbrfunc2.dll には次の関数があり、Excel起動時にマクロで定義しているので通常の関数と同様に入力セルを指定して使ってもらえる。(ネーミングのプロトコルも無視してるから使い難い?)
但し、有効範囲、精度などでかなり無頓着なパーソナルユースのものを、とりあえずそのままアップロードしたので、使用する時は有効範囲を自分の頭の中で考えながら使ってください。
精度については実験式を入手できたものはともかく、他は図表をデジタイザーで読み取ったものの直線補完など学術的な評価には耐えられない代物だが、人間が図表から値を読み取るのと同等の精度はあるから、その代わりをやってくれるだろう。所詮フィールドユースで現場指示値もそれなりの誤差を含んでいる状況での使用には耐えるだろうと考えて置いてあるので、その範囲で使ってください。
勿論 DLL だけでなく、ideaにもビルドインしてある。
なお以下の表示はVB様式である。
Function ltbrwt_p Lib "ltbrfunc.dll" (ByVal T As Double, ByVal W As Double) As Double
デューリング線図の式、従って式が保障する精度はある。濃度と温度から圧力を得る。
また、これらを使った溶液結晶温度の3D図のビデオもある。
Function ltbrtp_w Lib "ltbrfunc.dll" (ByVal P As Double, ByVal T As Double) As Double
上式を2分法で使って温度と圧力から濃度を得る。収束誤差は濃度の0.0001倍であるが、打ち切り回数 (500回) で計算ループを飛び出した場合はそれより大きい。
Function ltbrpw_t Lib "ltbrfunc.dll" (ByVal W As Double, ByVal P As Double) As Double
同じ、濃度と温度から圧力を得る。収束誤差は圧力 (mmhg) の0.0001倍。打ち切り回数も同じ。
Function ltbrtw_hc Lib "ltbrfunc.dll" (ByVal W As Double, ByVal T As Double) As Double
この図のタイプの臭化リチウム溶液エンタルピー。温度と濃度からエンタルピーを得る。
吸収式の平易な説明によく使用されるので筆者も良く使うが(歳のせいか cal の方が体に染み付いている)、残念ながらデジタイザーの読み取り。精度は図表の作図誤差と線の太さによる。後者は0.3~0.8kcal と言うところか。
0℃の飽和水のエンタルピーを100kcal/kgとしているので、蒸気計算と混在使用する時は注意が必要である。xlsファイルの蒸気エンタルピーの使い方参照。
Function ltbrwh_tc Lib "ltbrfunc.dll" (ByVal H As Double, ByVal W As Double) As Double
上式を2分法で使って濃度とエンタルピーから温度を得る。打切り誤差はエンタルピーの0.0001倍、打ち切り回数も。(元の関数の精度が悪いんだからもっとラフでもよかったね) 以下の2分法も全て同じ。
Function ltbrtw_hj Lib "ltbrfunc.dll" (ByVal W As Double, ByVal T As Double) As Double
この図のタイプの臭化リチウム溶液エンタルピー、実験式。温度と濃度からエンタルピーを得る。
Function ltbrwh_tj Lib "ltbrfunc.dll" (ByVal H As Double, ByVal W As Double) As Double
上式を2分法で使って濃度とエンタルピーから温度を得る。
Function ltbrw_ct Lib "ltbrfunc.dll" (ByVal W As Double) As Double
臭化リチウム溶液濃度から結晶温度を得る、おなじみの線図。図から読み取り相関式にして計算。「溶液結晶温度の挙動」ページなどのプログラムにも使用しているが、結晶裕度色分け区分の意義は失わない程度の誤差範囲だろう。即ち0.2~0.3℃位か。あそこで「濃度や結晶温度はリソースデータではなく、ちゃんと計算で出しているから誤解なきよう」と言った証明にもなる。後者の精度はともかく。
Function nh3t_p Lib "ltbrfunc.dll" (ByVal T As Double) As Double
アンモニアの飽和曲線。Antoineの式。
Function hfcp_t Lib "ltbrfunc.dll" (ByVal P As Double) As Double
HFCR134aの飽和曲線。ポイント毎の数値を相関式にして計算。
Function hfct_p Lib "ltbrfunc.dll" (ByVal T As Double) As Double
HFCR134aの飽和曲線。上式を2分法で使って温度から圧力を得る。
Function mp_kgfa Lib "ltbrfunc.dll" (ByVal MP As Double) As Double
MPaからkgfabsへ変換。上記R134aの飽和曲線用。
Function mp_mmhga Lib "ltbrfunc.dll" (ByVal MP As Double) As Double
MPaからmmHgabsへ変換。デューリング線図用。
やむを得ずデジタイザー入力のものは精度を上げる必要もあるが、実験式のものなどはそれなりに使ってもらえると思う。
使用例および触りとして吸収式の内部を計算しようとした時の表を添付したのがexcelfunc2.xls である。
この冷凍機は1000RTの機械だが、それまで当所で最高のCOPを維持していた。ある時水室など内部点検と、計装関係の定期点検と、もう一つ「半量運転の時は、冷却水流量も半分にすれば省エネになります」と言うコンサルタント会社の口車に乗せられて冷却水ポンプ出口弁の改造工事を行ったら、何が原因か不明だがCOPが最低になってしまった。
設計値は辛うじて出ているが、こちらとしては面白くない。あれこれ検討した中の一つで、例えば熱交の漏れは無いかなど、内部状況をなんとか見たいと数値計算しようとした時の表である。
表の計算に必要な実測定データは19個である。後はこれらの関数で値を求めている。I7、I8セルなどを見れば使い方が分かるだろう。F13、I13セルなどはSteam97.DLLの関数である。
デューリング線図による濃度計算点は緑のセルである。これらにより各流量が計算できる。
当該機はシングルフローであり溶液の流れは破線矢印の方向である。これに沿ってセルの数式を見ていけばどこでどの関数を使い、どこで他のセルを代入しているかが分かる。
高再加熱蒸気流量は、高再での熱バランスが取れるように計算した。冷水、冷却水流量も同じである。
全ての部位で熱の入出力は同じであるはずだが、測定誤差か計算誤差の累積か、他の熱交と低再でバランスが取れてないから内部が計算できたとは言えないが、こちらとしては何とかヒントが欲しいと、メーカーの設計に設計値と比較して何か掴めないか聞いてもらおうとしたが、なしのつぶてである。
依頼手続きがどこかで途切れたか、設計システムとは異なるkcalベースのデータなど今頃見せられても何とも検討の仕様が無いということか、素人の我流の計算手法なんか見てられないと言うことか。
この表は冷媒単位量当りの計算であるが、実際の製造熱量から実流量と比較したのが青色のセルである。冷却水量はぴたり、冷水量もそこそこである。参考に温度計のどの程度の誤差に相当するかも見てみた。
一方蒸気量は計算と実際が大幅に異なる。これが「各部の蒸気流量は正しいか」と蒸気の製造消費の対比を行った発端である。結果として当該号機の蒸気量の測定誤差は製造消費の差で見る限り見つから無かった。ドレン量を測る手もあるが、他の省エネマターが目白押しで後回しになっている。
また冷却水ポンプの動力は、見込みと異なり流量を半分にしても100kwから90kwへの低減に止まった。揚程が増えたからである。流量比だけで削減量を算定してくるのはインチキである。「揚程増分を評価するのは難しいんです。だからインバーターへの変換を御推奨してるじゃないですか。お客さんが金だけ懸けてくれれば、難しいことは何も無く、それだけで済むんですから」?
一人突っ込みも結構くたびれるが「ふーん、じゃあ冷却水ポンプ動力は減ってメデタシメデタシとして、その時冷凍機の効率はどうなるんだ?」という主旨のビデオを以下に置いておく。
と言うことでシステマチックな計算としては成功したとは言えず適当なサンプルではないが、個々の関数の使用例としての範疇で見ていただきたい。マクロの転写が面倒なら読者独自の白紙シートを追加していって計算すればよいだろう。いずれかの時点で「吸収式内部計算」シートは削除してもらえばよい。
筆者は昔、蒸気サイクルの給水加熱器の仕切板の穴開きとその大きさを外からのデータ採取計算だけで発見したことがあり、このような手法で運転支援援警報に追加出来ないかと思ってしまう。吸収式冷凍機の監視ポイントは2倍になるが。
*** 給水加熱器の穴開き ***
タービン蒸気サイクルの復水器からボイラーエコノマイザーまでの給水系統は、復水器ホットウエル→復水ポンプ→低圧給水加熱器→脱気器→給水ポンプ→高圧給水加熱器→ボイラーとなっている。
給水加熱器はそれぞれ2系統あったが、あるとき所長がやってきて「日報で見ると高圧給水加熱器出口の温度指示に2系統で差がある。異常じゃないか」とのご指摘。
たしかに280℃以上の温度にA系B系で数℃の差があるのは気づいていたが、通常そのような差が出ることは考えられないので、温度計の水銀が飛んだかなにかだろうと勝手に判断してめくら判を押していた。
「本体に異常があるのではないかという観点で調査せよ」
温度計を交換したが、差はついたまま。
温度計がウエルにちゃんと収まっているか確認するが、問題なし。
これは本物かなあと思いつつ、高圧給水加熱器の片肺運転、途中の抽気 (蒸気サイクル効率改善のため、タービン内で仕事途中の蒸気を部分的に抜取って給水の加熱に使う) を色々なパターンで停止するとヒートバランス計算で8台の高圧給水加熱器のうちのひとつが充分に機能してないという計算になる。
本来、そのような事態になれば、抽気のドレン(復水)量に変化が現れ、ドレン調整弁の開度からも異常が発見できるはずであり、これに変化が無いため、めくら判となった部分もあったが、後で反省すれば、Feイオンを含む高温水が調整弁ポートを通過し膨張する時、イオンが酸化鉄となってポートの下流側に析出付着し、ドレン量と弁開度は必ずしも一致しないことがあることを失念していた。
その悔しさもあって、「原因は給水仕切板穴明きによるショートパス。穴の大きさは計算で直径32ミリ」とまで断定してレポートにまとめた。
その次の定検 (定期点検) 時に水室を分解し、点検したところほぼ算定した通りの大きさの穴明きが発見された
計算では穴が開いていることになるが、本当のところはどうか、水室が開く当日は、溶接部がカットされ、仕切り板が現れるのを、今かいまかと手に汗を握りながら待っていた。
大和の主砲もかくやと思われる、大砲の breech のような水室の蓋が下ろされ、現れた仕切り板は、おおどういうこと、計算どおりの直径の穴が開いていて、やったぁ。思わずVサインでついでにレポートまで持ってきて、物証と一緒に写真に納まった。なんてことは全くない。
途中で、このトーンはおかしい、いつものペースじゃないと気付かなけりゃ読者として本物じゃない。Its tone is aggressive but unserious.【ミッション・インポッシブル、Vanessa Redgrave】
レポート出したらもう終わり、間違ってたらどうしようなんて少しも考えない、というか興味が無くなる。だって、温度指示が正しかったら、学校で習った理論どおり計算して、それしか有りえないんだもの。
殆ど忘れかけていたが、定検に入って2,3日たった休日、寮の鉄棒にぶら下がっていたら、補修課の担当が来たので、
「そう言えばヒーターの水室開けた?」
「うん」
「仕切り板穴開いてた?」
「うん」
「計算どおりの大きさ?」
「うん」
Thank you, you've been helpful.【大逆転、エディ・マーフィー】
その時はずいぶんつっけんどんなリアクションだなと思ったが、今気付いた。つまり彼は空けるのに1千万掛ると言って反対した補修課長の部下であり、自分の仕事。一緒になって反対したか、もしかしたら反対の筆頭者。
嫌々開けた結果がレポート通り。
相手に下るのは面白くない。
*******
この後筆者の当面の仕事は、パーソナルユースの関数を突如オープンにしたことでエージングも出来てないから、誤差他の確認をすべきであるが、この blog の執筆も忙しいし・・・ご叱責を賜れば有りがたい。また今後の訂正バージョンは明記する。
「Syo-ene」カテゴリの記事
- Plein Unite(2009.09.05)
- 障害はあれば有るほど燃える(2008.09.29)
- ターボ運転領域に於ける冷却塔特性(2008.02.13)
- 5D相関図。付いて来れるかな♪(2009.10.23)
- ターボ冷凍機(定速度ベーンコントロール型)の特性(2008.02.13)



コメント