from machine import Pin
from pir import PIR_Sensor
from actuator import Servo
import utime
pir1 = PIR_Sensor(10)
pir2 = PIR_Sensor(11)
lock_servo = Servo(28)
door_motor = Servo(20)
utime.sleep(1)
while True:
if pir1.motion_detected == True:
print("Motion Detected. Unlocking the Door.")
lock_servo.rotate(0)
utime.sleep(1)
print("Opening the Door.")
door_motor.rotate(180)
print("Waiting for User to Cross the Door")
while pir2.motion_detected != True:
utime.sleep(0.1)
print("User crossing the door. Door will close shortly.")
utime.sleep(1)
door_motor.rotate(90)
print("Door closed. Locking the door.")
utime.sleep(0.5)
lock_servo.rotate(90)
print("Door is locked & closed. \n")
utime.sleep(5)
elif pir2.motion_detected == True:
print("Motion Detected. Unlocking the Door.")
lock_servo.rotate(0)
utime.sleep(1)
print("Opening the Door.")
door_motor.rotate(0)
print("Waiting for User to Cross the Door")
while pir1.motion_detected != True:
utime.sleep(0.1)
print("User crossing the door. Door will close shortly.")
utime.sleep(1)
door_motor.rotate(90)
print("Door closed. Locking the door.")
utime.sleep(0.5)
lock_servo.rotate(90)
print("Door is locked & closed. \n")
utime.sleep(5)
else:
print("No Motion Detected. Door is locked & closed. \n")
lock_servo.rotate(90)
door_motor.rotate(90)
while (pir1.motion_detected != True) and (pir2.motion_detected != True):
utime.sleep(0.1)