Lesson Progress
0% Complete
코드는 매우 간단합니다. 바로 시작하겠습니다. 아래 단계를 따르세요.
- 먼저 Quarky를 PictoBlox에 연결하는 것으로 시작하겠습니다.
- 먼저 USB 케이블을 사용하여 Quarky를 노트북에 연결합니다.
- PictoBlox를 열고 새 파일을 만듭니다. 코딩 환경을 Python Coding으로 선택
- Board를 Quarky로 선택합니다. 그런 다음 Quarky를 연결할 Serial port를 선택하고 Connect 를 누릅니다.
- 우리는 이 활동에서 Quarky를 사용할 것이므로 quarky 관련 함수도 작성하고 해당 함수를 작성하기 위해 sprite에 대해 수행한 것과 동일한 방식으로 quarky에 대한 객체를 정의해야 합니다.
quarky = Quarky()
- 우리는 파이썬에서 시간 모듈을 사용해야 합니다. Quarky에서 두 가지 감정을 표시하는 사이에 특정 시간 간격을 두고 싶기 때문입니다. Python 시간 모듈을 사용하면 Python에서 시간 작업을 수행할 수 있습니다 . 따라서 이 모듈을 시작하기 전에 모듈을 가져와야 합니다.
import time
- 이제 왼쪽 및 오른쪽 IR 센서의 임계값을 설정하려고 합니다. 이전 활동에서 임계값을 찾는 방법을 이미 배웠습니다. 임계값을 설정하는 구문은 다음과 같습니다.
quarky.setirthreshold([1],[2]) ##"[1]:String-IR=""IRL""[2]:Number-THRESHOLD=3000"
quarky.setirthreshold("IRL", 3500) quarky.setirthreshold("IRR", 3500)
- 이제 조건을 while True로 제공하여 while 루프를 작성할 것입니다. 이는 주어진 부울 조건이 False로 평가될 때까지 루프가 계속 실행되어야 함을 의미합니다. while True라고 쓰면 루프가 영원히 실행됩니다.
while True:
- 프로그램에서 논리를 구현하려면 if-else 문을 사용해야 합니다.
구문
if 문의 구문을 살펴보겠습니다.
조건이 True이면(즉, 충족된 경우) if (즉 STATEMENT-BLOCK) 이후에 작성된 명령문(들) 1) 실행되고, 그렇지 않으면 else 뒤에 쓰여진 문장(즉, STATEMENT-BLOCK) 2) 실행됩니다. else 절은 선택 사항입니다. 제공된 경우 두 블록 중 하나가 어떤 상황에서든 실행되며 둘 다 실행되지는 않습니다.
if condition: STATEMENTs - BLOCK 1 else: STATEMENTs - BLOCK 2
여기서 우리의 논리는 먼저 left IR 센서가 활성인지 비활성인지 확인한 다음 그에 따라 정의된 LED를 켜는 것입니다. led 설정 구문을 살펴보겠습니다.
quarky.setled([1],[2],[3],[4]) ## "[1]:Number-XPOS = 1 [2]:Number-YPOS=1 [3]:Num_Array-COLOR=[R,G,B] Number: (R,G,B) [4]:Number-BRIGHTNESS=50"
- 이제 코드는 다음과 같습니다.
if quarky.getirstate("IRL"): quarky.setled(1, 1, (0, 255, 0), 50) else: quarky.setled(1, 1, (255, 0, 0), 50)
- 이제 0.1초의 시간 지연을 추가하기 위해 time.sleep() 함수를 사용합니다 .
time.sleep(0.1)
- 마찬가지로 right IR 센서가 활성인지 비활성인지 확인할 수 있습니다.
if quarky.getirstate("IRR"): quarky.setled(7, 1, (0, 255, 0), 50) else: quarky.setled(7, 1, (255, 0, 0), 50) time.sleep(0.1)
- 프로그램에서 논리를 구현하려면 if-else 문을 사용해야 합니다.
- 전체 코드는 다음과 같습니다.
import time quarky = Quarky() quarky.setirthreshold("IRL", 3500) quarky.setirthreshold("IRR", 3500) while True: if quarky.getirstate("IRL"): quarky.setled(1, 1, (0, 255, 0), 50) else: quarky.setled(1, 1, (255, 0, 0), 50) time.sleep(0.1) if quarky.getirstate("IRR"): quarky.setled(7, 1, (0, 255, 0), 50) else: quarky.setled(7, 1, (255, 0, 0), 50) time.sleep(0.1)
과제 업로드
과정을 마친 후 수료증을 받으려면 과제를 제출해야 합니다.
과제를 업로드하려면 아래 단계를 따르세요.
- 먼저 Pictoblox 파일을 선택해야 하므로 Browse를 클릭합니다.
- .sb3 파일을 선택합니다.
- 그리고 Upload 버튼을 클릭합니다.
행운을 빕니다! ????