• 검색 결과가 없습니다.

소프트웨어 개발

문서에서 ▮ 목차 ▮ (페이지 148-154)

평가대상 평가 항목

2) 소프트웨어 개발

로봇개발의 또 다른 어려움은 프로그래밍입니다. 로봇에 탑재되는 프로그 램을 개발할 때는 C언어라는 프로그램을 주로 이용합니다. 그런데 그러한 프로그래밍언어는 전문적으로 배워야 사용할 수 있습니다. 하지만 대부분 교육용 로봇의 프로그래밍은 C언어를 모르더라도 프로그래밍을 할 수 있 도록 제작이 되었습니다. 예를 들어 ‘레고 마인드스톰’의 프로그래밍은 아 래와 같이 이루어집니다.

여러 가지 기능이 있는 툴팁에서 아이콘을 끌어와 로봇의 작동 알고리즘 에 맞게 선형으로 배치하면 됩니다. 각각의 아이콘에 대한 설명은 같이 제 공되는 CD에 충실하게 설명이 되어있습니다. 각 예제 로봇 마다 프로그래 밍이 모두 되어있어 프로그램을 로봇에 다운받아 로봇을 작동시키고 프로 그램을 살펴보며 이해하는 방법을 이용하여 프로그래밍을 학습하는 것도 좋은 방법입니다. 이제 로봇 모듈의 제작에 대한 이해가 되셨을 것입니다.

이해한 내용을 바탕으로 청소임무를 수행할 로봇을 설계해 봅시다.

평면도 스케치

정면도 우측면도

■ (활동) 로봇 모듈 프로그램 알고리즘 설명

로봇의 알고리즘이란 로봇이 수행하는 명령의 순서와 판단에 관련된 메 커니즘입니다. 예를 들어 로봇을 설계할 때 터치센서를 이용했다면, 터치 센서가 작동되면 어떻게 로봇이 움직여야 하는지 동작하는 순서와 판단의 근거를 프로그램하는 것입니다. 그러한 동작들을 제작할 로봇에서 어떻게 구상할 것인지 간략하게 써 봅시다.

■ (활동) 청소 모듈 구상 및 설계

청소를 하는 방법에는 여러 가지 방법이 있을 수 있습니다. 수북이 쌓인 먼지를 털기도 하고, 또는 빗자루로 쓸기도 합니다. 또 다른 방법으로 청 소기를 이용하거나, 아니면 옷이나 침대를 청소할 때 먼지를 제거하는 끈 끈이를 쓰는 방법도 있겠지요. 그렇다면 이번 미션에 가장 알맞은 청소방 법은 어떤 것이 있을 까요? 또 그러한 청소모듈을 어떻게 만들어야할까 요? 먼저 경진대회에서 가장 효과적인 청소방법과 그 이유를 설명해 봅시 다.

청소방법 이유

구상이 모두 끝났다면 청소모듈에 대한 설계를 해 봅시다. 우선 고려해야 할 것은 청소로봇에 장착이 가능해야 한다는 것과 경진대회에서 효과적으 로 작동할 수 있어야 한다는 것입니다. 아래의 예는 우유팩을 이용한 진공 청소기 모듈입니다.

우유팩과 냉각용 쿨링팬 스타킹을 이용한 청소 모듈입니다. 위와 같은 모 듈의 제작 방법은 우유팩에 쿨링팬을 연결합니다. 쿨링팬의 회전을 하기 시작하면 우유팩 내부에 음압이 발생하고 그러한 효과로 인하여 종이와 같은 가벼운 물체들이 우유팩 내부로 빨려들어가게 됩니다. 이때 스타킹은 필터 역할을 하여 스타킹의 구멍보다 작은 물체는 내보내고 큰 물체를 우 유팩에 가두는 역할을 하게 됩니다. 여러분은 어떤 방법을 선택하겠습니 까? 여러분이 생각한 청소모듈을 설계를 해 봅시다.

평면도 스케치

정면도 우측면도

■ (활동) 완성된 모듈 설계

로봇 모듈과 청소모듈이 완성되었다면 두 개의 모듈을 결합하는 작업을 해야 합니다. 두 모듈이 결합해야 완전한 청소로봇이라 할 수 있겠지요.

두 로봇이 합쳐졌을 때 모습을 설계해 봅시다.

평면도 스케치

정면도 우측면도

■ (활동) 시운전

로봇의 제작이 끝나게 되면 제작된 로봇의 시운전이 이루어져야 합니다.

처음 개발된 로봇은 시험을 해보지 않았으므로, 실제 대회에서 어떤 성능 을 보여줄지 모르는 일입니다. 그러므로 개발된 로봇의 시운전을 통하여 로봇의 미션 수행능력을 점검해야 합니다. 점검 후에는 로봇의 장점과 단 점을 파악하고, 이를 바탕으로 장점은 살리고 단점은 보완할 수 있도록 철 저히 대비해야 합니다. 그럼 이제 다음 항목을 이용하여 제작하고 있는 로 봇을 점검해 보도록 할까요?

문서에서 ▮ 목차 ▮ (페이지 148-154)