Raspberry Pi Pico でモーター速度を制御する

Raspberry Pi Pico でモーター速度を制御する

Raspberry Pi Pico マイクロコントローラー ボードは、愛好家がエレクトロニクス プロジェクトを探索して技術的知識を高めるための柔軟性を提供します。これらは、DIY ホーム モニタリングから単純な気象モニタリング ステーションまでさまざまです。基本を学ぶことで、より複雑なタスクに自信を持って取り組めるよう、確かな知識ベースが得られます。

Raspberry Pi Pico を使用して、トランジスタとモーターを使用して風力発電を行う方法を見てみましょう。

開始するには何が必要ですか?

以下のアイテムは、Raspberry Pi Pico 用の Kitronik Inventor’s Kit に含まれています。ただし、これらはかなり一般的なコンポーネントであるため、個別に簡単に入手できます。

  • ファンブレード
  • モーター
  • ブレッドボード端子コネクタ
  • ブレッドボード
  • 2.2kΩの抵抗器(バンドは赤、赤、赤、金になります)
  • 5x オス-オス ジャンパー線
  • トランジスタ—PicoのGPIOピンが供給できるよりも多くの電流をモーターに供給するために必要

Raspberry Pi Pico 用の Kitronik Inventor’s Ki の概要をご覧になり、将来の実験のために技術的な知識を広げてください。このプロジェクトには、GPIO ピン ヘッダーが接続された Pico が必要です。Raspberry Pi Pico のヘッダー ピンをはんだ付けする方法を確認してください。

はんだ付けのベスト プラクティスに関するヒントが含まれているため、GPIO ピン ヘッダーが最初から Pico ボードに適切に接続されていることを確認できます。

ハードウェアの接続方法

配線は複雑ではありません。ただし、ピンが正しく接続されていることを確認する必要があるいくつかの手順があります。これを念頭に置いて、Raspberry Pi Pico とブレッドボードの間でコンポーネントがどのように接続されているかを分析してみましょう。

  • Pico の GP15 ピンは、抵抗器の一端に接続する必要があります。
  • Pico の GND ピンは、ブレッドボードの負のレールにルーティングされます。
  • モーターのターミナル コネクタのマイナス側の前にトランジスタを配置し、トランジスタのマイナス側からブレッドボードのマイナス レールに配線します。
  • 配線がモーターの端子コネクタと正しく並んでいることを再確認してください (これは重要です)。
  • Pico の VSYS ピンは、ブレッドボードの正のレールに接続する必要があります。これにより、トランジスタを介してモーターに 5V の電力が確実に供給されます (他の Pico ピンは 3.3V しかありません)。
電子部品を接続するフリッツ図

配線の最終チェックを行う際に、ブレッドボードの正のレールからモーターの端子コネクタの正の側にジャンパー線が接続されていることを確認してください。さらに、抵抗のもう一方の端をトランジスタの中央のピンに接続する必要があります。まだ明らかでない場合は、マイナスとプラスのワイヤを端子コネクタからモーターにも正しく接続してください。

コードの探索

まず、MUO GitHub リポジトリから MicroPython コードをダウンロードする必要があります。具体的には、motor.pyファイルを取得する必要があります。Raspberry Pi Pico で Thonny IDE を使用する方法の詳細については、MicroPython の使用を開始するためのガイドに従ってください。

実行すると、コードはモーターにファンを回転させ、速度を徐々に最大まで上げ、短い一時停止の後、再び停止するまで速度を下げます。これは、プログラムを停止するまで継続的に繰り返されます。

コードの先頭でmachineモジュールとtimeモジュールをインポートすると、それらをプログラムで使用できるようになります。マシンモジュールは、モーターの出力ピンとして GP15 を割り当てるために使用されます。トランジスタを介して、PWM (パルス幅変調) を使用して速度を設定します。timeモジュールは、必要なときにプログラム操作で遅延を作成するために使用されます。

コードを実行してみてください。ファンがスピンアップして回転を開始するまでに数秒かかります。有限の forループは、モーターへの出力値を0から65535 (またはそのすぐ下) まで100刻みで徐々に増加させます。ループ中の各速度変更の間に、( time.sleep_ms(5)を使用して) 5 ミリ秒の非常に短い遅延が与えられます。ループが完了すると、次のループが開始する前に 1 秒のスリープ遅延が設定されます

2 番目の forループでは、ステップ値が-100に設定され、モーターへの出力値が徐々に減少します。モーターは、完全に停止する ( 0で) まで、全速力から徐々に減速します。もう 1 秒のスリープ遅延の後最初forループが再び実行されます。これは、両方がwhile True:無限ループ内にあるためです。

Python コードのスクリーンショット

トランジスタとコードを使ってファン モーターを動かすのは、これだけです。このコードは永久にループすることに注意してください。そのため、モーターとファンのサイクルを停止するには、Thonny IDE の停止ボタンを押す必要があります。

風は次にどこへ連れて行ってくれる?

この実験に 7 セグメント ディスプレイなどの追加要素を追加すると、風力タービンが運動エネルギーを使用して風を電力に変換する方法を理解することができます。

もう 1 つのプロジェクトとして、屋外の状態を監視する家庭用気象観測所を設置することもできます。さらに、Raspberry Pi Pico で作成できる風速計や対気速度計など、他の興味深いプロジェクトもあります。

この基本的な知識を使用して、次にどの実験に飛びますか? プロジェクトを考えていますか?躊躇しすぎると、心 (と風) が方向を変えてしまう危険性があります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です