레고 마인드스톰

(마인드스톰에서 넘어옴)

d91bba0681a11f2aeac7306394eb659f.jpg
RL294d.png
rcx.gif
ev3rstorm-mindstorms-ev3.jpg
(사진 순서) 마인드스톰 2세대 모델 NXT (위), ROBOLAB[1]을 이용한 프로그래밍(가운데), 1세대 모델 RCX(아래), 3세대 최신 모델 EV3.

몇몇 공대생들의 머리를 아프게 하는 장난감

1 개요

말 그대로 로봇을 만들고 프로그래밍까지 할 수 있는 레고 모델. 레고사와 MIT 미디어랩의 합작으로 개발된 제품이다.

레고 마인드스톰 홈페이지 레고사에서 직접 운영하는 마인드스톰 공식 홈페이지로 상단의 Gallery에 들어가면 전세계 사람들이 만든 마인드스톰 창작품을 공유하고 감상할 수 있다. 그리고 세상은 넓고 굇수는 많다는 것을 깨닫게 된다

마인드스톰 라인업은 기술력 발전에 의한 세대간 전환(이라 쓰고 세대교체로 구버전 죽이기)으로 꾸준히 새로운 모델이 개발되고 있다. 신버전이라고 해서 구버전보다 혁신적인 변화가 일어나는 것은 아니고, 분명 스펙상의 성능 상향이나 기능의 추가는 이루어졌지만 본질은 크게 바뀌지 않는 변화. 쉽게 이야기하자면 피쳐폰 > 스마트폰 수준의 변화가 아닌, 2014년 스마트폰과 2016년 스마트폰의 차이와 같은 관계라 보면 된다. 1세대인 RIS(Robotics Invention System) 와 2세대인 NXT 를 거쳐 현재는 3세대인 EV3 가 유통되고 있다.

1세대인 RIS (9719 RIS1.0 / 9747 RIS1.5 / 3804 RIS 2.0 / 9790 / 9794) 는 9v 호환을 모티브로 만들어져 당시의 9v 구형 모터들과 기차도 제어할 수 있었다. 하지만 이러한 장점은 2세대로 바뀌며 9v 의 열악한 2선식 인터페이스에 한계를 느껴 입출력포트 자체를 갈아엎는 바람에 사라지고 말았다. (에듀케이션에서 말도안되는 가격에 9v 변환선을 공급하기는 했다.) 새로이 바뀐 6선식 인터페이스는 RJ 커넥터를 쓰는 모듈식으로 전화선 / 랜선 단자와 아주 비스무레하게 생긴(그러나 꼽히지 않는) 커넥터를 써서 스스로 갈라파고스화 했다. 하다못해 뒤이어 나온 파워펑션 시스템과의 호환성이라도 고려해 보면 어디가 덧나는지??? 어쨋든 2세대에서 워낙에 여기저기 서드파티의 쓸만한 소스들이 쏟아져 나온 덕에, 3세대인 EV3 에서도 인터페이스는 하위호환을 유지해 주었다. (그리고 이제 9v RIS 센서는 EV3 에서 인식하지 않는다. RCX의 생명력이 늘어나는군요??)

매 출시마다 '완구 1세대 출시' > '교육용 출시' > '완구 2세대 출시' 의 사이클을 유지하려는 것 같다. 완구와 교육용의 차이는 센서류 개수와 잡스러운 부품 수량, 보관용 스토리지박스 제공 여부, 컨텐츠(달랑 조립가이드가 아닌 교육센터에서 유료 교육서비스 제공) 등으로, 메인이 되는 컨트롤러 자체는 완구와 교육용이 동일한 스펙을 유지한다. (내부적인 로직 변경은 있을수도 있으나 적어도 외부로 보여지는 특징적인 입출력 포트 등은 사실상 동일, 펌웨어는 소프트웨어 환경 - 교육용이냐 완구냐 - 에 따라 버전이 다른 경우도 있으나 이 역시 강제되지는 않는다.)

RCX는 현재 자신이 관련 악세사리를 엄청나게 많이 갖고있거나, 9v 요소를 꼭 돌려야 하는 상황이고 본인의 인내심이 매우 뛰어난 경우가 아니라면 사실상 가치가 없다. 적외선 통신 방식에 펌웨어가 램에 올라가서 완전 방전되면 바보가 되는 어처구니없는 설계 덕분에 '연습용' 으로 쓰기에도 좋지 않다. 경험적 맛보기를 위해 싼게 필요하다면 차라리 NXT를 추천.(그러나 NXT는 냉납으로 인한 LCD 불량이라는 함정이 기다린다. Youtube 에 관련 수리방법이 동영상으로 수차례 올라올 정도)

당연히 RIS가 먼저나왔고, NXT가 늦게 나왔으며 가장 최근에 EV3 가 나왔기에, 성능은 RCX < NXT < EV3. 그러나 이 기기의 본질인 '센서값 받아 로직에 의거해 모터 구동' 이라는 기능만 놓고 본다면 사실상 RCX 로도 차고 넘친다. (2세대 피쳐폰으로도 전화와 문자쓰는데 별 문제가 없듯이)

통신 관련해서는 1세대와 2세대의 차이가 현격하다. RCX(RIS의 중앙 컴퓨터 블럭)는 본체하고 적외선 통신으로 데이터를 전송하지만, NXT는 USB 포트 연결 또는 블루투스로 전송한다.[2] RIS는 레고 블럭의 호환성에 초점을 맞춘 반면에, NXT는 블럭에서 멀리 떨어졌다. 직접 사서 조립해보면 알겠지만,(물론 지금은 RIS는 단종되었다.) RCX는 모든 레고 블럭을 붙일 수 있는 반면, NXT는 레고와는 전기 관련 부품은 전혀 호환이 안된다. 예를 들면 센서/모터 케이블도 RIS는 이전의 레고 테크닉 라인의 케이블을 사용하지만 NXT는 랜케이블에 커넥터가 약간 변형된 케이블을 사용한다.[3] 조립기법도 예전 레고방식과는 다른데, 이건 뭐 테크닉이라는 장르 자체가 전반적으로 조립기법이 바뀌었으니 딱히 마인드스톰의 문제는 아니고... 성능차이가 심하다. RCX 모터는 성능이 약한편이고 크기도 무시할 수 없을 정도로 크나, NXT는 모터크기가 작으면서 내부에 회전 센서가 장착되어 있는 등 성능이 RCX에 비해 월등하다. 이런 연유로 RCX 경기때 NXT모터를 달고 출전하는 경우가 다양하다. 그리고 프로그래밍 명령어도 많다. RCX는 오래되다보니 구현할 수 있는게 한계가 있지만, NXT의 경우에는 다양한 센서와 다양한 명령어를 제공한다. 덕택에, 프로그래밍할때 머리를 더 써야할 정도이다. NXT,RCX모두 C언어로 프로그래밍 가능하다. (그리고 용자는 RCX로도 세그웨이도 만들고 큐브맞추기도 만든다.)

EV3는 모든 면에서 NXT보다 한 단계 더 진화했는데 차이점이 많다. 커맨드 블럭의 프로세스 성능이 NXT와 비교해보았을 때 비약적으로 향상되었다. 이미 RCX와는 비교조차 어렵고... 기본적으로 OS 에 리눅스(경량화 버전)가 적용되었다. 덕분에 기존 NXT와는 다르게 부팅에 시간이 상당히 걸리게 되었다. 30초 정도... 프로그램 저장 용량이 늘어났다. NXT는 프로그램을 6~7개 정도만 저장하면 메모리 부족에 시달려 필요없는 프로그램을 자주 지워줘야 했지만 EV3는 메모리카드 포함하여 최대 32기가 바이트까지 용량이 늘어나서 어지간해서는 메모리 부족에 시달릴 일이 없다. 단, 메모리카드가 없으면 5메가 바이트가 한계다.(메모리 카드는 micro-sd, 별도 구매) 그리고 기본으로 제공하는 보너스 모델들이 매우 많다. 또 프로그래밍이 더 쉬워졌다. 게다가 한글화까지 되어있기에 더더욱 쉽게 프로그래밍할 수 있다. 그리고 EV3는 와이파이 무선 연결도 지원한다. EV3는 두 개의 단말기를 양방향 유선 연결하여 싱크를 맞추는 데이지 체인 시스템이 있다. NXT에서도 프로그래밍 툴 없이 브릭 내에서 자체적으로 어느정도 프로그래밍이 가능했지만 그건 앞으로가라 뒤로 가라 정도의 굉장히 허접한 수준이었고 EV3는 좀 더 세세한 움직임도 브릭 자체에서 프로그래밍이 가능해졌다. 물론 더 정밀한 움직임을 위해선 프로그래밍 툴을 써야 한다. 연결 포트가 하나 더 늘어났다. (NXT: 센서 넷, 모터 / EV3: 센서 넷, 모터 ) 당연하지만 NXT와 호환이 된다. 물론 RIS는 연결포트 자체가 달라 호환이 안된다.[4] NXT는 블루투스 무선조종 앱을 개인이 만들어 배포했지만 EV3는 무선 조종 앱도 레고 사에서 아예 정식으로 만들어서 배포한다. 기본 로봇들의 조종뿐만 아니라 자신에게 필요한 기능을 넣어 커스텀 조종기를 만들 수도 있다.

프로그래밍은 RCX나 NXT를 사면 부록으로 따라 오는 프로그래밍 툴을 쓰거나, 그것도 여의치 않으면, 어둠의 루트로 얼마든지 구할 수가 있다. 최신 모델인 EV3같은 경우엔 아예 레고 마인드스톰 공식 홈페이지에서 무료 배포한다. 게다가 한글로도 설치 가능하니 이 얼마나 친절한가~ (물론 리테일 버전(흔히 말하는 놀이용)용 소프트웨어만 무료 배포하고 에듀케이션용은 세트 구매시 별도의 CD를 제공한다.) 여기서 받을수 있다.

저 프로그래밍이라는게 그냥 명령어 아이콘을 늘어놓고 전선 잇듯이 하는, 컴퓨터만 할 줄 알면 개나 소나 할 수 있도록 매우 쉬운 프로그래밍이 주 특징이다. C언어자바를 전혀 배우지 않은 사람들도 2~3개월만 집중적으로 공부하면 웬만한 프로그램은 직접 만들 수 있다. 그렇기 때문에 머리를 많이 굴러가야 하기 때문에 창의력에 큰 도움을 준다곤 한다. 덕분에 초중고는 물론이고 심지어는 대학교에서도 종종 교양강의에서 모습을 드러낸다. 이야. 대학생들이 단체로 레고가지고 놀고 있어요. 때로, 유튜브 같은곳에 큐브 맞추는 로봇(Cubestormer II)[5]같은 엄청난 변태실력자의 동영상이 올라오기도 한다. Cubestormer III. 위의 큐브 스토머 2의 업그레이드 버전. 보고 놀라지 마시라.

꽃꽂이용 스펀지를 이용한 CNC도 만들어졌다. 유일하게 레고가 아닌 부분이 엔드밀 뿐이라고.

또 이정도로 만족하지 못하는 사람들을 위해 마인드스톰 기본 프로그래밍 툴 말고도 NQC(Not Quite C),RobotC(역시 C 기반. LegOS, leJOS(java for LEGO Mindstorm), LabView, 레고 에듀케이션 센터에서 사용하는 ROBOLAB 등 여러 언어를 사용 가능하다.

하지만, 결정적인 것은 가격이다. 저거 박스 하나에 30~50만원이나 하는 고가의 물건이다 아이를 둔 위키러는 절대 집에서 이 문서를 읽지 말자. 에듀케이션 셋도 60만원이 훌쩍 넘는다. 내용물은 별로 없는데 왜 가격이 저리 비싸나면, 직수입하는데다가 전반적으로 레고제품이 비싸기 때문에(..), 정말로 가격이 무시를 못한다.[6] 그래서 개인이 직접 사서 쓰는 경우보단, 학교나 레고 에듀케이션 센터, 특정 단체, 동아리 등에서 단체로 구입해서 쓰는 경우가 많다. 대학교에서 구입하여 주로 설계 수업에 쓰인다. 교수가 미션을 내면 그에 합당하는 로봇을 만드는게 수업의 주 내용.[7]

RCX와 NXT는 한국에서는 교육용으로만 발매되고 리테일 버전은 발매되지 않았다는 소문도 있는데 전부 오프매장에 정발이 되긴 했다. 단지 매우 매니악한 (출시 당시인 98년도에 이게 어떤 느낌이냐면 2016년 기준 가정집에서 VR 헤드기어를 사는것같은 느낌이라 보면 될듯) 장르라 극소수 풀리고 거의 회수되었기 때문이다. 시장 꼴이 이러하니 당연히 개발툴 역시 영어로 되어있어서 쉽지 않다. 하지만 EV3는 리테일 버전과 교육용 버전 모두 정식으로 발매되었고 무엇보다도 프로그래밍 툴의 한글화 덕분에 접근성이 더 쉬워졌다. 물론 가격은...(공식 홈페이지 기준 리테일 버전 61만원, 에듀케이션 세트 가격 추가바람) 그래도 미국 다음으로 세계에서 두 번째로 레고가 싼 나라는 우리나라라는 걸 알아두자.

가격도 가격이지만 접근 난이도가 높아서 자,타칭 내로라 하는 레고 덕후인 사람들도 마인드스톰 앞에서는 손사래를 치는 경우가 많다. 단순히 조립만 하고 끝나는 것이 아니라 그 로봇에 맞는 프로그램까지 자신이 직접 작성해주어야 하기 때문이다. 하지만 조금만 공부하면 누구나 쉽게 만들 수 있으니 별로 어렵다는 생각은 하지 않아도 된다.

파일:Attachment/레고 마인드스톰/RAPT3R large.jpg
예시로 올려두는 기본 모델과 샘플 프로그램 한 가지. 마인드스톰 EV3 리테일 버전(제품 번호 31313)에 들어있는 다섯 가지 기본 모델 중 코브라인 RAPT3R의 모습과 이 모형의 작동에 사용되는샘플 프로그램 중 하나다.

파일:Attachment/레고 마인드스톰/사본 EV3RAPT3R.jpg
지면 관계상 작게 나온 관계로 이미지를 컴퓨터에 다운로드해서 확대한 다음 보는 것을 권장한다.

맨 왼쪽 버튼이 프로그램 시작 버튼이다. 라지 모터가 포트 D 에 연결되어있고 [8] -30의 파워로 1초간 움직인다. 이 D 포트의 모터는 위 모델의 목 부분을 움직이는 모터고 -30으로 움직이면 30의 파워로 역방향 회전을 하며 목을 원래 자리에 돌려놓는다.

그 다음으로 보이는 프로그램을 감싸고 있는 큰 테두리가 반복을 뜻하는 루프 블록이다. 루프 값은 횟수를 지정하거나 센서에 특정 값이 감지되면 반복하도록 하는 등의 세팅이 가능하며 맨 오른쪽을 보면 현재 설정값은 무한대임을 알 수 있다.

테두리 안쪽을 보면 카메라같은 모양의 아이콘이 보이고 그 옆으로 위 아래로 나뉜 두 개의 상자가 보인다. 이것은 스위치 블록으로서 아이콘에 설정된 값이 참인지 거짓인지, 또는 어떤 설정 값을 입력받았는지 등에 따라 다른 행동을 취하게 하는 프로그램이다.

카메라 모양의 아이콘은 적외선 센서값이다. 적외선 센서는 4번 포트에 연결되어있고 조건은 탐지값이 30보다 작을 경우이다.

값이 참이면 (즉, 탐지 범위 30 이내에 장애물이 감지되면) 윗줄의 시퀀스를 실행한다. 본체에 붉은 빛이 들어오고->A 포트(방향전환 모터)와 B 포트(몸통 이동 모터)의 연결된 모터가 정지하고-> 뱀이 덮치는 소리를 낸다.-> 목과 연결된 D 포트의 모터(목 움직이는 모터)가 100의 파워로 1초동안 정방항으로 회전하여 목을 뻗어 공격한 다음 되돌아온다. -> A 모터가 역방향으로 회전하며 방향을 바꾸고-> B 모터가 역회전하며 뱀을 뒤로 물러나게 한다 -> D 모터를 -30의 파워로 1초간 역회전 시켜 목을 정리한다. -> 2초 동안 대기한다. -> A 모터가 -75의 파워로 역회전하며 방향을 전환한다. -> 1초 대기 -> 여기까지 하나의 시퀀스가 끝났으며 반복 설정이 무한으로 되어있기 때문에 다시 루프 박스의 처음으로 돌아간다.

값이 거짓이면 (즉, 탐지 범위 30 이내에 장애물이 감지되지 않으면) 아랫줄의 시퀀스를 실행한다. 본체에 노란 색으로 불이 들어오며 B 모터를 75의 파워로 무한대로 작동시킨다.(전진) 붉은색 블록은 랜덤 블록이며 설정된 값 안에서 선으로 연결된 부분이 설정값의 영향을 받아 작동하게 되는 블록이다. 즉, -30에서 30까지의 파워 중 랜덤으로 선택하여 A포트의 방향 전환 모터를 0.2초간 실행하여 방향을 바꾸는 것이다.

이 모든 것을 아랫줄에 있는 여러 가지 아이콘들의 배열만으로 간단하게(...) 실행할 수 있다. 사진에는 안 나왔지만 소프트웨어를 한글로 설치 가능하기 때문에 아이콘에 마우스를 가져다 대면 한글로 팝업이 뜨면서 설명이 간략하게 나오니 영어 울렁증을 걱정할 필요는 없다. 라고 장황하게 설명해도 이해 못하는 사람이 많을 것이다... 우리나라에서 이것을 전문적으로 배울 수 있는 곳은 아주 적다. 다른 레고 교육 센터에도 마인드스톰 강사들이 있지만 그들 중에서도 익스퍼트 내지 마스터급의 지식을 갖춘 사람은 극소수다. 당신이 이 글을 읽고 있고 자녀에게 로봇 교육을 시키고자 한다면 센터 선택을 잘해야 한다. 독학에 자신있고 로보틱스에 관심이 많다면 도전해보자. 독학도 쉽지가 않아 무턱대고 구입했다가는 금세 200만원짜리 애물단지가 되기 쉬운데 일례로 남양주의 덕소고등학교가 2015년에 일본의 가네가와대학 부속고등학교와 자매결연을 맺으면서 5개를 받아 왔는데 그걸 그냥 수학과에 던져주고 알아서 동아리를 만들라고 하는바람에 동아리는 만들어졌는데 전문인력이 없어 그해 그 동아리는 그냥 흐지부지 넘어가게 되었다. 그래서 생기부에도 쓰기가 뭣해서 부원들은 다른 동아리에 들어갔다고

2 배울 수 있는 곳

  • 서울로봇고등학교에서 정규 교과목으로 가르친다. 나중에는 Tetrix라는 키트하고 합쳐서 마인드스톰만 사용할때보다 크고 아름다운 로봇을 만들수 있다. 당연히 힘도 더 강해진다.
  • 전국의 모든 교육대학의 컴퓨터교육과에서 가르치고 있으며, 특히 전주교육대학교 컴교과 교수님 중에서는 본인이 저술한 교재로 가르치시는 교수님이 계신다. 물론 이 학교의 컴교과 학생이어야 수강 가능한다는 전제조건이 붙는다. 이 학교 부설 정보영재파트에서 초등학교 5~6학년이 배울 수 있다.[9] 서울교육대학교의 경우, 1학년 생활과학 시간에 수업을 들을 수 있다. (밑에 적힌 핸즈온캠퍼스 사장님이 와서 가르친다...)
  • 우석대학교 특수교육과에서도 매년 1학기마다 초등특수 전공자들은 무조건 배운다. [10] 그런데 문제는 이 학교의 강의실 사정상 한 학기에 36명만 배울 수 있어서 다른 학과 학생들이 들을 기회가 거의 없다고 한다. 1년을 기다렸다가(...) 들은 해당 학과 학생이나 타과 학생들도 있다는 듯.
  • 용산 전자랜드 4층에 핸즈온캠퍼스라는 곳에서도 전문적으로 가르치는 편이다. 핸즈온캠퍼스는 레고부품으로 모든 것을 도배해놨다(...) 레고덕후라면 가볼만하다.
  • 서울과학기술대학교 정보통신대학 2학기마다 전공선택 과목인 공학기초설계(영어수업은 Basic Engineering Design)에서 주교재로 가르치고 있다. 2세대 NXT를 사용중이며 보통 3~4명씩 조를 짜서 조마다 하나씩 분배된다. 다른 대학의 경우도 공학기초설계 수업을 듣는지는 추가바람.

3 모델 일람

3.1 1세대 RIS

  • Robotics Invention System
    • 9719 RIS 1.0 - RCX 중 아답터 전원공급이 가능한 버전 사용
    • 9747 RIS 1.5 - RCX 후면 아답터 잭 폐지됨
    • 3804 RIS 2.0 - RCX 후면 아답터 잭 폐지됨
    • 9790 Education Mindstorms 시리얼타워 - RCX 중 아답터 전원공급이 가능한 버전 사용 / RS-232 방식 적외선 전송기 제공
    • 9794 Education Mindstorms USB타워 - RCX 중 아답터 전원공급이 가능한 버전 사용 / USB 방식 적외선 전송기 제공
  • RIS 악세사리 세트류 (단품 부품이 아닌 세트만 기재)
    • 9730 RoboSports - RIS 세트에 추가해 스포츠 관련 아이디어모델을 만들 수 있음
    • 9732 Extream Creatures - RIS 세트에 추가해 괴물 관련 아이디어모델을 만들 수 있음
    • 9736 Exploration Mars - RIS 세트에 추가해 화성탐사 관련 아이디어모델을 만들 수 있음
    • 3801 Ultimate Accessory Set - RIS 세트용 유용한 악세사리 모음
    • 9731 Vision Command - USB 카메라를 제공해 영상처리 관련 아이디어모델을 만들 수 있음
    • 3800 Ultimate Builders Set - 고난이도 아이디어 모델을 만들 수 있음
  • 9735 Robotics Discovery Set - RCX의 마이너 모델형, 입출력포트가 각각 2개로 제한.
  • 스타워즈 관련모델 - 스타워즈에 있는 각종 로봇들을 제작할 수 있는 키트. 중앙 컴퓨터 브릭은 마이크로 스카우트를 사용한다. 빛 인식 센서 1개와 컨트롤러 내장 모터 1개로 구성된다.
    • 9748 Droid Development Kit - 흰색 기반, 착한 드로이드들을 만들 수 있음.
    • 9754 Dark Side Developer Kit - 진회색 기반, AT-AT 및 배틀드로이드를 만들 수 있음.
  • Spybotics 시리즈 - 리모콘과 1개의 빛 인식 센서를 이용한 간단한 배틀 컨셉의 로봇. 4개의 제품이 색만 다른 동일 컨트롤러를 사용한다.
  • CodePilot - 바코드를 이용해 간단한 로직을 실행하는 원시적인 컨트롤러. 8479에 적용되었다.

3.2 2세대 NXT

  • Mindstorms NXT
    • 8527 NXT 1.0
    • 8547 NXT 2.0 - 8527의 리뉴얼 버전. 센서 개수와 약간의 벌크 구성에 변화가 있다.
    • 9797 Education NXT - 플라스틱 트레이포함. 부품수 및 구성이 바뀌어 8527 / 8547 의 휴머노이드는 이것만으로는 조립불가
  • NXT 악세사리
    • 9648 Mindstorms Education Resource Kit - 교육용 9797과 쌍으로 출시된 부품 추가 세트. 교육용은 센서가 추가된 대신, 정말 라인트레이서 이상을 만들수 없기 때문.
(NXT 패키지별 부품비교)

3.2.1 NXT 용 서드파티 주변기기

  • 블루투스용 동글키(하나에 만원정도 한댄다)
  • 리튬 이온 충전 밧데리/충전기 (100달러가 넘는다....)
  • 온갖 종류의 서드파티 센서들(주로 HiTechnic에서 생산.)[11]

3.3 3세대 EV3

  • 31313 Mindstorms EV3 - NXT에서 한 단계 더 진보한 것으로 2013년 하반기 출시. 모든 면에서 NXT보다 진보했으며 프로그래밍용 소프트웨어가 한글화되어 프로그램이 더욱 쉬워졌다.
  • 45544 Mindstroms EV3 core set - 교육용
  • 45560 Mindstroms EV3 expansion set - 교육용 악세사리
(EV3 패키지별 부품비교)

4 프로그래밍 언어/툴

마인드스톰 시리즈에 대해 기본적으로 LEGO 사에서 제공하는 툴은 항상 GUI 기반이다. 그리고 백서를 공개한 덕분에 곳곳에서 서드파티 개발툴들이 만들어졌다. 대부분은 C언어 및 다른 텍스트 언어에 기반을 둔 코딩 방식이다. GUI 기반과 달리 텍스트 기반 툴들은 일단 C 언어를 베이스로 깔고 있기 때문에, 프로그래머들에게 무척이나 친숙하다는 장점이 있다. EV3 는 말 할것도 없고 NXT에서도 C언어계 툴을 사용하면 기초적인 수준의 프로세스 병렬화를 할 수 있기 때문이다. 사실 C언어의 문법을 그대로 사용하고 있느나 상세적인 부분에서 많은 차이점을 가지고 있으므로 주의 요망.

사실 GUI 언어에서 멀티태스킹을 간단하게 지원한다. 단지 랩뷰 언어 특성상 탐색알고리즘같은 복잡한 프로그램이라도 짜려 하면 4K 모니터도 모자랄 수가 있다. 모니터 왼쪽부터 오른쪽으로 수많은 가지를 뻗으며 자라나는 아이콘 나무를 볼 수도 있따. 주로 사용하는 드래그 앤 드롭의 모듈식 로보랩이나 NXT-G 로는 생각보다 빠바박하게 구현하기 힘들다.

4.1 C 및 JAVA 언어 계열

  • NXC/NQC : Not Quite C (C같지만 C는 아니야) 로 시작한 오픈소스 언어. 무료툴 치고는 제법 그럴싸하다. 자체 IDE를 갖추고 있으며, NXT가 출시되면서 NXC로 이름이 바뀌기도 했지만 NQC라고 하면 아는사람은 다 알아듣는다. Robotc와 비교되는 점은 순정 펌웨어에서 동작한다는 것과 나름의 디버깅 툴 및 소소한 악세사리 툴 기능이 있어 편하게 써보기엔 나쁘지 않다는 정도. 물론 본격적인 정통 문법이나 알고리즘으로 들어가면 한계가 있긴 하다.
  • Robot C : 마인드스톰을 이용한 교육시장이 돈이 된다 싶고, C언어에 대한 수요에 비해 툴은 없기에 유료로 나온 툴. 문법도 NQC에 비해 훨씬 더 제대로 C언어를 표방하고 있고, 실시간 디버그 지원등 거의 모든면에서 완벽하다. 심지어 시뮬레이션 모듈을 설치하면 가상의 3D화면으로 레퍼런스 형태의 로봇이 나와 내 알고리즘대로 3D 화면에서 주행을 한다! 하지만 아쉽게도 유료 툴이며 라이센스가 생각보다 비싸다. 그리고 자체 함수들의 지원을 위해 순정 펌웨어가 아닌 Robotc 전용 펌웨어를 따로 깔아야 한다. 물론 펌웨어야 언제라도 다시 순정으로 돌아갈 수 있고 어렵진 않지만 순정 개발툴과 병행해서 써야 하는 상황이라면 매우 귀찮다. 언어를 바꿀 때마다 3분정도씩 날려먹는다 생각하면 될듯.
  • JAVA / LeJos : 이클립스 툴을 이용해 자바를 이용한 코딩이 가능하다.
  • 루비나 펄을 이용하기도 한다는데 아시는분은 추가 바람.

4.2 블록언어계열

  • RIS 제공툴 : 직소퍼즐과 같은 형태로 함수 아이콘을 끼워맞추는 방식이다. 상당히 유치한 느낌의 우주스러운 배색이지만 프로그래밍의 아주 기본적인 요소는 갖추고 있다.
  • ROBOLAB : National Instruments 와 Tufts 대학에서 협력 개발한 레고 전용 프로그래밍 언어. RCX 부터 NXT 까지 지원했다. 현재는 단종. National Instruments 의 LabVIEW 에 근간을 두고 있으며, 개발툴 자체가 LabVIEW 의 커스터마이즈라고 할 수 있다. LabVIEW 를 좀 더 간략화해놓았다고 볼 수 있음.
  • LabVIEW Toolkit for LEGO Mindstorms : National Instruments 의 LabVIEW 에 애드온 툴킷 형태로 공급되는 마인드스톰 함수모음. LabVIEW의 일반 DAQ 장비 프로그래밍과 비슷하게, 헤더를 마인드스톰 VI로 선언한 뒤 마인드스톰 함수들을 LabVIEW 와이어링으로 연결하고 구조는 LabVIEW 의 Structure 블록을 이용하는 형식이다. LabVIEW 체험판이 있다면 무료로 다운받을 수 있다.
  • NXT 제공툴 : LabVIEW 를 이용해 개발했다는 것을 박스에서 대놓고 어필하고 있다. 와이어링은 와이어 모양이 레고의 빔 브릭 형태로 바뀐것을 제외하면 좀 더 LabVIEW에 가까워졌다.
  • EV3 제공툴 : LabVIEW 를 이용해 개발했다는 것을 역시 박스에서 대놓고 어필하고 있다. NXT 제공툴과 비슷한느낌이다.
  • MS Robotics Studio : 블록다이어그램인듯 하면서도 C#인듯한 개발환경.
  • Enchanting : 스크래치와 유사한 툴로 레고 마인드스톰을 제어할 수 있다.
  • App Inventor : 구글에서 서비스를 하고 있으며 MIT에서 개발했다. NXT에 한해서만 블록이 제공된다. EV3은 블루투스 프로토콜이 달라서 그 블록으로 제어할 수 없다. 물론 그 프로토콜을 그대로 따서 붙이면 불가능한 것은 아니다(...) [12]

5 사용자가 만든 모델들

  • mindcub3r : 사이트 대표적인 큐브 맞추는 로봇이다.
  1. LabVIEW 기반의 마인드스톰 프로그래밍 언어.
  2. 솔직히 적외선 통신이 신기하다고 생각하지만, 이 적외선이 매우 허접한 적외선이라, 전송하는데 시간이 너무 오래걸리고 도중에 끊어지는 등의 문제가 발생한다. 진짜 RCX로 파일 전송해본 사람들은 다 알 것이다. 그나마 NXT가 유선통신이기에 망정이지... 게다가 RCX는 배터리 방전시 펌웨어 삭제크리때문에 펌웨어를 다시 전송해야 될 때가 종종 있는데 그때는...
  3. 다만 에듀케이션 셋에 포함된 컨버터 케이블을 사용하면 RIS에 사용하던 센서를 NXT에 사용할 수 있다.
  4. 위의 NXT 에듀케이션 세트에 들어 있는 컨버터 케이블을 사용하면 모터는 구동시킬수 있다. 모터만. 센서는 절대 호환되지 않는다.
  5. 100% 마인드스톰은 아니고 갤럭시 S II를 사용했다.
  6. 게다가 총판이었던 업체의 가격 장난질. 9794 제품의 경우 2003년 200$ 에 환율 1100원대인데 국내 정발가 600,000원대. 200*1100=220000 인데 소매하는 센터 마진을 고려한다 해도, 총판마진이 얼마인거냐???
  7. 단일 패키지만으로는 개인이 즐기기 애매한 용량인 점에도 한몫 하고 있다. 실제로 기본 모델정도 밖에 만들수 없다.. 그야말로 돈 빨아 먹는 수렁.
  8. EV3 본체에는 A,B,C,D 네 개의 모터 포트와 1,2,3,4의 네 개의 센서 포트가 있다. 포트의 위치 선정과 연결은 자유이나 프로그램을 할 시에는 작동시키려는 모터와 포트 넘버를 일치시켜주어야 한다.
  9. 물론 교육청의 병크로 인해 5학년만 배우는 교육대학도 있다.
  10. 이는 전국의 초등특수교육과에서 유일한 케이스이다.
  11. 기본적으로 제공되는 센서가 하나같이 뭔가 애매한 성능이기 때문에 좀더 해상도가 좋은 센서를 사용한다.
  12. 구글은 의외로 폐쇄적인 의사결정구조를 갖고 있어서 EV3 블록을 만들어 달라는 어느 교수님의 건의를 쿨하게 씹었다고 한다(...) 그러니까 엔트리에게 교육과정에서 밀리지...