Перейти к содержанию
    

подружить мышку с МК

1/20 градуса точность. Для полного оборота - очень даже неплохо, но для полутораградусного интервала - на пределе приемлемого.

А интересно, демоплатку они бесплатно не высылают?

Не слышал, чтоб ктото бесплатно демо платки раздавал.

Она вроде 20 долларов всего..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

во многих моделях струйников в механизме подачи бумаги стоят оптические энкодеры в виде пластикового диска с рисками по окружности (мне попадались до 1600 на оборот) и соответствующего считывающего элемента ...

дохлый струйник не сложно найти даром или за символическую цену

правда не испытывал такие энкодеры на скорость, в моих конструкциях они служат заменой дорогостоящим ручным "борнусам"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

во многих моделях струйников в механизме подачи бумаги стоят оптические энкодеры в виде пластикового диска с рисками по окружности (мне попадались до 1600 на оборот)
Это круто, и подошло бы, но мне не встречалось. Разбирал струйники - там был такого же типа линейный датчик: пластиковая ленточка и считыватель скользил по ней на каретке.

 

Но вообще-то я о другом! Пожалуйста, давайте возвратимся к исходной теме!

Первоначальная мысль была - использовать обычные сигналы мышки, которыми она обменивается с компом. (А не делать из нее сканер, хотя тоже интересно было прочитать!)

Но ведь ее сначала как-то инициализировать нужно, да? И в каком формате она перемещение передает? Вот и всё, что рассмотреть надо, а не покупать датчики из-за бугра (хотя конечно вещь классная, не спорю).

Зато разбор вопроса чтения мышки МК - вот это как раз дидактическая тема для начинающих, а покупка того или иного девайса - нет.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Первоначальная мысль была - использовать обычные сигналы мышки, которыми она обменивается с компом. (А не делать из нее сканер, хотя тоже интересно было прочитать!)

Но ведь ее сначала как-то инициализировать нужно, да? И в каком формате она перемещение передает? Вот и всё, что рассмотреть надо, а не покупать датчики из-за бугра (хотя конечно вещь классная, не спорю).

Зато разбор вопроса чтения мышки МК - вот это как раз дидактическая тема для начинающих, а покупка того или иного девайса - нет.

 

Если уж смотрите на мышку - берите мышку с PS/2, для его подключения пригоден даже самый слабый МК, да и разобраться в нем намного легче чем с USB.

 

Вот например ссылки:

http://www.programmersclub.ru/%D0%98%D1%81...88%D0%BA%D0%B8/

http://www.electronics-base.com/projects/c...readout-example

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Usage Page (Generic Desktop), ;Use the Generic Desktop Usage Page

Usage (Mouse),

Collection (Application), ;Start Mouse collection

Usage (Pointer),

Collection (Physical), ;Start Pointer collection

Usage Page (Buttons)

Usage Minimum (1),

Usage Maximum (3),

Logical Minimum (0),

Logical Maximum (1), ;Fields return values from 0 to 1

Report Count (3),

Report Size (1), ;Create three 1 bit fields (button 1, 2, & 3)

Input (Data, Variable, Absolute), ;Add fields to the input report.

Report Count (1),

Report Size (5), ;Create 5 bit constant field

Input (Constant), ;Add field to the input report

Usage Page (Generic Desktop),

Usage (X),

Usage (Y),

Logical Minimum (-127),

Logical Maximum (127), ;Fields return values from -127 to 127

Report Size (8),

Report Count (2), ;Create two 8 bit fields (X & Y position)

Input (Data, Variable, Relative), ;Add fields to the input report

End Collection, ;Close Pointer collection

End Collection ;Close Mouse collection

В документе описания класса HID (Device Class Definition for Human Interface Devices (HID) Firmware Specification—6/27/01) приводится такой пример дескриптора репорта мыши, в секции XY указано разрешение -127.. +127 координат по осям. То есть мышь передает свои координаты. За начало отсчета наверное берется ее начальное положение. Вам остается подружится с winows чтобы она позволила вам получать данные с мыши совместно с системными программами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если уж смотрите на мышку - берите мышку с PS/2, для его подключения пригоден даже самый слабый МК, да и разобраться в нем намного легче чем с USB.
Полностью с Вами согласен. Я так и задумывал.

Большое спасибо!

Ваша первая ссылка - отличная подробная статья. Только автор забыл рассказать про физический уровень интерфейса, то есть как раз по нашей, "электронной", части))))

Про это можно прочитатать здесь: http://robocraft.ru/blog/communication/100.html

и здесь http://pakhom2.narod.ru/midips.htm

 

Ваша вторая ссылка была про AVR, но я работаю с PIC-ами, поэтому мне интереснее показалось вот это http://pic.rkniga.ru/stati/140-podklyuchae...turu-k-pic.html (хотя там про клавиатуру).

 

За всё спасибо! Этого уже достаточно, чтобы попытаться попрограммировать и пообщаться с мышкой.

 

Изменено пользователем Меджикивис

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

За всё спасибо!

Меня вот идея посетила - преобразовать вращательное движение в поступательное. Например, наматывать на блок оттянутый пружинкой прочный, нерастяжимый шнурок или даже тонкую стальную проволочку. А уже линейное перемещение мерить, например, электронным штангенциркулем.

Но это все баловство, как и мышка. Мышка вообще для решения этой задачи непригодна. Энкодер купите и не мучайтесь ...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но она же под рукой. Всё уже есть - почему же не попробовать? Плюс опыт запуска мыши от МК. Программирование PS/2 ведь тоже не самое последнее из умений, правильно?

Вот разгребусь немного с текущими работами и попробую обязательно. Не получится? - ну и что? - я ж ничего не теряю: значит буду искать другие способы.

 

У меня вообще первая мысль была - вытравить по краю диска дорожку мелкой змейкой, на манер штрихов энкодера. И два таких диска друг над другом. Один запитываем частотой, а другой - приемный. При повороте на один шаг змейки над змейкой, фаза перевертывается. Это называется индуктосин.

Но! здесь нужна плоскопараллельность и (особенно!) соосность - соответственно количеству штрихов. И если мелкую змейку ЛУТом натравить еще можно, то отъюстировать так механику - я прикинул, на коленке невозможно((((

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не получится? - ну и что? - я ж ничего не теряю: значит буду искать другие способы.

 

У меня вообще первая мысль была - вытравить по краю диска дорожку мелкой змейкой

Получится, но плохо. Будут проскальзывания, и точность упадет ниже плинтуса.

 

Вам хорошую мысль подсказали - диск от принтера. Это если не устраивает готовый энкодер ...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Получится, но плохо. Будут проскальзывания
Были бы не "проскальзывания", а провалы сигнала и соответственно невозможность даже правильного счета импульсов, не говоря уже о синусно-косинусном позиционировании в пределах одного "штриха" (что теоретически возможно). Так что этот вариант был сразу отклонен.

 

Вам хорошую мысль подсказали - диск от принтера. Это если не устраивает готовый энкодер ...
Устраивает. Но его еще надо найти. У меня пока нету, отписал же ведь.

 

Про нить. Такое решение было на некоторых 5-дюймовках. Но нить или полоску надо натягивать, то есть упругую пластинку наподобие лука, всё это должно двигаться по хорошим направляющим, короче никакого сравнения по простоте с обычным диском (может даже бумажным!) у края которого лазерная мышка.

Изменено пользователем Меджикивис

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня вообще первая мысль была - вытравить по краю диска дорожку мелкой змейкой, на манер штрихов энкодера. И два таких диска друг над другом. Один запитываем частотой, а другой - приемный. При повороте на один шаг змейки над змейкой, фаза перевертывается. Это называется индуктосин.

Но! здесь нужна плоскопараллельность и (особенно!) соосность - соответственно количеству штрихов. И если мелкую змейку ЛУТом натравить еще можно, то отъюстировать так механику - я прикинул, на коленке невозможно((((

Восхищаюсь. Хорошо, хоть резисторы из грифелей самостоятельно изготавливать не собираетесь. Есть же у людей время на творчество....

 

Устраивает. Но его еще надо найти. У меня пока нету, отписал же ведь.

 

Про нить. Такое решение было на некоторых 5-дюймовках. Но нить или полоску надо натягивать, то есть упругую пластинку наподобие лука, всё это должно двигаться по хорошим направляющим, короче никакого сравнения по простоте с обычным диском (может даже бумажным!) у края которого лазерная мышка.

Не могу поверить, что купить энкодер или найти диск на барахолке - проблема. Видно, дело, всё-таки, в другом.

Кстати, какое же разрешение Вы ожидаете получить, используя мышку? И с чего Вы взяли, что оно будет выше, чем у энкодера?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, какое же разрешение Вы ожидаете получить, используя мышку? И с чего Вы взяли, что оно будет выше, чем у энкодера?

Можно только догадыватся. Предложенный мной дивайс с 14 битным разрешением ме подошел. "Точность на пределе".

Наверное, у мышки намного выше точность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

какое же разрешение Вы ожидаете получить, используя мышку?
1/64 градуса меня вполне бы устроило.

 

И с чего Вы взяли, что оно будет выше, чем у энкодера?
С того, что радиус диска не является принципиальной проблемой, а оптическая мышь не требует строго периодической штриховки для считывания (в отличие от энкодера).

 

Изменено пользователем Меджикивис

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если не пугает несложная механика и не претит аналоговая техника, то вашу задачу можно решить с помощью дифтрансформатора, шкива на валу с намотанной на него нитью, натянутой пружиной, и подвижного ферритового сердечника внутри катушки трансформатора.

Обозначения на рисунке:

1-УЗЧ

2-синхронный детектор

3-АЦП

4-генератор ЗЧ

Когда то давно с помощью такой системы была решена задача прецезионного измерения линейного перемещения с разрешением 10 мкм с очень хорошей линейностью на длине 3-5 мм

Подобная система с увеличенной длиной трансформатора применялась в некоторых моделях самописцев вместо реохорда.

Если заинтересует, то могу вспомнить некоторые подробности практической реализации.

post-78917-1402928271_thumb.png

Изменено пользователем Sergey-Ufa

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда то давно с помощью такой системы была решена задача прецезионного измерения линейного перемещения с разрешением 10 мкм с очень хорошей линейностью на длине 3-5 мм

А если нужна большая длина, что будет с линейностью ? Вы этот вопрос не исследовали ? Просто интересно ...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...