from machine import Pin, time_pulse_us
from time import sleep, sleep_us
echo = Pin(15, Pin.IN)
trig = Pin(14, Pin.OUT)
led_verde = Pin(18, Pin.OUT)
led_amarelo = Pin(17, Pin.OUT)
led_vermelho = Pin(16, Pin.OUT)
def definir_leds(verde, amarelo, vermelho):
led_verde.value(verde)
led_amarelo.value(amarelo)
led_vermelho.value(vermelho)
def medir_distancia():
trig.off()
sleep_us(2)
trig.on()
sleep_us(10)
trig.off()
duracao = time_pulse_us(echo, 1, 30000)
if duracao < 0:
return None
else:
distancia = duracao / 58
return distancia
while True:
distancia_atual = medir_distancia()
if distancia_atual is None:
definir_leds(1, 0, 0)
else:
print("Distancia:", distancia_atual, "cm")
if distancia_atual <= 10:
definir_leds(0, 0, 1)
print("Lixeira cheia")
elif distancia_atual <= 20:
definir_leds(0, 1, 0)
print("Lixeira quase cheia")
else:
definir_leds(1, 0, 0)
print("Ainda ha espaco")
sleep(0.5)