Автономний (або здатний бути) робототехнічний симулятор


13

Я програмний інженер, який займається волонтером з некомерційною організацією, яка знайомить молодих дівчат з технологіями. Нещодавно ми говорили про методи впровадження цих дітей у світ робототехніки, і мені цікаво, які у нас варіанти недорогих варіантів.

Дуже привабливою ідеєю було б мати онлайн-тренажер або (що краще) автономний симулятор, за допомогою якого ми можемо створювати та програмувати прості роботи. Можливо, не що інше, як перетягування компонентів разом, а потім програмування взаємодій між цими компонентами.

Які існують рішення, які я міг би використати в нашій охороні?


На мій досвід, непрацюючий робочий середній вигляд отримує більше уваги (як робот), ніж повнорозмірний класний робот у симуляторі. Поки це не реально, можливо, все це було комп'ютерною грою або мультфільмом для всіх дітей.
Шахбаз

Нам потрібен тренажер, щоб дівчата могли насправді вивчати концепції програмування та використовувати їх. Симулятор не повинен бути гарним - це може бути не що інше, як грубі геометричні фігури. Код має значення.
Сампсон

Відповіді:


7

Stage та Gazebo - це 2D та 3D симулятори з відкритим кодом відповідно. Вони створені та підтримуються проектом Player . Вони дуже прості у використанні та мають багато заздалегідь складених карт та роботів. Залежно від досвіду вашої аудиторії, можливо, вам доведеться трохи важко піднятися (наприклад, побудувати файли конфігурації та основні класи).

Вони також мають кілька додаткових переваг. По-перше, до тих пір, поки ви створюєте основний код управління як плагіни для гравців, тоді вони можуть бути легко адаптовані до реальних роботів. По-друге, існує велика кількість плагінів, вже побудованих для роботи з реальним обладнанням. По-третє, вони працюють з ROS .


4

Можливо, це трохи прицільно (75 CHF), але я все ж пропоную Colobot . Це приємне, майже ігрове середовище, де роботам потрібно допомогти людині зробити космічну базу придатною для проживання. Роботи програмуються дітьми, виконуючи все більш складні завдання. Програма викладає основи програмування цілеспрямовано, кумедно.


3

Робототехніка Microsoft БЕЗКОШТОВНА і включає тренажер . Це не зовсім просте середовище у світі, однак воно надійне і підходить до справжньої робототехніки. Я думаю, що за певної участі вчителя, щоб налаштувати речі заздалегідь, це може бути корисним. Існує симуляторний "пакет" для LEGO, Neato та деяких інших роботів, і їх можна запрограмувати на C # або візуальній мові перетягування.

Знову ж таки, я думаю, що знадобиться певна робота попереду, щоб полегшити використання молоддю, але це було б не так складно, і це був би мій підхід, враховуючи ваші вимоги. Я б сказав, що стосується складності, це (windows) порівняно з середовищем Linux з Gazebo / ROS, середовище Windows було б дещо менш складним, хоча більшість цього, сподіваємось, буде приховано з підготовкою.


2

RobotC має імітатор доступний, хоча і є продуктами на деякі витрати. Однак вони дуже орієнтовані на молодших студентів та освіту. Це був би найпростіший і найбільш підходящий маршрут, якщо витрати не є фактором блокування ( близько 100 доларів США за ліцензію для одного користувача, 300 доларів для 6 користувачів, 600 доларів для 30 користувачів ).

Якщо ви купуєте студентську версію ROBOTC для MINDSTORMS NXT LEGO, ціна може становити 49 $ за кожну або 40 $ (більше 20 ліцензій)


2

V-Rep (Virtual Robot Experimentation Platform), здається, досить широкий у тих моделях, які він може робити. Він безкоштовний для навчальних цілей і постачається з широким спектром інструментів. Ви можете подивитися це відео на YouTube для демонстрації демонстрації.


1

Можливо, не повний симулятор робототехніки, але ми використовуємо 3D CAD, Autodesk Inventor, досить багато для моделювання. Зазвичай ми робимо інтерфейс до САПР аналогічним тому, що ми хочемо, щоб це було для обладнання. Таким чином ми можемо використовувати модель CAD як віртуальний прототип для:

  • Ловіть помилки дизайну рано. Зіткнення, недостатня кількість ходу тощо.
  • Це також було корисно для пошуку компенсацій за помилки, такі як помилки вирівнювання. Використовуючи CAD, ми можемо моделювати різні помилки по черзі та перевіряти наші компенсації. Зручно мати можливість вводити великі помилки з відомим знаком.
  • CAD також дає відповіді про такі моменти інерції.
  • Ми також використовуємо модель CAD для створення програми для обладнання.

Виправте мене, якщо я помиляюся, але CAD зосереджується на правильному моделюванні апаратури та фізики, а ще менше на програмуванні робота. ОП зацікавлена ​​в навчанні програмуванню, а не інженерії, тому я думаю, що система CAD не вирішує його проблеми
ThomasH

@ThomasH у нас було певне програмування успіху на api CAD, і таким чином вдалося зробити багато розробок. Чи потрібно видалити?
Йохан Ларссон

1
Видаляти не потрібно. Це не погана відповідь лише тому, що я думаю, що це не дуже підходить для проведення ОП. Зазвичай голосування просуває найбільш підходящу відповідь до вершини, і ОП прийме ту, яка найбільше допомогла. Але ваші можуть все-таки зацікавити когось із подібною проблемою, яка стикається з цим питанням
ThomasH

1

Ви можете перевірити " MindRover ". Зараз це старе і важче знайти, оскільки початковий веб-сайт не працює, але його все ще можна знайти на Ebay або Amazon . Незважаючи на те, що гра / місія орієнтована, вона передбачала вибирати з палітри компонентів робота, ставити їх на шасі, а потім з'єднувати їх. Це було дійсно добре зроблено для гри і може бути використане для дослідження простих до напівдосконалих концепцій. Деякі скріншоти тут: http://images.google.com/images?q=mindrover .

Якщо ви шукаєте щось більш серйозне з можливостями реального світу, ви можете перевірити FlowStone for Education . Я не використовував його, але вважаю, що це середовище візуального програмування, ідеально підходить для роботи типу робототехніки.

Останнє, хоча це не програмне забезпечення або симуляція, я нещодавно натрапив на коментар до Reddit від phblj щодо техніки впровадження програмування , і я подумав, що це дійсно добре (і особливо пристосовано до програмування з робототехніки). Цитата:

Чудовий приклад комп’ютерів, які я робив з дітьми: один хлопець мав бути "програмою" і давав інструкції, як зробити бутерброд з арахісового масла і желе, але вони не могли спостерігати мої дії. Я був комп'ютером і точно дотримувався інструкцій. Веселість привела. (Не знімаючи кришку з арахісової батончики, не дістаючи хліб із коробки, я мав його). Через хвилину підійшов ще один хлопець і спробував. Вони дісталися трохи далі, але все-таки процвітали. "Покладіть арахісове масло на хліб", в результаті чого баночка сиділа на буханці і т. Д. Знадобилося кілька дітей, але врешті ми її отримали. Якщо у вас є помічник, запропонуйте їм написати інструкції, як вони сказали, створивши "програму".

Тоді ви можете розібратися в поясненнях, але річ, яка насправді застрягла, полягала в тому, що діти були "розумнішими за комп'ютер". Але щоб комп’ютери були дійсно, дуже швидкими, виконуючи вказівки. Тож їм потрібно було використовувати свої розумні та швидкісні комп’ютери та ... програмування!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.