Платформа C # Robotics (то есть "робот размером с человека") - PullRequest
7 голосов
/ 27 марта 2011

Редактировать: Назначение для повторного открытия, поскольку это определенно относится к разделу часто задаваемых вопросов " вопросы, которые являются уникальными для профессии программиста ".

Я хочу программировать робототехникув C #.Этот вопрос касается существующих комплектов / компонентов для этого.Я приветствую любые указания о том, с чего начать.Например: является ли Robotics Studio хорошей платформой для этого проекта?

Это будет хобби-проект, в котором я запрограммирую робота ездить по дому и выполнять техническое обслуживание (например, приносить мне стакан воды).Я хочу приложить усилия к распознаванию объектов и управлению движением (вождение, оружие и т. Д.).Я не хочу тратить время на создание робота.В этом смысле это не робототехнический проект, это программный проект.

Существуют ли роботы человеческого размера с .Net SDK (или что-то, что я могу P / Invoke)?

Это не обязательно должен быть взрослый человек, если он может достать вещи на столах и тому подобное.Это также не должно быть похоже на человека.

Ответы [ 3 ]

7 голосов
/ 28 марта 2011

Очень большие роботы дорогие, мощные (и энергоемкие), тяжелые и во многих случаях нелепо сложные. Хобби-ориентированная робототехника ориентирована на устройства, которые не приведут к травмам и / или смерти, если что-то пойдет не так.

Это немного похоже на вопрос, где можно купить вертолет с дистанционным управлением в масштабе 1: 1.

Но для начала я бы рекомендовал научиться работать со встроенными устройствами, чтобы при создании своей армии роботов-убийц (как вам, несомненно, будет) вы будете знать, как управлять двигателями, освещением, датчиками, и т. д. Программируемость на C # и .NET во встроенных устройствах - не обычное дело, но, к счастью для вас, недавно был анонсирован новый чип, который делает именно это.

Проверьте Fez Domino . Она в значительной степени совместима с более популярной платформой Arduino, но вы программируете ее на .NET вместо C - вот почему она в два раза дороже. Большая часть необходимой работы по управлению двигателями, освещением, датчиками и т. Д. С таким устройством уже была проделана для платформы Arduino, и это должно в значительной степени перейти на Fez Domino. Хотя, конечно, вам придется переписать код на C #.

Даже если вы хотите контролировать свой легион смертельных ботов с помощью компьютеров с полной мощностью, вы часто будете использовать подобный микроконтроллер для обработки ввода-вывода с внешними устройствами, поскольку они лучше справляются с подобными задачами и вы можете общаться с ними с помощью простых компьютерных протоколов, таких как последовательный порт по USB.

1 голос
/ 03 апреля 2011

Вы можете использовать Bioloid (http://www.robotis -shop-en.com), некоторые команды робокупов используют их для участия в гуманоидной футбольной лиге.Это очень хорошая платформа (хорошие материалы, ее легко менять или добавлять компоненты)

Другая платформа - NAO (http://www.aldebaran -robotics.com /) используется в лиге стандартных платформ Robocup.На мой взгляд это очень дорого для хобби.В закрытой платформе это означает, что очень трудно изменить / добавить компоненты.

http://wiki.robocup.org/wiki/Humanoid_League на этой странице о гуманоидном робокупе вы можете найти TDP (документы с описанием команды), которые предоставляют очень полезную информацию.

1 голос
/ 31 марта 2011

Начните с малого!Как предположил Тайлер, Fez Domino выглядит как отличная доска для микропроцессорной работы в C #.

Начните делать небольшие проекты (если вы этого еще не сделали).Возможно, постройте линию, следуя за роботом, используя Netduino или подобное.Есть бесчисленное множество комплектов, или вы можете просто создать свой собственный довольно легко.

Как только вы это сделаете, возможно, перейдите к выполнению некоторой базовой обработки зрения с более мощной доской ( Fez Cobra) и т. Д.) Или просто привязать ноутбук к большему боту (у этого есть много преимуществ, таких как большая вычислительная мощность, возможность использовать полноценную платформу .NET вместо просто платформы Micro, которую вы можете использовать внекомпоненты полки, такие как веб-камеры и т. д.).

Если вы хотите стать опытным в любой области робототехники, вам пригодятся некоторые знания в области электроники.Эти небольшие проекты могут помочь вам создать это.

...