-
- Простите, это у меня профессиональная оговорка. :) - Ксения(21.01.2019 23:02)
- Если бы вы ещё рассказали как с дребезгом бороться в прерываниях. - m16_home(21.01.2019 22:38)
- Выделяется одна линия внешнего прерывания, которая соединяется, для примера, с портом А1. При первом срабатывании линии энкодера запускается таймер антидребезга, по истечении которого на А1 выдается импульс, вызывающий искусственное срабатывание H7H2V(100 знак., 21.01.2019 22:59)
- Но аппаратный квадратурный энкодер справляется же с дребезгом. У него (на примере Х-Меги) фильтр задается от 1 до 8. У меня он на 2-ке идеально работает. А вот что делать со "странным" энкодером пока не придумала. Понимаю, что на прерываниях и Ксения(78 знак., 21.01.2019 23:10)
- Контроллер кнопки -> - H7H2V(22.01.2019 08:05, ссылка)
- А бывает ли такой же, но чтобы сразу на несколько кнопок? - Ксения(22.01.2019 14:58)
- например MAX7370 - m16_home(22.01.2019 15:20, ссылка)
- А бывает ли такой же, но чтобы сразу на несколько кнопок? - Ксения(22.01.2019 14:58)
- В обработчике прерывания сразу делаешь ++ или --, ждешь размыкания, и онумер(115 знак., 22.01.2019 00:15)
- а зачем тебе восемь таймеров? крути один таймер бесконечно, по прерыванию делай "фотку" таймера и далее уже обрабатывай как надо. лишьбы прерываний хватило и скорострельности мк. - LordN(21.01.2019 23:23)
- Пульт управления не мой - от фабричного прибора, а мне надо так к нему подстроиться, чтобы он оставался в своем качестве. Ну и рукоятки на другие менять не хочется. По мне так легче странные энкодеры поддержать, чем напильником всё это хозяйство Ксения(8 знак., 21.01.2019 23:37)
- Рукоятки за что отвечают, если не секрет? - evgeniy1294(21.01.2019 23:44)
- Вы не поймете :) - Ксения(21.01.2019 23:46)
- Ладно, спрошу по другому. Импульсы от энкодеров нужно считать точно или определять частоту и направление вращения? - evgeniy1294(21.01.2019 23:48)
- Каждый импульс энкодера перемещает шаговый двигатель на один шаг, а тот через редуктор двигает микроинструмент (типа внутриклеточная хирургия). За ситуацией наблюдают в микроскоп, а эти ручки крутят вручную. Пропуск шага - нестрашно, но дрожать Ксения(283 знак., 21.01.2019 23:56 - 22.01.2019 00:02)
- Это какой-то позор. Внутриклеточная хирургия и кетайский механический энкодер с ресурсом 10000 щелчков. При попытке поставить оптический энкодер задушила жаба :-) - SciFi(22.01.2019 12:15)
- Это не позор, это бизнес. Сколько можно заработать на замене энкодеров-то! - lloyd(22.01.2019 16:46)
- Забудьте про энкодеры, у вас две кнопки, одна вверх, другая вниз (условно). Работайте с ними как с кнопками. - AlexBi_(22.01.2019 09:18, )
- Это неудобно, когда требуется инструмент отодвинуть - быстро вывести из операционной области. Тогда оператор быстро крутанёт рукоятку сразу на несколько оборотов, вместо того, чтобы нажимать на кнопку 100 раз. Чтобы вам легче было понять задачу, Ксения(269 знак., 22.01.2019 14:46)
- речь про то, что этот энкодер, фактически, ведет себя как две кнопки и обработка сигналов может быть такой, как была бы для кнопок - AlexG(22.01.2019 15:59)
- Механический энкодер (во всяком случае, такой) не сможет отличить "крутанёт рукоятку" от обычного дребезга. Вернее, сможет при некоторой сноровке программизда, но число импульсов нормально посчитать точно невозможно. Повторяйте за мной: SciFi(22 знак., 22.01.2019 15:07)
- Почему невозможно? Опрашиваем энкодер 1000раз в секунду, ничего не пропускает даже если крутить со всей дури. Дребезг устраняется путем отбрасывания неправильных состояний, ну и фильтром цифровым на пару отсчетов. Удобно еще приращение величины на Yurasvs(288 знак., 22.01.2019 15:18)
- Частый опрос вполне заменим на прерывание от изменения уровня. Даже на целый порт бывает такое прерывания с маской на нужные биты. Т.е. на мой взгляд, так и следует действовать - ловить изменения состояния контактов через прерывание. Но вот что Ксения(233 знак., 22.01.2019 15:37)
- У вас не аварийный концевик, реалтайм вам не сдался тут. lloyd(85 знак., 22.01.2019 16:48)
- Вы, когда клавиатуру сканируете, тоже заводите дребезг на прерывание? - mse homjak(22.01.2019 15:39)
- Вы читали корень ветки про "странный" энкодер? - SciFi(22.01.2019 15:24)
- Частый опрос вполне заменим на прерывание от изменения уровня. Даже на целый порт бывает такое прерывания с маской на нужные биты. Т.е. на мой взгляд, так и следует действовать - ловить изменения состояния контактов через прерывание. Но вот что Ксения(233 знак., 22.01.2019 15:37)
- Почему невозможно? Опрашиваем энкодер 1000раз в секунду, ничего не пропускает даже если крутить со всей дури. Дребезг устраняется путем отбрасывания неправильных состояний, ну и фильтром цифровым на пару отсчетов. Удобно еще приращение величины на Yurasvs(288 знак., 22.01.2019 15:18)
- +100. 8 энкодеров - 16 кнопок, заводим их на 2 порта. maik-vs(213 знак., 22.01.2019 12:05)
- Я тоже самое предлагал, можно оставить один энкодер для задания скорости. Но тут, видимо, специфика работы не позволяет. - evgeniy1294(22.01.2019 10:41)
- Это неудобно, когда требуется инструмент отодвинуть - быстро вывести из операционной области. Тогда оператор быстро крутанёт рукоятку сразу на несколько оборотов, вместо того, чтобы нажимать на кнопку 100 раз. Чтобы вам легче было понять задачу, Ксения(269 знак., 22.01.2019 14:46)
- Если скорости вращения неатомные, то поступайте, как с подавлением дребезга клавиатуры. Если к порту подключены ноги энкодеров, просто вычитывайте состояние порта через милисекунду или скока вам понравится. если N выборок одинаковы, значит, mse homjak(59 знак., 22.01.2019 00:40)
- Ну вот, а вы говорили непонятно, я думал там токамак. Я бы вообще убрал энкодеры и заменил их генератором ШИМа. Вы сможете программно задавать шаг с точностью до импульса исключая любой дребезг. В stm-ку спокойно 8 влезет, даже код предоставить evgeniy1294(349 знак., 22.01.2019 00:03 - 00:11)
- Это какой-то позор. Внутриклеточная хирургия и кетайский механический энкодер с ресурсом 10000 щелчков. При попытке поставить оптический энкодер задушила жаба :-) - SciFi(22.01.2019 12:15)
- Каждый импульс энкодера перемещает шаговый двигатель на один шаг, а тот через редуктор двигает микроинструмент (типа внутриклеточная хирургия). За ситуацией наблюдают в микроскоп, а эти ручки крутят вручную. Пропуск шага - нестрашно, но дрожать Ксения(283 знак., 21.01.2019 23:56 - 22.01.2019 00:02)
- Ладно, спрошу по другому. Импульсы от энкодеров нужно считать точно или определять частоту и направление вращения? - evgeniy1294(21.01.2019 23:48)
- Вы не поймете :) - Ксения(21.01.2019 23:46)
- Рукоятки за что отвечают, если не секрет? - evgeniy1294(21.01.2019 23:44)
- Пульт управления не мой - от фабричного прибора, а мне надо так к нему подстроиться, чтобы он оставался в своем качестве. Ну и рукоятки на другие менять не хочется. По мне так легче странные энкодеры поддержать, чем напильником всё это хозяйство Ксения(8 знак., 21.01.2019 23:37)
- Контроллер кнопки -> - H7H2V(22.01.2019 08:05, ссылка)
- у Ксении задачка обслужить восемь энкодеров - m16_home(21.01.2019 23:04)
- Восемь этим способом тоже можно - говорят, что у STM32 аж 14 таймеров. Но я и говорю, что муторно. - Ксения(21.01.2019 23:13)
- Не все из них имеют входы. Они вообще не одинаковые. - evgeniy1294(21.01.2019 23:37)
- Восемь этим способом тоже можно - говорят, что у STM32 аж 14 таймеров. Но я и говорю, что муторно. - Ксения(21.01.2019 23:13)
- Но аппаратный квадратурный энкодер справляется же с дребезгом. У него (на примере Х-Меги) фильтр задается от 1 до 8. У меня он на 2-ке идеально работает. А вот что делать со "странным" энкодером пока не придумала. Понимаю, что на прерываниях и Ксения(78 знак., 21.01.2019 23:10)
- тиком и дидтаймом, но для этого скорострельность прерывания д.б. на пару порядкоа выше максимальной частоты энкодера. - LordN(21.01.2019 22:56)
- Выделяется одна линия внешнего прерывания, которая соединяется, для примера, с портом А1. При первом срабатывании линии энкодера запускается таймер антидребезга, по истечении которого на А1 выдается импульс, вызывающий искусственное срабатывание H7H2V(100 знак., 21.01.2019 22:59)