水深別の空気消費量計算
この計算機は、水面空気消費率(SAC)を指定深度での推定呼吸ガス流量へ換算します。海水または淡水の周囲圧、1 分当たりの消費量、タンク圧力の低下、使用可能ガス量、理想化した継続時間を求めます。タンクの内容積と、計画上の予備ガスを確保した後に実際に使える圧力だけをご入力ください。結果は計画用の目安であり、講習、残圧計の確認、浮上用・ガス共有用の確保、チームの保守的な手順に代わるものではありません。
無料で実行
代表的な SAC をお使いください
SAC は、呼吸したガスを水面換算した 1 分当たりの体積です。信頼できる開始・終了圧力、タンク内容積、平均深度、時間を記録したダイブログから求めた値をお使いください。穏やかな潜水の値は、寒さ、流れ、運動、緊張がある状況では楽観的すぎる場合があります。予定条件に合う保守的な値を選んでください。入力単位は 1 ATA における L/min であり、bar/min ではありません。本ツールは SAC 自体を推定せず、好条件の 1 回の記録を個人の固定値として扱いません。
深度を流量と圧力低下へ換算します
潜降すると周囲圧が上がり、レギュレーターは密度の高いガスを供給します。海水では 10 m、淡水では 10.3 m ごとに 1 ATA が加わる近似を用い、SAC に周囲圧を掛けます。その流量をタンク内容積で割ると 1 分当たりの bar 低下が得られます。一定深度のモデルであり、潜降、浮上、停止、温度、高圧ガスの非理想性、実際の呼吸変化は積算しません。
計画した予備ガスを必ず守ってください
残圧計の開始値ではなく、使用可能圧力をご入力ください。予備、浮上、ガス共有、手順上の余裕を先に差し引きます。継続時間は使用可能リットルを深度での消費量で割った、一定深度での理想値にすぎません。減圧限界や安全な滞在時間を示すものではありません。残圧計を頻繁に確認し、チームで最も制約の大きい人、受講した訓練、完全なガス計画に従ってください。
活用例
計画深度を比較する
同じ SAC でも周囲圧が高くなると消費量と圧力低下が増える様子を確認できます。
タンク容量を比較する
異なる内容積で同じ呼吸流量が何 bar/min になるかを比較できます。
保守的な計画を確認する
予備を除いた圧力だけを使い、一定深度での目安時間を求められます。
よくある質問
計算機の料金はいくらですか?
ブラウザーでは無料で動作します。API の各リクエストは $0.002 です。
SAC とは何ですか?
水面換算した 1 分当たりの呼吸ガス消費率です。ここでは 1 ATA の L/min で入力します。
深くなると消費量が増えるのはなぜですか?
レギュレーターが周囲圧のガスを供給するため、密度が上がるほど 1 呼吸で水面換算のガスを多く使います。
タンクの開始圧力を入力しますか?
いいえ。計画上の予備と浮上用ガスをすべて差し引いた使用可能圧力だけをご入力ください。
表示時間は安全に滞在できる時間ですか?
いいえ。一定深度のガス推定であり、減圧、最低ガス、浮上、緊急事態は計算しません。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/hobby/sport-dive-air-consumption \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sac_rate_l_min":18,"depth_m":20,"tank_volume_l":12,"usable_pressure_bar":150}'const res = await fetch("https://api.kit.forhosting.com/hobby/sport-dive-air-consumption", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sac_rate_l_min": 18,
"depth_m": 20,
"tank_volume_l": 12,
"usable_pressure_bar": 150
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/hobby/sport-dive-air-consumption",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sac_rate_l_min": 18,
"depth_m": 20,
"tank_volume_l": 12,
"usable_pressure_bar": 150
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/hobby/sport-dive-air-consumption", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sac_rate_l_min":18,"depth_m":20,"tank_volume_l":12,"usable_pressure_bar":150}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sac_rate_l_min":18,"depth_m":20,"tank_volume_l":12,"usable_pressure_bar":150}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/hobby/sport-dive-air-consumption", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"sac_rate_l_min": 18,
"depth_m": 20,
"tank_volume_l": 12,
"usable_pressure_bar": 150
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "hobby.sport_dive_air_consumption",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |