Датчик звука
Датчик звука преобразует звук в электрический сигнал.
SoundSensor(slot)
Чтобы создать объект SoundSensor, вызовите SoundSensor(slot).
Также можно использовать короткий псевдоним Sound(slot).
Датчик звука может работать как цифровой и как аналоговый. В аналоговом режиме его можно подключать только к слотам с АЦП (аналого-цифровым преобразователем), а на PiBody есть только 2 таких слота: "C" и "F". Для цифрового сигнала можно использовать любой слот.
Аргументы:
slot (string | int | tuple)— метка слота ("A", "B", "C", "D", "E", "F", "G", "H"), порт пина (0, 2 и т.д.), кортеж (0, Pin.IN)
Возвращает:
Возвращает объект SoundSensor для slot.
from pibody import SoundSensor
sound = SoundSensor("A")
.read() -> (int, float)
Возвращает (digital, analog) в виде кортежа.
Цифровой сигнал 1, если звук был громким.
Аналоговый сигнал возвращает уровень звука в диапазоне [0, 1.0]. 0.5 — значение по умолчанию, соответствующее синусоидальной волне.
digital— цифровой уровень звука 0 или 1analog— аналоговый уровень звука, нормализованный в диапазоне от 0 до 1.0
sound.read()
from pibody import Sound # короткий псевдоним
from time import sleep
sound = Sound("A")
while True:
digital, analog = sound.read()
if digital == 1:
print("Звук значительный")
else:
print("Звук незначительный")
print("Уровень звука:", analog)
sleep(1)
.read_digital() -> int
Возвращает цифровой уровень звука: 0 или 1.
data = sound.read_digital()
print(data)
.read_analog(normalized | None) -> float
Возвращает аналоговый уровень звука.
Аргументы:
- normalized — если True, возвращает число с плавающей точкой в диапазоне [0, 1.0].
Если False, возвращает сырое 16-битное значение АЦП в диапазоне [0, 65535]. По умолчанию: True
data = sound.read_analog()
print(data)