Skip to main content

Grove - Piezo Vibration Sensor

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

pir

pir

Grove-Piezo Vibration Sensorは、柔軟性、振動、衝撃、タッチの測定に適しています。このモジュールはPZTフィルムセンサーLDT0-028を基にしています。センサーが前後に動くと、内部の電圧コンパレータによって一定の電圧が生成されます。広い動的範囲(0.001Hz~1000MHz)は優れた測定性能を保証します。また、オンボードのポテンショメータをネジで調整することで感度を調整することができます。

pir

バージョン

製品バージョン変更点リリース日
Grove - Piezo Vibration Sensor V1.1初版2014年7月

特徴

  • 標準Groveソケット
  • 広い動的範囲:0.1Hz~180Hz
  • 感度調整可能
  • 強い衝撃に対する高い感受性
tip
Groveモジュールの詳細については、[Grove System](https://wiki.seeedstudio.com/ja/Grove_System/)を参照してください。

対応プラットフォーム

ArduinoRaspberry Pi

pir

pir

caution
上記で対応プラットフォームとして記載されているものは、モジュールのソフトウェアまたは理論的な互換性を示しています。ほとんどの場合、Arduinoプラットフォーム向けのソフトウェアライブラリやコード例のみを提供しています。すべての可能なMCUプラットフォーム向けにソフトウェアライブラリやデモコードを提供することは不可能です。そのため、ユーザー自身でソフトウェアライブラリを作成する必要があります。

応用例

  • 洗濯機の振動検知
  • 低消費電力のウェイクアップスイッチ
  • 低コストの振動検知
  • 車の警報装置
  • 身体の動き検知
  • セキュリティシステム

はじめに

Arduinoで遊ぶ

ハードウェア

Grove - Piezo Vibration Sensorは振動を検知するとロジックHIGHを出力します。このセンサーのデータを読み取るためにArduinoの任意のピンを使用できます。以下は、Piezo Vibration SensorでLEDを制御する例です。振動が検知されると、このセンサーはロジックHIGH信号を出力します(感度はポテンショメータを調整することで変更可能)。その際、LEDが点灯します。

  • ステップ1. 以下のものを準備してください:
Seeeduino V4Base ShieldGrove - Piezo Vibration

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入
  • ステップ2. モジュールを4ピンのGroveケーブルを使用してBase ShieldのD2に接続します。ボード上のデジタルピン13のLEDを出力として使用します。
  • ステップ3. Base ShieldをArduinoに差し込みます。
  • ステップ4. USBケーブルを使用してArduinoをPCに接続します。

pir

note

ポテンショメータを時計回りに調整してしきい値電圧を上げると、元々HIGHレベルを出力していた場合でもLOWレベルを出力することがあります。

ソフトウェア

  • ステップ1. 以下のコードを新しいArduinoスケッチにコピー&ペーストしてください。
const int ledPin=13;
void setup() {
Serial.begin(9600);
pinMode(ledPin,OUTPUT);
}

void loop() {
int sensorState = digitalRead(2);
Serial.println(sensorState);
delay(100);
if(sensorState == HIGH)
{
digitalWrite(ledPin,HIGH);
}
else
{
digitalWrite(ledPin,LOW);
}
}
  • ステップ2. 振動が検知されるとLEDが点灯します。

Raspberry Piで遊ぶ (Grove Base Hat for Raspberry Piを使用)

ハードウェア

  • ステップ1. このプロジェクトで使用するもの:
Raspberry piGrove Base Hat for RasPiGrove - Piezo Vibration

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入
  • ステップ2. Grove Base HatをRaspberry Piに差し込みます。
  • ステップ3. Grove - Piezo Vibration SensorをBase Hatのポート12に接続します。
  • ステップ4. USBケーブルを使用してRaspberry PiをPCに接続します。

pir

note

ステップ3では、Piezo Vibration Sensorを任意のGPIOポートに接続することができますが、対応するポート番号に合わせてコマンドを変更する必要があります。

ソフトウェア

note

Raspberry Pi OS >= Bullseyeを使用している場合は、Python3のみでコマンドラインを使用してください。

  • ステップ1. ソフトウェア設定に従って開発環境を構築してください。
  • ステップ2. grove.pyライブラリをクローンしてソースファイルをダウンロードします。
cd ~
git clone https://github.com/Seeed-Studio/grove.py
  • ステップ3. 以下のコマンドを実行してコードを実行します。
cd grove.py/grove
python3 grove_piezo_vibration_sensor.py 12

以下はgrove_piezo_vibration_sensor.pyのコードです。

import time
from grove.gpio import GPIO


class GrovePiezoVibrationSensor(GPIO):
def __init__(self, pin):
super(GrovePiezoVibrationSensor, self).__init__(pin, GPIO.IN)
self._on_detect = None

@property
def on_detect(self):
return self._on_detect

@on_detect.setter
def on_detect(self, callback):
if not callable(callback):
return

if self.on_event is None:
self.on_event = self._handle_event

self._on_detect = callback

def _handle_event(self, pin, value):
if value:
if callable(self._on_detect):
self._on_detect()

Grove = GrovePiezoVibrationSensor


def main():
import sys

if len(sys.argv) < 2:
print('Usage: {} pin'.format(sys.argv[0]))
sys.exit(1)

pir = GrovePiezoVibrationSensor(int(sys.argv[1]))

def callback():
print('Detected.')

pir.on_detect = callback

while True:
time.sleep(1)


if __name__ == '__main__':
main()
tip

すべてが正常に動作すれば、以下の結果が表示されます。

pi@raspberrypi:~/grove.py/grove $ python3 grove_piezo_vibration_sensor.py 12
Detected.
Detected.
Detected.
Detected.
Detected.
Detected.
Detected.
Detected.
^CTraceback (most recent call last):
File "grove_piezo_vibration_sensor.py", line 84, in <module>
main()
File "grove_piezo_vibration_sensor.py", line 80, in main
time.sleep(1)
KeyboardInterrupt

このプログラムを終了するには、++ctrl+c++ を押すだけです。

Raspberry Pi で遊ぶ (GrovePi_Plus を使用)

ハードウェア

  • ステップ 1. 以下のものを準備してください:
Raspberry PiGrovePi_PlusGrove - Piezo Vibration

pir

pir

pir

今すぐ購入今すぐ購入今すぐ購入
  • ステップ 2. GrovePi_Plus を Raspberry Pi に接続します。
  • ステップ 3. Grove-Piezo Vibration を GrovePi_Plus の A0 ポートに接続します。
  • ステップ 4. USB ケーブルを使用して Raspberry Pi を PC に接続します。

pir

ソフトウェア

note
 **Raspberry Pi OS >= Bullseye** を使用している場合は、**Python3** のみでこのコマンドラインを使用する必要があります。
  • ステップ 1. ソフトウェアの設定 に従って開発環境を構成します。
  • ステップ 2. Github リポジトリをクローンします。
cd ~
git clone https://github.com/DexterInd/GrovePi.git
  • ステップ 3. 以下のコマンドを実行して振動を検出します。
cd ~/GrovePi/Software/Python
python3 grove_piezo_vibration_sensor.py

以下は grove_piezo_vibration_sensor.py のコードです。

import time
import grovepi

# Grove Piezo Vibration Sensor をアナログポート A0 に接続
# OUT,NC,VCC,GND
piezo = 0

grovepi.pinMode(piezo,"INPUT")

while True:
try:
# 振動が検出されると、センサーは論理ハイ信号を出力します
print grovepi.analogRead(piezo)
time.sleep(.5)

except IOError:
print "Error"
  • ステップ 4. ターミナルに以下のように振動が表示されます。
pi@raspberrypi:~/GrovePi/Software/Python $ python3 grove_piezo_vibration_sensor.py
1023
1023
1023
1023
18
17
18
17
note
GrovePi の D2 ポートにセンサーを接続して grovepi.digitalRead(2) を使用することで振動状態を読み取ることもできます。

FAQs

Q1: 出力はデジタルですか、それともアナログですか?

A1: 出力はデジタルで、Low または High です。

回路図オンラインビューア

リソース

プロジェクト

Grove Starter Kit For Arduino - Piezo Vibration Sensor: Arduino GroveスターターキットでPiezo振動センサーの使用方法を学べます。

Seat Monitor: ARTIKクラウドを使用してキャビンシートの状態を監視します。

技術サポートと製品ディスカッション

弊社製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、複数のコミュニケーションチャネルをご用意しています。

Loading Comments...