Форум программистов, компьютерный форум, киберфорум
Электроника для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/28: Рейтинг темы: голосов - 28, средняя оценка - 4.68
ydtir

Как называется компонент (деталь)?

13.04.2016, 15:52. Показов 6092. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Такие обычно стоят в авто на ручках кондиционера.
Ты эту штуку крутишь, она щелкает, а реакция, словно на кнопки +- жмешь.
Захотелось такую крутилку дискретную для проекта на AVR, а вот как искать - даже не знаю.
Хотелось бы найти размеров и формфактора небольшого потенциометра.
Реагировать на нее хочу прерываниями INT0 INT1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.04.2016, 15:52
Ответы с готовыми решениями:

Как называется эта деталь?
На материнской плате видимо сгорело это. имеет сопротивление в обе стороны, находится сразу возле подачи питания. при подключении адаптера...

Как называется деталь?
Всем привет! прилагаю скрин, как называется вот эта штука куда тыкаются провода? Защелкиватель или как правильно то.

Как называется деталь?
Всем привет. Извиняюсь за дурацкую тему, просто мне нужна деталь, а как она называется я не знаю. И поэтому не могу её найти. Суть...

12
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
13.04.2016, 15:57
Энкодер.
0
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 225
13.04.2016, 17:38
Энкодер называется, как раз и есть в форм факторе потенциометра. типа таких - http://www.chipdip.ru/product/3315c-101-016l/
есть сразу с кнопкой, то есть вал не только крутится а еще и нажимается. Алгоритмы работы с ними есть в нете, в том числе и на прерываниях. Однако учтите, что механические энкодеры, как и любые механические контакты имеют такое явление как "дребезг", так что для четкого срабатывания придется поиграться, особенно если возьмете дешовый китайский энкодер.
0
ydtir
13.04.2016, 18:41
Спасибо. В догонку вопрос про дребезг.
Про себя: Я абсолютный нуб в электронике(программирую давно), взявший в руки ардуино и тут же отправивший в помойку Wiring. Linux, EclipseCDT, avrgcc,arduino usb2serial и Arduino mini (Amperka Iskra mini).

И сразу на прерывания: таймер + INT0 на кнопку.
С дребезгом тактовой кнопки у меня прекрасно справился конденсатор на 0.1 мкф

Но ведь тут будет другая история. В случае с энкодером контакт будет разорван уже через долю секунды. Только программно защищаться от дребезга? Или есть средства аппаратной защиты?
0 / 0 / 0
Регистрация: 31.01.2013
Сообщений: 1,625
13.04.2016, 20:48
Как защищаться от дребезга - аппаратно или программно - разницы нет, смотря какие средства имеются в распоряжении.
Если аппаратно, то я бы ставил две RC цепочки для сглаживания сигналов, и далее на триггеры Шмитта типа 74HC14, далее на входы процессора, и на чистых сигналах можно использовать прерывания.
Программную обработку я применял несколько раз, суть остается та же. Нужны два программных интегратора и два компаратора, желательно с гистерезисом, и периодический опрос по таймеру. Мой опыт показывает, что частота опроса должна быть не менее 1 кГц, если хотим вертеть колесо как угодно. При меньших частотах уже начинают проявляться тормоза, если крутить быстро, и пропуск шагов.
0
ydtir
14.04.2016, 01:59
Про rc и Шмидта - круто, но пока не понятно. Спасибо, погуглим...
Если есть ссылка, куда можно меня носом ткнуть - буду рад ткнуться.
0 / 0 / 0
Регистрация: 31.01.2013
Сообщений: 1,625
14.04.2016, 02:46
Это не сложно.


http://**************************/download/file.php?id=27541&sid=3f093971ed09ea2d78 881dbcf77c8c75
0
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
14.04.2016, 08:54
Может кто-то пояснит фишку энкодера (20 механических позиций на оборот, кнопка, пять контактов). Суть вопроса - зачем за один щелчек пробегается все 4 состояния двухбитного кода? Это для облегчения декодирования?
Проверенной в деле, только с оптическим декодером, программой на прерываниях надежно декодировать не получилось, программным опросом так же, конденсаторы как последнее средство пока не применялись.
0
ydtir
18.04.2016, 01:19
yiv91. РЕСПЕКТИЩЕ!!! просто и понятно. Будем пользовать!
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 225
18.04.2016, 15:56
Зачем за один щелчек пробегается все 4 состояния двухбитного кода - Да, по идее за 4 смены состояния легче отфильтровать. Но у меня с этим другой прикол получался (с дешевым энкодером), он иногда после щелчка не в 0 приходит (то есть реально проходит 3 или 5 состояний). В результате меню или не переходит на следующий пункт или же скачет через один. Пока так нормально и не придумал как с этим бороться.
0
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
18.04.2016, 18:41
Цитата Сообщение от Dymomdss
В результате меню или не переходит на следующий пункт или же скачет через один. Пока так нормально и не придумал как с этим бороться.
Это пожалуй вообще непобедимо, если механика не способна заставить "спрыгнуть" вал в одно из устойчивых состояний из промежуточного. На осциллографе у меня так же. Видимо для этого и заложили четыре цифровых шага на один механический и нужно обрабатывать не только установившееся состояние, но и то, откуда перешел.
Попытка на реверсивном счетчике (программном) накапливать результаты всех переходов за один механический шаг, в том числе от дребезга, хорошего результата не дала - переодически происходит якобы шаг в обратную сторону.
0
ydtir
22.04.2016, 00:52
Прикупил парочку 74HC14 и несколько энкодеров. В итоге справился без триггера Шмидта.
Энкодер самый дешевый с тремя ногами, и еще отдельным двумя ногами под нажатие. Нажатие повесилось на INT0, но это не важно.
когда крутим энкодер контакт появляется между ногами 1и2, затем появляется между 2 и 3, затем пропадает между 1 и 2, затем пропадает между 2 и 3.
В обратную сторону естественно в обратном порядке +3,2;+1,2;-3,2;-1,2
В одну из сторон часто не спрыгивает с последнего контакта, но даже это не помешало хитро написанной функции опроса.

Средний контакт опущен на землю, а два других подтянуты к плюсу и поставлены на ноги PD5,PD6.
Естественно при таком подключении контакт замкнут, когда на ноге НОЛЬ.
Программа пытается обладать многозадачностью, а потому только раз в миллисекунду опрашивает контакты. Это немного играет против дребезга.
Таймер по переполнению просыпает AVRку, а она опрашивает контакты (кроме прочего) и засыпает.

ниже тот хитрый код. Крутил крутилки до 300 щелчков в обе стороны, дребезга не заметил
Буду благодарен за конструктивную критику.

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
void readEncoder() {
 
static long EL = 0; // будем считать кол-во поворотов в одну сторону
static long ER = 0; // а тут в другую
 
static uint8_t ol=0; //будем сохранять предыдущее состояние левого контакта
static uint8_t or=0; // а тут предыдущее состояние правого контакта
 
volatile uint8_t i = PIND; // прочитаем весь порт D
 
uint8_t r=i & (1 << PD6);  // Посмотрим что в ноге D6
uint8_t l =i & (1 << PD5); // Посмотрим что в ноге D5
 
if (!r && or  && !l && !ol){ // если мы только что замкнули контакт на правой ноге , а левая уже была замкнута в этот момент (минимум 2мс)
// ( !r && or  - это он только что замкнулся)
// значит мы крутим вправо
 
ER++;
// для эксперимента просто вывожу на экран справа кол-во поворотов вправо
ili9341_settextcolour(RED, BLACK);
ili9341_settextsize(4);
ili9341_setcursor(123, 39);
prymtf("%u",ER);
}
 
if (!l && ol && !r && !or){  // все как и в предыдущем условии, только в обратную сторону, т.е. мы только что запрыгнули на левый контакт, а на правом уже сидим 2 или более миллисекунд
 
EL++;
// ну и так же вывожу на экран, но слева и другим цветом
ili9341_settextcolour(BLUE, BLACK);
ili9341_settextsize(4);
ili9341_setcursor(3, 39);
prymtf("%u ", EL);
}
ol=l;  // сохраню для следующего опроса состояние левой ноги
or=r; // сохраню для следующего опроса состояние правой ноги
 
}
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
22.04.2016, 09:20
Критику можно придумать на что угодно, только если оно работает, то это будет придирка. ))
В принципе задача для контроллера не сложная, нужно анализировать последовательность двухбитового кода 00-01-11-10-00...(0-1-3-2) или 00-10-11-01-00...(0-2-3-1)
Фиксация любого перехода дает направление, если анализировать последовательность из четырех чисел, то код имеет избыточность, например переходы 0-3 или 1-2 являются запрещенными и трактуются как ошибка.
В отсутствие дребезга два вида декодирования - опрос с постоянной частотой, превышающей частоту смены комбинаций, и опрос по событию смены состояния сигнала на любой ножке - дают одинаковый результат. При дребезге по первому способу из-за возможных пропусков состояний при низкой частоте сканирования декодирование забивается ошибками (запрещенные переходы или иллюзия движения туда-сюда, необходини фильтрация по статистике).
По второму способу, при достаточном быстродействии контроллера, анализируются все переходы, но также нужна логика обработки и фильтрации, иначе будет завышенное число шагов.
У вас или относительно хороший энкодер, или удачный алгоритм, раз нет ошибок. У меня алгоритм предполагал наличие дребезга и при каждом шаге должен был давать результат, допустим вероятность 0,7 к 0,3 поворота по часовой стрелке (для идеального сигнала было бы 1 к 0), но не работает -((.

Сейчас пришла мысль, что это видимо связано с тем, что дребезг "несимметричен", лишние единицы могут появляться при отрыве контакта на дорожке, а лишние нули на непроводящем участке - нет. Этот перекос и сбивает программу фильтрации.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.04.2016, 09:20
Помогаю со студенческими работами здесь

Как правильно называется эта деталь?
Как правильно называется эта деталь?

Как называется деталь пушки у колеса? (ФОТО)
Как называется и какое предназначение у узла, расположенного с внутренней стороны колеса? Выглядит как цилиндр с острием.

Морока с БП, не могу узнать как называется деталь на плате
Друзья столкнулся с такой проблемоий! При запуске комп выдает сигнал(посмотрел в нете пишет БП или модули памяти) открыл БП почистил пыль,...

Как называется компонент
Подскажите как называется этот компонент и где его найти.

Как называется компонент
В builder'е в настройках Project - Options - Forms вываливается окно с настройкой, какие формы нужно автоматически создавать, а какие нет....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru