ダクト内の空気速度計算ツール
この計算ツールは、既知の体積流量とダクト内部の断面積から平均空気速度を求めます。風量を立方メートル毎秒、面積を平方メートルで入力すると、メートル毎秒、フィート毎分、キロメートル毎時で結果を表示します。連続の関係 v = Q / A を用いるため、表や手作業の単位換算を使わず、空調設計、試運転、機器比較、反復可能な技術計算にご利用いただけます。
無料で実行
実際の風量と内側断面積をご入力ください
評価する断面を実際に通過する体積流量から始めます。入力単位は立方メートル毎秒ですので、リットル毎秒、立方メートル毎時、立方フィート毎分の値は事前に換算してください。次に、ダクト内部の断面積を平方メートルで入力します。断熱材、ライニング、継ぎ目、板厚によって空気の通路が狭くなるため、公称外寸ではなく有効内寸をご使用ください。角形ダクトでは内幅と内高さを掛けます。丸形ダクトでは pi に内半径の二乗を掛けます。面積を直接入力する方式なので、楕円形、不規則形状、メーカー指定の断面にも対応できます。どちらの入力値も有限の正数でなければなりません。ゼロ以下の面積には物理的な意味がなく、風量がなければ速度を決定できません。入力条件が明示されるため、形状について隠れた仮定を避け、結果を確認しやすくなります。
連続の式による計算をご確認ください
定常流の連続関係を適用し、平均速度を体積流量÷断面積で計算します。風量が立方メートル毎秒、面積が平方メートルなら、結果はメートル毎秒になります。フィート毎分とキロメートル毎時は同じ結果の換算値であり、別々の推定値ではありません。風量が一定で面積が半分になると、速度は2倍になります。面積が一定で風量が二十パーセント増えると、速度も二十パーセント増えます。表示値は断面全体の平均で、局所的な速度分布ではありません。壁面摩擦、継手、ダンパー、曲がり、変形部、乱流は実際の分布に影響します。そのため、特に流れが十分に整っていない障害物付近では、一点の測定値がこの平均値と異なる場合があります。
設計と試運転に結果をご活用ください
計算値は、根拠の明確な技術チェック値としてお使いください。基本設計では、必要風量に対して複数の断面積を比較し、速度が極端に高い区間または低い区間を見つけられます。試運転では、測定または調整済みの風量と確認済みの内側断面積を組み合わせ、平均速度をプロジェクト基準と比較します。高い速度はダクトを小さくできる一方、圧力損失、発生騒音、ドラフト、継手への感度を高める可能性があります。低い速度はそれらを抑えられますが、より多くの空間と材料が必要です。許容速度は、設備の種類、音響目標、圧力余裕、用途、適用規格で異なるため、本ツールは合否を判定しません。摩擦損失、ファン動力、Reynolds 数、局部損失も計算しません。API は正規化済み入力、3種類の速度単位、式を1回 $0.002 で返します。
活用例
ダクト区間の寸法を検討する
設計風量に対して候補となる各断面積の平均速度を計算し、比較できます。
試運転データを確認する
測定風量と確認済み内側断面積から、バランシング報告書用の平均速度を求めます。
機器比較を自動化する
技術ワークフローで、多数の風量と面積の組み合わせを同じ方法で計算できます。
よくある質問
どの式を使用しますか?
v = Q / A を使用します。v は平均速度、Q は体積流量、A はダクト断面積です。
入力単位は何ですか?
風量は立方メートル毎秒、内側断面積は平方メートルで入力してください。結果は m/s、ft/min、km/h です。
丸形と角形の両方に使えますか?
はい。形状に応じた内側断面積を先に求めて入力してください。速度の関係は形状に依存しません。
ダクト内の全点で同じ速度ですか?
いいえ。断面平均です。境界層、継手、曲がり、乱流によって局所速度は変化します。
速度が適切か判定できますか?
いいえ。音響、圧力損失、快適性、設置空間に関する設備の基準や規格と比較してください。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/eng/duct-velocity \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"airflow_m3_s":1.2,"area_m2":0.3}'const res = await fetch("https://api.kit.forhosting.com/eng/duct-velocity", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"airflow_m3_s": 1.2,
"area_m2": 0.3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/eng/duct-velocity",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"airflow_m3_s": 1.2,
"area_m2": 0.3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/eng/duct-velocity", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"airflow_m3_s":1.2,"area_m2":0.3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"airflow_m3_s":1.2,"area_m2":0.3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/eng/duct-velocity", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"airflow_m3_s": 1.2,
"area_m2": 0.3
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "eng.duct_velocity",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |