roboforum.ru

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

Робот на x86

Наше хобби — конструировать и программировать.
Демонстрация готовых роботов и устройств построенных своими руками.

Re: Робот на x86

Сообщение vadinator » 29 янв 2011, 12:31

noonv писал(а):прикольный ПК :) А что за ОС используется и с чего грузится - с флешки?

Можно с CF (micro SD), можно с USB(вроде как???)...можно подключить IDE HDD...
Операционные системы WinXP, WinCE, Linux...DOS конечно...
Процессорное ядро вроде 486DX... Вообще подобные SoC производят с целью использования в PC совместимых PLC, отсюда видимо и большое количество GPIO, а также RS-485(422).
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Робот на x86

Сообщение PritMick » 29 янв 2011, 15:49

noonv писал(а):прикольный ПК :) А что за ОС используется и с чего грузится - с флешки?

Используется GNU/Linux Debian Squeeze (ядро 2.6.32-5)
Грузится с флешки

Добавлено спустя 8 минут 47 секунд:
vadinator писал(а):вот мануал http://www.compactpc.com.tw/files/2300SX_GPIO_Usage.pdf
там ещё и SPI есть...А вообще поддерживается до 5-и портов ввода-вывода (по 8 бит, итого 40 пин). Каждый из которых может быть настроен отдельно (на ввод или вывод) и имеет внутренние подпорные резисторы (тоже конфигурируемые). А это значит можно управлять роботом (да и не только) без промежуточных плат ввода-вывода :good:

Надо поискать, может они есть на плате, просто не выведены...
А еще я успокаиваю себя тем, что плата ввода-вывода позволяет удобно управлять сервоприводом и ШИМ-сигналом :)
PritMick
 
Сообщения: 12
Зарегистрирован: 22 дек 2010, 12:06
Откуда: Москва
Skype: pritmix
прог. языки: C, C++(из-за наличия STL :) ), Java
ФИО: Михаил Притула

Re: Робот на x86

Сообщение AndreiSk » 29 янв 2011, 16:12

На мой взгляд, погоня за малым энергопотреблением
конкретно на вашем роботе бессмысленна.
Скажем, будете вы его гонять на батареях час,
устанете. Воткните 3S LiPo на 5Ач, это даст
почти 60W мощности. То есть реально ваш робот
мог бы таскать какой нибудь мобильный cpu.
А так, если вы с вебкой работаете, скоро поймете что
1ггц эт маловато :roll:
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Робот на x86

Сообщение vadinator » 29 янв 2011, 16:22

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

Re: Робот на x86

Сообщение PritMick » 05 фев 2011, 18:27

vadinator писал(а):
PritMick писал(а):удобно управлять сервоприводом и ШИМ-сигналом
Ну я собственно не советовал вам отказываться от МК...просто есть альтернатива и можно довольно просто расширить возможности робота в будущем... судя по всему платы в серии используются одинаковые,интересно внутри есть разъём для gpio или нет? Вы его вскрывали?
Ещё бы SoftPLC для него найти :roll: :wink:

Вскрывал. Разъём для GPIO не заметил, но и не искал. Сейчас влом вскрывать, снимать с шасси придётся... :)
Вот два COM-порта на плате точно есть.
PritMick
 
Сообщения: 12
Зарегистрирован: 22 дек 2010, 12:06
Откуда: Москва
Skype: pritmix
прог. языки: C, C++(из-за наличия STL :) ), Java
ФИО: Михаил Притула

Re: Робот на x86

Сообщение RealRobot » 06 фев 2011, 11:02

Вставлю и свои пять копеек.



Полноценная плата x86 ZOTAC nForce 630i-ITX. Свинцовый аккумулятор на 18а/ч, автомобильный блок питания для ПС, время автономной работы 2-3 часа, на борту 2 поворотные веб камеры, с отслеживанием углов поворота 360/1024. Обработка видео - ОпенСВ. Была идея навигации по двум маякам с помощью камер, библиотека AVM от EDV. В комнате, в тесте заработало, до полевых испытаний дело не дошло. В дальнейшем планирую использовать для отработки алгоритмов движения машины по ДжиПиЭс.

Добавлено спустя 1 час 13 минут 46 секунд:
так фотки и так на форуме, другая ветка только - http://roboforum.ru/forum5/topic8007.html"Второй робототехнический фестиваль", посмотри внимательней :lol:, а сюда я их залить не могу по причине отсутствия. Эти фотки Vooon делал. Верни ссылки, злыдень :x
Последний раз редактировалось EdGull 06 фев 2011, 10:30, всего редактировалось 1 раз.
Причина: Фотки залить на форум!
http://igrybogov.com - ну о.о.очень интересно
сознание определяет бытие, улыбнись своему отражению
RealRobot
 
Сообщения: 340
Зарегистрирован: 18 окт 2007, 23:46
Откуда: Москва
прог. языки: С++ , 1С :-)
ФИО: Михаил

Re: Робот на x86

Сообщение PritMick » 22 июл 2011, 21:04

Все это время, что не обновлялась тема, устройство по-тихоньку эволюционировало и нынче уже совсем непохоже на первоначальное.
Добавил, как и хотел, пару датчиков расстояния инфракрасных, микрофон, динамики.
А самое главное - совсем другая платформа.
Проблема была в том, что с теми пластиковыми колесиками и только с передним приводом его проходимость была около нуля, а мне хотелось чтобы оно ездило не только в помещениях, но и по улице нормально проходило. Поэтому взяты колёса резиновые с хорошим сцеплением (являющиеся покрышками от колес для тачек) диаметром 200мм, клиренс платформы 70мм(островок 110х110 мм), а по всей остальной площади клиренс 100мм.
Корпус из ДСП толщиной 16мм, крепления частей делались как можно более прочными - металлическими(толщина, кажись, 1.5мм), всё прикручено саморезами на совесть, так что его можно брать за любой отросток корпуса - очень удобно и не надо бояться, что что-то отломается или погнётся. По части "крепости" конструкции самое слабое место пока что рулевая колонка - там шпилька 4мм диаметром, она гнётся довольно сильно(рычаг 230мм на изгиб), думаю поменять на диаметром 8мм, но это после того, как будет реализован базовый функционал.
Прилагаю фотки. Связь по Wi-Fi реализована, питание теперь с собой возит - LiPo 3S1P 5АЧ. Есть проблема с недостаточно мощными импульсниками, но это вскоре будет решено новой закупкой на хоббикинге. Колонки на борту мне очень понравились - это SVEN 315, питаются от USB, интерфейсный разъем мини-джек - орут будь здоров (а еще удобный регулятор громкости есть).
Привод колёс от переделанных под постоянное вращение серв HXT-12k(пока что только переднее колесо, остальные подготовлены, но без серв). Веб-камера с микрофоном (отдельный штекер на 3.5мм) и подсветкой (6 светодиодов) поставлена на pan/tilt из серв HXT HX5010 и HK15178. Руление осуществляет серва Pilotage S101 (возможно, придется заменить, если окажется слишком слабой). Два дальномера на сервах HK15178.
Операционка и всё остальное перенесено на шуструю 400x CF карточку вместо USB флешки - разница ощутимая.
Осталось найти место и прикрепить небольшое количество проводов, разводящих питание и аккумулятор.
Да, и еще: попроводил тесты на производительность и выяснилось, что под этой архитектурой кое-что полезное не запускается вовсе (в частности, ffserver), а также, что действительно для обработки видео система слабенькая. Пока что думаю сделать управление по Wi-Fi на сокетах кастомно + локальный консольный клиент по ssh, склеивание (или хотя бы синхронизация) аудио и видео с вебки и передача вовне, приём звука извне и с как можно меньшими задержками его воспроизведение (то есть пока забью на автономность), а затем посмотреть на оставшиеся вычислительные мощности (если таковые будут :) ) и там по возможности зрение и слух.
Наверняка, что-то забыл, ну да ладно, и так многа букав :)
Изображение
http://fotki.yandex.ru/users/pritmick/view/319271/
Изображение
http://fotki.yandex.ru/users/pritmick/view/319272/
Изображение
http://fotki.yandex.ru/users/pritmick/view/319273/
Изображение
http://fotki.yandex.ru/users/pritmick/view/319274/
Изображение
http://fotki.yandex.ru/users/pritmick/view/319275/
Изображение
http://fotki.yandex.ru/users/pritmick/view/319276/
Изображение
http://fotki.yandex.ru/users/pritmick/view/319278/
PritMick
 
Сообщения: 12
Зарегистрирован: 22 дек 2010, 12:06
Откуда: Москва
Skype: pritmix
прог. языки: C, C++(из-за наличия STL :) ), Java
ФИО: Михаил Притула

Re: Робот на x86

Сообщение Eruman » 27 июл 2011, 12:05

Колёса прикольные. А зачем на борту синхонизировать звук и видео? Вебкамера сама тормозит, да еще и на звук заморачиваться... Не проще звук гнать максимально быстро, а видео пробрасывать по мере возможности?

Вопрос за ардуинку: как управляется, что делает, какие планы?
Соединяй и здравствуй.
Аватара пользователя
Eruman
 
Сообщения: 897
Зарегистрирован: 12 авг 2010, 15:10
Откуда: Астраханская обл.

Re: Робот на x86

Сообщение PritMick » 10 ноя 2011, 02:59

Eruman писал(а):Колёса прикольные. А зачем на борту синхонизировать звук и видео? Вебкамера сама тормозит, да еще и на звук заморачиваться... Не проще звук гнать максимально быстро, а видео пробрасывать по мере возможности?

Вопрос за ардуинку: как управляется, что делает, какие планы?

Колеса мне тоже нравятся :) Но я их нехорошо на оси посадил, без подшипников, сделал что-то типа подшипников скольжения, но сопротивление движению высокое.
Соответственно, вопрос: где бы взять небольшого диаметра торцевые подшипники? типа такого: http://www.cncfiles.ru/photo/1515/img0044a.jpg
Синхронизация предполагается для полноценного гармоничного ощущения в режиме телеприсутствия. Понятно, что это можно делать и на клиенте. Думаю, действительно:
1) не объединять потоки;
2) не задерживать их специально, разве что можно дропать лишнее накопившееся из-за перебоев со связью (скажем так восстанавливать актуальность).
Ардуинка управляется с виртуального ком-порта. Прога из-под линукса просто в него пишет и читает из него. Прошивка самописная, по идеологии (насколько я понял) напоминает ORFA. Даются низкоуровневые команды с привязкой к пинам, типа "servo 6 1500", где servo означает генерировать сигнал для стандартной серво, 6 - номер пина, 1500 - длина импульса в мкс.
Раньше делал дополнительный уровень абстракции на ардуинке (вроде отдачи команд типа "руль 30 градусов" или "вперед 45%") , но из-за дополнительных сложностей с перепрошивкой, если нужно что-то поменять, перешел на такие вот низкоуровневые команды.
Из новостей: Переделал рулевую колонку на болт диаметром 6мм - стало гораздо жестче.
PritMick
 
Сообщения: 12
Зарегистрирован: 22 дек 2010, 12:06
Откуда: Москва
Skype: pritmix
прог. языки: C, C++(из-за наличия STL :) ), Java
ФИО: Михаил Притула

Пред.

Вернуться в Наши проекты

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

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