Рад на пројекту II¶
Аутомат - Мерач раздаљине са звучним обавештењем¶
Опис вежбе: Аутомат функционише тако што фоторезистивни сензор детектује интензитет светлости. Интензитет светлости се очитава на лед бар-графу. Што је интензитет светлости већи то је већи број светлећих диода које су укључене. У једном тренутку се активира звучник који обавештава да је прекорачена дозвољена раздаљина. Аутомат представља модел уређаја који детектује удаљеност.
Повежите пин2 са микробитом преко еџ конектора, као и пинове пин1, пин8, пин12, пин16. Електрична шема кола:

Повежите компоненте као на слици:

Вежба је успешно урађена ако добијете следећи ефекат:

Вежба је успешно урађена, ако добијемо ефекат као на следећем видеу. Кликните на видео да би се покренуо:
Oво је изворни код програма који је потребно уписати и микробит:
import microbit as mb
import utime
while True:
sensor_Value = mb.pin2.read_analog()
if sensor_Value < 128 :
mb.pin1.write_digital(0)
mb.pin8.write_digital(0)
mb.pin12.write_digital(0)
if (sensor_Value >= 128) and (sensor_Value < 256) :
mb.pin1.write_digital(1)
mb.pin8.write_digital(0)
mb.pin12.write_digital(0)
if (sensor_Value >= 256) and (sensor_Value < 512):
mb.pin1.write_digital(1)
mb.pin8.write_digital(1)
mb.pin12.write_digital(0)
if (sensor_Value >= 512) and (sensor_Value < 768):
mb.pin1.write_digital(1)
mb.pin8.write_digital(1)
mb.pin12.write_digital(1)
if (sensor_Value >= 768):
mb.pin16.write_digital(1)
utime.sleep_ms(2)
mb.pin16.write_digital(0)
utime.sleep_ms(2)
(Rastojanje1)
Oво је изворни код програма који је потребно уписати у микробит:
import microbit as mb
import utime
stanja = [(0,0,0),(1,0,0),(1,1,0),(1,1,1)]
counter = 0
while True:
sensor_Value = mb.pin2.read_analog()
if sensor_Value < 128 :
counter = 0
if (sensor_Value >= 128) and (sensor_Value < 256) :
counter = 1
if (sensor_Value >= 256) and (sensor_Value < 512):
counter = 2
if (sensor_Value >= 512) and (sensor_Value < 768):
counter = 3
if (sensor_Value >= 768) and (sensor_Value < 830):
counter = 4
mb.pin16.write_digital(1)
utime.sleep(2)
mb.pin16.write_digital(0)
utime.sleep(2)
p1,p8,p12 = stanja[counter]
mb.pin1.write_digital(p1)
mb.pin8.write_digital(p8)
mb.pin12.write_digital(p12)
(Rastojanje2)