世界を動かす技術を、日本語で。

Show HN: トランジスタのアニメーションを作成しました

2026年7月25日原文(brandonli.net)

概要

  • 半導体シミュレータ によるトランジスタのアニメーション解説
  • 電子(青)正孔(赤) の動きや再結合イベントを可視化
  • 拡散ドリフト、および端子での電流・電圧の表示
  • Brandon Li 作成、CC BY 4.0ライセンス
  • シミュレーションソフトで 電場 や他のデバイスも観察可能

トランジスタアニメーションの概要

  • 半導体シミュレータ を用いた、主要トランジスタの動作アニメーション
  • 青い点 は電子、 赤い点 は正孔を表現
  • 白いフラッシュ は再結合イベントの発生箇所
  • 最初のアニメーションセットでは、 キャリア速度 は拡散電流とドリフト電流の合計を全電荷で割った値で表現
    • 拡散自体はこのセットでは非表示
  • 対象デバイス:
    • NPN BJT
    • n-ch MOSFET
    • n-ch JFET

拡散とドリフトを含むアニメーション

  • 次のセットでは、 キャリアが拡散とドリフト の両方を受ける様子を可視化
  • 電荷キャリアの動き を最も正確に表現
  • 視覚的にはやや複雑
  • 対象デバイス:
    • NPN BJT(拡散あり)
    • n-ch MOSFET(拡散あり)
    • n-ch JFET(拡散あり)

端子ごとの電流・電圧表示

  • 最終セットでは、 各端子における電流と電圧 をアニメーションで表示
  • デバイスの動作をより直感的に理解可能
  • 対象デバイス:
    • NPN BJT(プローブ付き)
    • n-ch MOSFET(プローブ付き)
    • n-ch JFET(プローブ付き)

シミュレーションソフトウェアの詳細と拡張性

  • Brandon Li 作成のアニメーションは CC BY 4.0 ライセンスで利用可能
  • デスクトップ版ソフトウェア では、より詳細なシミュレーションや 電場分布 の表示も可能
  • IBGTSCR など、他の半導体デバイスのアニメーションも収録
  • 過去のスレッド情報:https://news.ycombinator.com/item?id=43942279

まとめ

  • リアルな視覚表現分かりやすさ を両立したトランジスタアニメーション
  • 学習用途デバイス理解 に最適なシミュレーションツール
  • 追加機能 として、電場や珍しいデバイスの動作観察も可能

Hackerたちの意見

おお、電気や電子についてはあまり詳しくないけど、トランジスタが基本的なものだってのは知ってる。だから、ちょっと目を細めれば、プログラムしたりコンピュータを使ったりするときに動かしてるものだって言えるかもね!少なくともその一部は。十分に理解してないから何も得られなかったけど、それに後悔はないよ。

「From nand to tetris」でググるか、Harrisの「Digital Design and Computer Architecture」って本を読めば、これらの機械がどう働くかのアイデアが掴めるよ。

ありがとう!私は電気工学の教育を受けたけど、BJTでの電荷の動きはあんまり理解できてなかった。使ったり公式を適用したりはできるけど、本当に「わかった」って感じじゃなかったんだ。これで少しクリアになったよ。

これ、何年も前にEEEの学位を取ったときにあったらめっちゃ役立っただろうな。私は代わりに電荷のキャリアを描いてたよ。

大学には、学んだことをシミュレーターにするコースが欠けてると思う。例えば、マクスウェルの方程式や半導体物理学とか。

これを許可されたライセンスで公開することを考えてくれない?カナダのアマチュア無線のトレーニングサイトを運営してるんだけど、レッスンに使いたいんだ。もちろん、出典は明記するよ。編集:おお、あなたのサイトは素晴らしいイラストでいっぱいだね。これがあれば、姪っ子もついにライセンスを取れるかも! :)

ああ、そうだね。ページを更新して、アニメーションが今はCC-BYライセンスの下にあるよ。気に入ってくれて嬉しい!

かっこいい!これが実際のシミュレーションとどれくらい違うのか気になるな!電子を点のように扱ってるのか、それともフィールドの計算だけなのかな?

シミュレーションはフィールドの計算だけを行っていて、空間の各点での平均電子とホールの密度を追跡してるんだ。ただ、フィールドの挙動と個々の粒子の動きには一対一の対応関係があって、これがアニメーションを可能にしてるんだ。つまり、拡散方程式はランダムウォークをする粒子の確率密度によって満たされるってこと。だから、拡散-ドリフト方程式に従う電子密度があれば、与えられた密度関数に合うようにドリフトを伴ったランダムウォークをする点を作れるんだ(その結果が2セット目のアニメーションだよ)。

すごくいいね!電気工学を始めたばかりの人にはめっちゃ役立つよ。

トライオードやテトロード、ペントードについてもやってほしいな。BJTの電流と、フィールドトランジスタや真空管の電圧の違いを探ってみたいんだ。今のところ、フィールドトランジスタでは流れが途切れず、BJTではベースを飛び越えてるのしか見えない。ペントードやグリッド電流で動く真空管を示すのは簡単じゃないと思う。真空管理論を理解するまでは、本当の電気エンジニアとは言えないんじゃないかな。

BJTの電流とフィールドトランジスタや真空管の電圧の違いについて BJTは、コレクタ電流が入力電圧(つまりベース-エミッタ電圧)で決まるデバイスとして、真空管やフィールド効果トランジスタよりもずっと正確にモデル化されるんだ。ただ、一般的な文献では、入力電流で制御されるって説明されることが多い理由はいくつかあるよ。一つは、出力電流と入力電圧の依存関係が真空管やFETよりも非線形が強いってこと。つまり、指数関数的で、多項式的じゃないから、ほんの数ミリボルトの小さい電圧差の時だけ線形近似できるんだ。一方で、コレクタ電流がベース電流に線形依存する範囲は比較的小さいから、BJTを使った回路の計算には便利なんだけど、この近似は正確な回路設計には役立たないことを忘れちゃいけない。ベータ(コレクタ電流とベース電流の比)は定数じゃなくて、大きなコレクタ電流や小さなコレクタ電流ではすぐに減少しちゃうからね。それに、出力電流/入力電圧の依存関係の大きな非線形性や、出力電流/入力電流の依存関係の近似線形性の他に、BJTが「電流制御」として説明されることが多い理由は、入力に大きなリーク電流(つまりベース電流)があるからなんだ。真空管やFETの入力のリーク電流は通常無視できるくらい小さいからね。結論として、BJTを「電流制御」として説明するのが好まれることもあるけど、この見方には大きな制限があることを理解しておくべきだよ。頭の中で計算する時には、BJTのベータ値を使うのが、架空の電流増幅を計算するためじゃなくて、トランスコンダクタンスアンプとして考えたBJTの入力リーク電流を計算するのに役立つんだ(ベータはトランジスタごとに変わるけど、トランスコンダクタンスゲインは全てのBJTで同じだから)、それを使って入力抵抗ネットワークの電圧降下を計算するのにね。アニメーションのビジュアライゼーションはいいけど、さまざまなタイプのBJT、FET、真空管の定量的な違いを簡単に評価するには、出力電圧に対する出力電流の依存関係を示す曲線ファミリーを描くのが唯一の方法だよ。入力電圧をファミリーパラメータにして(グラフの軸と曲線ファミリーパラメータの間で出力電圧と入力電圧を入れ替えた曲線ファミリーもね)。これらの曲線ファミリーは、入力電圧と出力電圧の関数としての出力電流の3Dグラフのセクションなんだけど、3Dグラフでは異なるポイントの値を正確に比較することはできないから。

Hacker Newsで議論の続きを見る