Raspberry Pi:Fire Simulated Christmas TreeTopで2021年へようこそ

新年が近づいています。数時間の空き時間があれば、クリスマスツリー、パーム、タンジェリンツリーのハイテク装飾を作成できます。それは問題ではありません-それはどこでもよく見えるでしょう。









カットの下で-このことの仕事のデモンストレーションを含むgif。



デザインの基本は、NeoPixel 32x8 LEDフレキシブルストリップ、Raspberry Pi、そして良いムードです。はい、Pythonコードが必要です。



あなたが働く必要があるもの









  • Raspberry Pi 3、Raspberry Pi 4、またはRaspberry Pi Zero W、GPIOコネクタ付き。
  • Raspberry Pi用の電源、マウス、モニター、キーボード、HDMIケーブル
  • フレキシブルストリップ32x8NeoPixel RGBLEDマトリックス
  • ジャンパーセット(M-to-F、M-to-M、F-to-F)
  • 5V電源
  • コンデンサ1000µF
  • LEDストリップの光を拡散するためにファブリックのストリップを取ることもできます。
  • 構造全体の3Dプリントベース


パート1。RGBマトリックスの準備



この時点で、ピンのペアをはんだ付けし、AdafruitのNeoPixelUberguideのサンプルコードを使用する必要があります私たちのプロジェクトでは、「ラズベリー」とLEDストリップ用の2つの電源が必要です。後者の場合、電源だけでなくデータも接続する必要があります。ここではすべてが簡単です。









必要に応じて、別の布地を追加して、明るいLEDライトを拡散させることができます。



データ



接続します「ラズベリー」から「アース」を取り、LEDストリップのGNDデータラインに接続します。









電源を接続し



ますこれは、上記のスキームに従って通常のケーブルを使用するか、USBケーブルを使用して行うことができます。この場合、このスキームに従って接続する必要があります。









次に、Adafruitからコードを実行してマトリックスを確認しましょう。



「ラズベリー」を起動し、RGBマトリックス電源を接続し、ターミナルを開いて依存関係をインストールし ます。作成者のリポジトリからコードをダウンロードします 。scrollingTextMask フォルダーを選択します。fillMatrix.pyテストコードを実行します。



sudo pip3 install rpi_ws281x adafruit-circuitpython-neopixel

sudo python3 -m pip install --force-reinstall adafruit-blinka












git clone https://github.com/carolinedunn/RGBTreeTopper











cd RGBTreeTopper











sudo python3 32-fillMatrix.py













上記のgifのように虹が出たら、すべてが機能し、次の段階に進むことができます。何か問題が発生した場合は、一部の連絡先が正しく接続されていない可能性があります。



ヒント:システムがラズベリーピン21 GPIOで動作しない場合は、ピン10、12、または18を試してください。次に、scrollingTextMaskフォルダーから32-fillMatrix.pyを開き、GPIOピンを更新します。この場合、それに応じて他のプロジェクトファイルを変更する必要があります。



Ctrl + Cを押してスクリプトを停止します。



パート2。ライトアップ!



まだ開いているターミナルで、次のコマンドを入力します。



sudo python3 treeTopper.py













GitHubから取得したフォルダーには、10個のjpegイメージを含む「fire」フォルダーがあります。これは、treeTopper.pyコードが行う



ことです。コードで使用されるライブラリを宣言します。Pythonインタープリターに画像処理機能を追加するライブラリであるPIL(Pillow Imaging Library)に注意を払う必要があります。









  • 21個のGPIOピンを指定して、ダイにデータを送信する場所をPiに指示します(8行目)。
  • サイズ、明るさ、各画像を表示する間の一時停止時間など、マトリックスのパラメーターを指定します(9〜13行目)。
  • これらの10個のJPEGファイルのデータを順番に使用して配列を作成します(28〜32行目)。
  • 画像ピクセルを分析し、それらをRGBマトリックスに変換し、画像をRGBマトリックスに出力します(35〜41行目)。
  • 0.2秒間一時停止してから、次の画像に対してこのプロセスを繰り返します(42行目)。
  • このプロセスは、Ctrl + Cの組み合わせが実行されるまで実行されます。


そして、あなたがあなた自身の写真が欲しいなら?



パラメータは次のとおりです。



  • フォーマット-JPEG。
  • 幅-32ピクセル。
  • 高さ-8ピクセル。


各ファイルは、適切なフォルダーに1-10.JPGという名前で保存する必要があります。



写真を表示するには、写真への新しいパスを設定する必要があります。必要に応じて、表示の順序を変更できます。









起動時に起動



すべての画像の準備ができたら、Pythonを使用して起動時にスクリプトを実行します。最良のオプションはCrontabです。



コンソールでCrontabを開きます。crontab-e1



と入力し、Enterキーを押します。









これにより、新しいcrontabファイルが開きます。内部で、下に移動して入力します->



sudo python3 /home/pi/RGBTreeTopper/treeTopper.py







@reboot sudo python3 /home/pi/RGBTreeTopper/treeTopper.py







Ctrl + Xを押してから、crontabを押して保存します。



「ラズベリー」をオフにし、収集したものをすべてオフにします。



パート3。最終組み立て



このステップでは、クリスマスツリーの最上部で新年の光をすでに示すことができます。



  • 本体を3Dプリンターで印刷します。
  • ワイヤーを適切な場所に通して固定します。
  • LEDマトリックスを曲げます。強く押す必要はありません。
  • クリスマスツリーの上に構造物を置きます。電源を入れて喜ぶ。








ちなみに、作者は自分の発明がトイレットペーパーのロールのような形をしていることを知っています。









彼女は、2020年に起こっていることを背景に、これは非常に適切であると冗談を言っています。しかし、一般的には変更することができます-必要に応じてデザインを簡単に変更できるので、ロール紙が...はい、何にでも変わります。










All Articles