Casio Basic で圧力換算プログラム

 
2017/08/15


Casio Basic で圧力換算プログラム - fx-5800P, fx-9860GII, fx-CG20/50


圧力の概念圧力は、単位面積あたりの力だと定義されていて、具体的には力を面積で割って圧力の値が得られる。


左図はネットで見つけた画像 (F_Master's Eye)を使わせて貰っているが、国際単位系の Pa (パスカル) で圧力を説明したものだ。

ところが、実際の圧力の単位は、地域や技術分野に応じて、今でも異なった単位が普通に使われていて、私にとっては暗算で換算するのがとても厄介だ。

というのも、アメリカでは psi (ポンド/平方インチ)、イギリスなどヨーロッパでは bar (バール)、日本やアジアでは国際単位として推奨されている Pa (パスカル)が使われることが多い。また分野が変われば、atm (気圧)、mmHgmmH2O など、国際単位系ではなくて昔からの単位が未だに使われている。圧力単位ほど混乱しているものは無いと思う。

国内外の様々な分野の人達と技術的な話をしている時、好き勝手な圧力単位で話をするものだから、チョット待った!と言いたくなることが有る。パソコンを使う余裕がないことが多く、このような時こそプログラム電卓の本領発揮だと思う。

そこで、Casio Basic で自作して常用している圧力換算プログラムを紹介する。



各種圧力の換算式

最初に fx-5800P 用プログラムを作った。このプログラム電卓の画面は4行表示なので、換算する圧力を psiKPabaratm の4種類を選んだ。換算式の導き方は様々あるが、結果は1つだ。今回は Kgf/m2 を基準の単位として、上記4つの単位間の換算式を作った。

1. psi (変数 P)
1 psi = 1 ポンド/インチ2 = 453.59237 (gf) / (2.54cm)2 = 70.30695796 (gf/cm2) = 703.0695796 (Kgf/m2)
変数 S =703.695796Kgf/m2P (psi) としたときG =PSKgf/m2
変数 T = S/U =6.894757293KPa
N =PS/UKPa
=0.068947573bar
B =PT/Vbar
=0.068045964atm
A =PT/Watm

2. KPa (変数 N)
1 KPa = 1000 (N/m2) = 1000/980665 (Kgf/m2)
変数 U =101.9716213Kgf/m2N (KPa) としたときG =NUKgf/m2
=0.145037738psi
P =N/Tpsi
変数 R =0.01bar
B =NRbar
=0.009869233atm
A =N/Watm

3. bar (変数 B)
1 (bar) = 100 (KPa)
1 Bar = 変数 V =100KPaB (bar) としたときN =BVKPa
=0.980665Kgf/m2
G =BV/UKgf/m2
=14.50377377psi
P =BV/Tpsi
=0.98692367atm
A =BV/Watm

4. atm (変数 A)
1 atm = 101.325 KPa
1 atm = 変数 W =101.325KPaA (atm) としたときN =AWKPa
=0.144118026Kgf/m2
G =AW/SKgf/m2
=14.69594878psi
P =AW/Tpsi
=1.01325bar
B =AW/Vbar

4つの単位で換算した値を P (psi)、N (KPa)、B (bar)、A (atm) とし、計算を分かり易くするために 変数 STUVW を用いる。変数 GKgf/m2 単位を基準に考えるためのもので、プログラムでは使わない。

fx-5800P で作ったプログラムを fx-980GII や fx-CG20 / CG50 にも移植し、どのプログラム電卓でも圧力換算ができるようにしている。


プログラムの概略

表 示
画面表示を以下のようにする。
1.psi:
2.KPa:
3.bar:
4.atm:

構 造
プログラムの構造は以下のようにする。

[初期設定]

[変数の初期化]

[初期の画面表示]
 (fx-5800P と グラフ関数電卓では記述が異なる)


While 1

 [キー入力取得] (fx-5800P とグラフ関数電卓ではキーコードが異なる)

 [換算計算]


 [画面表示の更新]
 (fx-5800P とグラフ関数電卓では記述が異なる)


WhileEnd


[プログラム終了時の画面表示]
 (fx-5800P とグラフ関数電卓では記述が異なる)


なお、当ブログオリジナルの汎用サブルーチン:入力ボックス INP を利用する。
fx-5800P 用入力ボックス
fx-9860GII / fx-CG20/50 用入力ボックス


機種別のプログラム・トピックス

fx-5800P 用プログラム
fx-5800P では小文字のアルファベットが使えないので、関数や定数をうまく利用して小文字を表現する。

Locate 1,1,"1.psin("
Locate 6,1,": "
Locate 1,2,"2.KPao"
Locate 6,2,":"
Locate 1,3,"3"
Locate 2,3,"Abs("
Locate 2,3,"."
Locate 4,3,"ao"
Locate 5,3,"re"
Locate 6,3,":"
Locate 1,4,"4:atm:"


1.psi: の入力方法
- "1." ⇒ [1] [.] 
- "" ⇒ [FUNCTION] [1] (1:MATH) [▼] [▼] [▼] [4] (4:p)
- "sin(" ⇒ [sin]
- "" ⇒ [SHIFT] [√□] (:) 

2.psi: の入力方法
- "2.KP" ⇒ [2] [.] [K] [P]
- "ao" ⇒ [FUNCTION] [4] (CONST) [5] (5:ao)
- ":" ⇒ [SHIFT] [√□] (:)

3.bar: の入力方法
- "" ⇒ [3]
- "Abs(" ⇒ [FUNCTION] [1] (MATH) [▼] [1] (1:Abs)
- "" ⇒ [.]
- "ao" ⇒ [FUNCTION] [4] (CONST) [5] (5:ao)
- "re" ⇒ [FUNCTION] [4] (4:CONST) [▼] [3] (3:re)
- "" ⇒ [SHIFT] [√□] (:)

4.atm: の入力方法
- "4." ⇒ [4] [.]
- "atm" ⇒ [FUNCTION] [4] (CONST) [▼] [▼] [ ▼] [▼] [8] (8:atm)

具体的なプログラムは、以下を参照;
プログラムライブラリ - 圧力換算 (fx-5800P)


fx-9860GII、fx-CG20/50 用プログラム
これらのグラフ関数電卓では、小文字、大文字の両方のアルファベットが使えるので、fx-5800P のような画面表示での工夫は不要で、簡単に記述できる。また、キーコードが fx-5800P と異なるので、それに合わせて変える。グラフ関数電卓 fx-9860GII、fx-9860GII SD、fx-CG10、fx-CG20、fx-CG50 などのキーコードは完全に同じなので完全互換のプログラムになる。

なお、fx-5800P のテキスト画面は4行16桁であるが、これらのグラフ関数電卓では7行21桁と広いことを活かして、見やすく使いやすくするために画面表示を変える価値はあると思う。

具体的なプログラムは、以下を参照;
プログラムライブラリ - 圧力換算 (fx-9860GII、fx-CG20 / CG50)




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: CasioBasicプログラム電卓、fx-5800P、fx-9860GII、fx-CG20、fx-CG50
リンク集 | ブログ内マップ

関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

コメントの投稿

非公開コメント

最新記事
検索フォーム
最新コメント
カテゴリ
C# (3)
Visitors
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを作って、使ってナンボ!

実際に触って気づいたこと、自作プログラム、電卓プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではなく、Casio Basicが面白いと感じる1ユーザーです。


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR