.. note:: こんにちは、FacebookのSunFounder Raspberry Pi & Arduino & ESP32愛好者コミュニティへようこそ!Raspberry Pi、Arduino、ESP32について、仲間たちと深く学びましょう。 **参加する理由は?** - **専門家のサポート**:販売後の問題や技術的な課題を、コミュニティやチームからのサポートで解決できます。 - **学び・共有**:ヒントやチュートリアルを交換して、スキルを向上させましょう。 - **限定プレビュー**:新製品の発表や先行情報をいち早くゲット。 - **特別割引**:最新製品の特別割引を楽しめます。 - **イベントプロモーションとプレゼント**:プレゼント企画やホリデープロモーションに参加しましょう。 👉 一緒に探求して創造しませんか?[|link_sf_facebook|]をクリックして、今すぐ参加! .. _py_transistor: 2.15 トランジスタの2種類: NPN と PNP ============================================= このレッスンでは、2種類のトランジスタ、 **S8050(NPN)** と **S8550(PNP)** について学びます。トランジスタは、電子スイッチとして広く使用されており、ボタンを使ってLEDを制御する方法を見ていきます。 |img_NPN&PNP| * **NPN(S8050)**:このタイプのトランジスタは、 **ベース** に高い信号が入力されると、 **コレクタ** から **エミッタ** へ電流が流れます。 * **PNP(S8550)**:PNPトランジスタは、 **ベース** に低い信号が入力されると、 **エミッタ** から **コレクタ** へ電流が流れます。 両方のトランジスタは同様の目的で使用されますが、信号制御の仕組みは逆です。これらのトランジスタを使用して、ボタンの入力に基づいてLEDを制御します。 **必要なもの** このプロジェクトで必要なコンポーネントは以下の通りです。 一式を購入するのが便利です。リンクはこちら: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - 名前 - このキットのアイテム - リンク * - Newton Lab Kit - 450+ - |link_newton_lab_kit| 個別に購入することもできます。以下のリンクからどうぞ。 .. list-table:: :widths: 5 20 5 20 :header-rows: 1 * - SN - コンポーネント - 数量 - リンク * - 1 - :ref:`cpn_pico_2` - 1 - |link_pico2_buy| * - 2 - Micro USBケーブル - 1 - * - 3 - :ref:`cpn_breadboard` - 1 - |link_breadboard_buy| * - 4 - :ref:`cpn_wire` - 数本 - |link_wires_buy| * - 5 - :ref:`cpn_resistor` - 3(220Ω, 1KΩ, 10KΩ) - |link_resistor_buy| * - 6 - :ref:`cpn_led` - 1 - |link_led_buy| * - 7 - :ref:`cpn_button` - 1 - |link_button_buy| * - 8 - :ref:`cpn_transistor` - 1(S8050/S8550) - |link_transistor_buy| **NPN(S8050)トランジスタの配線** |sch_s8050| この回路では、ボタンを押すことでGP14ピンに **高い信号** が送られます。GP15が高い信号を出力すると、NPNトランジスタが導通し、LEDに電流が流れて点灯します。 |wiring_s8050| **PNP(S8550)トランジスタの配線** |sch_s8550| PNPトランジスタの回路では、ボタンが押される前はGP14に低い信号があり、押すと高い信号に変わります。GP15が **低い信号** を出力すると、PNPトランジスタが導通し、LEDに電流が流れて点灯します。 |wiring_s8550| **コードの作成** NPNとPNPの両方のトランジスタは、同じコードで制御できます。ボタンの状態を読み取り、押されているかどうかに応じて、PicoがGP15に高いまたは低い信号を出力します。 .. note:: * ``2.15_transistor.py`` を ``newton-lab-kit/micropython`` から開くか、コードをThonnyにコピーして「実行」をクリックするか、F5を押してください。 * 正しいインタープリタを選択していることを確認してください:MicroPython(Raspberry Pi Pico)。COMxx。 .. code-block:: python import machine # ボタンと信号ピンの初期化 button = machine.Pin(14, machine.Pin.IN) signal = machine.Pin(15, machine.Pin.OUT) while True: button_status = button.value() if button_status == 1: signal.value(1) # トランジスタに高い信号を送る else: signal.value(0) # トランジスタに低い信号を送る **結果** * NPN回路(S8050): ボタンが押されるとLEDが点灯します。これは、NPNトランジスタがベースに高い信号が入力されると導通するためです。 * PNP回路(S8550): ボタンが離されるとLEDが点灯します。これは、PNPトランジスタがベースに低い信号が入力されると導通するためです。 どちらの回路も、トランジスタが異なる信号に基づいて電流の流れを制御する方法を示しています。 **結論** これらの2つのトランジスタを使って実験することで、NPNとPNPトランジスタの動作原理を理解し、それらを回路で使用して電子機器を制御する方法を学ぶことができます。