2
2

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.

Raspberry Piで入店音システム5

Posted at

#【Raspberry Pi】 人を感知して音を流す

前回の記事:【Raspberry Pi】 USBスピーカーから音を出す
##第0章 全体の流れ
前回の記事ではUSBスピーカーの設定をして、実際に音を出しました。ここまでの過程でほとんどの技術は習得しています。今回は入店音システムを作ってみましょう。

第1章では、必要なアイテム(今回使用したもの)の参考リンクです。
第2章では、前回までの記事を参考にして、周辺機器の取り付けを行います。
第3章では、センサーで感知した時に、音が鳴るプログラムを作ります。

##第1章 必要なアイテム

  1. Raspberry Pi 3 model B
  2. macbook
  3. USBスピーカー

    :sunny:USBのみで使用できるものであれば100均でもOKです
  4. 人感センサーHC-SR501
  5. ジャンパーワイヤー(メスーメス)

##第2章 取り付けや設定
ログインの方法がわからないときは最初の記事をみてください。

  1. 人感センサーを取り付ける
  2. USBスピーカーを取り付ける
  3. Raspberry Piの電源をつけて、SSHでログインをする。
  4. プログラムを作る準備をする
    1. $cd Documents/Python3でプログラムを収納しているフォルダに移動する。
    2. $vi door_sensor.pyで空のプログラムを作る。

##第3章 プログラムを作ります。
完成系は以下の通りです。

#!/usr/bin/env python
#coding: utf-8

import time
import RPi.GPIO as GPIO
import pygame.mixer

SENSOR_GPIO = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(SENSOR_GPIO, GPIO.IN)

pygame.mixer.init()
pygame.mixer.music.load("../../Music/ファミマ.wav")

while True:
    if(GPIO.input(SENSOR_GPIO) == GPIO.HIGH):
        print("人を検知しました。")
        pygame.mixer.music.play(0)
        time.sleep(6)
        pygame.mixer.music.stop()

GPIO.cleanup()

可能であれば、以下の説明も参考にしてください。

  1. 音を出すプログラムについて説明
    1. import pygame.mixerはpygameというライブラリを利用するためです。
    2. pygame.mixer.init()は初期化です。とりあえず最初に書いとけばいいです。
    3. pygame.mixer.music.load("../../Music/ファミマ.wav")は音楽を読み出しています。

      *:sunny:*ここまでの記事を参考に作った方はMusicフォルダに音楽を入れていると思いますので、これで動きます。

      :sunny:ファミマ.wavは音楽名です。個人で変えてください。
    4. pygame.mixer.music.play(0)はミュージックスタートです。
    5. time.sleep(6)6秒後に次の処理
    6. pygame.mixer.music.stop()ミュージックストップです。
  2. 保存して終了後、実行します。
    1. shiftを押しながらzを2回押します。
    2. python door_sensor.pyで実行します。
  3. テスト
    1. 何もない方向にセンサーを向けておいて、音がならないか。

      :sunny:精度が低いため、たまに鳴るかも
    2. 手をかざした時に、画面に「人を検知しました。」と表示され、音がなる。
    3. 以上2点を確認したのに、完成です。

##第4章 最後に
これで入店音システムの記事は最終回となります。お疲れ様でした!

2
2
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
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?