본문 바로가기

스크래치/자율주행자동차

(13)
아두이노 자율주행자동차 만들기 3 아두이노 자율주행자동차 만들기 스크래치로 아두이노 자율주행자동차를 코딩하겠습니다. 아두이노 자율주행자동차 코딩을 잘하려면 어떻게 움직이는지 이해해야 합니다. 이번 포스팅에서는 자율주행자동차의 원리와 코딩하는 방법을 자세히 알아보겠습니다. 다음은 아두이노 자율 주행 자동차의 동작원리입니다. 아두이노 자율주행자동차의 동작을 하나씩 코딩을 하겠습니다. 먼저 자동차가 움직이는 경우를 함수로 만듭니다. 먼저 아두이노 자율주행자동차가 움직이는 경우를 함수로 만듭니다. 우선 장애물과 거리를 확인하는 것부터 코딩하겠습니다. 왼쪽과 오른쪽으로 서보모터가 돌면서 초음파 센서로 장애물이 있는지 없는지 확인합니다. 그런데 한 번만 확인하는 것보다 여러 번 확인하는 것이 더욱 정확하겠죠? 이렇게 여러 번 확인한 값을 모두 더하..
아두이노 자율주행자동차 만들기 2 아두이노 자율주행자동차 스크래치로 아두이노 자율주행자동차 전자회로를 만드는 방법을 배워보겠습니다. 아두이노 자율주행자동차를 만들려면 전자회로를 잘 만들어야 합니다. 이번 포스팅에서는 어떻게 하면 쉽게 전하회로를 만들 수 있는지 자세히 알아보겠습니다. 아두이노 자율주행자동차 전자회로를 만들기 전에 전체적인 회로도를 살펴보겠습니다. 이렇게 보니까 정말 어려워 보이죠? 아두이노 자율주행자동차 전자회로를 쉽게 만들 수 있는 팁을 알면 아주 쉽게 회로를 만들 수 있습니다. 아두이노와 다른 전자부품은 병렬로 연결합니다. 즉, 다른 부품이 없어도 전기가 잘 흘러야 합니다. 플러스 극과 연결하는 부분은 모아서 연결하고, 마이너스 극과 연결하는 부분도 따로 모아서 연결합니다. 플러스 극은 플러스 극끼리, 마이너스 극은 ..
아두이노 자율주행자동차 만들기 1 아두이노 자율주행자동차 스크래치로 아두이노 자율주행자동차 만드는 방법을 배워보겠습니다. 아두이노 자율주행자동차를 만들려면 모터, 서보모터, 초음파센서를 사용합니다. 초음파센서로 앞에 장애물이 있는지 확인하면서 앞으로 움직입니다. 그리고 장애물이 있으면 멈추고 서보모터를 움직여서 주위에 장애물이 있는지 확인하고, 움직이는 방향을 정합니다. 다양한 센서과 부품을 연결해서 아두이노 자율주행자동차를 만들 수 있습니다. 우선 모터와 모터 드라이버를 사용하는 방법을 배워야 합니다. 라인트랙자동차를 만드는 2편에서 모터를 사용하는 방법을 자세하게 설명했습니다. 모터와 모터 드라이버를 사용하는 방법을 잘 모르면 아래 포스팅에 들어가면 됩니다. 모터와 모터 드라이버 사용하는 방법을 자세하게 설명했습니다. 스크래치 아두이..
스크래치 아두이노 벽돌깨기 게임 3 벽돌깨기 게임 만들기 스크래치로 벽돌깨기 게임 만들기를 계속 배워보겠습니다. 스크래치로 벽돌깨기 게임을 잘 만들기 위해서 블럭을 잘 사용해야 합니다. 여러 가지 메시지를 보내고 메시지에 따라서 해야할 일을 코딩하면 쉽게 벽돌깨기 게임을 만들 수 있습니다. 우선 벽돌이 내려가도록 코딩을 하겠습니다. [공이 땅에 닿았다] 변수 값이 1이 되었다가 다시 0이 되는 겁니다. 마치 스위치를 켜고 끄는 것과 같습니다. 스위치가 켜지면(변수 값이 1) 벽돌이 내려가고 새로운 벽돌을 복제합니다. 스위치가 꺼지면(변수 값이 0) 벽돌이 내려가는 것을 멈추고 복제를 하지 않습니다. 그런데 그림 2-57처럼 코딩을 하면 문제가 생깁니다. 벽돌이 너무 많이 내려오게 됩니다. 어떻게 문제를 해결할까요? 변수 값을 순식간에 바꾸..
스크래치 아두이노 벽돌깨기 게임 2 벽돌깨기 게임 만들기 벽돌을 만들기 전에 간단한 수학 문제를 풀겠습니다. 우리는 벽돌을 한 줄에 최대 6개를 넣고 싶습니다. 그렇다면 벽돌의 가로의 크기는 얼마로 해야 할까요? 스크래치 무대의 가로 크기는 480입니다. 따라서 벽돌의 가로 크기는 480÷6으, 80이 됩니다. 세로의 크기는 240의 약수로 해야 합니다. 약수는 그 수로 나눴을 때 나머지가 없는 수를 말합니다. 그래서 딱 맞게 떨어지게 됩니다. 이 책에서는 가로 80, 세로 20으로 벽돌을 그렸습니다. 직사각형을 그리고 마우스로 줄이고 늘리고 해서 크기를 맞춰주면 됩니다. 왼쪽 위를 보면 벽돌의 크기를 알 수 있습니다. 그리고 중심점을 왼쪽 위에 둡니다. 이 중심점이 벽돌의 좌표 기준점이 됩니다. 이렇게 중심점을 두면, 벽돌의 x좌표가 -..
스크래치 아두이노 벽돌깨기 게임 1 벽돌깨기 게임을 만들면서 스크래치 아두이노 코딩방법을 배워보겠습니다. 벽돌깨기 게임을 하는 동안 서보모터가 공이 날아가는 방향으로 회전합니다. 스크래치 아두이노로 벽돌깨기 게임을 만들면서 여러분의 코딩 실력을 키우기 바랍니다. 게임 알아보기 브릭 브레이커 볼(Brick Breaker Ball)이란 게임을 아시나요? 공을 이리저리 튕기면서 벽돌을 깨는 게임입니다. 벽돌에 적힌 숫자만큼 공을 부딪쳐야 벽돌이 깨지는 게임입니다. 하얀색 동그라미에 부딪히면 공의 개수가 늘어납니다. 우리는 이와 비슷한 벽돌께임을 만들겠습니다. 우리가 만들 게임의 규칙은 다음과 같습니다. 여기에서 코딩의 중요한 원칙을 다시 한 번 정리합시다. 한 번에 한 가지 문제만 생각한다. 두 가지를 동시에 생각하려면 문제가 복잡해 보이고, ..
스크래치 아두이노 서보모터로 그림그리기 스크래치 아두이노 코딩-서보모터 서보모터로 스크래치 아두이노 코딩을 하겠습니다. 서보모터는 아두이노로 코딩할 때 많이 사용합니다. 따라서 서보모터를 아두이노로 잘 다루는 방법을 배워야 합니다. 서버모터가 회전하면서 그림을 그리는 스크래치 아두이노 코딩입니다. 어떻게 서보모터로 스크래치 아두이노 코딩을 하는지 알아보겠습니다. 스크래치로 멋진 그림을 한 번 그려보겠습니다. 스크래치로 똑같은 모양을 반복해서 그림을 그립니다. 우리는 그림 2-10과 같은 그림을 그릴 겁니다. 어떤 모양이 반복하나요? 삼각형 12개가 보이나요? 이 도형은 삼각형 어떤 규칙으로 여러 번 반복해서 그린 것입니다. 삼각형을 하나 그릴 때마다 모터가 움직여서 삼각형을 하나 그렸다는 것을 알려줍니다. 우선 삼각형을 하나 그리고 서보모터가..
스크래치 아두이노 서보모터를 연결해요 서보모터 이해하기 우리가 많이 사용하는 3개 종류의 모터가 있습니다. 바로 DC모터, 스텝(Stepper)모터, 서보(Servo)모터입니다. 이 모터들은 각각의 특징이 있고 사용법이 모두 다르기 때문에 서로의 차이점을 잘 알아야 합니다. DC모터는 전기를 주면 계속 회전하는 모터입니다. 2편에서 라인 트랙 자동차를 만들 때 쓰던 모터입니다. 회전방향과 속도를 바꿀 수 있지만 원하는 각도만큼 회전하지는 못합니다. 자율 주행 자동차를 만들 때 바퀴를 움직이기 위해서 사용합니다. 서보모터는 원하는 만큼 회전할 수 있는 모터입니다. 서보모터 안에 톱니바퀴가 여러 개 있어서 원하는 만큼 회전할 수 있는 것이죠. 하지만 아주 큰 힘으로 회전하기는 힘듭니다. 우리가 자율 주행 자동차를 만들 때 초음파 센서와 함께 장..