스크래치 아두이노 서보모터로 그림그리기

스크래치 아두이노 코딩-서보모터

서보모터로 스크래치 아두이노 코딩을 하겠습니다. 서보모터는 아두이노로 코딩할 때 많이 사용합니다. 따라서 서보모터를 아두이노로 잘 다루는 방법을 배워야 합니다. 서버모터가 회전하면서 그림을 그리는 스크래치 아두이노 코딩입니다.

 

어떻게 서보모터로 스크래치 아두이노 코딩을 하는지 알아보겠습니다. 스크래치로 멋진 그림을 한 번 그려보겠습니다. 스크래치로 똑같은 모양을 반복해서 그림을 그립니다. 우리는 그림 2-10과 같은 그림을 그릴 겁니다.

그림 2-10 해바라기 모양

 

어떤 모양이 반복하나요? 삼각형 12개가 보이나요? 이 도형은 삼각형 어떤 규칙으로 여러 번 반복해서 그린 것입니다. 삼각형을 하나 그릴 때마다 모터가 움직여서 삼각형을 하나 그렸다는 것을 알려줍니다.

 

우선 삼각형을 하나 그리고 서보모터가 움직이도록 코딩을 하겠습니다. 서보모터를 디지털 9번 핀과 연결합니다. 그리고 서보모터의 각도를 0으로 해서 처음 위치로 돌아오게 합니다.

그림 2-11 서보모터 각도 바꾸기

 

그리고 그림 2-12와 같이 날개 모양의 서보모터 브래킷이 가로로 놓이도록 서보모터에 끼웁니다.

그림 2-12 서보모터 준비

 

그리고 [삼각형 그리기] 변수를 만듭니다. 이 변수의 값만큼 서보모터가 회전하게 코딩을 합니다. 곰돌이의 방향을 90도로 정해서 곰돌이가 왼쪽을 보게 합니다. 그리고 무대 위에 펜 명령어로 그림 그림을 모두 지워줍니다.

 

<지우기> 블록을 사용하지 않으면 펜 블록으로 그린 그림이 계속 무대에 있어서 보기 좋지 않습니다. <펜 내리기> 블록을 사용하고 삼각형을 그립니다. 그리고 1초 있다가 [삼각형 그리기] 변수에 10을 더하고 서보모터를 회전하는 겁니다. 어때요? 참 쉽죠?

그림 2-13 삼각형 그리고 서보모터 회전하기

 

함수를 이용하여 코딩하면 더욱 좋겠죠? <삼각형 그리고 서보모터 회전>이라는 함수를 만들고 삼각형을 그리고 서보모터를 움직이는 코드를 연결해 줍니다.

그림 2-14 <삼각형 그리고 서보모터 회전> 함수 만들기

 

함수를 이용하면 문제를 나눠서 생각할 수 있습니다. 다시 우리가 그리고 싶은 그림을 자세히 살펴봅니다. 어떤 규칙이 보이지 않나요?

 

앞에 그림은 삼각형을 그리고 앞으로 이동하고 30도만큼 시계방향으로 회전하는 것을 계속 반복하면 됩니다. 이것을 스크래치로 코딩하면 그림 2-15와 같습니다. 어때요? 참 쉽죠?

그림 2-15 함수를 이용하여 코딩하기

 

총 12번을 반복하면 되는데 삼각형을 그릴 때마다 펜의 색깔도 바꿔 줍니다. <펜 색깔을 ~만큼 바꾸기> 블록을 사용하면 삼각형을 그릴 때마다 펜 색깔이 변해서 다양한 색깔의 삼각형을 그릴 수 있습니다.

그림 2-16 12번 함수 반복하기
그림 2-17 다양한 색깔로 그리기

 

그림 2-18은 어떻게 그릴 수 있을까요? 어떤 규칙이 보이지 않나요?

그림 2-18 사각형 꽃 모양

 

위 그림의 사각형은 마주보는 두 변이 모두 평행한, 평행사변형입니다. 그림을 자세히 보면 이 평행사변형이 색깔을 바꾸면서 회전하고 있다는 것을 알 수 있습니다.

그림 2-19 평행사변형

 

<사각형 그리고 서보모터 회전>이라는 함수를 만들고 그림 2-20과 같이 코딩을 하면 평행사변형이 하나 그려집니다. 삼각형을 반복해서 그릴 때와 비슷하죠? 그럼 어떻게 코딩하면 우리가 원하는 그림을 그릴 수 있을까요?

그림 2-20 <삼각형 그리고 서보모터 회전> 함수 만들기
그림 2-20 <삼각형 그리고 서보모터 회전> 함수 만들기

 

그림 2-20 <삼각형 그리고 서보모터 회전> 함수 만들기사각형을 그리고 회전하고 색깔을 바꿔주는 것을 12번 반복하면 됩니다. 스크래치를 이용하면 아주 간단한 코딩으로 멋진 그림을 그릴 수 있습니다. 같은 도형을 규칙을 정해서 반복하여 그리면 멋진 작품을 만들 수 있습니다. 이번 단원에서 배운 내용으로 자신만의 작품을 만들어보면 어떨까요?

그림 2-21 12번 함수 반복하기

 

댓글 (0)

Designed by JB FACTORY