from machine import Pin, time_pulse_us
import time
# --- НАСТРОЙКА ---
# ВНИМАНИЕ: Trig должен быть на 4! (Не на 34)
trig = Pin(4, Pin.OUT)
echo = Pin(35, Pin.IN)
# Пин зуммера. Если не пищит, меняй на 5, 15 или 13
buzzer = Pin(4, Pin.OUT)
buzzer.value(0)
print("Система 'Глаз' запущена. Следи за консолью и слушай писк.")
while True:
# Даем датчику "отдохнуть" 50 мс между замерами
time.sleep(0.05)
# Отправляем импульс
trig.value(1)
time.sleep_us(10)
trig.value(0)
# Замеряем эхо (таймаут 30 мс)
duration = time_pulse_us(echo, 1, 30000)
if duration > 0:
distance = (duration * 0.0343) / 2
# Если объект в пределах 2 метров
if distance < 200:
print(f"Расстояние: {distance:.1f} см")
# --- ЛОГИКА ПИСКА ---
# Если край стола близко (меньше 15 см) - пищим очень часто
if distance < 15:
buzzer.value(1)
time.sleep(0.05)
buzzer.value(0)
time.sleep(0.05)
# Если объект на расстоянии 15-50 см - пищим пореже
elif distance < 50:
buzzer.value(1)
time.sleep(0.1)
buzzer.value(0)
time.sleep(0.2)
# Если далеко - пищим редко
else:
buzzer.value(1)
time.sleep(0.1)
buzzer.value(0)
time.sleep(0.5)
else:
buzzer.value(0) # Слишком далеко, молчим
else:
print("Ошибка: нет сигнала от датчика. Проверь провода.")
buzzer.value(0)
time.sleep(0.01) # Небольшая пауза в самом конце