Raspberry Piスマートミラーを構築する方法!

みなさん、こんにちは!

コンピューターサイエンスの最終プロジェクトでは、Raspberry Pi 3を搭載したスマートミラーを構築することにしました。 このアイデアは、わかりやすい指示を取り入れた創造的なプロジェクトのための興味深いアイデアがたくさんある素晴らしいYouTubeチャンネルであるHacker Houseから得ました! 私は主にJavaでのコーディングに焦点を当てていますが、このスマートミラーにより、これまで使用したことがない言語であるLinuxおよびPythonでコーディングすることで、Raspberry Piを使用できました。 また、2面鏡の後ろにあるモニターの周りにフレームを構築することで、興味深い木工をすることができました。 これは私の最初のRaspberry Piプロジェクトでしたが、Piのコーディングからフレームのペイントまで、2週間ほどかけて完了しました。 これを構築するのは素晴らしい経験でした。このチュートリアルがあなた自身の作成に役立つことを願っています!

ステップ1:必要なもの

始める前に、プロジェクトに必要なすべてのアイテムのリストを以下に示します。

  1. Raspberry Pi(Raspberry Pi 3 Model Bバージョンを使用しました。これは、簡単にアクセスでき、ワイヤレスオプションを簡単にセットアップできるためです)
  2. モニター(HDMI入力付きの12 "X 20" Samsungモニターを使用しました)
  3. 双方向アクリルガラスミラー(オンラインもありますが、ハッカーハウスが推奨する安価なものを使用しました-下のリンクを参照してください)
  4. 4 x 3Dプリントブラケット(これらは必須ではありませんが、フレームを収納しやすくします。HackerHouseには、ブラケット設計用のSTLおよびzipファイルを提供するWebサイトがあります-下部のリンクを参照してください)
  5. HDMIケーブル
  6. Pi電源用のマイクロHDMIケーブル
  7. ウッドグルー
  8. ねじ
  9. 木材(内側と外側のフレームを切断するために、2つの8フィートの長いピース(1 "x 3"と1 "x 4")を使用しました)
  10. キーボード(USB)
  11. マウス(USB)
  12. クランプ

3Dブラケット〜

//www.hackerhouse.site/parts.html

ツーウェイミラー〜

//www.amazon.com/gp/product/B01CZ35XWY/ref=o ...

ステップ2:Raspberry Piのセットアップ

PiがオンラインにあるMagic Mirrorモジュールから情報を受信するには、Wi-Fiとタイムゾーンを設定することが重要です。 オペレーティングシステム「Raspbian」がマイクロSDカードにインストールされたら(私は「Jessie」バージョンを使用しました)、キーボードとマウスをPiに差し込み、使用するモニターにHDMIケーブルを接続します。 システムが起動するのを待ってから、自分の場所にPiの設定を開始できます。 最初に、画面右上のWi-Fiシンボルをクリックします。 インターネットを選択して、パスワードを入力します。 その後、Wi-Fiに接続する必要があります。 それが完了したら、ターミナルにアクセスして次を入力します。

 sudo dpkg-reconfigure tzdata 

その後、Piが表示するメニューから特定のタイムゾーンへのアクセスを開始できます。 正しいタイムゾーンを選択したら、Piを保存して再起動します。 この時点で、Magic Mirrorは現在地を使用して時刻を表示し、Wi-Fiを使用してインターネットから情報にアクセスできます。 これで、プログラミングを開始できます!

ステップ3:マジックミラー2

プログラムのダウンロードと構成を開始する前に、おそらくこのプログラムの仕組みを知っておく必要があります。 MagicMirrorは、Michael Teeuw(別名MichMich)によって作成されたダウンロード可能なプラットフォームで、www.github.comでこのリポジトリにアクセスできます。 Piを使用して、リポジトリとその依存関係をダウンロードしてクローンする必要があります。 これにより、Piはプログラムを実行し、MagicMirrorファイルに含まれる特定の要素を表示できます。 詳細については、プログラムをコーディングしているすべてのユーザー向けの便利なモジュールとトラブルシューティング方法が満載のオンラインフォーラム//magicmirror.builders/にアクセスしてください。 開始するには、ターミナルにアクセスし、次のコードを入力します。

 bash -c "$(curl -sL //raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)" 

Enterキーを押すと、Piはリポジトリの自動ダウンロードを開始します。これには約10〜15分かかります。 途中で、vimなどの特定の依存関係に「Y」または「N」を入力するように求められます。 Vimは、テキストエディターがMagicMirrorを管理できるようにする重要な依存関係です。 同様に、pm2と呼ばれるプログラムがダウンロードされ、Piの起動時にプログラムが自動的に実行されます。 別のプロンプトはNode.jsで、これによりネットワークアプリケーションをPiで実行できます。 MagicMirrorが完全にダウンロードされたら、Piを再起動します。 再起動後、賛辞、時間、およびニュース記事が表示されます(上の写真を参照)。 この時点から、プログラムのカスタマイズを開始できます(新しいモジュールの追加、向きの変更、フォントの変更など)。

ステップ4:モジュール

前に示したように、MagicMirrorは時刻、お世辞、米国の祝日、およびいくつかのニュース記事を自動的に表示する必要があります。 ただし、Piにいくつかの機能を追加して、Piをより美しく、より多くの情報にアクセスできるようにしました(例:天気、天気予報、クールな見積もりなど)。 これを行うには、MagicMirrorが現在の場所に関する情報を受信するために行う必要がある複数のことがあります。これを行うには、モジュールフォルダーにアクセスする必要があります。 このフォルダーは、MagicMirrorに必要なすべてのオプションを格納するための鍵です。 モジュールを追加したり、モジュールを削除したり(カナダに住んでいるため米国の休日リストを削除した)、設定をカスタマイズしたりできます。 これを行うには、ターミナルにアクセスして次を入力します。

 cd〜/ MagicMirror / modules 

これにより、モジュールリストを表示できるファイルが開きます(情報が含まれる閉じ括弧を探します)。 まず、天気と天気予報モジュールを追加しました。 天気オプション付きのデフォルトモジュールがすでに表示されているはずですが、2つの重要なキーが欠落していることに気付くでしょう。 ロケーションIDおよびAPI ID。 前述のように、MagicMirrorはオンラインソースを使用して情報を表示します。 これらの2つのIDは、OpenWeatherMapと呼ばれるWebサイトから取得されます(下部のリンクを参照)。 このサイトは、このモジュールに必要な天気用のAPIを提供します。 まず、サイトで無料でサインアップし、無料のAPIにアクセスします。 モジュールの「appid」セクションにこのコードを入力します。 次に、都市/町のロケーションIDを見つける必要があります。 OpenWeatherMapは、世界中のほぼすべての都市とその横にあるロケーションIDで巨大なファイルを提供します。 簡単な方法はわかりませんが、市/町のIDが見つかるまでファイル全体をスクロールする必要があります。 それが見つかったら(この部分はひどくひどく、私の都市のIDを見つけるのに約20分かかりました)、天気と天気予報モジュールに入力します。 その後、保存して終了します。 Piが起動すると、都市の天気が表示されます。 追加のモジュールを追加しました。このモジュールでは、画面の下部に刺激的な引用が表示されます(上の写真を参照)。 ただし、モジュールのリストは完全にあなた次第です! MagicMirror2フォーラムがサイトで提供しているモジュールWebページを必ずチェックしてください! 誰でもミラーをもっと面白くて楽しいものにするために追加できる本当にクールなモジュールがあります!

//openweathermap.org

ステップ5:カスタマイズ

この手順は、ミラーを風景ではなくポートレートの視点で表示するかどうかによって異なります。 回転するようにPiをカスタマイズするには(最後の写真を参照)、ターミナルにアクセスして次を入力します。

 sudo nano /boot/config.txt 

これにより、特定のシステム設定が開き、「画面の回転オプション」を追加できます。 これを行うには、ファイルの一番下までスクロールして以下を追加します。

#rotatethescreen

display_rotate = 1

保存して終了。 Piを再起動すると、MagicMirrorが起動し、水平に表示されます。 同様に、追加したすべてのモジュールが縦長の視点で表示されるはずです。 Piをカスタマイズするために追加する必要があるもう1つのことは、pm2の起動です。 pm2をインストールした後、ターミナルにアクセスして数行のコードを入力しない限り、MagicMirrorが起動しないことがわかりました。 この問題を解決するには、次の手順を実行します。

ターミナルにアクセスして、「pm2 startup」と入力します

次に、次を入力します。

 sudo env PATH = $ PATH:/ usr / bin / usr / lib / node_modules / pm2 / bin / pm2 startup systemd -u pi --hp / home / pi 

その後、次のように入力してスクリプトにアクセスします。

 ナノmm.sh 

次に、追加:

DISPLAY =:0 npm start

保存して終了。 これで、Piが起動すると、MagicMirrorが自動的に起動します

また、スクリーンセーバーを無効にする方法を見つけるのも困難でした。ミラーの後ろにあるディスプレイを継続的に表示したいからです。 これを行うには、ターミナルにアクセスして次を入力する必要があります。

 sudo nano /boot/config.txt 

それから加えて:

#eliminatescreensaverhdmi_blanking = 1

保存して終了し、次のように入力してターミナルの別のファイルにアクセスします。

 sudo nano〜/ .config / lxsession / LXDE-pi / autostart 

それから加えて:

@xset s 0 s s dpms 0 0 0

保存して終了し、Piを再起動します

ステップ6:フレーム

フレームの構築は比較的簡単ですが、準備するために行う必要があるいくつかの重要なことがあります。 まず、2面ミラーを扱います。 モニターのサイズに応じて、ミラーをモニターよりも約0.5インチ(幅と長さ)大きいサイズにカットする必要があります。 これを行うには、ミラーのサイズを測定してマークし(シャーピーを使用しました-心配しないでください!準備ができたら剥がすフレームに保護用のプラスチック層があります)、ラインにテープを貼ります。 私はペインターテープを使用しましたが、それは、それが超強力ではなく、簡単に剥がれるからです。 テープに沿って慎重にカットします(カットするとミラーが端で砕けることに気づくでしょう。これらの割れ目はミラーの寿命を損なう可能性があるため、これらの破損を制限するようにしてください)。 ミラーをサイズに合わせてカットしたら、フレームの作成を開始できます。 フレームを使用して、2つの部分を作成する必要があります。 内側のハウジングと外側のフレーム。 これを行うには、モニターを測定し、モニターの長さより約1.5インチ大きい2つの木材を切断します(上の写真を参照)。 その後、大きなピースの間に収まる別の2つのピースをカットします。 木材接着剤とクランプを使用して設定します。 プロセスを高速化するために、角にネジを開けて、しっかりと固定することができます。 外側のフレーム(2番目の写真を参照)を作成するには、両端を45度のカットで4つにカットします(外側のフレームを内側のハウジングに配置するときは、45カットの中間点がハウジング)。 フレームが設定されて安定したら、フレームとモニターの間にミラーを挟みます。 3Dブラケットをねじ込み、しっかりと固定されていることを確認します。 この時点で、Piと電源を接続すると、MagicMirrorが起動します。 ミラーの背後にディスプレイが表示されます(日付、時間、プログラムに付けたもの)。 おめでとうございます、これであなただけのスマートミラーが完成しました!

ステップ7:まとめ

ご質問がある場合は、コメントを残してください! 私はあなたが持っている問題やアイデアを手伝いたいです! これは、ハッカーハウスのおかげで参加できる素晴らしいプロジェクトでした! 私が指摘したいことの1つは、Pi用のヒートシンクを購入することを強くお勧めすることです。 このプログラムは継続的に実行されるように設計されているため、プロセッサは非常に高温になります。 ヒートシンクを購入すると、スマートミラーをより安全に実行できるようになり、Piの実行中に受けるストレスも軽減されます。 このプロジェクトを試してみてください。本当に便利で、どの部屋でもハングアップできる興味深い美学です。 私のページを訪問してくれてありがとう、ミラーにいくつかのクールなモジュールを追加してくれるといいのですが(AI、モーションセンサー、アラームなど)。

関連記事