無酸素閾値計算機
30歳で安静時心拍数が60なら、推定の無酸素性作業閾値は毎分170.5拍です。推定最大の190と安静時の差である予備能の85%を、安静時心拍数に足して求めます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- Age
- 30
- 安静時心拍数
- 60
- 最大心拍数
- 190 bpm
- Hrr
- 130
- 強度 (%)
- 85
- しきい値
- 170.5
無酸素閾値は、乳酸の産生が除去を上回り始める心拍数であり、そのペースを超える努力は長く維持できません。コーチや持久系選手は、実験室の乳酸テストなしにテンポ走・閾値走・インターバルを組むためにこの数値を調べます。本計算機は、年齢と安静時心拍数からKarvonenの心拍予備能法で無酸素閾値を1分あたりの拍数として推定します。最大心拍数は220 − age、予備能は最大から安静時を引いた値、閾値は安静時にその予備能の85%を加えた値です。
Karvonen法が無酸素閾値の心拍数を推定する仕組み
無酸素閾値は、多くのコーチング現場では乳酸閾値とも呼ばれ、長く維持できる仕事から疲労が急速に蓄積する努力へ体が切り替わる心拍数です。実験室試験は段階的なペースで血中乳酸を測りますが、ランナー、サイクリスト、ローワー、チーム競技の選手の多くは実験室に行かないため、すでに集めている数値からの現場推定が必要です。
Karvonenの心拍予備能法は、任意の強度パーセントを尋ねずにその推定を提供します。まず最大心拍数を年齢(年)の220 − ageとして予測します。これは運動科学の授業で教えられる古典的なFox-Haskellの簡便法です。
次に、数分間静かに座ったあと、多くの場合朝一番に測る安静時心拍数を引き、安静と最大のあいだの使える幅である予備能を得ます。無酸素閾値はその予備能の85%に置かれます。計算機は安静時にその85%を加え、結果を1分あたりの拍数で報告します。
この85%という慣例は、楽な有酸素作業の上、全力インターバルの下に位置する閾値強度の、Karvonen法における標準的な代用です。本ページは無酸素閾値の検索に応えるため、強度は自由パラメータではありません。任意のパーセントは一般的な目標心拍数ツール、5ゾーン表はゾーンツールの役割です。
必須入力は年齢と安静時心拍数のみで、算術はネットワークも時計も乱数生成器も参照しないため、同じ数値の組は常に同じ閾値(bpm)を返します。
入力する値と計算できない場合
Fox推定の最大心拍数が実用的な範囲に収まるよう、年齢は1歳から120歳のあいだである必要があります。安静時心拍数は正の数、すなわちゼロより大きく有限でなければなりません。安静時は推定最大(220 − age)を厳密に下回る必要もあります。
そうでなければ予備能が正にならず、両方の心拍数を示すメッセージで拒否されます。unit は常に bpm、formula はKarvonenの恒等式を再掲し、method は常に karvonen なので、下流のコードは形を推測せずに分岐できます。例: age 30、安静 60 なら最大 190、予備能 130、閾値 170.5 bpm です。
60 に 130 の 85% を加えると 170.5 になるためです。
トレーニングでの使い方と限界
ジムでの実演、体育の実験、選手の簡易確認には、ブラウザ内の無料無酸素閾値計算機をご利用ください。表計算ごとに予備能の計算を作り直す必要はありません。エンジンが拒否した検証失敗では残高は消費されません。
毎朝同じ条件の安静時測定と年齢を組み合わせ、tempo走やクルーズインターバルの処方の横に threshold を保存してください。220 − age は集団の推定にすぎません。真の最大値は遺伝、服薬、競技で変わり、本計算機は実験室で測った最大心拍数の上書きを受け付けません。
診断用の医療機器でも、Karvonenの5ゾーン表でも、強度を自由に選ぶ目標心拍数ソルバーでもありません。それらは別の検索意図であり、別のページがあります。入力は他のKIT parse項目と同じ保持ルールに従い、アルゴリズムが完全に決定的であるため、結果は継続的インテグレーションのフィクスチャに安全に固定できます。
心臓疾患のある方、心拍数に影響する薬を服用中の方、医師から制限を受けている方は、単一の公式ではなく専門家の助言に従ってください。
活用例
持久系コーチングとテンポ走のセッションカード
コーチが選手の年齢と朝の安静時心拍数を入力し、乳酸ラボなしにテンポ走・クルーズインターバルのカードへ無酸素閾値(bpm)を印刷します。
よくある質問
強度が心拍予備能の85%に固定されているのはなぜですか?
Karvonen予備能の85%は、無酸素/乳酸閾値強度の現場での標準的な代用です。本ページは任意のパーセントを受け付けません。それは別の計算機です。
安静時心拍数が正の数でない場合はどうなりますか?
安静時心拍数は正の有限数で、推定最大(220 − age)を厳密に下回る必要があります。ゼロ、負の値、非数値は拒否され、課金されません。
220から年齢を引いた値は真の最大心拍数ですか?
いいえ。 教育と計画のための単純な集団推定です。真の最大値は個人差があります。本製品は実験室で測った HR_max の上書きを受け付けません。
無酸素性作業閾値はどのように計算されますか?
まず最大心拍数を220から年齢を引いて推定し、そこから安静時心拍数を引いて予備能を求めます。閾値は安静時心拍数に予備能の85%を足した値で、30歳・安静時60なら170.5です。
安静時心拍数はどう測ればよいですか?
座った状態で数分間静かにしてから測り、できれば朝起きてすぐに測ります。毎回同じ条件で測ると、推定した閾値を比べやすくなります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/sports/anaerobic-threshold \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"age":30,"resting_hr":60}'const res = await fetch("https://api.kit.forhosting.com/sports/anaerobic-threshold", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"age": 30,
"resting_hr": 60
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/sports/anaerobic-threshold",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"age": 30,
"resting_hr": 60
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/sports/anaerobic-threshold", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"age":30,"resting_hr":60}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"age":30,"resting_hr":60}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/sports/anaerobic-threshold", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"age": 30,
"resting_hr": 60
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "sports.anaerobic_threshold",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
安静時心拍数は正の数でなければならず、そうでなければタスクはinvalid_inputで失敗し、課金されません。
入力・出力、および計算機がリクエストを拒否する場合
必須の有限な数値を2つ含むJSONボディを送信してください。age(年)と resting_hr(1分あたりの拍数)です。年齢は years または age_years でも受け取れます。安静時は resting、rhr、rest_hr、resting_heart_rate、hr_rest を受け付けます。ゼロ、負の値、空文字、非数値テキストはすべてinvalid_inputで失敗し、課金されません。成功時、ボディは age と resting_hr を返し、続けて hr_max、hrr(予備能)、常に85である intensity_percent、そして threshold(1分あたり拍数の無酸素閾値、安定したgoldensのため小数第1位に丸め)を返します。時計やセッションカードには threshold を、紙の上で学ぶ中間手順を示すには hr_max と hrr をご利用ください。
トレーニングでの使い方、API料金、この数値が意味しないこと
コーチングSaaS、ウェアラブル連携、学校のLMS、トレーニング日誌で安定した契約が必要な場合は、成功1件あたり$0.002のKIT残高で動くプリペイドAPIをご利用ください。SDKを提供する開発者は threshold、hr_max、hrr をダッシュボードへ写し、年齢・安静時・無酸素閾値(bpm)の列を書き出せます。これはコーチが安静時の脈を測ったあと手計算するのと同じ数値です。
連携の活用例
体育の授業とスポーツ科学の課題
学生は年齢と安静時心拍からKarvonenの無酸素閾値を計算し、手採点の代わりに決定的なJSONを自動チェッカーへ固定します。
ウェアラブルとトレーニング日誌のバックエンド
すでに安静時心拍を保存しているアプリは、Fox の 220−age と予備能85%を言語ごとに複製せず、プリペイドのエンドポイントで閾値(bpm)を取得します。
技術的な質問
ここでの無酸素閾値心拍数はどのように計算されますか?
HR_max を 220 − age とし、予備能を HR_max − resting_hr とし、threshold = resting_hr + 0.85 × 予備能 です。結果は1分あたりの拍数で返されます。
無酸素閾値計算機は無料ですか?
ブラウザのツールはお使いの端末で無料です。API呼び出しは成功1件あたり$0.002のプリペイドKIT残高を使い、検証失敗は課金されません。