roboforum.ru

Технический форум по робототехнике.

Робоконструктор

Робоконструктор

dtcDev » 12 мар 2010, 01:27

Доброго времени суток.

Меня зовут Александр, я являюсь начальником отдела программных разработок одной компании. Некоторое время назад у меня возникла идея создать проект "for fun" - систему, моделирующую поведение робота.
Некоторые подвижки на данной почве были сделаны, о них чуть позже

Сейчас хочу рассказать о том, чего же я хочу. Я хочу создать более дешёвый, чем Lego конструктор.
Чего мне не хватает - железного функционала. Я более чем уверен, что на данном форуме найдутся те, у кого есть уже наработки по данному вопросу.

В кратце - система должна быть модульной. Минимальный набор - центральный процессор, тележка и плата датчиков (может быть, совместить с тележкой).

Очень хотелось бы пообщаться с теми, кто готов проконсультировать по функционалу железа и системе команд. Самому разбираться в этом времени, к сожалению, нет.

Что есть на данный момент:
Спроектирован макет программы для инициализации создаваемой программы, созданы классы для проектирования ПО, для графического отображения работы робота.

Что я хочу в итоге:
Получить на выходе связку Программа разработки + робокоструктор.
Робоконструктор должен быть простым и интуитивно понятным.
Программа разработки должна предоставлять графический (текстовый - как опция) интерфейс программирования, простой и понятный.

Таким образом хочется сделать робоконструктор, которым мог бы пользоваться восьмилетний ребёнок и купить который ему бы смог отец, который не катается на мерседесе.

Коммерческая составляющая проекта весьма туманна, поэтому не буду обещать чего либо. Поэтому могу только обещать приложить все усилия к продвижению продукта. коль скоро он появится, а так же регистрацию и оформление через ООО.

Спасибо за внимание.
Жду предложений.

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

Re: Робоконструктор

Виталий » 12 мар 2010, 01:43


Re: Робоконструктор

vadinator » 12 мар 2010, 01:49

По моему, такой конструктор уже существует :D представляю вам концепцию OR >>> wiki/Open_Robotics
...полагаю, можно принять участие в продвижении... ну и в снижении цен :ROFL:

Re: Робоконструктор

dtcDev » 12 мар 2010, 02:23

Юмористы...

Я предлагаю для вас создать программную ВИЗУАЛЬНУЮ среду разработки, а не робоконструктор. Что будет со стороны железа - мне не столь интересно. Просто мне кажется. что тому же ребёнку гораздо проще создавать программу, перетаскивая иконки, а не писать код на ассамблере

Re: Робоконструктор

Michael_K » 12 мар 2010, 02:26

Я предлагаю для вас создать программную ВИЗУАЛЬНУЮ среду разработки, а не робоконструктор

А зачем тему назвали "робоконструктор", а не "визуальная среда разработки"? :) :wink:

Re: Робоконструктор

dtcDev » 12 мар 2010, 02:29

Потому как создать среду разработки, в которой нонеймовское нечто будет ползать и программироваться рандомным "тудым-сюдым" - скучно. Хочется создать что то конкретное.

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

Re: Робоконструктор

Michael_K » 12 мар 2010, 02:59

Нету тут никаких предвзятостей к "представителям канадских компаний" - это вы зря выдумываете.
По теме - вот было тут такое обсуждение:
http://roboforum.ru/viewtopic.php?f=17&t=7306

Среды графические есть разные. Как правило они достаточно узкозаточенные.
Бесплатных именно для роботов я не знаю.
Писать такое с нуля действительно сложно и, как мне кажется,
тот кто сможет - не захочет тратить время,
а тот кто захочет тратить время - вряд ли сможет...

Хотя, кто знает - за всех отвечать не могу.

Кроме того, видимо, это должен быть программно-аппаратный комплекс.
То есть железо (вернее встроенное ПО) должно поддерживать функциональность,
закладываемую в язык.

Добавлено спустя 10 минут 30 секунд:
Если ориентироваться на "восьмилетних детей" и "мам-домохозяек" то
лично мне нравится в качестве прототипа NXTG, хотя его недостатки тоже очевидны.

Re: Робоконструктор

dtcDev » 12 мар 2010, 03:01

Видимо, Вы не понимаете, о чём я говорю. Я могу написать данный проект. Более того, некоторые подвижки в данном направлении уже есть. Что нужно - лишь консультации со стороны профи о том, как должен выглядить код на выходе после компиляции (чтобы связать те картинки, которые накиданы в дизайнере с тем, что будет делать робот), и привязка к определённому железу.

Расскажите мне, проконсультируйте. Вот чего я прошу. А не "напишите мне программу".

Извините. если кого то обидел

Re: Робоконструктор

Michael_K » 12 мар 2010, 03:12

А-ааа...
А звучало то как-то наоборот :)
Думаю, что проще всего преобразовать ваши картинки "которые накиданы в дизайнере" в ЛЮБОЙ текстовый вид.
Ну возьмите за образец любой язык программирования (хоть бейсик), выдумайте любые удобные для вас функции
в рамках синтаксиса этого языка. А компиляцию в код и поддержку функций в железе, думаю, организовать несложно.

Добавлено спустя 3 минуты 58 секунд:
Вообще, если хочется найти КОНКРЕТНУЮ, а не абстрактную платформу,
то, по-моему, неплохо подойдет "минибот".
Попробуйте связаться с EdGull-ом...

Добавлено спустя 2 минуты 3 секунды:
EdGull

Re: Робоконструктор

dtcDev » 12 мар 2010, 03:18

может быть слишком пространно изложил свои мысли :)

Дело в том, что язык программирования изучать времени нет. Это проект не на один год тогда получается :) потому что нужно, кроме языка, выучиться писать правильный код, побродить по граблям, и пр. Ведь согласитесь, если код после генерации из картинок в файл будет делать совсем не то, что задумывалось, то смысл писать такой проект? ;)

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

Re: Робоконструктор

Michael_K » 12 мар 2010, 06:25

Ну... я бы вопрос тогда ставил по-другому.
Давайте "плясать от печки" :)

Что у вас сейчас уже есть? (как я понимаю некие кусочки графического "дизайнера программ")
Каковы его возможности, что там можно нарисовать, что нельзя?
Если вы можете в нем нарисовать какую-то программу, понимая, что она должна делать,
то, очевидно, вы сможете и преобразовать такой "графический код" в текстовый
(пусть даже это будет последовательность действий на русском языке :))
А дальше уже - дело техники.

Может быть вы покажете хотя бы примерчики предполагаемого использования
вашей графической оболочки, чтобы был предметный разговор...
А то, похоже, мы друг друга не вполне понимаем :pardon: :oops:

Добавлено спустя 2 часа 54 минуты 10 секунд:
dtcDev писал(а):язык программирования изучать времени нет...

dtcDev писал(а):Очень хотелось бы пообщаться с теми, кто готов проконсультировать по функционалу железа и системе команд.


Тут, по-моему, не с той стороны плясать надо.
Вы должны быть задатчиком, а не конкретная железка.
Вы выдумывайте язык программирования, и любую "систему команд" _высокого_ уровня.
А железо под ваш язык программирования и систему команд довести проще.

По функционалу железа - это совершенно некорректный вопрос.
Тут нет каких-то норм и стандартов - тут каждый делает тот функционал, который ему нужен.

Лично я считаю, что для простого (читай дешевого) робота нужно расчитывать примерно на следующее:
- два двигателя - правый и левый, которым задается условно направление и напряжение к нему приложенное.
В условных величинах, например "Правый мотор вперед 10%" или так "left_motor(-550);" - это неважно
(синтаксис пока не рассматриваем).
- Дискретные датчики (да-нет) Например, "бампер уперся в стену" или "под носом темно". Штук восемь.
- Аналоговые датчики, например, "расстояние до стены 17см",
можно в условных единицах "расстояние до стены 150". Штук восемь.
- Аналоговые исполнители (сервоприводы) например, крутящаяся голова ("повернуть голову на полшестого")
штук пять.
- Обработка команд с пульта типа "нажата красная кнопка"
- Какое-нибудь взаимодействие с человеком - помигать глазами, побибикать и т.д.
На этом можно вообще остановиться - для восьмилетнего этого выше крыши будет,
да и для взрослого уже предостаточно - даже на гораздо более простых роботах
на международных соревнованиях катаются :) Вопрос здесь, конечно, не в количестве
датчиков, а в функционале, который ваш язык должен поддерживать.

И по функциональности языка - тут тоже можно много чего напридумывать, но как мне кажется
усложнять не надо. Нужна арифметика, условное ветвление, циклы, переменные.
Массивы для восьмилетних не нужны совсем, по-моему. А вот простую многозадачность я бы ввел.
Обязательны несколько таймеров с дискретом, скажем, одна десятая секунды (а лучше одна сотая).

Все "аналоговые значения" изменяются от -100 до +100 - этого более чем достаточно.
Передача параметров в функции точно нужна. Не только констант, но и вычисленных.
Иначе интересного поведения трудно будет добиться.

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

Re: Робоконструктор

EdGull » 12 мар 2010, 09:03

да, МиниБот так ж как и OpenRobotics хорошо подойдут для этих целей

Re: Робоконструктор

=DeaD= » 12 мар 2010, 09:11

Меня зовут Антон и я тоже "начальник отдела программных разработок одной компании" (честно! :D)
А еще я небезуспешный участник всяких студенческих и школьных олимпиад по программированию - как личных, так и командных. А еще я один из основателей проекта Open Robotics, который появился в ответ на отсутствие в РФ возможности за разумные деньги купить модули для построения роботов с понятной концепцией.

dtcDev писал(а):Сейчас хочу рассказать о том, чего же я хочу. Я хочу создать более дешёвый, чем Lego конструктор. Чего мне не хватает - железного функционала. Я более чем уверен, что на данном форуме найдутся те, у кого есть уже наработки по данному вопросу.

Есть у нас всякие железные наработки как уже запущенные в продажу, так и находящиеся в процессе тестирования\проектирования.

dtcDev писал(а):Очень хотелось бы пообщаться с теми, кто готов проконсультировать по функционалу железа и системе команд. Самому разбираться в этом времени, к сожалению, нет.

Давайте сначала разберемся, что вы хотите сделать и что уже знаете\умеете ;)

dtcDev писал(а):Что есть на данный момент:
Спроектирован макет программы для инициализации создаваемой программы, созданы классы для проектирования ПО, для графического отображения работы робота.

Маловато будет. Может быть у вас есть опыт образовательной работы с детьми? Какой опыт создания интерфейсов программных продуктов с нуля у вас имеется? Насколько он относится к детям?

dtcDev писал(а):Что я хочу в итоге:
Получить на выходе связку Программа разработки + робокоструктор.
Робоконструктор должен быть простым и интуитивно понятным.
Программа разработки должна предоставлять графический (текстовый - как опция) интерфейс программирования, простой и понятный.

Думаю самый правильный путь - сконцентрироваться на том, в чем вы являетесь специалистом, а остальное взять готовое или найти стратегического партнера и с ним реализовать железо. Как вариант таким партнером для вас может стать проект Open Robotics. Близко к тому что вы сейчас описываете наверное будет наш подпроект OR-duino с интерфейсной платой - это некий недорогой аналог кирпича "лего". Сейчас как раз он в активной проработе.

dtcDev писал(а):Таким образом хочется сделать робоконструктор, которым мог бы пользоваться восьмилетний ребёнок и купить который ему бы смог отец, который не катается на мерседесе.

Чтобы купить Lego NXT не надо ездить на мерседесе.

dtcDev писал(а):Для меня это пока способ просто отдохнуть от надоевших бизнес-приложений по продаже очередной херни и некая перспектива на будущее.

О да, понимаю :) ну и мозгу разминка :)

Re: Робоконструктор

avr123.nm.ru » 12 мар 2010, 09:31

> Чтобы купить Lego NXT не надо ездить на мерседесе.

Точно ! Мерс надо ж продать чтоб купить лего :D

Re: Робоконструктор

Michael_K » 12 мар 2010, 09:48

А мне как раз кажется, что концепция OpenRobotics
и даже xxxduino совсем не вписываются в задачу.

Мне кажется, что нужно сделать робота который бы максимально
избавил пользователя от работы с деталями железа, сигналов, интерфейсов и т.д.
Минибот, по-моему, ГОРАЗДО больше подходит для этих целей.
При соответствующей софтовой поддержке, конечно.


Rambler\'s Top100 Mail.ru counter