ショックレーのダイオード方程式計算ツール
ショックレーのダイオード方程式計算ツールは、印加したダイオード電圧、逆方向飽和電流、熱電圧から理想ダイオードモデルの電流を求めます。I = Is × (exp(Vd / Vt) − 1) を評価し、アンペア単位の電流に加えて、指数部に用いた正規化電圧も返します。決定論的に動作し、ネットワークへ接続しないため、回路の簡易確認、授業、表計算の置き換え、再現可能な技術計算にご利用いただけます。
無料で実行
ショックレーのダイオード方程式を理解する
ショックレー方程式は、理想的なダイオード接合の両端電圧と、そこに流れる電流との強い非線形関係を表します。この計算ツールでは、Vd がボルト単位の印加電圧、Is がアンペア単位の逆方向飽和電流、Vt がボルト単位の熱電圧です。計算式は I = Is × (exp(Vd / Vt) − 1) です。正の電圧は指数部に入るため、わずかな増加でも順方向電流が大きくなります。十分に負の電圧では指数項がゼロへ近づき、モデル上の電流はマイナス Is へ近づきます。これは降伏前の逆方向飽和を示すもので、アバランシェ降伏やツェナー降伏は表しません。室温付近の Vt はおよそ 25.85 ミリボルトですが、条件に合う値をご入力いただけます。この形式の理想係数は一です。直列抵抗、再結合、自己発熱、漏れ電流のばらつき、降伏が重要な場合は、より詳細な素子モデルまたは SPICE をご使用ください。
単位をそろえてパラメーターを入力する
voltage と thermal_voltage はボルト、saturation_current はアンペアでご入力ください。順方向バイアスには正の電圧、逆方向バイアスには負の電圧を用います。三つの値はいずれも有限値である必要があり、飽和電流と熱電圧はゼロより大きくなければなりません。簡略化したシリコン接合の例では、0.6 V、1e-12 A、0.02585 V と入力できます。25.85 mV を表す場合は 25.85 ではなく 0.02585 V としてください。同様に、1 ナノアンペアは 1e-9 A です。応答には diode_current、整形済みの入力値、Vd を Vt で割った normalized_voltage が含まれます。この比を確認すると、結果が急激に変わる理由を把握できます。ゼロ電圧付近の精度を保つため、実装では expm1 を使用しています。有限な数値範囲を超える入力は Infinity を返さずに拒否されるため、自動処理でも無効な JSON ではなく明確な入力エラーを受け取れます。
モデルの適用範囲を踏まえて結果を使う
返される電流は簡潔な解析モデルの結果であり、特定の実製品ダイオードに保証された電流ではありません。Is は個体や温度によって大きく変わり、Vt も絶対温度に依存します。実回路には電源抵抗、ダイオードのバルク抵抗、配線抵抗、電力上限があり、制限のない指数関数が予測する電流を抑えます。そのため、本ツールは授業、感度分析、初期検討、回帰テストに特に適しています。ハードウェア設計では、必ずデータシートと照合し、周辺回路も含めてご検討ください。逆方向バイアスでは、降伏領域にこの式を適用しないでください。ブラウザー計算は端末内で実行され、API 自動化は成功したリクエストごとに $0.002 です。両方が同じ純粋な計算処理を使うため、同じ入力から時計、乱数、外部サービス、隠れた環境依存なしに同一の JSON が得られます。検証エラーは結果を生成する前に通知されます。
活用例
ダイオードの演習問題を確認する
一般的な電卓へ指数式を何度も入力せず、理想モデルを評価して正規化電圧もご確認いただけます。
パラメーター感度を調べる
電圧、飽和電流、熱電圧を変えて API を呼び出し、モデル電流への影響を比較できます。
決定論的なテスト値を作成する
ネットワークに依存しない明確な式から、教材やソフトウェア試験用の安定した電流値を生成できます。
よくある質問
どの計算式を使用しますか?
I = Is × (exp(Vd / Vt) − 1) を使用します。Vd はダイオード電圧、Is は飽和電流、Vt は熱電圧です。
理想係数は含まれますか?
含まれません。指定された三つのパラメーター形式を実装しており、理想係数を一とした場合に相当します。
印加電圧に負の値を使えますか?
はい。負の電圧は逆方向バイアスを表し、降伏前には電流が負の飽和電流へ近づきます。
ツェナー降伏やアバランシェ降伏を計算できますか?
できません。この式には逆方向降伏、直列抵抗、自己発熱が含まれていません。
料金はいくらですか?
ブラウザー版は無料です。自動 API リクエストは、正常に処理された項目ごとに $0.002 です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/elec/shockley-diode \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"voltage":0.6,"saturation_current":1e-12,"thermal_voltage":0.02585}'const res = await fetch("https://api.kit.forhosting.com/elec/shockley-diode", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"voltage": 0.6,
"saturation_current": 1e-12,
"thermal_voltage": 0.02585
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/shockley-diode",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"voltage": 0.6,
"saturation_current": 1e-12,
"thermal_voltage": 0.02585
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/shockley-diode", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"voltage":0.6,"saturation_current":1e-12,"thermal_voltage":0.02585}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"voltage":0.6,"saturation_current":1e-12,"thermal_voltage":0.02585}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/shockley-diode", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"voltage": 0.6,
"saturation_current": 1e-12,
"thermal_voltage": 0.02585
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.shockley_diode",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |