print("This device will detect motion")
print("15/01/2024")
print("created by ZUNIE")
#import library
from machine import Pin, ADC, SoftI2C, PWM
from utime import sleep
import OLEDLIBRARY
#declare pin
AO = ADC(Pin(18, Pin.IN))
pir = Pin(12, Pin.IN)
lampu_kuning = Pin(4, Pin.OUT)
lampu_merah = Pin(5, Pin.OUT)
BUZZER_pin = Pin(15, Pin.OUT)
Pin_scl_sda = SoftI2C(scl=Pin(22), sda=Pin(21))
skrin = OLEDLIBRARY.SSD1306_I2C(width=128, height=64, i2c=Pin_scl_sda)
#main program
while True :
analog_value = AO.read() #kalau digital : .value
#print("The analog value recorded is", analog_value)
voltage_of_light_intensity = analog_value / 4096. * 5
print('The voltage recorded based on the light intensity is', voltage_of_light_intensity, 'V')
print("\n")
motion = pir.value()
if voltage_of_light_intensity <= 2.5 and motion == 0: #cerah + takde orang
lampu_kuning.off()
lampu_merah.off()
skrin.fill(1) #0 - for BLACK,1 for WHITE
skrin.text("MATAHARI MASIH ADA",0, 10,0)
skrin.text("TAKDE ORANG",0 , 30,0)
skrin.show() #a must !!
print("MASIH CERAH DAN TIADA ORANG")
elif voltage_of_light_intensity <= 2.5 and motion == 1: #cerah + ada orang
lampu_merah.off()
lampu_kuning.off()
skrin.fill(1) #0 - for BLACK,1 for WHITE
skrin.text("MATAHARI MASIH ADA",0, 10,0)
skrin.text("ADA ORANG",0 , 30,0)
skrin.show() #a must !!
print("MASIH CERAH DAN ADA ORANG")
elif 2.5 < voltage_of_light_intensity < 4 and motion == 0 : #gelap + takde orang
skrin.fill(1) #0 - for BLACK,1 for WHITE
skrin.text("SUDAH MALAM BOSS",0, 10,0)
skrin.text("TAKDE ORANG",0 , 30,0)
skrin.show() #a must !!
print("GELAP DAN TIADA ORANG")
for a in range (5):
lampu_merah.on()
sleep(0.02)
tone_buzzer = PWM(BUZZER_pin, freq = 1500 , duty = 50)
sleep(0.02)
lampu_merah.off()
sleep(0.02)
tone_buzzer = PWM(BUZZER_pin, freq = 1500 , duty = 0)
sleep(0.02)
lampu_merah.on()
lampu_kuning.off()
else : #gelap + ada orang
skrin.fill(1) #0 - for BLACK,1 for WHITE
skrin.text("SUDAH MALAM BOSS",0, 10,0)
skrin.text("ADA ORANG",0 , 30,0)
skrin.show() #a must !!
print("GELAP DAN ADA ORANG")
for a in range (5):
lampu_merah.off()
lampu_kuning.on()
sleep(0.02)
tone_buzzer = PWM(BUZZER_pin, freq = 1500 , duty = 50)
sleep(0.02)
lampu_kuning.off()
sleep(0.02)
tone_buzzer = PWM(BUZZER_pin, freq = 1500 , duty = 50)
sleep(0.02)
lampu_kuning.on()
sleep(8)