독립형 로봇 로봇 시뮬레이터


13

저는 어린 소녀들에게 기술을 소개하는 비영리 자원 봉사를하는 소프트웨어 엔지니어입니다. 우리는 최근에이 아이들을 로봇 세계에 소개하는 방법에 대해 이야기하고 있으며, 어떤 종류의 저렴한 옵션이 있는지 궁금합니다.

매우 매력적인 아이디어 중 하나는 온라인 시뮬레이터 또는 간단한 로봇을 구축하고 프로그래밍 할 수있는 오프라인 독립형 시뮬레이션기를 사용하는 것입니다. 아마도 구성 요소를 함께 드래그 한 다음 해당 구성 요소 간의 상호 작용을 프로그래밍하는 것 이상일 것입니다.

봉사 활동에 활용할 수있는 솔루션은 무엇입니까?


내 경험상, 작동하지 않는 평균적인 로봇은 시뮬레이터에서 본격적인 멋진 로봇보다 더 많은 관심을받습니다 (로봇으로서). 그것이 사실이 아닌 한, 모든 어린이 돌보기를위한 컴퓨터 게임이나 만화 일 수도 있습니다.
Shahbaz

소녀들이 실제로 프로그래밍 개념을 배우고 사용할 수 있도록 시뮬레이터가 필요합니다. 시뮬레이터는 예쁘지 않아도됩니다. 원유 형상 일뿐입니다. 코드가 중요합니다.
Sampson

답변:


7

Stage 및 Gazebo는 각각 오픈 소스 2D 및 3D 시뮬레이터입니다. 이것들은 Player 프로젝트에 의해 생성되고 유지됩니다 . 그것들은 사용하기 매우 쉽고 많은 사전 빌드 맵과 로봇을 가지고 있습니다. 청중의 경험에 따라 약간의 무거운 작업을 수행해야 할 수도 있습니다 (예 : 구성 파일 및 기본 클래스 작성).

또한 몇 가지 추가 이점이 있습니다. 먼저, 메인 제어 코드를 플레이어 플러그인으로 만들면 실제 로봇에 쉽게 적용 할 수 있습니다. 둘째, 실제 하드웨어와 작동하도록 이미 구축 된 수많은 플러그인이 있습니다. 셋째, ROS 와 함께 작동 합니다.


4

약간 비싸지 만 (CHF 75) 여전히 Colobot을 제안 합니다 . 로봇이 인간이 우주 기지를 거주 할 수 있도록 도와야하는 멋진 게임과 유사한 환경입니다. 아이들은 로봇을 프로그래밍하고 점점 더 복잡한 작업을 수행합니다. 이 프로그램은 목표 지향적이고 재미있는 방식으로 프로그래밍의 기초를 가르칩니다.


3

Microsoft 로봇 공학 은 무료이며 시뮬레이터가 포함되어 있습니다. 세계에서 가장 쉬운 환경은 아니지만 실제 로봇 공학에 견고하고 적합합니다. 나는 사전에 물건을 설치하는 선생님의 참여로 사용할 수 있다고 생각합니다. LEGO, Neato 및 기타 로봇을위한 시뮬레이터 '패키지'가 있으며 C # 또는 시각적 드래그 앤 드롭 언어로 프로그래밍 할 수 있습니다.

다시 말하지만, 젊은이들이 쉽게 사용할 수 있도록하기 위해서는 약간의 사전 작업이 필요하다고 생각하지만, 그렇게 어렵지는 않으며 요구 사항을 감안할 때 나의 접근 방식이 될 것입니다. 복잡성이 가까워지면 Gazebo / ROS가있는 Linux 환경과 Windows 환경이 비슷하지만 Windows 환경은 약간 덜 복잡하지만 대부분은 준비 작업으로 숨겨져 있기를 바랍니다.


2

RobotC 에는 사용 가능한 시뮬레이터 가 있지만 둘 다 약간의 비용이 제품입니다. 그러나 그들은 어린 학생들과 교육에 매우 적합합니다. 비용이 차단 요인이 아닌 경우 가장 쉽고 가장 적합한 경로 입니다 (단일 사용자의 경우 라이센스 당 $ 100, 6 명의 사용자의 경우 $ 300, 30 명의 사용자의 경우 $ 600 ).

LEGOMINDSTORMS NXT 용 학생 버전 ROBOTC를 구매하면 가격은 각 $ 49 또는 40 $ (라이센스 20 개 이상) 일 수 있습니다


2

V-Rep (가상 로봇 실험 플랫폼)은 수행 할 수있는 시뮬레이션의 종류가 상당히 넓은 것 같습니다. 교육 목적으로 무료이며 다양한 도구가 제공됩니다. 이 YouTube 비디오 에서 데모를 볼 수 있습니다 .


1

완전한 로봇 공학 시뮬레이터는 아니지만 3D CAD, Autodesk Inventor를 사용하여 시뮬레이션에 많이 사용합니다. 일반적으로 하드웨어에 원하는 것과 유사한 CAD 인터페이스를 만듭니다. 이를 통해 CAD 모델을 가상 프로토 타입으로 사용하여 다음을 수행 할 수 있습니다.

  • 설계 오류를 조기에 파악하십시오. 충돌, 스트로크 부족 등
  • 또한 정렬 오류와 같은 오류에 대한 보상을 찾는 데 유용했습니다. CAD를 사용하여 서로 다른 오류를 하나씩 모델링하고 보상을 테스트 할 수 있습니다. 알려진 부호로 큰 오류를 발생시키는 것이 편리합니다.
  • 또한 CAD는 이러한 관성 모멘트에 대한 답변을 제공합니다.
  • 또한 CAD 모델을 사용하여 장비에 대한 프로그램을 생성합니다.

내가 틀렸다면 CAD를 수정하십시오. CAD는 하드웨어 및 물리 모델링에 중점을두고 로봇 프로그래밍에는 그다지 중요하지 않습니다. OP는 엔지니어링이 아닌 프로그래밍 교육에 관심이 있으므로 CAD 시스템은 그의 문제를 해결하지 못한다고 생각합니다.
ThomasH

@ThomasH 우리는 CAD의 API에 대한 프로그래밍을 성공적으로 마쳤으며 그 방법으로 많은 개발을 할 수있었습니다. 삭제해야합니까?
Johan Larsson

1
삭제할 필요가 없습니다. OP에 적합하지 않다고 생각하기 때문에 나쁜 대답은 아닙니다. 일반적으로 투표는 가장 적합한 답변을 맨 위로 전달하며 OP는 가장 도움이 된 답변을 수락합니다. 그러나이 질문에 대해 비슷한 문제가있는 사람에게는 여전히 관심이있을 것입니다.
ThomasH

1

" MindRover " 를 확인하십시오 . 원래 웹 사이트가 소진되었으므로 지금은 찾기가 오래되고 어렵지만 여전히 Ebay 또는 Amazon 에서 찾을 수 있습니다 . 게임 / 미션 지향적이지만 로봇 구성 요소 팔레트에서 선택하여 섀시에 배치 한 다음 서로 연결하는 작업이 포함되었습니다. 그것은 게임에서 실제로 잘 이루어졌으며 단순에서 반 고급 개념을 탐구하는 데 사용될 수 있습니다. 여기에 일부 스크린 샷 : http://images.google.com/images?q=mindrover .

실제 기능으로 좀 더 진지한 것을 찾고 있다면 FlowStone for Education 을 확인하십시오 . 나는 그것을 사용하지는 않았지만 로봇 타입 작업에 이상적인 시각적 프로그래밍 환경이라고 생각합니다.

마지막으로, 소프트웨어 나 시뮬레이션은 아니지만 최근에 프로그래밍 도입 기법에 관한 phblj의 reddit에 대한 의견을 접하게되었으며 , 이것이 실제로 좋은 것으로 생각했습니다 (특히 로봇 공학 프로그래밍에 적합). 인용문:

내가 아이들과 함께한 컴퓨터의 좋은 예 : 한 아이가 "프로그램"이되어 땅콩 버터와 젤리 샌드위치 만드는 법에 대한 지시를 받았지만 그들은 내 행동을 보지 못했습니다. 나는 컴퓨터 였고 지시를 정확히 따랐다. 결과가 커졌습니다. (땅콩 바에서 뚜껑을 벗지 않고 빵을 상자에서 꺼내지 않습니다). 1 분 후, 다른 아이가 나타났습니다. 그들은 조금 더 얻었지만 여전히 under 다. "빵에 땅콩 버터를 뿌린다"는 결과로 항아리가 덩어리 등에 앉게되었습니다. 조수가 있으면 "프로그램"을 작성하여 지시에 따라 지시 사항을 작성하게하십시오.

당신은 설명을 얻을 수 있지만, 실제로 붙어있는 것은 아이들이 각각 "컴퓨터보다 똑똑"하다는 것입니다. 그러나 그 컴퓨터는 지침을 따르는 데 정말 빠릅니다. 그래서 그들은 똑똑하고 컴퓨터 속도와 프로그래밍을 사용해야했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.