roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 09:19

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 1502 ]  На страницу 1, 2, 3, 4, 5 ... 101  След.
Автор Сообщение
 Заголовок сообщения: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 07:18 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Собранный датчик на макетке и видео работы:
forum107/topic15929-105.html#p342387
Исходники:
репозитарий: https://github.com/setar/RF3Sens
Вложение:
sensor_ADNS.zip [10.18 КиБ]
Скачиваний: 0

Визуализатор для компа, исходники на Qt:
https://github.com/DmitLil/MouseSensViewer

Удачное повторение датчика от Сергея, с измененной концепцией оптической схемы:
про фокусировку http://roboforum.ru/forum107/topic15929-495.html#p344369
про монтаж линзы лазера http://roboforum.ru/forum107/topic15929-630.html#p347057

Схема тут. В графическом варианте:
Вложение:
digispark_adns2620.png
digispark_adns2620.png [ 33.12 КиБ | Просмотров: 11716 ]


Ниже старый вариант схемы...

Схема датчика на тиньке - это схема Digispark и часть схемы adns5020 из родного pdf.
На пзс надо всего 2 детали - 2 керамич. конденсатора по 10мкф. на питание: 5-6 пин и rego: 6-7 пин.
Лазер катодом на 2-й пин, анодом на +5v.
nReset (3 pin) соединить с +5v: Vdd (5-й пин).
Шина spi 3 контакта:
Код:
adns5020:   Digispark:
SCLK(8)     PB2(SCK/ADC1) 7pin
SDIO(1)     PB4(usb Digispark) 3 pin
nCS (4)     PB0(MOSI) 5 pin

Чтоб пзс не мешала программированию Digispark, надо подтянуть nCS к +5v резистором от 1к до 10к.
Выход датчика PB1(MISO) 6pin, он же штатный светодиод Digispark. По нему можно смотреть работу датчика без подключения к принтеру.

Изображение
Изображение
http://www.efo.ru/components/avago/cata ... 0365EN.pdf

Подключение пзс к arduino nano, программный spi - 3 пина, аппаратный spi - 4 пина:
Код:
adns5020:   arduino nano:
SCLK(8)     D13
SDIO(1)     D11
nCS (4)     D10
            D9 выход датчика (использовать D13 led нельзя, т.к. занят аппаратным SCLK)
Если используется аппаратный SPI, то нужен резистор между D11 и D12. Я ставил 75 ом.


Рабочие пзс мышек:
Код:
MCS12085   полный аналог ADNS-2620
ADNS2610   Самые ходовые б/у мыши - Genius NetScroll EYE
ADNS2620
ADNS3090
ADNS5020EN   Logitech RX250 PLUTON
ADNS5030   3.3v trust мини мышка беспроводная
ADNS6010   a4 tech X7 X-750MF
ADNS9800   Монстр, мечта идиота :) Еще не проверил


Нерабочие пзс (на данный момент разработки сенсора, некоторые пзс могут пропасть из этого списка)
Код:
no use
PAN3101
paw3101db   нет Pixel_Grab
PAN3102DB   нет Pixel_Grab
pan3204db   PS/2
PAW3204      2.7v, нет Pixel_Grab. LOW COST WIRELESS MOUSE SENSOR
PAW3401      ps/2
PAW3515DB   только юсб.


Куча полезной информации по чипам разных мышек:
http://www.overclock.net/t/854100/gaming-mouse-sensor-list
Еще один хороший список:
http://csgolikeapro.com/index.php?title=Mouse_sensor


/*
-------------------------------------------------------------------------------------------
Дальше всякое обсуждение...
-------------------------------------------------------------------------------------------
*/

Разные датчики с общим методом, можно шарп, можно оптич. мышки :)


Работает шарп, причем хорошо. Расстояние от датчика до стола около 3.5см. Свет не влияет.
Контраст поверхности влияет, но надо модифицировать шарп, как я описывал раньше. Брать шарп на самое маленькое расстояние, у меня GP2Y0A21YK0F
http://roboparts.ru/products/gp2y0a21yk0f
плата с компаратором эта:
http://roboparts.ru/products/9396613
Отпаял лишние детали и фотодиод. Переменный резистор настроен на точку до максимума напряжение/расстояние, там максимальная крутизна датчика, смотреть график в пдф.
Код:
18:46:07.290 : N378 M48 V2 *119
18:46:30.365 : 1 of 10   z: 28.598438
18:46:42.078 : 2 of 10   z: 28.598438
18:46:53.794 : 3 of 10   z: 28.593437
18:47:05.390 : 4 of 10   z: 28.608749
18:47:17.098 : 5 of 10   z: 28.588438
18:47:28.815 : 6 of 10   z: 28.604063
18:47:40.527 : 7 of 10   z: 28.596250
18:47:52.241 : 8 of 10   z: 28.597812
18:48:03.955 : 9 of 10   z: 28.595624
18:48:15.628 : 10 of 10   z: 28.628749
18:48:21.960 : Mean: 28.601001
18:48:21.963 : Standard Deviation: 0.010626

18:49:58.707 : N432 M48 V2 *126
18:50:26.762 : 1 of 10   z: 28.639686
18:50:38.397 : 2 of 10   z: 28.626249
18:50:50.033 : 3 of 10   z: 28.631563
18:51:01.668 : 4 of 10   z: 28.634061
18:51:13.304 : 5 of 10   z: 28.622499
18:51:24.941 : 6 of 10   z: 28.640312
18:51:36.576 : 7 of 10   z: 28.623437
18:51:48.213 : 8 of 10   z: 28.632812
18:51:59.847 : 9 of 10   z: 28.631563
18:52:11.483 : 10 of 10   z: 28.626874
18:52:17.820 : Mean: 28.630905
18:52:17.822 : Standard Deviation: 0.005869

18:54:03.931 : N491 M48 V2 *119
18:54:32.077 : 1 of 10   z: 28.623437
18:54:43.835 : 2 of 10   z: 28.595312
18:54:55.468 : 3 of 10   z: 28.626562
18:55:07.186 : 4 of 10   z: 28.622186
18:55:18.900 : 5 of 10   z: 28.629375
18:55:30.617 : 6 of 10   z: 28.621250
18:55:42.328 : 7 of 10   z: 28.636249
18:55:54.005 : 8 of 10   z: 28.637500
18:56:05.722 : 9 of 10   z: 28.608125
18:56:17.316 : 10 of 10   z: 28.640312
18:56:23.655 : Mean: 28.624032
18:56:23.655 : Standard Deviation: 0.013115

18:57:16.218 : N532 M48 V2 *127
18:57:44.343 : 1 of 10   z: 28.625625
18:57:55.934 : 2 of 10   z: 28.665000
18:58:07.612 : 3 of 10   z: 28.642812
18:58:19.209 : 4 of 10   z: 28.637811
18:58:30.847 : 5 of 10   z: 28.616249
18:58:42.480 : 6 of 10   z: 28.630311
18:58:54.074 : 7 of 10   z: 28.653125
18:59:05.750 : 8 of 10   z: 28.659063
18:59:17.428 : 9 of 10   z: 28.646875
18:59:29.020 : 10 of 10   z: 28.645000
18:59:35.348 : Mean: 28.642185
18:59:35.350 : Standard Deviation: 0.014361

Выключение освещения комнаты через каждое измерение
Код:
19:01:34.883 : N595 M48 V2 *114
19:02:03.023 : 1 of 10   z: 28.640625
19:02:14.740 : 2 of 10   z: 28.635313
19:02:26.460 : 3 of 10   z: 28.635000
19:02:38.179 : 4 of 10   z: 28.640937
19:02:49.853 : 5 of 10   z: 28.667186
19:03:01.491 : 6 of 10   z: 28.661874
19:03:13.169 : 7 of 10   z: 28.641250
19:03:24.847 : 8 of 10   z: 28.657188
19:03:36.524 : 9 of 10   z: 28.649375
19:03:48.202 : 10 of 10   z: 28.650938
19:03:54.541 : Mean: 28.647970
19:03:54.544 : Standard Deviation: 0.010655



Изображение

Дальше надо переделывать шарп, как писал раньше (с лазером).
Форумчанин Пяткин нашел более оптимальный датчик: Sharp GP2Y0A51SK0F


Ура, получил видео от мышки в этих ваших линухах :)
Мыша - Genius, Чип - MCS_12085 (полный аналог ADNS-2620), контроллер arduino nano. Оптику приговнял от сдром. Резкость примерно на 2-х сантиметрах. Скриншотик логотипа дуины на плате arduino mega :Yahoo!:

Изображение
Изображение


Последний раз редактировалось Dmitry__ 23 авг 2016, 15:20, всего редактировалось 25 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 18:46 
Не в сети

Зарегистрирован: 10 авг 2014, 15:02
Сообщения: 775
Откуда: Саров
А как датчик шарп связан с датчиком мышки?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 19:02 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Датчик шарп - готовый вариант датчика на пзс оптич. мышки. Там есть пзс как в мышке, есть светодиод и оптика. Для мышки надо городить оптику (красивое решение - линза сдром) и лазер. Лазерные модули с коллиматорной оптикой стоят дешево, всего 100р.
Датчик из мышки будет значительно точнее (из-за лазера) и быстрее, через пзс вижу мерцание лампы дневного света, которая модулируется 40кгц.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 19:59 
Не в сети

Зарегистрирован: 10 авг 2014, 15:02
Сообщения: 775
Откуда: Саров
Dmitry__ писал(а):
Датчик шарп - готовый вариант датчика на пзс оптич. мышки.

Что то мне кажется там линейка, а не матрица. С тем же успехом сюда и дальномер на вебкамере можно приписать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 20:51 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Да, в шарп линейка, а что это меняет? На пзс мышки будет стоять контроллер, который будет выделять линию по которой ходит пятно от лазера. 2d матрица позволяет не так точно юстировать лазер относительно пзс, калибровка запомнит смещение линии, а высота до мишени сама подберется. Все можно настраивать трясущимися руками и получить одну сотку. В шарп это не требуется, так как все сделано с промышл. технологиями. А у нас - дешевый скотч, картон, термоклей и.т.д. :)

Добавлено спустя 6 минут 3 секунды:
Zusul86 писал(а):
С тем же успехом сюда и дальномер на вебкамере можно приписать.

Абсолютно верно. Я думал о ч/б камере и программном выделении точки. На этом форуме есть замечательный проект под это дело:
forum88/topic6822.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 22:41 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Не нашел кнопки "подписаться", нашел кнопку "быстрый ответ"

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 22:54 
Не в сети

Зарегистрирован: 27 май 2014, 13:35
Сообщения: 771
Откуда: London. UK
Skype: pioneerko
ФИО: Александр
смотри ниже, в самом низу страницы сразу под ботами.

_________________
Косель мини, плата управления DUET на reprap firmware от DC42, E3Dv6
Распечатаю на заказ.
Вложение:
Kossel config E3D.h


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 03 ноя 2015, 23:49 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Чтение мышки содрал с:
http://rogerrowland.blogspot.co.uk/2014 ... mouse.html
Прога на компе на базе стандартного примера Qt: Qt/Examples/Qt-5.3/serialport/master
Причешу, проверю в вендах и выложу.
Мышки надо, которые умеют грабить сырую картинку из чипа, где-то был целый список их, сейчас не найду. В основном это чипы от Avago

Добавлено спустя 10 минут 53 секунды:
Еще про мышки:
http://www.bidouille.org/hack/mousecam
https://code.google.com/p/optimouse/

Очень интересны лазерные мышки, моя работает на 1 см. от поверхности, скорее всего там вообще все просто. Но я не рискнул ее ломать, ибо еще играю на ней в кваку :)

http://www.youtube.com/watch?v=37Fg5_77J24


Добавлено спустя 21 минуту 46 секунд:
Ну и конечно, можно купить готовые с оптикой, это у кого нет проблем со сгрызанием ногтей от ожидания по 60 дней.
http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR10.TRC0.A0.H0.Xadns.TRS0&_nkw=adns&_sacat=0


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 04 ноя 2015, 00:02 
Не в сети

Зарегистрирован: 10 авг 2014, 15:02
Сообщения: 775
Откуда: Саров
Про W-Mouse где то есть русскоязычный форум, там можно почитать где какой датчик и оптику от какой к нему лучше ставить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 04 ноя 2015, 17:09 
Не в сети
Аватара пользователя

Зарегистрирован: 24 окт 2011, 23:32
Сообщения: 803
Откуда: Севастополь
прог. языки: асм
Zusul86 писал(а):
Про W-Mouse где то есть русскоязычный форум...

http://forums.overclockers.ru/viewtopic ... 7&t=330808


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 23 ноя 2015, 04:53 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Приделал лазер соплями. Фоткал так, чтоб был понятен угол наклона лазера:
Вложение:
sens_mouse1.JPG
sens_mouse1.JPG [ 1.77 МиБ | Просмотров: 15262 ]


Видео:

Пятно определяется абсолютно однозначно, значение "63" - насыщение пзс от пятна лазера. До 8-й секунды: поверхность - белая бумага. Блики после 8 до 16 секунды - замена поверхности: черный пластик. Как не старался ровно приляпать датчик, все равно увело вверх.
С таким контрастом можно и не думать о какой-то обработке. Алгоритм будет такой:
При достижении правой стороны матрицы значения > 60: выставлять "1" на z_probe.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 23 ноя 2015, 05:12 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Ого, че-то крутое!

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 23 ноя 2015, 17:24 
Не в сети

Зарегистрирован: 28 дек 2014, 02:33
Сообщения: 292
Откуда: Рязань
прог. языки: С#, JAVA
dccharacter писал(а):
Ого, че-то крутое!

Нда, многообещающе !, впечатляет, но блин оптика усложняет конструктив, сложновато для повторения однако !

_________________
Printer: H-Boot cube aluminium (промежуточный вариант), Firmware: Marlin
Delta all aluminium, Firmware: Marlin
Electronics: Arduino MEGA 2560 + RAMPS 1.4


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 23 ноя 2015, 20:01 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Дим, Дим, угол Брюстера!

Добавлено спустя 2 минуты 49 секунд:
Сидиром - четвертьволновые пластинки россыпь шок без регистрации без смс

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Датчик касания оптический, триангуляция
СообщениеДобавлено: 24 ноя 2015, 02:07 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
dccharacter писал(а):
угол Брюстера!

Это слишком умно для меня...
dccharacter писал(а):
Сидиром - четвертьволновые пластинки россыпь шок без регистрации без смс

Я вчера тоже долго думал. Вот что надумал:
Не бывает абсолютно зеркальных отражений, диффузное отражение должно быть всегда. Надо ему только немного помочь. Надо взять самый коротковолновый лазер - синий или уф, умрет гладкая поверхность быть зеркальной для таких длин волн. И, и, и сегодня моя теория сошлась с практикой - работает на стекле.
У меня 3 новости: очень хорошая, хорошая и плохая. С какой начать?
Очень хорошая: ТАДАААААААААААМ, работает на стекле и зеркале :P
Хорошая: Ни яркость, ни контраст не влияют на результат. :good:
Плохая: Датчик - хлам, при всех ее 1500 кадрах в секунду, она не умеет быстро отдавать сырой кадр :cry:
Между байтами данных надо делать задержку 100мкс. 18 точек * 18 точек * 100мкс. *2 (адресация) = 64.8 мс.
Ушел искать быструю пзс...
Фотки:
2 фотки, отражение от стекла, различная загрязненность.
Вложение:
sens_mouse2.JPG
sens_mouse2.JPG [ 1.88 МиБ | Просмотров: 15086 ]

Вложение:
sens_mouse3.JPG
sens_mouse3.JPG [ 1.84 МиБ | Просмотров: 15076 ]

Белая поверхность:
Вложение:
sens_mouse4.JPG
sens_mouse4.JPG [ 1.83 МиБ | Просмотров: 15096 ]

Темная поверхность:
Вложение:
sens_mouse5.JPG
sens_mouse5.JPG [ 1.72 МиБ | Просмотров: 15075 ]


Можно заметить, что отражение от стекла не хуже чем от темной поверхности.
Видео:
До 3-й секунды - стекло, до 6-й - белая поверхность, потом темная. С 10-й секунды - реакция на изменение координаты "z".


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1502 ]  На страницу 1, 2, 3, 4, 5 ... 101  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO