import time
import utime
time.sleep(0.1)
from machine import Pin
def ultra_fb(t, e, position): #for front and back
trigger = Pin(t, Pin.OUT)
echo = Pin(e, Pin.IN)
trigger.low()
utime.sleep_us(2)
trigger.high()
utime.sleep_us(5)
trigger.low()
while echo.value() == 0:
signaloff = utime.ticks_us()
while echo.value() == 1:
signalon = utime.ticks_us()
timepassed = signalon - signaloff
distance = (timepassed * 0.0343) / 2
distance = "{:.1f}".format(distance)
if float(distance) <= 100:
if float(distance) >= 50:
print("Obstacle is approaching on " + position)
else:
print("Obstacle is very close on " + position + ", be careful")
def ultra_s(t, e, position): #for sides
trigger = Pin(t, Pin.OUT)
echo = Pin(e, Pin.IN)
trigger.low()
utime.sleep_us(2)
trigger.high()
utime.sleep_us(5)
trigger.low()
while echo.value() == 0:
signaloff = utime.ticks_us()
while echo.value() == 1:
signalon = utime.ticks_us()
timepassed = signalon - signaloff
distance = (timepassed * 0.0343) / 2
distance = "{:.1f}".format(distance)
if float(distance) <= 50:
if float(distance) >= 25:
print("Obstacle is approaching on " + position)
else:
print("Obstacle is very close on " + position + ", be careful")
while True:
ultra_fb(0, 1, "front") #front
ultra_s(21, 20, "right") #right
ultra_s(26, 27, "left") #left
ultra_fb(14, 15, "back") #back