- blogs:
- cles::blog
2018/04/14
ラズパイの GPIO で圧電ブザーを鳴らすには
python raspberrypi 電子工作作っていたICカード読み取りシステムはこんな感じで仮組みできた pic.twitter.com/eeGz1Ju63Q
— はしゅー (@hsur) April 14, 2018
先日の自作 IC カードリーダーは読み取り部分がほぼ完成したので、カードを読み取ったことがユーザーにわかりやすいようにブザーをつけることにしました。
倉庫からブザーを探してきて、試しに鳴らしてみようと電圧をかけてみるもののうんともすんともいわずに困ってしまいました。プログラミングはともかく、電子回路については専門じゃないのが丸出しですね。
これについて調べてみると、このブザーは圧電振動板と呼ばれるものらしく、交流じゃないと鳴らないようです。簡単に言えばスピーカーですよね。発振回路がついていないのでちょっと面倒ですが、好きな音程で鳴らすことができるのがこのブザーのメリットです。
デジタル回路でアナログ的なことをするためには PWM 制御ということで、RPi.GPIO を使った PWM に挑戦してみました。やり方については「raspberry-gpio-python / Wiki / PWM」に詳しく解説されているので、簡単です。
とりあえずプログラムとしてはこんな感じでしょうか。
#!/usr/bin/python
# -*- coding: utf-8 -*-
import time
import RPi.GPIO as GPIO
chan= 21
freq = 8000
GPIO.setmode(GPIO.BCM)
GPIO.setup(chan, GPIO.OUT)
# ピピッと鳴る
pwm = GPIO.PWM(chan, freq)
pwm.start(50)
time.sleep(0.2)
p.stop()
time.sleep(0.02)
pwm.start(50)
time.sleep(0.2)
p.stop()
GPIO.cleanup()
正直、変なところでハマったので、IC カードの読み取りよりも時間がかかってしまいました。
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/10106
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . Word で数式がグレーアウトされていて挿入できないときは(8911)
2 . awk で指定した n カラム目以降を出力する(6842)
3 . Windows 10 で勝手にログアウトされないようにする(6525)
4 . Thunderbird のメッセージをスレッド化しないようにする(5787)
5 . ネットワーク機器を廃棄する前に設定情報の消去を(4734)
2 . awk で指定した n カラム目以降を出力する(6842)
3 . Windows 10 で勝手にログアウトされないようにする(6525)
4 . Thunderbird のメッセージをスレッド化しないようにする(5787)
5 . ネットワーク機器を廃棄する前に設定情報の消去を(4734)
cles::blogについて
Referrers