Программа для управления платами OR

Разработка стандартизированных модулей для домашнего робостроения.
Правила форума
Правила раздела OpenRobotics

Программа для управления платами OR

Сообщение denissyslo » 18 мар 2010, 07:49

==================================================================================================================
Вставка от =DeaD= - разработчика ORFA-терминала

Репозитарий проекта: http://hg.vehq.ru/orfa-terminal (там можно скачать последнюю версию в пункте "zip" левого меню)
Клиент репозитария: TortoiseHg ( http://bitbucket.org/tortoisehg/stable/wiki/Home )
Используемая среда разработки: Qt Creator ( http://qt.nokia.com/products/developer-tools скачать SDK можно в DOWNLOAD \ LGPL \ Qt SDK for *)
Используемые дополнительные библиотеки:
* Внимание! для всех библиотек надо либо включать место где лежат соотв. файлы в PATH, либо:
  • файлы .dll надо помещать в каталог <qt>/<YYYY.MM>/qt/bin
  • .a-файлы библиотек в <qt>/<YYYY.MM>/qt/lib
  • .h-файлы заголовков в <qt>/<YYYY.MM>/qt/include

Реализованы функции:
  • Отображение видеосигнала с робота
  • Выбора COM-порта и скорости работы;
  • Настройки номеров сервоприводов шасси и pan-tilt платформы;
  • Прямого управления шасси с кнопок формы;
  • Прямого управления шасси с джойстика или геймпада;
  • Прямого управления pan&tilt платформой с ползунков формы;

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

Последняя скомпилированная версия: download/file.php?id=19341

Внешний вид терминала (не последняя версия):
orfa-term-2.jpg


Видео с терминала (не последняя версия):


==================================================================================================================


Сделал робота 6х6, http://roboforum.ru/viewtopic.php?f=10&t=7335
Все никак не доходят руки им порулить - нет программы.
Вроде определился - писать на си билдере.
Сейчас гденить скачаю и начну делать программу.
Я предлагаю тем, кто юзает подобные, обеденится и набрасать основу для типовой программы и выложить исходный код для дальнейшей переделки юзерами.
Т.к. я понимаю, что OFRA - неплохая штука, но эта неплохая штука есть только в МК, а для ее руления еще ничего нет.
Может быть у кого-то уже есть наработки.
краткая биография: родился в роддоме - учился на учебе - служил на службе - работал на работе.....
Аватара пользователя
denissyslo
 
Сообщения: 191
Зарегистрирован: 17 дек 2007, 15:39
Откуда: г. Комсмольск-на-Амуре / п.Светлая
ФИО: Денис Сусло

Re: Программа для упраления платами OR

Сообщение =DeaD= » 06 фев 2011, 23:40

Grem писал(а):А чем дольше будете _прокачивать_, тем дольше будет переводить приложение на плагин-ориентированное :P

Было бы что переводить, сидеть и проектировать сферического коня в вакууме - тоже та еще задача :)

И вообще - помощь в дальнейшей разработке вполне себе принимается! :crazy:
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Grem » 07 фев 2011, 00:20

Так а чего сложного то? Это как MVC - один раз написав основную часть - сильно сэкономите время при расширении.
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Программа для упраления платами OR

Сообщение =DeaD= » 07 фев 2011, 00:43

Сложное - правильно объявить интерфейсы с основной частью. Я пока совершенно не представляю что и каким образом будет выноситься в плагины. Сейчас навигацию прикручу, надеюсь чуть яснее станет.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Grem » 07 фев 2011, 00:58

Как это что? Главная программа - чистый терминал, каждая другая решаемая задача - плагин.
Сложное - правильно объявить интерфейсы с основной частью.

Плагины не должны влиять на среду где они исполняются.
блин, оказывается писать плагин-ориентированные приложения довольно таки интересно, а я при изучении джавы забил на них
Последний раз редактировалось Grem 07 фев 2011, 01:06, всего редактировалось 1 раз.
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Программа для упраления платами OR

Сообщение =DeaD= » 07 фев 2011, 01:02

Интерфейс - голые команды шасси что-ли? Ну его, это скучно :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Grem » 07 фев 2011, 01:06

Интерфейс в смысле GUI чтоли? :D
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Программа для упраления платами OR

Сообщение =DeaD= » 07 фев 2011, 01:08

Да нет, между плагином и основной программой.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Grem » 07 фев 2011, 01:24

Такой же, как в документации к контроллеру, или я опять не понял суть? Сделать Plugin API, точка входа каждого плагина должна реализовывать интерфейс с основными методами.
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Программа для упраления платами OR

Сообщение =DeaD= » 07 фев 2011, 01:44

Неее... это скучно. Как минимум надо уровень выше делать - когда уже настроено какой контроллер, какие сервы за что отвечают и т.п. Иначе весь функционал этот придется в каждый плагин тащить. Поэтому 100% интерфейс не такой же.

Ну и конечно же хочется, чтобы один плагин мог пользовать другой, пусть для навигации той же. Т.е. к примеру, сделаю я навигацию по маякам, а кто-то сделает плагин, использующий мою навигацию и умеющий патрулировать квартиру.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Виктор Казаринов » 07 фев 2011, 09:33

Терминал должен быть как бы маленькой операционной системой, связующим звеном между плагинами и железом роботов а также с юзером. Чем меньше в нем будет того, что можно было бы сделать вариабельным, тем лучше. Даже внешний вид формы с изображением камеры или панель управления роботом с кнопками - все это можно вынести в плагины. И пусть народ лепит их всякие и разные. Ими мощь терминала прирастать будет.
Но при этом желательно чтобы каждый плагин как можно меньше зависел от других плагинов.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Программа для упраления платами OR

Сообщение =DeaD= » 07 фев 2011, 09:40

Виктор Казаринов писал(а):Но при этом желательно чтобы каждый плагин как можно меньше зависел от других плагинов.

Это 100% будет вселенское зло. Надо чтобы можно было одному плагину генерить информацию, которую могут использовать другие плагины. Собственно основной вопрос - стандартизация таких интерфейсов. Скажем модуль навигации по маякам должен опираться на модуль детектирования маяков, тогда можно будет легко заменять одни маяки другими. И наоборот - можно вместо модуля опирающегося на заранее известные координаты маяков создать модуль, который будет сам гонять по квартире, запоминать какие где маяки и строить карту.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Виктор Казаринов » 07 фев 2011, 10:01

М.б. вы не так меня поняли. Я хотел сказать - плагины не должны зависеть от имплементации (конкретной реализации) других плагинов. Т.е. каждый плагин должен общаться с терминалом и другими плагинами через стандартный для данного терминала Plugins API.
Вопрос - а надо ли делать свой вариант ROS? Или это будет совсем другое нечто?
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Программа для упраления платами OR

Сообщение =DeaD= » 07 фев 2011, 10:07

Про свой ROS - да, есть такой вопрос :)
Может быть стоит чужое освоить, но всё что я до этого пробовал - ужас какое тяжеловесное.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Программа для упраления платами OR

Сообщение Angel71 » 07 фев 2011, 10:24

плагины, их взаимодействие и реализация интерфейса относительно несложно реализовать :( свой рос это тяжко
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

Re: Программа для упраления платами OR

Сообщение Grem » 07 фев 2011, 10:44

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

Вот об этом я и говорю :good:
Т.е. к примеру, сделаю я навигацию по маякам, а кто-то сделает плагин, использующий мою навигацию и умеющий патрулировать квартиру.

И что? Передать данные с одного плагина на другой - тривиальная задача.
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Пред.След.

Вернуться в Open Robotics

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2