Мазмұнға өту

Дыбыс сенсоры

Дыбыс сенсоры дыбысты электр сигналына түрлендіреді.


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)

Қайтарады: slot үшін SoundSensor объектісін қайтарады.

from pibody import SoundSensor

sound = SoundSensor("A")

.read() -> (int, float)

Кортеж түрінде (digital, analog) қайтарады.
Егер дыбыс қатты болса, цифрлық сигнал 1 болады.
Аналогты сигнал дыбыс деңгейін [0, 1.0] диапазонында қайтарады. 0.5 — әдепкі мән, синусоидалық толқынға сәйкес келеді.

  • digital — цифрлық дыбыс деңгейі 0 немесе 1
  • analog0 бастап 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

Аналогты дыбыс деңгейін қайтарады.

Аргументтер: - normalizedTrue болса, [0, 1.0] диапазонындағы float мәнін қайтарады. False болса, [0, 65535] диапазонындағы өңделмеген 16-биттік АЦП мәнін қайтарады. Әдепкі: True

data = sound.read_analog()
print(data)