Программа для управления платами 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

Сообщение Виктор Казаринов » 26 мар 2010, 20:52

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

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

Сообщение Виктор Казаринов » 26 мар 2010, 20:55

2pashteet: я тогда потихоньку расчехлю запылившегося робота и подзаряжу его аккумуляторы, протру его глазок - камеру. А вот с плагинами придется основательно поработать, т.к. я за это время кое-что поизменял в ядре программы.
У меня такие модули:
1. OR-PROG-USB: Usb-программатор для контроллеров AVR с функцией USB<=>UART моста
2. OR-AVR-M32-D: Контроллер общего назначения с портом ДД (RoboMD2)
3. OR-MD2-2A-12V-CP: Драйвер для двух маломощных двигателей, до 2А, 6-12В
Все это присоединено к бортовому компьютеру, кот. через Wi-Fi с пом удаленного терминала я использую на стационарном компе.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

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

Сообщение Angel71 » 26 мар 2010, 21:04

vadinator, это обычный маршрутизатор, создающий вспомогательные виртуальные порты. я о другом писал. :wink: да и всё-равно толку от него будет почти 0, нужно еще обе софтины доделывать, чтоб фильтровать данные. а это уже как минимум нужен протокол, который будет поддерживать обе проги
Последний раз редактировалось Angel71 26 мар 2010, 21:05, всего редактировалось 1 раз.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

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

Сообщение Виктор Казаринов » 26 мар 2010, 21:04

Но чтобы не мешать другим, уместнее было бы мне обсуждать мою прогу в моей же теме viewtopic.php?f=10&t=7004
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

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

Сообщение vadinator » 26 мар 2010, 21:32

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

признаюсь, не работал с такими...но вот, что пишут-
COM Port Splitter делит один СОМ-порт (реальный или виртуальный) на несколько виртуальных портов, которые являются точными копиями оригинальных портов в системе. Например, он делит реальный COM1 на виртуальные COM2, COM3, COM4 порты

т.е. создаются копии портов, остальное зависит от подключенных к вирт. портам прог...но пока работает одна прога, можно ведь и не пользоваться терминалом, а просто наблюдать получаемые с МК данные...а когда нужно отправить данные, можно либо остановить основную прогу, либо дождаться завершения какого либо цикла в ней (когда обмен прекратится)...в любом случае это удобнее, чем запускать и закрывать проги. :crazy:
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

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

Сообщение Angel71 » 26 мар 2010, 23:14

некоторые отправляют данные (иногда настраивается) не всем, а только последней проге, отправлявшей данные. всё-равно тупиковый путь. данные могут генерироваться чем-то, подключённым к плате (например датчик движения сделали).
а что значит можно в это время не пользоваться? прога или как-то должна знать, что пришедшие данные не нужно обрабатывать или тупо отключаться от порта. а они через этот сплитер прийдут всем. :pardon: и зачем проги тушить, точно так же отключается от порта и всё. в общем не вариант, даже для поиграться
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

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

Сообщение tsrodger » 29 мар 2010, 08:51

Моя программка для управления... У меня пока только модуль управления двигателями на arduino портирован, поэтому в самой программе интерефейс только под него и представлен, но в ручную можно отправлять любые команды ORFA.

PS для запуска нужен фреймворк 3.0 и выше
Вложения
ArBBot Control.zip
(21.54 КиБ) Скачиваний: 0
Аватара пользователя
tsrodger
 
Сообщения: 134
Зарегистрирован: 18 сен 2008, 17:31
Skype: tsrodger
прог. языки: VB.Net, C, PHP

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

Сообщение pashteet » 29 мар 2010, 09:54

Спасибо.
Я так понял, 5 квадратных кнопочек - это для управления ДД?
Если так, то надо бы добавить еще кнопочек :oops:
Аватара пользователя
pashteet
 
Сообщения: 930
Зарегистрирован: 28 авг 2009, 12:50
Откуда: Волжский
Skype: pashok0988
ФИО: Павел Петрович

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

Сообщение denissyslo » 31 мар 2010, 08:38

Я так понимаю, что не один и не два человека ofra используют, хоть напишите кто чем свои роботы с офрой рулит с ПК, хоть ради интереса
краткая биография: родился в роддоме - учился на учебе - служил на службе - работал на работе.....
Аватара пользователя
denissyslo
 
Сообщения: 191
Зарегистрирован: 17 дек 2007, 15:39
Откуда: г. Комсмольск-на-Амуре / п.Светлая
ФИО: Денис Сусло

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

Сообщение Vooon » 31 мар 2010, 21:22

Я использую самописные скрипты на питоне, используя http://hg.vehq.ru/liborfa/ или http://hg.vehq.ru/pyor/

Вот например:
Код: Выделить всё
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim:set ts=4 sw=4 et:
# -*- ttstat.py -*-

# for python 2.5
from __future__ import with_statement

import os
import sys

import serial
import time

import pyor
from pyor import testio, Empty
from pyor.driver.adc import AdcDriver

CAMERA = 12
CANNON = 13

LIGHT = (0, 5)
LASER = (0, 6)

def vbat(adc):
    r1 = 296e3
    r2 = 98.7e3
    k = (r1+r2)/r2
    v = ((3.3*adc)/1023)*k
    return v

def irrange(adc):
    return adc


def sens():
    global adc
    try:
        adc = adc.read()
        #turret = turret.status()
        #cannon = cannon.status()
    except Empty as e:
        print "Empty: ", e

    print "Vbat: %0.2f V" % vbat(adc[0])
    print "Range: %s adc" % irrange(adc[1])
    #print "Turret: %s" % turret
    #print "Cannon: %s" % cannon


def init():
    global adc

    ser = serial.Serial(sys.argv[1], 115200)
    ser = testio.LogIO(ser)

    req = pyor.Request(ser, timeout=1)
    intro = pyor.Introspection(req) #, device=dv)

    adc = AdcDriver(intro)
     
    # config
    adc.config_bit(10)
    adc.config_ref('avcc')
    adc.set_enable(0, True) # Vbat
    adc.set_enable(1, True) # Range
    adc.commit_cfg()


if __name__ == "__main__":
    init()
    sens()
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

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

Сообщение kbnn » 01 апр 2010, 08:19

А на QT есть примеры? (запись, чтение в\из com порт)
Аватара пользователя
kbnn
 
Сообщения: 74
Зарегистрирован: 22 окт 2009, 16:13
Откуда: Дедовск

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

Сообщение kuzulis » 01 апр 2010, 20:14

А на QT есть примеры? (запись, чтение в\из com порт)


Всем доброго времени.

Есть. См. QSerialDevice из SVN на http://fireforge.net/scm/?group_id=199

Там я добавил недавно два примера AnyMaster (типа мастер) и AnySlave (типа слейв), вот на их базе можно что-нить сварганить для ваших "киборгов" :)

ЗЫ: если найдете баги - пишите мне на мыло (мыло в исходниках QSerialDevice указано)
ЗЫЫ: не сочтите за пиар
kuzulis
 
Сообщения: 2
Зарегистрирован: 01 апр 2010, 20:10

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

Сообщение denissyslo » 02 апр 2010, 03:33

tsrodger писал(а):Моя программка для управления... У меня пока только модуль управления двигателями на arduino портирован, поэтому в самой программе интерефейс только под него и представлен, но в ручную можно отправлять любые команды ORFA.

PS для запуска нужен фреймворк 3.0 и выше


Ничего так програмулька.
На чем писалась?
Исходных кодов не жалко?
краткая биография: родился в роддоме - учился на учебе - служил на службе - работал на работе.....
Аватара пользователя
denissyslo
 
Сообщения: 191
Зарегистрирован: 17 дек 2007, 15:39
Откуда: г. Комсмольск-на-Амуре / п.Светлая
ФИО: Денис Сусло

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

Сообщение blindman » 02 апр 2010, 04:09

kuzulis писал(а):если найдете баги - пишите мне на мыло


Ну, писал я на мыло. Ответа не дождался. Задам вопросы здесь, раз уж объявился. Тут точно не потеряются

1. Почему Вы ограничили скорость? Почему не разрешить передавать произвольные значения под Windows? При работе с USB-COM адаптерами типа FT232 .dcb.BaudRate = 2000000 прекрасно работает. Да и под Linux уже давно #define __MAX_BAUD B4000000.

2. Лицензия GPL была выбрана сознательно? Есть шанс получить код под LGPL?

Баги есть, особенно в SerialDeviceInfo и SerialDeviceWatcher. Первый просто не работает, второй ваще сегфолтит. Это под Debian testing. Но разбираться лично для себя не вижу смысла из-за лицензии.
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!

Аватара пользователя
blindman
 
Сообщения: 4130
Зарегистрирован: 29 апр 2008, 21:15
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич

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

Сообщение kuzulis » 02 апр 2010, 08:05

Код: Выделить всё
Ну, писал я на мыло. Ответа не дождался. Задам вопросы здесь, раз уж объявился. Тут точно не потеряются


Я Вам отвечал вообще-то!

Код: Выделить всё
Баги есть, особенно в SerialDeviceInfo и SerialDeviceWatcher. Первый просто не работает, второй ваще сегфолтит. Это под Debian testing. Но разбираться лично для себя не вижу смысла из-за лицензии.


Ололо, глословные утверждения, "на нет и суда нет" (с) . :)
kuzulis
 
Сообщения: 2
Зарегистрирован: 01 апр 2010, 20:10

Пред.След.

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

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

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