2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 USB + своё устройство
Сообщение14.11.2006, 20:17 
Есть у кого-нибудь опыт подключения собственного устройства к USB порту?
Буду рад и ссылкам в нужном направлении.

Хочу спаять небольшой механизм (робота) и управлять им через USB порт собственной программой. Помогите кто чем может.

Пока-что мне удалось подключить через usb кулер (точнее питание для него). Уже крутится :)

 
 
 
 
Сообщение14.11.2006, 20:31 
Аватара пользователя
:evil:
USB — очень непростая шина, и управлять ей просто так не получится. Вам понадобится, по крайней мере, микросхема на стороне робота. Выбирая эту микросхему, Вы можете упростить себе жизнь за счет функциональности: например, выбрав последовательный порт, Вы можете управлять несколькими сигналами явно.

Ну, а если Вы серьезный человек с серьезными запросами, то у Вас у робота есть не менее одного процессора, шина, память, … И USB рассматривается как часть сетевого стека с обоих сторон…

 
 
 
 
Сообщение14.11.2006, 20:52 
Цитата:
Ну, а если Вы серьезный человек с серьезными запросами, то у Вас у робота есть не менее одного процессора, шина, память, … И USB рассматривается как часть сетевого стека с обоих сторон…


Хм. Ну допустим я поступлю просто: я насобираю из старого железа компьютер, воткну в него сетевую карту и буду управлять со своего компьютера (тоесть фактически заменю USB на обычную сеть). Тогда у робота будет и не менее одного процессора и шина, и память. Потом я прикручу к системнику ноги.

Тогда вопрос: как его заставить управлять ногами?

 
 
 
 
Сообщение14.11.2006, 22:16 
Аватара пользователя
:evil:
O! Я думал, это все хорошо продумано. Тогда так: для движения ногами нужны какие-то исполнительные механизмы (например, сервомоторы, соленойды, и т.п.). Ими-то и управляет процессор, используя либо цифровые выходы (реле), либо цифро-аналоговые преобразователи (ЦАП). Для обратной связи (а иначе поведение робота мало отличается от машинки на поводке для трехлетнего ребенка) используются датчики, опять-таки цифровые (контакт замкнут-разомкнут) либо аналоговые (через аналогово-цифровой преобразователь, АЦП).

Есть в этой истории светлая сторона: продаются готовые конструкторы робототехники (за деньги, конечно). В них входит какое-то количество датчиков, исполнительный механизмов, плата с процессором, связь оной с компьютером, система программирования, колеса, винтики, гаечки… Ничего серьезного не сделать, но можно начать разбираться. А потом и переделывать во что-то свое…

 
 
 
 
Сообщение17.11.2006, 16:56 
Аватара пользователя
Насчёт использования USB порта компа в своих разработках как виртуального COM порта существует дока AVR309. Это официальная версия, до этого эта разработка была одним студентом осуществлена. IgorPlugUSB - по этому ключу тоже можно поискать. Там их минимума железа собирается драйвер (железный) COM порта.

 
 
 
 
Сообщение19.11.2006, 22:27 
Хм. Спасибо.

Ещё тут совместными усилиями в голову пришла идея организовать простого робота на базе детской машинки, снабдив её веб камерой и blue-tooth-ом.

Не подскажете как это лучше начать делать?

 
 
 
 
Сообщение19.11.2006, 22:57 
Аватара пользователя
:evil:
Начать лучше с изучения того, из чего состоит компьютер. веб камера и синезуб — это классно. Только вот… Вы представляете себе какие аппаратные и програмные ресурсы за этим стоят? Я почти уверен, без микроконтроллера (а то и с наворотами схем) идее хана. А Вы сумеете просто собрать и включить микроконтроллер? Я — нет. Иду на поклон к инжинерам. (Да чего там. Одно питание подвести к современному процессору — это навык.)

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

Чтобы немного проиллюстрировать то, о чем я говорю: представьте себе, Вы хотите разобраться в устройстве часов. Можно, конечно, взять турбильон с минутным репетиром и попытаться разобрать и собрать его. Но я бы не рискнул. Проще начать с ходиков. Некоторые отчаянные головы начинают с наручных часов, но без календаря и автоподзавода. И то и другое — второй этап обучения. А за часы с усложнениями берутся не все профессионалы — они знают свои возможности.

ПК, сотовый телефон, цифровой фотоаппарат сделали технологию доступной массам. Вы можете пользоваться этой технологией (USB, Web-cam, blue tooth), как часами. Но за этой простотой использования скрывается огромный труд инженеров. Он создает иллюзию, что собрать что-то будет также просто. Увы, это лишь иллюзия.

 
 
 
 
Сообщение21.11.2006, 13:51 
Аватара пользователя
Я подключал собственные устройства по COM порту. Адептер USB-COM вещь нехитрая.., если USB для Вас так необходим.
Вообще большинство микроконтроллеров имеют интерфейс RS-232, который элементарно преобразовавается в COM. Я использовал ATMEL AVT - довольно удобный микроконтроллер, с возможностью создать программатор для него "на коленке" и бесплатным ассемблером. (там с Си есть где-то но достать неудавалось, да и не нужно особо было)

Если интересно пообщаться на эту тему - пиши в личку!

 
 
 [ Сообщений: 8 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group