728x90
반응형
마이크로비트 코딩
micro:bit - 미세먼지 측정키트 (SZH-MN01)
디바이스마트에서 28,500원에 판매합니다.
오늘은 기성품으로 디바이스마트에서 판매중인 미세먼지 측정키트를 이용하여 코딩을 진행해보겠다.
일단 해당 제품에서 제공하는 코드가 있지만 일단 나만의 코딩으로 작성해 보았다.
코딩하는 사이트
https://python.microbit.org/v/3 사이트에 접속하여 microbit Python 을 작성하고
마이크로비트에 연결하여 코드를 올려보자
마이크로 비트 연결
마이크로비트를 연결하여 Send to micro:bit 를 눌러서 마이크로 비트에 연결해보자
Next를 눌러서 현재 연결되어 있는 마이크로비트를 확인해보자
연결되어 있는 마이크로비트를 연결
정상적으로 연결이 되면 Show serial 이 나타나고 클릭하면 로그창을 볼 수 있다.
현재 로그는 코딩을 마친 상태여서 로그가 나타나고 있다. 처음 시작하면 아무것도 표시되지 않는다.
Python 코딩
from microbit import *
# pin0 : 미세먼지 측정값
# pin1 : 측광LED를 ON , OFF
# pin2 : Red LED
# pin8 : Yellow LED
# pin12 : Green LED
# 미세먼지 센서에서 아날로그 값을 받아오는 함수
def dust_value_read():
# LED를 ON
pin1.write_digital(0);
sleep(0.028);
# 미세먼지 농도값을 읽어오는 부분
p0 = pin0.read_analog();
sleep(0.004);
# LED를 OFF
pin1.write_digital(1);
sleep(0.968);
return p0;
# LED제어 함수
def LED_list(a, b, c):
sleep(300);
pin2.write_digital(a); # RED
pin8.write_digital(b); # YELLOW
pin12.write_digital(c); # GREEN
# 디스플레이 화면 표시
def display_list(Type):
if Type == 1:
display.show(Image.HAPPY);
elif Type == 2:
display.show(Image.ASLEEP);
elif Type == 3:
display.show(Image.SAD);
elif Type == 4:
display.show(Image.SKULL);
sleep(1000);
# 미세먼지 농도
while True:
# 미세먼지 농도를 측정하는 함수
dust_val = dust_value_read();
led_type = None;
if (dust_val >= 0) & (dust_val <= 30):
LED_list(0, 0, 1);
led_type = "Green";
display_list(1);
elif (dust_val >= 31) & (dust_val <= 300):
LED_list(0, 1, 0);
led_type = "Yellow";
display_list(2);
elif (dust_val >= 301) & (dust_val <= 600):
LED_list(1, 0, 0);
led_type = "Red";
display_list(3);
elif (dust_val >= 601) & (dust_val <= 1023):
LED_list(1, 1, 1);
led_type = "All";
display_list(4);
# LED 깜빡임을 위해서 리셋해준다.
LED_list(0, 0, 0);
print("Dust Density [ug/m3] : ", dust_val , " LED : " , led_type);
입력하고 코드를 올려보자
코드 업로드
1. GREEN LED : 0 ~ 30 이미지는 HAPPY
2. YELLOW LED : 31 ~ 300 이미지는 ASLEEP
3. RED LED : 301 ~ 600 이미지는 SAD
4. ALL ON LED : 601 ~ 1023 이미지는 SKULL
로그는 위처럼 표시되고 있다.
나중에 또 올리겠습니다. 다르게 만들어봐야겠네요 .
728x90
반응형
'44.개발로먹고사는남편하루 > 개발&코딩TIP' 카테고리의 다른 글
JupyterLab(Python)을 이용해서 나의 주식 현재가격을 알아보자 (0) | 2022.09.28 |
---|