#implement the micropython script for the reverse parking sensor
from machine import Pin, time_pulse_us, PWM
import time
trigger_pin = Pin(23, Pin.OUT)
echo_pin = Pin(21, Pin.IN)
buzzer_pin = Pin(12, Pin.OUT)
def measure_distance():
trigger_pin.on()
time.sleep_us(10)
trigger_pin.off()
while not echo_pin.value():
pass
pulse_start = time.ticks_us()
while echo_pin.value():
pass
pulse_end = time.ticks_us()
pulse_duration = time.ticks_diff(pulse_end, pulse_start)
distance = pulse_duration * 0.0343 / 2
return distance
def activate_buzzer():
pwm = PWM(buzzer_pin)
pwm.freq(1000)
pwm.duty(512)
def deactivate_buzzer():
buzzer_pin.off()
while True:
distance = measure_distance()
print("Distance: {} cm".format(distance))
if distance < 100:
print("Obstacle detected! Activating buzzer...")
activate_buzzer()
else:
print("No obstacle detected.")
deactivate_buzzer()
time.sleep(0.1)
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
ultrasonic1:VCC
ultrasonic1:TRIG
ultrasonic1:ECHO
ultrasonic1:GND
bz1:1
bz1:2