Raspberry Piを使用してLEDインジケーターを作成する(電子メール、天気、その他)

Oct 30, 2025
ハードウェア
未取得のコンテンツ

Raspberry Piは、気象通知、新着メールなど、あらゆる種類のプロジェクトにインジケーターライトを取り付けるための優れたコンパクトなプラットフォームになります。LEDモジュールをPiに接続し、いくつかの基本的な通知を設定する方法を説明します。 。

なぜ私はこれをしたいのですか?

楽しいから。プロジェクトからどのようなメリットが得られるかを正確に説明する小さな宣伝文が上部に含まれている多くのチュートリアルとは異なり、この場合、メリットは単に楽しむことであるため、宣伝文はかなり短くなります。

Raspberry Piは、遊んだり、電子機器を試したり、プログラミングを学んだりするのに最適なデバイスです。誰も ニーズ たとえば、キッチンにある周囲の雨のインジケーターですが、それを構築することは楽しい運動であり、嵐の可能性のある日に傘を持っていくための素晴らしいリマインダーです。

私には何が必要なのだろう?

チュートリアルを実行するには、いくつか必要なものがあります。まず、前のチュートリアルをすでに実行していることを前提としています。 RaspberryPi入門のHTGガイド (したがって、Raspberry PiにRaspbianをインストールするまでの基本をカバーしています)。

予算内でこのプロジェクトを実行することを検討している場合は、最新モデルのRaspberry Piがその仕事にとってかなりやり過ぎであると自信を持って伝えることができます。また、押し込んだ古いRaspberryPiからほこりを吹き飛ばすことをお勧めします。クローゼットの中やeBayなどから安い中古品を手に入れましょう。予算的には、eBayから10〜15ドルで手にしたRaspberry Pi 1モデルAまたはモデルBは、新しい35ドルの現世代のPiを購入するよりも、このプロジェクトに最適です。

Raspbianがインストールされた機能的なPiユニットに加えて、次のものが必要になります。

注意: 透明/つや消しのPiケースは完全にオプションですが、現在不透明なケースを使用している場合は、LEDインジケーターが内部に隠れます。ライトを消すためにケースに穴を開けるか、ブレイクアウトキット付きのGPIO延長ケーブルを使用する必要があります。 これはエイダフルーツインダストリーズからのものです —LedBorgをRaspberryPiにテザリングします。ブレイクアウトケーブルを使用すると、プロジェクトの費用が約8ドル増加しますが、LEDを物の中や照明したいものの下に簡単に配置できるという点で、最終製品をカスタマイズする可能性が高くなります。

LedBorgのインストール

完全にゼロからLEDインジケーターを作成することは確かに可能ですが(検索エンジンの問い合わせにより、多くの人がそうしていることがわかります)、Piborg組織は、コンパクトで安価なLEDモジュールであるLedBorgを製造しています。 Raspberry PiLEDインジケータープロジェクトの基礎として使用することに抵抗します。

モジュールは、PiのGPIOピンに直接フィットするように設計されているため、簡単にインストールできます。まず、Piの電源を切り、ケースを開きます。

インストールプロセスの最も重要な部分は、LedBorgアイコンがRaspberry PiボードのRCAモジュールに最も近くなるようにモジュールを配置することです(したがって、LedBorgの端がPiボードの端と同じ高さになり、張り出します) LedBorgの一部がPiボードにぶら下がっていて、端から外れていません)。上の写真をご覧ください。

Piボードを開いた状態で、特にクリアケースを使用している場合は、オンボードLEDインジケーター(USBポートの横)をカバーする絶好の機会です。電源とネットワークのインジケーターライトが非常に明るいため、LedBorgインジケーターの読み取りを混乱させないでください。

私たちは白い電気テープの層で私たちを覆った。これにより、それらを十分に暗くして参照できるようになりましたが、LedBorgよりもはるかに暗く、気が散ることはありませんでした。

LedBorgをインストールし、オプションでPiのLEDインジケーターを電気テープで覆ったら、ケースを閉じてバックアップします。チュートリアルの次のフェーズに進む前に、Piを起動してください。

LedBorgソフトウェアのインストール

PiBorgは、コマンドラインからLedBorgにアクセスするためのGUIコントローラーとドライバーの両方を含むLedBorg用の優れたソフトウェアパッケージを提供します。

始める前に、RasbianのバージョンとRaspberryPiボードのリビジョン番号に適したパッケージを入手していることを確認する必要があります。

Raspberry Piボードに取り付け穴がない場合は、リビジョン1です。RaspberryPiに取り付け穴がある場合(USBポートによって、電源ポートとHDMIポートの間にあります)、リビジョン2です。カーネルバージョンも知っておく必要があります。 Rasbianインストールの。ターミナルを開き、次のコマンドを入力して確認します。

uname -r

リビジョン番号とカーネル番号を取得したら、次のことができます。 こちらのパッケージセクションにアクセスしてください パッケージのリンクを取得します。この例では、3.6.11カーネルを備えたリビジョン1ボードを使用しているため、raspbian-2013-02-09-rev1.zipファイルを取得します。

すべてのグッズをインストールするには、Piのターミナルを開く必要があります。次に、次のコマンドを入力してLedBorgパッケージをインストールします。

注意: 3番目のコマンドのURLを、ボードとカーネルの組み合わせのパッケージのURLに置き換える必要があります。

mkdir〜 / ledborg-setup
cd〜 / ledborg-setup
wget -O setup.zip http://www.piborg.org/downloads/ledborg/raspbian-2013-02-09-rev1.zip
setup.zipを解凍します
chmod + x install.sh
。/いんsたっl。sh

この時点で、LedBorgドライバーのGUIラッパーとドライバー自体がインストールされています。 Raspbianデスクトップに、GUIラッパーのアイコンが表示されます。

先に進み、LedBorgアイコンをクリックしてGUIラッパーを起動します。次のようなカラーピッカーインターフェイスが表示されます。

今こそ、モジュールが機能していることを確認する絶好の機会です。黒を除いて、任意の色を選んで試してみてください。いくつかの色を選んでテストします。

いいね!明るく、プロジェクト用に注文したケースのつや消しプラスチックは適度な拡散を提供します。先に進む前にLEDモジュールをもっと試してみたい場合は、デモモードをクリックしてください。

デモモードでは、さまざまな速度ですべての色を切り替えたり、高/低出力を確認したり、LEDモジュールをペースに合わせたりすることができます。

ここのデモモードセクションで、LedBorgを多くのインジケーターの最初のものに変えることもできます。 [色]セクションで[CPU]を選択すると、LEDが緑色から黄色、赤色に変わり始め、RaspberryPiのARMプロセッサの負荷を示します。速度を遅くに変更することをお勧めします。速度が速いとLEDの更新が速すぎて、CPUインジケーターが役に立たず気が散ってしまいます。

GUIインターフェイスを使用して色を選択することに加えて、RGB値を使用して端末から色を選択できます。ターミナルを開き、次のコマンドを入力してLEDをオフにします。

エコー "000"> / dev / ledborg

LedBorgがRGB値を処理する方法は、0はチャネルがオフであることを意味し、1はチャネルがハーフパワーであることを意味し、2はチャネルがフルパワーであることを意味します。したがって、たとえば001は、赤チャネルを0%、緑チャネルを0%、青チャネルを50%の電力に設定します。

値を002に変更すると、LED出力は青色のままですが、青色チャネルが100%出力になっているため、明るくなります。値を202に変更すると、フルパワーで赤と青が組み合わされてマゼンタ色になります。

LEDを手動で操作する方法がわかったので、スクリプトを使用してLEDを単純なライトから実際のインジケーターに変える方法を見てみましょう。

LedBorgをレインインジケーターとして設定する

チュートリアルのこの部分では、LedBorg LEDモジュールを、現在地の天気予報に基づいて雨インジケーターに変えるために、いくつかのことを組み合わせます。 Pythonスクリプトを使用してweatherAPIを呼び出し、その日の雨の可能性を読み取り、LEDをオフから明るい青色に切り替えて予想される雨を示します。

まず、WeatherUndergroundのAPIアクセスキーを取得する必要があります。個人使用および小規模な開発プロジェクトの場合、APIは無料です。 こちらのWeatherAPIサインアップページにアクセスしてください APIキーにサインアップします。

APIキーを取得したら、Weather Undergroundにアクセスして、監視する都市を検索します。この例では、カリフォルニア州サンフランシスコを監視します。 SanFransiscoの予測ページのURLは次のとおりです。

hっtp://wっw。うんでrgろうんd。こm/うS/か/さん_Fらんしsこ。html

私たちの目的にとって重要な部分は、URLの最後の部分です:/CA/San_Francisco.html。これを使用して、APIツールの予測URLを編集します。ベースURLは次のとおりです。

http://api.wunderground.com/api/YOUR API KEY / forecast / q / STATE / CITY.json

Weather Undergroundの検索結果から取得したURLから、APIキー、2文字の州コード、および都市名を入力することで、米国の任意の都市の天気予報を生成できます。

APIキーと州/都市が挿入されたAPIURLを取得したら、Leafpadを使用してPiに新しいテキストドキュメントを作成し、次のコードを貼り付けることで、次のPythonスクリプトを編集できます。

urllib2からインポートurlopen
jsonをインポートする

req = urlopen( 'http://api.wunderground.com/api/YOUR API KEY / forecast / q / STATE / CITY.json ’)
parsed_json = json.load(req)
pop = int(parsed_json['forecast']['txt_forecast']['forecastday'][0]['pop'])

#以下はデバッグ値です。
#ハッシュを編集して変更する
#テストする0〜100の整数
#LED応答。

#ポップ= 0

print '現在の降水確率は{}です。'。format(pop)

#デフォルト設定はLEDをオンにすることです
#20%を超える雨の可能性がある場合。あなたは調整することができます
#必要に応じて「ifpop> 20:」の値。

ポップ> 20の場合:
LedBorg = open( '/ dev / ledborg'、 'w')
LedBorg.write( '002')
LedBorgによる
印刷(「雨!」)
そうしないと:
LedBorg = open( '/ dev / ledborg'、 'w')
LedBorg.write( '000')
LedBorgによる
印刷(「雨は降らない!」)

ファイルをwunderground.pyとして/ home / pi /ディレクトリに保存します。ターミナルを開き、次のコマンドを入力します。

python wunderground.py

APIキーと州/都市コードを正しく入力すると、次のような応答が返されます。

お住まいの地域の降水量が予測される場合、LedBorgの出力は次のようになります。

雨の日がスクリプトを適切にテストするのを待つのは面倒です。今日、お住まいの地域で雨の可能性がなく、LEDが点灯することを確認したい場合は、wunderground.pyスクリプトを編集して、13行目の「pop = pop」パススルー値を60などの20より大きい値に置き換えます。私たちの予測が戻ったこと。完了したら、行を「pop = pop」に戻すことを忘れないでください。

最後のステップは、LEDインジケーターを最新の状態に保つために、保存したスクリプトを定期的に自動的に実行するcronジョブを設定することです。このタスクは、このスクリプトとそれに続く電子メールインジケーターの両方に必要なので、他のスクリプトの設定方法を示した後、cronジョブの設定について説明します。

LedBorgをGmailインジケーターとして設定する

受信トレイに新しいメールが表示されることに伴うドーパミンの修正が気に入​​らない人はいますか?チュートリアルのこの部分では、LedBorgを新しいGmailインジケーターとして使用する方法を紹介します。前回と同様に、外部入力(この場合はAPIではなくAtomフィード)と単純なスクリプトを組み合わせてLEDを駆動します。

インストールしてPythonインストールの機能を少し拡張する必要があります FeedParser 、Python RSS / Atomフィード読み取りツール。ターミナルを開き、次のコマンドを入力します。

sudo easy_install feedparser

インストールが完了したら、Gmailチェックスクリプトの作成に取り掛かることができます。ここでも、Leafpadを使用して、次のテキストをエディターに貼り付けます。確認したいGmailアカウントのユーザー名とパスワードに一致するようにユーザー名とパスワードを変更します。

フィードパーサーのインポート

#Gmailのユーザー名を入力します
#とパスワード。含めないでください
#の@ gmail.com部分
# ユーザー名。

username = "username"
password = "パスワード"

mail = int(feedparser.parse( "https://" + username + ":" + password + "@ mail.google.com / gmail / feed / atomic")["feed"]["fullcount"])

#以下はデバッグ値です。
#ハッシュを編集して変更する
#テストする0または1の整数
#LED応答。

#メール= 0

メール> 0の場合:
LedBorg = open( '/ dev / ledborg'、 'w')
LedBorg.write( '020')
LedBorgによる
印刷(「メール!」)
そうしないと:
LedBorg = open( '/ dev / ledborg'、 'w')
LedBorg.write( '000')
LedBorgによる
印刷(「メールなし!」)

スクリプトをgmailcheck.pyとして保存します。ターミナルを開き、次のコマンドを入力します。

python gmailcheck.py

Gmailの受信トレイにメールが入っている場合、LEDが緑色に変わり、次のような応答が返されます。

Gmailの受信トレイにメールがある場合、LedBorgは次のようになります。

レインチェックスクリプトと同様に、デバッグ値が含まれています。新しいメールがない場合は、メールを送信して受信トレイの数を1に増やすか、コメントハッシュを編集して、デバッグ行を「mail = 1」に変更してスクリプトをテストします。テストが終了したら、忘れずに行を元に戻してください。

チュートリアルの次のセクションに移動して、Gmailスクリプトをスケジュールどおりに実行するように設定します。

スクリプトを実行するためのcronジョブの設定

2つのスクリプトを操作できるようになったので、LEDインジケーターを最新の状態に保つために、それらを1日中実行するためにcronジョブを設定する必要があります。

最初に実行したいのは、以前の実験でLEDが現在オンになっている場合は、LEDをオフにすることです。ターミナルタイプ:

エコー「000」> / dev / ledborg

コマンドラインを表示しているときに、cronエディターを開くことができます。これまでにcronジョブを設定したことがない場合は、強くお勧めします ここでそれを使用するためのガイドをチェックしてください 。とはいえ、ここで基本的なスケジュールを設定する手順を説明します。

ターミナルタイプ:

すど cろんたb –え

これにより、NanoテキストエディタでRaspbiancronテーブルが開きます。矢印キーを使用して、一番下までスクロールします。ここで、Pythonスクリプトの定期的なcronジョブを設定します。

レインスクリプトを設定する場合は、cronテーブルに次の行を入力します。

* / 5 * * * * python /home/pi/wunderground.py

Ctrl + Xを押して終了します。 [はい]を選択して、既存のcronテーブルを保存して上書きします。 cronテーブル「* / 5 * * * *」に入力した値は、スクリプトを5分ごとに永久に実行するように設定します。

予測される雨をチェックするスクリプトでは、5分ごとが適切な時間ですが、少し攻撃的すぎると主張することもできますが、メールを管理しようとしている場合は、通知するには長すぎます。 。 Gmail通知スクリプトのスケジュールを設定する場合は、cronテーブルに次の行を入力します。

* / 1 * * * * python /home/pi/wunderground.py

このエントリは、gmailcheck.pyスクリプトを毎分実行して、更新通知をより迅速にします。


これですべてです。 if / elseステートメントを私たちのステートメントから取り出して、まったく新しい変数で試してみると、独自のPythonスクリプトを試すことができます。データの入力ソースが見つかった場合は、Pythonスクリプトで変数に変換できます。株式市場の平均、花粉数、Twitterによると、APIがある場合は、アンビエントLEDインジケーターに変換できます。

最後に、私がこのプロジェクトに取り組んでいたすべての素晴らしいリソースに感謝したいと思います。私が積極的にプログラムを書いていてから10年余りが経ちましたが、ほこりや錆を取り除くのに数回のノックが必要でした。の寄稿者 / r / LearnPython マイケルがミッチテックでどのようにやってきたかを研究しながら、WeatherUndergroundのAPI出力をいじくり回すのを手伝ってくれました GmailAtomフィードを処理しました LedBorgの解析を簡単にし、 CodeAcademyでPython学習モジュールを勉強する これは、これまで使用したことのない言語の基本的な構文と構造を理解するための優れた方法でした。

Raspberry Pi Email Tutorial (Sending & Receiving With SendGrid)

Raspberry Pi Tutorial - Gmail LED Email Notifier

#255 Node-Red, InfluxDB, And Grafana Tutorial On A Raspberry Pi

Raspberry Pi Project: Online Weather Data Log With MySQL And PHP With Sense Hat.

Raspberry Pi: How To Turn On A Light With Your Phone

Raspberry Pi IoT Tutorial Series Part-3

Make A Raspberry Pi Gmail Notification Light

Top 5 Raspberry Pi DIY Projects Of All Time

Raspberry Pi DHT11 DHT22 Temperature And Humidity Sensor

5 Arduino Project Ideas That Could Be Used As Raspberry Pi Project Ideas


ハードウェア - 最も人気のある記事

新しいiPhoneXシリーズでのデュアルSIMサポートの仕組み

ハードウェア Sep 27, 2025

デュアルSIMテクノロジーは数年前から存在していますが、新しいiPhone Xシリーズ(XS、XS Max、およびXR)は、iPhoneで初めて利用可能にな�..


あなたのペットの良い写真を撮る方法

ハードウェア Jan 3, 2025

未取得のコンテンツ 「子供や動物と一緒に仕事をしない」というのは理由のある格言です。残念ながら、ほとんどのペットの飼い主�..


Androidデバイスをファイルエクスプローラーに表示する方法(表示されない場合)

ハードウェア Jul 3, 2025

Androidスマートフォンを使用して、曲を聴いたり、動画を視聴したり、写真を撮ったりできますが、これらのファイルをデバイスにオン..


アウトレットタイマーを使用して、特定の時間にAmazonEchoを自動的にミュートする

ハードウェア Jun 20, 2025

Amazon Echoは常に音声で制御される仮想アシスタントですが、Echoで聞きたくない(または聞きたくない)場合がある場合は、1日の特定の..


CaseModはPortalからApertureScienceComputersを複製します

ハードウェア Feb 22, 2025

未取得のコンテンツ 人気のPortalシリーズのファンなら、通常のコンピューターをゲームのApertureScience端末のレプリカに変えたこのPC�..


ファイル、Webサイト、コミック、RSSフィードをAmazonKindleに転送する方法

ハードウェア Feb 7, 2025

未取得のコンテンツ Amazon Kindleストアを使用してKindleにドキュメントを配置するだけであれば、Amazonは喜ぶでしょうが、人気のあるデ..


1つのUSBフラッシュドライブから10種類のライブCDを起動する方法

ハードウェア Sep 18, 2025

未取得のコンテンツ たくさんのLinuxディストリビューションを一度に試してみたいという衝動に駆られたことはありませんか? Linux�..


自作ゲームとDVD再生のためにWiiをハックする方法

ハードウェア Oct 6, 2025

未取得のコンテンツ Wiiでエミュレートされたゲームをプレイしたいですか? DVDの再生はどうですか?スマッシュスタックエクスプロ..


カテゴリ