카테고리 없음

스크래치와 아두이노 알아보기

jerrytoblog 2025. 11. 25. 22:22

곰돌이는 사회 시간에 우리 지역에 대해서 많은 것을 배웠습니다. 그러다가 우리지역에 있는 도서관의 위치가 궁금했습니다. 곰돌이는 학교에 끝나고 집에 돌아와 컴퓨터를 켰습니다. 그리고 인터넷에 들어가서 검색하니 우리 지역에 도서관이 3개가 있다는 것을 알았습니다. 또한, 곰돌이는 집에서 가장 가까운 도서관이 어디에 있는지도 알았습니다. 곰돌이는 주말에 도서관에 가서 재미있는 소설을 읽을 생각을 하니 기분이 좋아졌습니다.

만약 컴퓨터가 없어진다면 어떻게 될까요? 우리가 흔히 볼 수 있는 스마트폰을 쓸 수 없습니다. 스마트폰 같은 기계는 컴퓨터로 만들어지기 때문이죠. 여러분이 좋아하는 유튜브도 볼 수 없고, 재미있는 게임도 할 수 없습니다. 그뿐만 아니라 엘리베이터나 자동문, 전기밥솥, 세탁기도 사용할 수 없습니다. 그리고 은행, 지하철, 공항도 마비될 것입니다. 컴퓨터는 우리 세상에 없어서는 안 될 소중한 물건입니다. 우리는 매일매일 컴퓨터를 사용합니다. 우리가 컴퓨터를 다양한 방법으로 사용할 수 있는 것은 바로 컴퓨터를 움직이게하는 소프트웨어가 있기 때문입니다. 세상은 이제 소프트웨어가 없으면 돌아가지 않습니다.

소프트웨어를 만드는 것을 코딩이라고 합니다. 코딩은 컴퓨터에 어떤 일을 시키는 거죠. 코딩을 배우면 생각하는 능력을 키울 수 있습니다. 그리고 컴퓨터의 힘을 이용해서 멋지게 문제를 해결할 수 있습니다. 우리가 코딩하는 법을 배우면 우리를 불편하게 하는 많은 문제를 해결하고 세상을 더 멋지게 만들 수 있습니다. 그렇다면 코딩은 어떻게 하면 될까요?

미국에는 MIT라는 정말 유명한 대학교가 있습니다. 이 대학교의 미디어랩이라는 연구실에서 많은 사람들이 고민했습니다.

‘어떻게 하면 사람들이 쉽게 코딩을 할 수 있을까?’ 그렇게 많은 고민을 하면서 연구를 하고, 서로 힘을 합쳐 프로그램을 만들었습니다. 그게 바로 스크래치입니다. 사람들은 처음 배우는 사람도 쉽게 코딩을 배울 수 있도록 스크래치를 만들었습니다. 컴퓨터에 시키는 일들을 레고 같은 블록으로 만들었습니다. 마치 레고 블록을 쌓듯이, 순서대로 명령어 블록을 잘 연결하면 컴퓨터에 일을 시킬 수 있습니다.

아두이노는 다양한 부품을 붙여서 멋진 물건을 만들 수 있는 작은 컴퓨터입니다. 마시모 반지(Massimo Banzi)라는 대학교 교수님이 아두이노를 만들었습니다. 마시모 반지는 누구나 쉽게 전자 부품을 연결하여 작품을 만들 수 있는 컴퓨터를 만들고 싶었습니다. 그는 열심히 연구하여 아두이노를 발명했습니다. 그리고 어떻게 아두이노를 만들었는지 모두가 알 수 있도록 모든 정보를 공개했습니다.

또한, 아두이노를 코딩할 수 있는 프로그램인 스케치를 만들어서 무료로 사용하게 했습니다. 그래서 많은 사람들이 아두이노와 스케치 프로그램을 이용하여 멋진 작품을 만들 수 있게 되었습니다. 아두이노를 사용하면 정말 다양한 물건을 만들 수 있습니다. 인텔, 삼성 등 세계 유명한 기업에서도 아두이노를 쓰고 있습니다.

아두이노는 마법사와 같습니다. 아이디어만 있다면 정말 다양한 작품을 만들 수 있습니다. 아두이노로 만들 수 있는 것은 정말 많아서 다 말하기가 어려울 정도입니다. LED 전구를 이용하여 멋진 크리스마스 트리도 만들 수 있고, 멋진 피규어를 만드는 3D 프린터도 만들 수 있습니다. 여러분이 상상하는 것은 거의 다 만들 수 있습니다. 학교에서 발명품을 만드는 프로젝트를 할 수 있을 뿐만 아니라 멋진 사업 제품도 만들 수 있습니다.

아두이노는 다음처럼 유에스비로 컴퓨터에 연결하여 사용합니다.

많은 사람들이 스크래치를 사용하다가 이런 생각을 하게 되었습니다.

‘스크래치로 아두이노 프로그램을 만들면 어떨까? 그러면 많은 아이들이 아두이노를 손쉽게 사용할 수 있는데.’

원래 아두이노는 C언어와 C++언어를 바탕으로 만들어졌습니다. 스케치라는 프로그램을 코딩하려면 영어를 써야 하고 프로그래밍 규칙도 배워야 합니다. 그래서 아이들이 스케치로 코딩하는 것을 어려워합니다. 많은 사람들이 서로 협력해서 스크래치로 아두이노에 명령을 내릴 수 있는 프로그램을 만들었습니다. 이것을 피지컬 컴퓨팅이라고 합니다. 즉 컴퓨터로 만든 프로그램으로 실제 세상에 있는 물건을 움직이는 것입니다.

이렇게 두 기계가 서로 정보를 주고받는 것을 통신한다고 합니다. 두 기계가 통신하는 것은 두 사람이 대화하는 것과 비슷합니다. 한국인과 중국인이 대화한다고 생각해 봅시다. 그런데 한국인은 한국어로, 중국인은 중국어로 서로 대화한다면 이해할 수 있을까요? 마찬가지로 컴퓨터와 컴퓨터, 장비와 장비 간에 서로 통신을 하려고 할 때 서로 이해할 수 없는 언어를 사용한다면 통신이 되지 않아서 정보를 주고받을 수 없습니다.

서로 통신을 하기 위해서 공통으로 이해할 수 있는 말이 필요합니다. 이것이 바로 프로토콜(Protocol)입니다. 프로토콜은 이렇게 기계 간에 통신이 잘 될 수 있도록 미리 약속을 정한 것입니다. 스크래치와 아두이노가 통신할 때 사용하는 말(프로토콜(Protocol))이 펌마타 펌웨어(Firmata firmware)입니다. 이 펌마타 펌웨어를 통해서 스크래치와 아두이노가 서로 정보를 주고받으면서 통신을 하는 거죠.