ドライブの給油間隔と必要な給油回数を計算
長距離ドライブの総走行距離、満タン時の現実的な航続距離、安全のために残す割合を組み合わせて、給油計画を立てられます。入力した航続距離から安全余裕分を差し引き、その控えめな間隔を基に、走行中に必要となる給油回数を求めます。距離の2項目で同じ単位を使えば、マイルでもキロメートルでも計算できます。結果は計画の目安であり、推奨地点に営業中の給油所が必ずあることを保証するものではありません。
無料で実行
現実的な距離と航続距離を入力します
既に分かっている迂回路も含め、実際に走る予定の全距離を入力してください。満タン時の航続距離には、総走行距離と同じ単位を使います。両方をマイル、または両方をキロメートルにします。車載表示も参考になりますが、最近の実走行で得た値のほうが計画に適している場合があります。速度、坂道、風、気温、渋滞、タイヤ空気圧、ルーフボックス、けん引、積載量によって消費量は変化します。そのため、メーカーの最良条件の数値を保証値として扱わないでください。満充電1回の実用航続距離を入力すれば、電気自動車にも同じ計算を利用できます。出発時は満タンと仮定するため、最初の燃料は給油回数に含みません。調整後の間隔より短い旅行は0回となり、長い旅行では出発後から到着前までの給油だけを数えます。
安全余裕率を予備として確保します
安全余裕率とは、給油と給油の間に使い切らず残しておく、公称航続距離の割合です。航続距離が400マイルで余裕率が20パーセントなら、推奨間隔は320マイルです。給油所の休業、出口の見落とし、待ち時間、予期しない迂回、想定以上の消費に対応する余地になります。割合を大きくすると間隔は短くなり、通常は給油回数が増えます。小さくすると効率的ですが、柔軟性は低下します。全航続距離を予備にすると走行可能な計画間隔がなくなるため、0以上100パーセント未満で指定してください。一律の値ではなく、道路事情に合わせて選びます。サービスが多い高速道路では、給油所が少ない遠隔地の道路より小さな余裕でも対応できる場合があります。計算は決定的で、表示間隔だけを安定した精度に丸めるため、同じ入力からは常に同じ結果が得られます。
計算した間隔を実際の停止計画に反映します
推奨距離を計画上の最大間隔として扱い、その距離に達する前に利用できる給油所を選んでください。必要回数は、総距離を調整後の間隔で割り、必要な走行区間数を切り上げ、出発時の満タン1回分を差し引いて求めます。たとえば320マイル間隔で正確に640マイル走る場合、途中の給油は1回です。最初の燃料で第1区間を走り、給油後に第2区間を走ります。この回数は入力条件に基づく最小値であり、給油所の一覧ではありません。営業時間、燃料の種類、充電規格、工事、季節閉鎖、サービス間の距離は別途確認してください。食事や休憩のための早めの停止を、後の給油専用停止に置き換えることもできます。経路や実際の消費が大きく変わった場合は再計算してください。計算上の距離だけを根拠に走行を続けず、車両表示、警告、道路状況、利用可能な施設を優先してください。
活用例
長距離ドライブを計画する
長い経路で給油所を選ぶ前に、安全を考慮した間隔と最小の給油回数を見積もれます。
車両の候補を比較する
同じ旅程と安全余裕率で、航続距離の違いが給油頻度に与える影響を確認できます。
遠隔地の道路に備える
燃料供給が少ない、または不確かな地域では、安全余裕を増やして区間を短くできます。
よくある質問
計算料金はいくらですか?
API料金は1回のリクエストにつき$0.002です。
マイルとキロメートルのどちらを使えますか?
どちらも使えます。ただし、total_distanceとrange_per_tankには同じ単位を指定してください。結果もその単位で返されます。
出発時の満タンは給油回数に含まれますか?
含まれません。満タンで出発する前提で、走行中の給油だけを数えます。
安全余裕率が必要なのはなぜですか?
迂回、給油所の問題、実燃費の差に備えて航続距離の一部を残し、燃料を使い切る計画を避けるためです。
給油所も選んでもらえますか?
選びません。間隔と回数だけを計算するため、実際の給油所の場所と営業状況は別途ご確認ください。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/travel2/road-trip-fuel-stops \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total_distance":1000,"range_per_tank":400,"safety_margin_percent":20}'const res = await fetch("https://api.kit.forhosting.com/travel2/road-trip-fuel-stops", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total_distance": 1000,
"range_per_tank": 400,
"safety_margin_percent": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/travel2/road-trip-fuel-stops",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total_distance": 1000,
"range_per_tank": 400,
"safety_margin_percent": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/travel2/road-trip-fuel-stops", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total_distance":1000,"range_per_tank":400,"safety_margin_percent":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total_distance":1000,"range_per_tank":400,"safety_margin_percent":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/travel2/road-trip-fuel-stops", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"total_distance": 1000,
"range_per_tank": 400,
"safety_margin_percent": 20
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "travel2.road_trip_fuel_stops",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |