0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Node-RED+RaspberryPiの基本(ボタンを押してLEDをつける)

Posted at

はじめに

やりたいこと

  • ラズパイとNode-REDをつないで、ボタンやLEDを制御したい。
  • ハードウェア系の知識はないけれど、ラズパイと一緒に購入したキットにサンプルがあったので、これをベースに実装してみました
  • 記事内容は、ボタンを押すとLEDが消えるため、光らせるためにはNOTを入れて信号を反転させてください。

Node-REDのまとめ記事

動作環境

  • RaspberryPi : 3
    • OSOYOO Raspberry Pi 電子工作キットもamazonで購入して利用しています
  • Node-RED: v19.4
  • raspbian : 9.8

本編

全体の流れ

Node-REDへの入力と出力の一通りの流れを確認したいので、以下のような流れで実装しました。

  1. LED点灯
    • Node-RED->ハードウェア
  2. ボタンの押下の検知
    • ハードウェア-> Node-RED
  3. ボタンとLEDの連携
    • ハードウェア-> Node-RED -> ハードウェア

回路図(付録より引用)

4.jpg

配線

図1.jpg

  • 黒の部分がLED点灯制御の部分
  • 白の部分がボタン制御の部分

フロー

図2.png

LED点灯

まずは、Node-REDでINJECTIONをしたら、LEDが点灯したり消したりさせたい。

  • 該当するフローはON/OFF ⇛ PIN11という部分

    • 信号を制御するためには、下記の通り対応する信号を送る
      • ON:数値の1またはbooleanのtrue
      • OFF:数値の0またはbooleanのfalse
    • 出力先のGPIOのノードはraspberryPiのNode-REDであれば標準でインストールされている
      • どこのポートに信号を送るのかを選ぶだけ
  • 手動でONをインジェクトすればライトが付き、OFFをインジェクトすればライトが消える

ボタン押下

つづいて、ボタンの押下をNode-REDで検知したい。

  • 該当するフローはPIN40 ⇛ デバッグノードの部分

    • ボタンが押されると、電気がGND側に流れるため、PINに電気が流れなくなるので0
    • ボタンが押されないと、電気が流れて1
  • Node-RED側では切り替わった瞬間のみ0,1がやってくる

ボタン押下でLED制御

最後に、2つのフローを組み合わせると完成

  • ボタンを離すとLEDが光る(信号1がボタンから来てLEDにわたす)
    DSC_1824.JPG

  • ボタンを押すとLEDが消える(信号0がボタンから来てLEDにわたす)
    DSC_1825.JPG

感想

  • ようやくラズパイの基本のキができた
  • 抵抗値ってどうやって決めるんだったかなと
    • 今回はサンプルで何Ωの抵抗を使うと指示があったからよかったのですが、自分でカスタマイズするときは、自分で計算すると思うので、電気回路の基礎を復習しないと。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?