プルアップ抵抗の電流・ローレベルシンク電流計算
この計算機は、抵抗を介して正電源へ接続されたデジタル入力またはオープンドレイン出力にオームの法則を適用します。電源電圧と抵抗値を入力すると、信号をローに駆動した際の電流、アンペアおよびミリアンペア単位のシンク電流、抵抗の理想的な消費電力が求められます。ロー電圧を完全な 0 V と仮定するため、部品選定、GPIO 負荷、電力予算を検討する際の明確な一次確認としてご利用いただけます。
無料で実行
プルアップ電流の意味をご確認ください
プルアップ抵抗は信号ノードを正電源へ接続し、どのデバイスも能動的に駆動していないときに明確なハイ状態を作ります。オープンドレイン、オープンコレクタ、または通常のデジタル出力がローを出力すると、グランドへの経路が形成されます。その結果、電流は電源からプルアップ抵抗を通り、出力ピンへ流れ込みます。この計算機では理想的なロー状態を 0 V とするため、電源電圧の全体が抵抗にかかります。電流は I = V / R で求めます。同じ値をローレベルのシンク電流として表示するのは、ノードをローに維持する間、出力デバイスがその電流を連続して吸い込む必要があるためです。アンペアとミリアンペアの両方を表示するので、データシートの制限値と容易に比較できます。まず、選択した抵抗が出力の安全な吸い込み能力を超えないことをご確認ください。また、ローに保持される信号ごとに、この電流が電源から消費される点にもご注意ください。
電流、速度、電力から抵抗をお選びください
プルアップ抵抗を大きくするとローレベル電流と静的電力は減り、小さくするとプルアップが強くなります。ただし、判断基準は省電力だけではありません。抵抗は、配線、コネクタ、デバイスピン、測定プローブを含む信号全体の容量を充電しなければなりません。値が大きすぎると、立ち上がりエッジがバス周波数や受信入力に対して遅くなる場合があります。小さすぎると、ドライバーが保証するシンク電流を超えたり、有効なロー電圧を維持できなくなったりします。この結果は、ピンの絶対最大定格および推奨動作条件と併せてご使用ください。表示する抵抗電力は P = V² / R によるロー期間中の理想的な損失です。温度を考慮し、十分に余裕のある定格電力をお選びください。信号が一部の時間だけローの場合、平均電力はデューティ比に応じて下がりますが、瞬時シンク電流は変わりません。
実回路では理想条件との差をご考慮ください
実際の出力トランジスタは通常、信号を正確な 0 V まで下げません。データシートには、特定のシンク電流における最大ローレベル出力電圧が記載され、一般に VOL と呼ばれます。実回路で抵抗にかかる電圧は、およそ電源電圧から VOL を引いた値になるため、実電流はここに示す理想値よりわずかに小さくなります。VOL が電源電圧に比べて十分小さい場合は、この結果を保守的なシンク電流の見積もりとしてお使いいただけます。その後、計算電流をデータシートの試験条件と比較し、VOL の保証値を確認し、受信側がその電圧をローと認識できることをご検証ください。並列のプルアップ抵抗があると、合成コンダクタンスによりシンク電流が大幅に増える場合もあります。さらに、起動条件、レベルシフター構成、耐圧、漏れ電流もご確認ください。オームの法則で電流は求められますが、安全性は接続された全デバイスの制限としきい値に依存します。
活用例
マイコンの GPIO を確認する
ファームウェアがラインをローにしたとき、GPIO が要求電流を安全に吸い込めるかご確認いただけます。
オープンドレインバスの負荷を見積もる
割り込み、リセット、I²C などについて、立ち上がり時間を調べる前にプルアップ値を比較できます。
静的電力を見積もる
アクティブロー制御信号が有効な間の抵抗損失と電源電流を計算できます。
よくある質問
計算料金はいくらですか?
ブラウザーでは無料で実行できます。API での実行は1リクエストあたり $0.002 です。
プルアップ電流とシンク電流は同じですか?
ローを理想的な 0 V とする場合は同じです。抵抗を流れる全電流を、ローを保持するデバイスが吸い込みます。
抵抗値はどの単位で入力しますか?
オームでご入力ください。4.7 kΩ なら 4700、10 kΩ なら 10000 と入力します。
信号がハイのときも電流は流れますか?
理想的には、両端が電源電圧なら定常電流は流れません。実回路には漏れ電流が存在する場合があります。
実測電流が小さくなるのはなぜですか?
実際の出力にはゼロでないロー電圧があり、抵抗には電源全体ではなく、電源から VOL を引いた電圧がかかるためです。
I²C のプルアップ値を選定できますか?
ローレベルの電流と電力のみを確認します。I²C では容量、立ち上がり時間、周波数、電圧制限も必要です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/elec/pull-up-resistor \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"supply_voltage":5,"resistance_ohms":10000}'const res = await fetch("https://api.kit.forhosting.com/elec/pull-up-resistor", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"supply_voltage": 5,
"resistance_ohms": 10000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/pull-up-resistor",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"supply_voltage": 5,
"resistance_ohms": 10000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/pull-up-resistor", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"supply_voltage":5,"resistance_ohms":10000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"supply_voltage":5,"resistance_ohms":10000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/pull-up-resistor", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"supply_voltage": 5,
"resistance_ohms": 10000
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.pull_up_resistor",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |