реклама на сайте
подробности

 
 
> Резистивные кнопки, Изобретение велосипеда :(
Spider
сообщение Nov 27 2010, 06:48
Сообщение #1


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Всем привет!

Встала задача "нюхать" нажатия не разисторных кнопках. Ну это такие кнопочки, в которых та или иная кнопка определяется номиналом резистора. По сути надо измерять сопротивление.
Вариант измерения пока один: АЦП и построение делителя напряжения.
Но вот вопрос, а как бы так сделать, чтобы было максимально универсально? Ну машины разные и сопротивления резисторов в кнопках разное, да ладно разные сопротивления, разные порядки, есть кнопки с десятками ом, а есть и десятки КилоОм.
Так вот что я думаю, как это измерять максимально универсально. Таким образом планирую:
использовать проц из семейства AVR с АЦП на борту.
построить несколько делителей, где в качестве одного плеча выступают кнопки, но каждый делитель завести на отдельный порт АЦП, итого я могу построить аж 8 разных делителей. И измерять значения начиная с самого "крупного" значения, и если оно в "зашкале" измерять следующий и так далее пока не выйду из зашкала или не кончатся порты.
Что скажите? Или есть более простой или изящный способ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
groovy
сообщение Nov 29 2010, 12:03
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 208
Регистрация: 11-08-04
Пользователь №: 480



QUOTE (Alexey Belyaev @ Nov 27 2010, 09:48) *
Всем привет!

Встала задача "нюхать" нажатия не разисторных кнопках. Ну это такие кнопочки, в которых та или иная кнопка определяется номиналом резистора. По сути надо измерять сопротивление.
Вариант измерения пока один: АЦП и построение делителя напряжения.
Но вот вопрос, а как бы так сделать, чтобы было максимально универсально? Ну машины разные и сопротивления резисторов в кнопках разное, да ладно разные сопротивления, разные порядки, есть кнопки с десятками ом, а есть и десятки КилоОм.
Так вот что я думаю, как это измерять максимально универсально. Таким образом планирую:
использовать проц из семейства AVR с АЦП на борту.
построить несколько делителей, где в качестве одного плеча выступают кнопки, но каждый делитель завести на отдельный порт АЦП, итого я могу построить аж 8 разных делителей. И измерять значения начиная с самого "крупного" значения, и если оно в "зашкале" измерять следующий и так далее пока не выйду из зашкала или не кончатся порты.
Что скажите? Или есть более простой или изящный способ?


Способа нет, но сразу скажу что тойоте и некоторых других авто рули двухканальные, поэтому умножайте на два.
Go to the top of the page
 
+Quote Post
rezident
сообщение Nov 29 2010, 21:48
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Alexey Belyaev @ Nov 27 2010, 11:48) *
Что скажите? Или есть более простой или изящный способ?
Скажу, что для начала нужно определиться
а) с типами кнопок - что за кнопки с сопротивлением в десятки килоОм? cranky.gif Десятки килоОм это типовое значение для утечки изоляции при расчетах, а вы собираетесь распознавать нажатия кнопок при таких условиях?
б) со схемой подключения кнопок - "весовые" резисторы, матрица R-2R, последовательное включение в цепочку и т.д;
в) с количеством кнопок - слишком много "аналоговых" кнопок на один вход АЦП подключить не получится. Если, конечно вам нужно устойчивое распознавание их нажатий;
г) с необходимостью распознавания одновременного нажатия нескольких кнопок.
Go to the top of the page
 
+Quote Post
Alex__Nik
сообщение Dec 2 2010, 18:02
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 68
Регистрация: 23-11-08
Из: Липецк
Пользователь №: 41 889



По моему мнению задача сформулирована не верно
В аппаратуре где на один вход подключается N-ное
количество кнопок с сопротами измеряется не сопротивление
подключенное через кнопку, а напряжение с делителя
созданное этой кнопкой


--------------------
Лень->двигатель прогресса
Go to the top of the page
 
+Quote Post
Alexeus
сообщение Dec 9 2010, 06:15
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 14-01-09
Пользователь №: 43 345



Да какая разница сколько кОм резисторы, хоть 1к, 10к, 100к... они всегда создают делитель напряжения. Ваша задача обеспечить что бы все разнообразие сопротивлений кнопок делилось на фиксированном напряжении- например 5в. тогда на вход АЦП будут приходить просто разные значения в интервале от 0 до 256. Нужно будет указать какому значению какая кнопка соответствует.
Go to the top of the page
 
+Quote Post
YAM
сообщение Dec 11 2010, 10:23
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 256
Регистрация: 7-07-04
Из: Ukraine
Пользователь №: 291



Да все относительно просто sm.gif, у меня в таком девайсе просто стоит 2 источника тока (просто подтяжки sm.gif ) на все варианты сопротивлений. При настройке юзер просто нажимает все кнопки без разбора, а софт уже сам определяет какой источник подходит для этих сопротивлений исходя их максимального динамического диаппазона (читай - отличающихся кодов с АЦП с учетом допуска на разброс).
http://www.hvi.od.ua/index.php?option=com_...ul&Itemid=7

p.s. еще не забудьте один момент, есть кнопки у которых по умолчанию в отжатом состоянии присутствует "фоновое" сопротивление. Его тоже надо "отсеять" при настройке sm.gif

В общем прочитайте инструкцию на этот девайс и возможно некоторые вопросы прояснятся.
http://www.hvi.od.ua/instr/CIR-309U_full.pdf


--------------------
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 07:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01398 секунд с 7
ELECTRONIX ©2004-2016