照度から光度を求める計算ツール
この計算ツールは、理想的な点光源が特定の方向へ放つ光の強さを求めます。測定した照度をlux、光源までの距離をmで入力してください。逆二乗則の I = E × r² を適用し、光度をcandelaで表示します。遮るものがなく、受光面を入射光に正対させ、測定距離に比べて光源が十分に小さい条件での直接測定を対象としています。
無料で実行
luxの測定値からcandelaを求める方法
照度と光度は、測光における異なる性質を表します。luxで表す照度は、面の1平方メートル当たりに届く光束の量です。一方、candelaで表す光度は、光源が特定の方向へ単位立体角当たりに放つ光の量です。理想的な点光源では、距離が大きくなるほど光が広い面積へ分散します。この広がりを表すのが逆二乗則であり、照度は光度を距離の二乗で割った値になります。式を光度について解くと I = E × r² です。測定値を illuminance_lux、光源から受光面までの直線距離を distance_m として入力してください。この幾何条件では1 luxに1平方メートルを掛けた次元が1 candelaに相当するため、結果はcandelaになります。たとえば2メートルで125 luxなら、測定方向の光度は500 candelaです。この値は測定した方向についてのもので、全方向に同じ強さで放射されるという意味ではありません。
距離と照度を正しく測定するポイント
結果の信頼性は、計算そのものより測定条件に大きく左右されます。距離は器具の外縁やスタンドからではなく、光源の実効的な発光中心から照度計の受光面までを測ってください。光が受光面へ垂直に入るよう、検出器を光源へ正対させます。検出器が傾くと余弦応答により、光源の光度が変わっていなくても表示値が低下する場合があります。室内を暗くするか、試験光源を消した状態で背景照度を測り、その値を差し引いて周囲光の影響を減らしてください。放電ランプ、調光したLED、安価なセンサーでは、光源と計器が安定するまで待つことも重要です。距離はm、照度はluxで入力します。cmの値をmとして入力すると、単位の誤差まで二乗されます。複数の距離で測定し、距離を2倍にしたとき照度が約4分の1になり、算出したcandelaがおおむね一定か確認すると有効です。
逆二乗則を適用できる条件
逆二乗則は、遮蔽物のない空間に置かれた点光源を表す幾何学モデルです。実際の照明器具には大きさがあり、レンズ、反射板、拡散板、角度ごとの配光特性もあります。測定距離が発光部の寸法より十分に大きい場合に限り、点光源として扱ってください。近距離では発光部の各位置から検出器までの距離が無視できないほど異なるため、結果が不正確になります。壁、天井、机、光沢物からの反射光は、光源から直接届いていない照度を加え、光度を過大評価させます。霧、スクリーン、カバーは直接光を弱めることがあります。また、この式は垂直入射を前提とし、斜めから測る場合は検出器の幾何条件を別途補正する必要があります。結果は試験方向の光度であり、総光束のlumenではありません。総光束には全方向の光度積分または適切な測光機器が必要です。自動呼び出しは$0.002で、ブラウザーでも同じ決定論的な式と検証規則を使用します。
活用例
ランプの方向別光度を推定
既知の距離で安定した照度計の値を測り、測定軸方向の光度へ換算します。
光線の方向ごとの強さを比較
角度を変えて測定を繰り返し、照明器具の方向別配光を比較します。
逆二乗則との整合性を確認
複数の距離でcandelaを算出し、値が一致しない場合は反射や近接場の影響を調べます。
よくある質問
どの計算式を使用しますか?
I = E × r² を使用します。Iはcandela単位の光度、Eはlux単位の照度、rはm単位の距離です。
距離をmで入力する必要があるのはなぜですか?
luxは1平方メートル当たりのlumenなので、mを使うと単位が整い、candelaを直接求められます。cmやftは先に換算してください。
結果はランプのlumen値と同じですか?
同じではありません。candelaは方向別の光度、lumenは総光束です。lumenの推定には全体の角度分布が必要です。
LEDパネルや長い蛍光管にも使えますか?
距離が光源の寸法より十分に大きい場合に限り、近似として使用できます。近距離の面光源や線光源は点光源として振る舞いません。
周囲光はどのように補正しますか?
環境を変えずに光源を消して背景照度を測り、光源を点灯したときの値から差し引いてください。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/optics/luminous-intensity-from-illuminance \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"illuminance_lux":125,"distance_m":2}'const res = await fetch("https://api.kit.forhosting.com/optics/luminous-intensity-from-illuminance", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"illuminance_lux": 125,
"distance_m": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/luminous-intensity-from-illuminance",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"illuminance_lux": 125,
"distance_m": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/luminous-intensity-from-illuminance", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"illuminance_lux":125,"distance_m":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"illuminance_lux":125,"distance_m":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/luminous-intensity-from-illuminance", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"illuminance_lux": 125,
"distance_m": 2
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.luminous_intensity_from_illuminance",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |