PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Дополнительные устройства

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2013, 22:11   #1
zyxel812
Старший Пользователь
 
Регистрация: 18.02.2013
Возраст: 41
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
zyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to all
По умолчанию Собственный контроллер резистивного сенсорного экрана, совместимый с Android

Собрался я тут на досуге распотрошить свой штатный монитор и внедрить в него pccar на базе odroid-x2. Но это отдельная история, сейчас о мониторе, точнее о его сенсорном экране.
Размер матрицы у него 6.5", не то чтобы большая редкость, но найти удалось только с резистивным тачскрином. Много гуглив, стало ясно, что "завести" такой тачcкрин под Андроидом хотят все, но не кому это нормально не удалось. Почесав немного репу, посмотрев тут что такое резистивный экран и как он работает, я понял: "а ведь его удастся контролировать при помощи микроконтроллера avr!", тем более, решая предыдущую проблему связи с кнопками на руле, HID Class Device я уже научился делать и прикинутся для Андроида мышкой не составит труда. Погуглив еще раз, действительно нашел пару примеров, как подключить резистивный тач к микроконтроллеру.
Начал я "воять". Всё получается, координаты касания к экрану определять научился, даже написал простую калибровочную утилиту. Мышкой прикидываться научился, курсор по экрану винды уже бегает примерно там, где я вожу пальцем. Настал час Х - подключение к Андроиду. Облом, не работает. Подключаю к винде - работает. Погуглив еще немножко, выяснилось, что Андроид не поддерживает мышки, которые передают абсолютные координаты, он умеет работать с мышами, которые передают движения. Вычислять, какие движения нужно передать, чтоб курсор попал в точку х,у кажется мне слишком сложными. В общем, я временно в тупике. Нужны идеи. От алгоритмов вычисления движений для перемещения курсора из точки А в точку Б, до других готовых способов подружить Андроид с резистивным тачем.
zyxel812 вне форума   Ответить с цитированием
Старый 27.03.2013, 22:37   #2
Gorynch
Старший Пользователь
 
Аватар для Gorynch
 
Регистрация: 22.04.2009
Возраст: 42
Город: Москва
Регион: 77, 97, 99, 177
Машина: 2005\Nissan\X-Trail
Сообщений: 775
Gorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond repute
По умолчанию

А если взять контроллер такой мышки и на его входы подавать абсолютные координаты?
__________________
В детстве, чтобы маленький Змей Горыныч был как все, мама заплетала его в косичку
Gorynch вне форума   Ответить с цитированием
Старый 27.03.2013, 22:55   #3
mas_u
Старший Пользователь
 
Регистрация: 08.05.2011
Регион: Украина
Машина: Subaru
Сообщений: 233
mas_u is on a distinguished road
По умолчанию

Цитата:
Сообщение от zyxel812 Посмотреть сообщение
Нужны идеи. От алгоритмов вычисления движений для перемещения курсора из точки А в точку Б.
А какие тут могут быть идеи?
Запоминать последнюю точку и вычислять относительно нее dx и dy для новой точки.

http://www.youtube.com/watch?v=RXJUcBbT19g

Через какое-то время после таких вычислений будет накапливаться погрешность между реальным касанием и тем, что навычисляли. Необходимо обнулять погрешность.
mas_u вне форума   Ответить с цитированием
Старый 27.03.2013, 23:20   #4
wave_is
Гуру
 
Регистрация: 28.12.2009
Возраст: 40
Регион: Украина
Сообщений: 1,084
wave_is will become famous soon enough
По умолчанию

а я все никак не могу понять почему одни мышки работают в андроиде, а вторые нет
wave_is вне форума   Ответить с цитированием
Старый 28.03.2013, 00:09   #5
s.m.
Гуру
 
Регистрация: 20.07.2009
Город: Минск
Регион: Беларусь
Сообщений: 1,543
s.m. is a splendid one to beholds.m. is a splendid one to beholds.m. is a splendid one to beholds.m. is a splendid one to beholds.m. is a splendid one to beholds.m. is a splendid one to beholds.m. is a splendid one to behold
По умолчанию

а если подключить через блютуз? это конечно через ж.. но может помочь
__________________
Мой проект: Citroen Xsara Android CarPC
s.m. вне форума   Ответить с цитированием
Старый 28.03.2013, 00:51   #6
zyxel812
Старший Пользователь
 
Регистрация: 18.02.2013
Возраст: 41
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
zyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to all
По умолчанию

Цитата:
Сообщение от Gorynch Посмотреть сообщение
А если взять контроллер такой мышки и на его входы подавать абсолютные координаты?
Поясните

Цитата:
Сообщение от mas_u
А какие тут могут быть идеи?
Запоминать последнюю точку и вычислять относительно нее dx и dy для новой точки.

http://www.youtube.com/watch?v=RXJUcBbT19g

Через какое-то время после таких вычислений будет накапливаться погрешность между реальным касанием и тем, что навычисляли. Необходимо обнулять погрешность.
Это ваш проект на видео? Так и сделано? Описание где-нибудь есть?

Цитата:
Сообщение от s.m.
а если подключить через блютуз? это конечно через ж.. но может помочь
Суть-то та же, просто порт как бы другой.
zyxel812 вне форума   Ответить с цитированием
Старый 28.03.2013, 01:05   #7
Gorynch
Старший Пользователь
 
Аватар для Gorynch
 
Регистрация: 22.04.2009
Возраст: 42
Город: Москва
Регион: 77, 97, 99, 177
Машина: 2005\Nissan\X-Trail
Сообщений: 775
Gorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond reputeGorynch has a reputation beyond repute
По умолчанию

Виноват, упустил из виду, что оптика мыши и процессор обработки смещены в одном корпусе, поэтому подсунуть свои данные не получится
__________________
В детстве, чтобы маленький Змей Горыныч был как все, мама заплетала его в косичку
Gorynch вне форума   Ответить с цитированием
Старый 28.03.2013, 01:46   #8
mas_u
Старший Пользователь
 
Регистрация: 08.05.2011
Регион: Украина
Машина: Subaru
Сообщений: 233
mas_u is on a distinguished road
По умолчанию

Цитата:
Сообщение от zyxel812 Посмотреть сообщение


Это ваш проект на видео? Так и сделано? Описание где-нибудь есть?
Проектом это назвать сложно, так - эксперименты для поиска замены треснувшего родного емкостного тача. Принцип работы как упоминал выше.
Описания нет - было реализовано на atmega8 + v-usb.
mas_u вне форума   Ответить с цитированием
Старый 28.03.2013, 13:06   #9
zyxel812
Старший Пользователь
 
Регистрация: 18.02.2013
Возраст: 41
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
zyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to all
По умолчанию

Цитата:
Сообщение от mas_u Посмотреть сообщение
Проектом это назвать сложно, так - эксперименты для поиска замены треснувшего родного емкостного тача. Принцип работы как упоминал выше.
Описания нет - было реализовано на atmega8 + v-usb.
Если не трудно, расскажи пожалуйста об особенностях с которыми тебе пришлось столкнуться. Это, возможно, сэкономит мне кучу времени. Первые эксперименты, которые я сейчас сделал, не особо удачны. Для устранения ошибки, после отпускания экрана, перевожу курсор в верхний левый угол и при следующем касании отталкиваюсь от этой позиции. Однако, при касании курсор у меня перемещается на много дальше чем нужно, но при дальнейшем движении двигается вроде на правильные расстояния. В общем, проведя еще кучу экспериментов, думаю приду к правильному решению, но хотелось бы сэкономить время.
zyxel812 вне форума   Ответить с цитированием
Старый 28.03.2013, 13:30   #10
zyxel812
Старший Пользователь
 
Регистрация: 18.02.2013
Возраст: 41
Город: Санкт-Петербург
Регион: 78, 98
Машина: e46
Сообщений: 163
zyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to allzyxel812 is a name known to all
По умолчанию

Выяснилось, что передача смещения в 100 вызывает перемещение курсора примерно на 250 точек на экране. Пока не ясно, коэффициент 2,5 для всех компьютеров одинаков или для каждого он свой и зависит от каких-то настроек.

Ага, стало ясно, коэффициент зависит от настройки скорости перемещения курсора мыши в винде. Галочка "Включить повышенную точность установки указателя мыши" уменьшает первое движение мишкой. В Андроиде вроде нет таких настроек. Буду вычислять коэффициент на нем.

На моем андроиде, коэффициент 2. Андроид с usb у меня один, проверить одинаковость на разных устройствах пока не могу. Зависит ли коэффициент от разрешения экрана?

Последний раз редактировалось zyxel812; 28.03.2013 в 14:15.
zyxel812 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 22:24.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot