roboforum.ru

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

Мышка, энкодеры и датчики

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

Re: Мышка, энкодеры и датчики

Сообщение Myp » 30 мар 2010, 16:31

блин
ну неужели так сложно взять и один раз прочитать как устроена обычная компьютерная мышка?
2 страницы какогото гундёжа невнятного. :bad:

шариковая мыша крутит шариком колёсики с прорезями
прорези закрывают и открывают датчик, получаются импульсы

процессор мышки считает сколько раз перемычки закрыли датчик за стабильный отрезок времени(например скока секторов было за 0.1 секунды) и отправляют это число в компьютер.
комп считывает количество и перемещает курсор в новую точку согласно этому числу.
если быстро дёрнул мышкой то будет 20 импульсов за 0.1 секунды и курсор перепрыгнет на 20 пикселов (в принципе)
если медленно двигал то будет 3 импульса за 0.1 секунды и курсор прыгнет на 3 пиксела.

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

многие оптические мыши имеют один суперчип который делает сразу всё. такие мышки ни на что не годятся

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

если хочется устройством своим рулить курсором то надо взять механическую мышку и самому подавать импульсы вместо оптического датчика и колёсика.
это конечно довольно извратски, но без МК тока так.
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Мышка, энкодеры и датчики

Сообщение vadinator » 30 мар 2010, 17:06

blindman писал(а):Нафига оптоизоляторы добавлять туда где они уже есть? :)

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

Re: Мышка, энкодеры и датчики

Сообщение blindman » 30 мар 2010, 17:28

В мышках они есть
Проект [[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: Мышка, энкодеры и датчики

Сообщение vadinator » 30 мар 2010, 17:47

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

Re: Мышка, энкодеры и датчики

Сообщение boez » 31 мар 2010, 12:10

S-T-A-L-K-E-R, ты не прав насчет +Y, -Y и т.п. Почитай http://en.wikipedia.org/wiki/Rotary_encoder , раздел Incremental rotary encoder (к сожалению в русском варианте на вики этого раздела нет). Ну или вот DiHalt пару слов про энкодеры написал в первом абзаце http://easyelectronics.ru/enkoder-iz-pe ... stora.html.

В общем, на каждую координату нужно 2 сигнала, но они оба используются при движении в обоих направлениях. Только последовательность меняется - или 00,01,11,10 - "вперед", или 00,10,11,01 - "назад".

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

Короче, если мне нужно было бы иметь информацию о перемещении моей механической системы, я бы слал ее через последовательный канал в свою программу, минуя такого "посредника", как GUI-подсистема ОС.
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: Мышка, энкодеры и датчики

Сообщение vadinator » 31 мар 2010, 13:18

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

Пред.

Вернуться в Новичкам или основы основ роботостроения.

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

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