ADVERTISEMENT

[소중 리포트] 코딩으로 로봇에 생명 준 뒤 손흥민처럼 움직여봤죠

온라인 중앙일보

입력

업데이트

이성규(오른쪽)군이 아빠와 함께 축구 로봇을 조립하고 있다. 조립된 로봇을 움직이게 하려면 코딩으로 다양한 명령을 짜 전달해야 한다.

컴퓨터에 명령을 입력해 화면 속 캐릭터를 제어할 수 있는 코딩의 가능성은 무한합니다.

영화 ‘매트릭스’의 주인공 ‘네오’는 가상 세계의 규칙을 코딩으로 제어해 현실을 조작하기도 하죠. 명령어를 입력해 현실 속의 자동차나 로봇과 같은 사물을 움직이게 할 수도 있습니다. 소중은 아빠·아이로 구성된 5쌍의 독자와 함께 현실과 가상 세계가 접목된 코딩 교육 체험에 나섰습니다.

지난 호에 이어 이번에도 제작 과정이 담긴 QR코드를 준비했으니 수업 과정을 구경해보세요.

인터넷은 우리 삶에 없어서는 안 될 중요한 요소다. 최근에는 생활 속 사물들을 유·무선 네트워크로 연결해 정보를 주고 받는 ‘사물 인터넷’ 시대가 열리고 있다. 아빠가 운전하는 자동차 문에 달린 센서나, 원격으로 밥을 짓고 요리를 할 수 있게 도와주는 가전제품이 대표적인 사물 인터넷의 사례다. 가까운 미래에는 SF 영화처럼 스스로 자신을 제어할 수 있는 스마트카가 등장해 사물 인터넷의 수준을 높일 수도 있다.

1 이명준(가운데)군이 스크래치로 명령어를 입력하고 있다.
2 센서를 움직이며 로봇 제어 코딩 블록을 테스트하는 모습.

“오늘은 축구 게임을 할 수 있도록 프로그래밍된 축구 로봇을 만들 거에요. 스크래치로 명령어를 입력하고 게임튜브로 로봇을 움직이는 방식이랍니다.”

송영광 대디스랩 대표가 코딩 교육을 받기 위해 모인 소중 독자들에게 게임튜브를 들어 보이며 말했다. 게임튜브는 일종의 센서 역할을 만드는 도구로, 현실(물리)세계에서 로봇을 움직이게 조작하는 역할을 한다. 반면 로봇을 움직이게 하는 코딩은 컴퓨터(가상세계)를 통해 입력해야만 한다. 현실과 가상의 세계를 잇는 역할을 게임튜브가 하는 것이다. 이번 2회차 교육에서는 대디스랩에서 별도로 준비한 게임튜브와 센서, 로봇을 활용해 코딩을 하는 연습을 하게 된다.

축구를 할 수 있는 로봇을 제어하려면 컴퓨터에 코딩으로 명령어를 입력한 다음, 이를 게임튜브와 연결하는 과정을 거쳐야 한다. 게임튜브에는 GND·D13·D11 등 복잡한 영문 표기가 표시된 센서 연결부가 달려 있다. 참가자들은 송 대표의 설명에 따라 검은색 선은 GND 슬롯(보드 등을 끼워 넣는 자리)에, 노란색 선은 D13 슬롯에 끼우는 식으로 선을 연결했다. 이성규(서울 을지초 3)군은 “처음엔 조금 헷갈리기는 했지만 선의 색과 슬롯 숫자를 비교하며 연결하니 간단했다”고 말했다. 축구를 직접 하게 될 로봇을 조립하는 일도 해야 한다. 앞쪽에 축구공을 품을 수 있는 판이 달린 마차 형태의 귀여운 로봇이다. 로봇을 움직이게 하는 모터(동력)와 센서를 끼울 수 있는 부분까지 조립하고 나면 본격적으로 코딩을 할 차례다.

▷여기를 누르시면 크게 보실 수 있습니다

“조립된 로봇은 혼자의 힘만으로는 아무 것도 할 수 없어요. 코딩으로 움직임을 입력해줘야 하죠. 우리가 몸을 만들어줬으니, 생각도 만들어줘야 합니다.”

생각을 입력하려면 스크래치로 다양한 명령어를 짜야 한다. 게임튜브로 로봇의 동작을 제어할 수 있도록 센서값을 설정하고 ‘디지털 켜기’와 같은 블록을 선택해 적당한 값을 입력한다. 전·후·좌·우로 게임튜브를 기울였을 때 로봇이 해당 방향으로 움직이도록 설정하는 과정이다. 여기에 가속도센서의 값을 설정하면 게임튜브를 어느 각도까지 기울였을 때 로봇이 움직이는지 제어할 수도 있다. 김진호(경기도 예성사관학교 2)군은 게임튜브를 직접 움직이며 가속도센서의 값을 확인하기도 했다.

모든 입력이 끝나면 로봇을 테스트할 차례다. 게임튜브와 연결된 축구 로봇에 코딩이 들어간 컴퓨터를 이어주고 직접 센서를 조작하며 로봇을 움직이게 하면 된다. 이창주(서울 중암중 3)군이 능숙한 솜씨로 로봇을 움직이기 시작한다. 로봇이 손 동작에 따라 앞·뒤로 신나게 움직이며 공을 몰아가기 시작한다.

김진호군이 게임튜브로 로봇의 움직임을 테스트하고 있다. 로봇을 만드는 순서는 다음과 같다. 1 로봇의 부품을 순서에 맞게 떼어낸다. 2 몸체에 바퀴를 연결한다. 3 바퀴의 회전축을 점검한다. 4 동력원과 센서를 부착한다. 5 게임튜브와 연결될 선을 뽑아낸다. 6 게임튜브와 로봇을 선으로 이어준다. 7 완성된 로봇의 모습.
▷여기를 누르시면 크게 보실 수 있습니다

“축구 로봇을 만들었으니 직접 경기를 해봐야겠죠?” 송 대표가 책상 크기만한 미니 축구장을 펼치고 그 위에 로봇들을 올려놓는다. 로봇을 움직여 작은 골대에 공을 먼저 넣는 사람이 이기는 게임 방식이다. 어린이들은 로봇을 움직이는 선수로, 아빠들은 로봇의 수리와 컴퓨터의 센서값을 확인하는 코치 역할로 경기를 수행하기 시작했다. 박지원(성남 판교초 6)양은 “생명이 없는 로봇에 우리가 생명을 불어넣는 느낌”이라고 감탄했다. 이명준(일산 백마초 4)군도 “코딩을 좀 더 공부해서 축구 말고도 다른 기능을 수행할 수 있는 로봇을 만들 것”이라고 말했다.

코딩으로 게임 만들기의 각 과정은 동영상으로 자세히 볼 수 있습니다. 궁금한 독자는 QR코드(왼쪽)를 스마트폰으로 인식하세요. 송영광 대디스랩 대표의 설명이 담긴 제작 과정 동영상이 재생됩니다. 축구 로봇을 만들어 경기하는 현장도 동영상으로 볼 수 있습니다. 코딩 과정과 마찬가지로 QR코드를 스마트폰으로 인식해 주세요.

글=김록환 기자 ,
사진=장진영·우상조 기자 ,
도움말=송영광 대디스랩 대표

ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT
Innovation Lab