Lesson Progress
0% Complete
이 활동에서 우리는 Quarky를 움직일 것입니다.
코딩하자!
코드는 매우 간단합니다. 바로 시작하겠습니다. 아래 단계를 따르세요.
- 먼저 Quarky를 PictoBlox에 연결하는 것으로 시작하겠습니다.
- 먼저 USB 케이블을 사용하여 Quarky를 노트북에 연결합니다.
- PictoBlox를 열고 새 파일을 만듭니다. 코딩 환경을 Python Coding으로 선택합니다.
- Board를 Quarky로 선택합니다. 그런 다음 Quarky를 연결할 Serial port를 선택하고 Connect를 누릅니다.
- 이제 프로젝트 파일 섹션에서 Tobi.py 파일을 선택하면 기본적으로 구문이 스프라이트에 개체로 작성됩니다.
sprite = Sprite('Tobi')
모터 제어
- 우리는 이 활동에서 Quarky를 사용할 것이므로 quarky 관련 함수도 작성하고 해당 함수를 작성하기 위해 sprite에 대해 수행한 것과 동일한 방식으로 quarky에 대한 객체를 정의해야 합니다.
- 우리는 파이썬에서 시간 모듈을 사용해야 합니다. quarky에서 두 가지 감정을 표시하는 사이에 특정 시간 간격을 두고 싶기 때문입니다. Python 시간 모듈을 사용하면 Python에서 시간 작업을 수행할 수 있습니다 . 따라서 이 모듈을 시작하기 전에 모듈을 가져와야 합니다.
- 이제 조건을 while True로 제공하여 while 루프를 작성할 것입니다. 이는 주어진 부울 조건이 False로 평가될 때까지 루프가 계속 실행되어야 함을 의미합니다. while True라고 쓰면 루프가 영원히 실행됩니다.
while True:
- 이제 Quarky가 left 바퀴를 50%의 속도로 forward 방향으로 움직이게 하려고 합니다.
quarky.runmotor("L", "FORWARD", 50)
- 이제 정방향 동작 후 1초의 시간 지연을 추가하기 위해 time.sleep() 함수를 사용합니다.
- 왼쪽 모터를 정지하기 위해 다음 기능을 사용합니다.
quarky.stopmotor("L")
- 역시나 전진 동작 완료 후 0.5초의 지연이 추가됩니다.
time.sleep(0.5)
- 이제 완전한 기능은 다음과 같습니다.
sprite = Sprite('Tobi') quarky = Quarky() import time while True: quarky.runmotor("L", "FORWARD", 50) time.sleep(1) quarky.stopmotor("L") time.sleep(0.5)
- 마찬가지로 left 바퀴의 backward 방향에 대한 함수를 정의해야 합니다.
quarky.runmotor("L", "BACKWARD", 50) time.sleep(1) quarky.stopmotor("L") time.sleep(0.5)
- 이제 left 바퀴를 앞뒤로 움직이는 완전한 기능은 다음과 같습니다.
sprite = Sprite('Tobi') quarky = Quarky() import time while True: quarky.runmotor("L", "FORWARD", 50) time.sleep(1) quarky.stopmotor("L") time.sleep(0.5) quarky.runmotor("L", "BACKWARD", 50) time.sleep(1) quarky.stopmotor("L") time.sleep(0.5)
- 이제 Quarky가 left 바퀴를 50%의 속도로 forward 방향으로 움직이게 하려고 합니다.
Quarky를 크롤링하도록 만들기
- 이제 왼쪽 및 오른쪽 모터를 제어하여 Quarky가 크롤링하도록 할 수 있습니다. 전체 코드는 다음과 같습니다.
sprite = Sprite('Tobi') quarky = Quarky() import time while True: quarky.runmotor("L", "FORWARD", 50) time.sleep(1) quarky.stopmotor("L") quarky.runmotor("R", "FORWARD", 50) time.sleep(1) quarky.stopmotor("R")
변수 추가
- 또한 속도 값과 시간을 변수 “S” 및 “T” 에 할당하여 모터를 제어할 수 있습니다. 이제 코드를 다음과 같이 다시 작성할 수 있습니다.
sprite = Sprite('Tobi') quarky = Quarky() import time S = 50 T = 0.5 while True: quarky.runmotor("L", "FORWARD", S) time.sleep(T) quarky.stopmotor("L") quarky.runmotor("R", "FORWARD", S) time.sleep(T) quarky.stopmotor("R")
과제 업로드
과정을 마친 후 수료증을 받으려면 과제를 제출해야 합니다.
과제를 업로드하려면 아래 단계를 따르세요.
- 먼저 Pictoblox 파일을 선택해야 하므로 Browse를 클릭합니다.
- .sb3 파일을 선택합니다.
- 그리고 Upload 버튼을 클릭합니다.
행운을 빕니다! ????