Допустим, датчик сработал. Начали отъезд, скажем по G1 или G0. Датчик "вздребезнулся" и выдал во время отъезда ложный импульс срабатывания. Система ЧПУ неожиданные срабатывания датчика во время любого движения, (кроме измерительного) интерпретирует как аварийную ситуацию и останавливает станок.
Моя версия прибора Auto Zero CNC. Подробности
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2858
- Откуда: Тюмень
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
Чудес не бывает. Бывают фокусы.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
с этого момента на датчик обращать внимания не надо, до тех пор пока не доедем до нужного места. антидребезг в клавиатуре понятно зачем - опрос быстрый и может высыпать серию нажатий и отжатий.Сергей Саныч писал(а): ↑ Допустим, датчик сработал.
в игноре:
Афтаев
Афтаев
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2858
- Откуда: Тюмень
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
И кто будет "не обращать внимания"? LinuxCNC, к примеру, сработку датчика во время рабочего или холостого движения воспринимает как аварийную ситуацию (и правильно делает). Можно, конечно, временно логически отключать датчик, но, как правило, это оказывается сложнее, чем программно организовать антидребезг.
Чудес не бывает. Бывают фокусы.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
если программно организовывать антидребезг датчика постоянно его опрашивая - то это плохо - помеху софтом не фильтруют согласно Котельникову. сначала надо тогда уж отфильтровать все частоты выше частоты опроса. а это значит реальный фильтр хоть RC.. а он свою внесет погрешность и задержку.. а если запускать опрос-антидребезг начиная от первого срабатывания - то это все равно внесет погрешность потому как это случайный процесс и время успокоения до "надежного разрыва" будет неопределено.Сергей Саныч писал(а): ↑ Можно, конечно, временно логически отключать датчик, но, как правило, это оказывается сложнее, чем программно организовать антидребезг.
Тут если программно никак нельзя игнорировать сигнал после первого срабатывания- нужен тогда уж одновибратор расширяющий первичное срабатывание до перекрытия времени возможного дребезга или сколько там времени отъезжает шпиндель после касания.
Толку от триггера Шмидта? - он только делает дребезг более четким.
Емкость мелкая на входе нужна конечно - но чисто от ВЧ помех.
ну а в чем противоречие? обнаружил обрыв - авария.. Что кстати за ситуации бывают? Вопрос непраздный так как являюсь подопытным кроликом в одном проекте.. когда шпиндель на полном ходу въехал в датчик? ну датчику все равно хана. тут надо сейсмодатчик ставить)) или случайные срабатывания от помех? - ну так это должно по-другому решаться - входным фильтром, а программным антидребезгом помехи давить точно моветон.Сергей Саныч писал(а): ↑ LinuxCNC, к примеру, сработку датчика во время рабочего или холостого движения воспринимает как аварийную ситуацию (и правильно делает).
в игноре:
Афтаев
Афтаев
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
Прям моветон. Так делают впрочем и далеко ходить не надо за примерами.
это очень просто: вот идет помеха-иголка=логическая "1" с частотой 1мс длительностью 1мкс. И вы синхронно считываете эту помеху если у вас период опроса тоже 1мс и вы неудачно попали "в фазу" - и спокойно себе думаете что у вас на входе стабильная 1, когда там 0.
Так понятно? Это как раз про Котельникова или Найквиста - кому что ближе.
То есть частота появления помехи должна быть сильно ниже частоты опроса чтобы можно было надеяться на программную фильтрацию. Чтоб было так - нужно это сначала железным способом сигнал отфильтровать.
Программно давят дребезг контактов потому что он прекращается - нужно просто выждать время. К тому же опрос клавиш часто достаточно быстрый и дребезг может еще не прекратится и на выход пойдет серия отжатий/нажатий. Это совсем другая история.
это очень просто: вот идет помеха-иголка=логическая "1" с частотой 1мс длительностью 1мкс. И вы синхронно считываете эту помеху если у вас период опроса тоже 1мс и вы неудачно попали "в фазу" - и спокойно себе думаете что у вас на входе стабильная 1, когда там 0.
Так понятно? Это как раз про Котельникова или Найквиста - кому что ближе.
То есть частота появления помехи должна быть сильно ниже частоты опроса чтобы можно было надеяться на программную фильтрацию. Чтоб было так - нужно это сначала железным способом сигнал отфильтровать.
Программно давят дребезг контактов потому что он прекращается - нужно просто выждать время. К тому же опрос клавиш часто достаточно быстрый и дребезг может еще не прекратится и на выход пойдет серия отжатий/нажатий. Это совсем другая история.
в игноре:
Афтаев
Афтаев
-
- Мастер
- Сообщения: 1857
- Зарегистрирован: 28 авг 2018, 17:13
- Репутация: 314
- Настоящее имя: Алексей
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
для этого считывают 8-16-100 раз и проверяют. благо даже сторублевые стм-ки это позволяют делать на мегагерцах. не вижу никакой проблемы здесь.
считывать с частотой 1мс это ещё постараться придётся - специально задержек понаставить.
в чём принципиальное отличие срабатывания датчика касания от нажатия кнопки? да нет никакого отличия.
Теорема Котельникова как раз и говорит о том, что если частота достаточная, то аналоговый сигнал можно представить в цифровом виде. Вы её почему-то только в одну сторону понимаете.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
Физически нет, а по поведению есть. Например ваша клавиатура не знает сколько времени вы будете держать кнопку нажатой или может нажмете ее 5 раз подряд. А в случае датчика высоты когда едем на датчик ждем размыкания, едем обратно - и так знаем что там замкнет, пока мы отъедем. Отъехав - тоже нет смысла дебаунсить - для этого тупо нет никаких оснований. один раз прочитали - должно быть замыкание и едем в другою точку или олбратно. Нет - авария. Если вы хотите отстроится от помех таким образом - другое дело. Так делают. Но это неправильно.
ну вот у вас на входе белый шум . считали вы 16 раз 1 - и что - там единица? возможно такое? возможно конечно.
ваша клавиатура читает одну клавишу значительно реже, ну допустим 10мс. ну и дребезг пусть 5мс
а если бы читала раз в 1мкс? поставили бы туда "стм-ку сторублевую" что - копить 5000 значений и сверять пока все они не станут 1? Толку то ноль.
Клавиатура этого не делает, потому как разрабатывали ее люди грамотные.
в игноре:
Афтаев
Афтаев
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
то что вам теперь все понятно это хорошо - уже не зря значит поднял тему
в игноре:
Афтаев
Афтаев
- xvovanx
- Мастер
- Сообщения: 3702
- Зарегистрирован: 25 фев 2016, 12:27
- Репутация: 903
- Настоящее имя: Владимир
- Откуда: Latvia
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
+100500
Подтянутый вход очень хорошо фильтруется от всякого шума через кондеры питания/емкость батареи.
И Котельников тут не при чем - у нас совсем другая ситуация - не аналоговый радиосигнал в шумах, а цифра по проводам.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
xnj pf wbahf&&
Подтянутый вход это не фильтр - это в некотором роде входное сопротивление. Чем меньше сопротивление - тем меньше будет на нем помеха.
А к аналоговому сигналу но не радио, а в проводах Котельников не относится что ли?
в игноре:
Афтаев
Афтаев
- xvovanx
- Мастер
- Сообщения: 3702
- Зарегистрирован: 25 фев 2016, 12:27
- Репутация: 903
- Настоящее имя: Владимир
- Откуда: Latvia
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
Что ни наесть самый настоящий RC фильтр. ВЧ помеха идет через резистор подтяжки и кондер БП на корпус и именно поэтому
.
у нас цифра, а не аналог. Дребезг цифры и аналог с шумах - разные вещи.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
нет - фильтром резистор назвать нельзя. Про то что для помехи "кондер" = кз , если он подходящий и стоит в годном месте я в курсе. но это не то место
я где-то говорил что дребезг - это шум? Как раз наоборот.
Я спросил "зачем бороться с дребезгом в этом конкретном случае когда этим только ухудшаются параметры?"
А если помехи в этой зоне таковы что возможны ложные срабатывания - то эти помехи нужно давить аппаратно. А чтобы давить помеху программно нужно опрашивать чаще чем длительность помехи..
в игноре:
Афтаев
Афтаев
- xvovanx
- Мастер
- Сообщения: 3702
- Зарегистрирован: 25 фев 2016, 12:27
- Репутация: 903
- Настоящее имя: Владимир
- Откуда: Latvia
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
Я про эту RC цепь (R подтяжки и C блока питания)
Может все таки наоборот - делать выборки замеров реже. Если мы сделаем 10 замеров во время помехи, то ничего путного не получим.
Последний раз редактировалось xvovanx 15 дек 2020, 22:15, всего редактировалось 1 раз.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
да я понял понял.. это не фильтр.
в игноре:
Афтаев
Афтаев
- xvovanx
- Мастер
- Сообщения: 3702
- Зарегистрирован: 25 фев 2016, 12:27
- Репутация: 903
- Настоящее имя: Владимир
- Откуда: Latvia
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
А что это по вашему? Разве не последовательный RC фильтр? Если мы условно сделаем подтяжку равной нулю (посадим на плюс питания), то сигнальных помех не будет вообще, т.к они зашунтируются емкостью БП. Поэтому при помехах и пытаются R подтяжки уменьшать в разумных пределах.
-
- Мастер
- Сообщения: 1222
- Зарегистрирован: 22 окт 2017, 22:17
- Репутация: 28
- Настоящее имя: Вадим
- Откуда: Москва
Re: Моя версия прибора Auto Zero CNC. Подробности
резистор - это шунт. емкость тут вообще не при чем если она хорошая и правильно установлена.
так эта линия становится подверженной помехам когда контакт разомкнулся - она и так была на земле. а когда разомкнулся - можно ехать от объекта не обращая внимание на сигнал - он неинтересен - есть там помехи или нет.. отъехали - проверили на всяк случай - должен быть кз.. это если датчик не завис. но зависание датчика ни к помехам ни к дребезгу не отнесешь.
в игноре:
Афтаев
Афтаев
-
- Мастер
- Сообщения: 937
- Зарегистрирован: 04 янв 2019, 15:19
- Репутация: 146
- Настоящее имя: Calabr
- Откуда: Киев
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
Тоже поддержу мнение @VAT
От клавиши не ожидается минимальная задержка срабатывания, а вот у датчика отнее на прямую зависит погрешность.
Нам интересен момент не когда дребезг окончился, а когда он начался.
Имеет смысл фильтровать помехи с частотой на порядок выше частоты опроса в софте, а потом поставить одновибратор, расширяющий импульс на 2 - 3 интнрвала опроса.
Тогда при касании максимально быстрый отклик, при отъезде назад отклик с небольшой задержкой, что даже хорошо - надежней выход из контакта с поверхностью.
П. С. При программном подавлении дребезга в софте, а не в датчике можно фиксировать координаты начала дребезга, потом его давить (ждать) и по окончании если устаканился, то выдавать эти координаты, а если нет, то ошибку.
От клавиши не ожидается минимальная задержка срабатывания, а вот у датчика отнее на прямую зависит погрешность.
Нам интересен момент не когда дребезг окончился, а когда он начался.
Имеет смысл фильтровать помехи с частотой на порядок выше частоты опроса в софте, а потом поставить одновибратор, расширяющий импульс на 2 - 3 интнрвала опроса.
Тогда при касании максимально быстрый отклик, при отъезде назад отклик с небольшой задержкой, что даже хорошо - надежней выход из контакта с поверхностью.
П. С. При программном подавлении дребезга в софте, а не в датчике можно фиксировать координаты начала дребезга, потом его давить (ждать) и по окончании если устаканился, то выдавать эти координаты, а если нет, то ошибку.
- xvovanx
- Мастер
- Сообщения: 3702
- Зарегистрирован: 25 фев 2016, 12:27
- Репутация: 903
- Настоящее имя: Владимир
- Откуда: Latvia
- Контактная информация:
Re: Моя версия прибора Auto Zero CNC. Подробности
В своем большинстве в софте уже предусмотрено программное подавлении дребезга на входах, в датчике остается только создать крутой фронт перехода триггером Шмидта/компаратором/прерывание по первому фронту. В самописанных макросах сканирования тоже проще программно добавить строчку паузы после опроса, чем в датчике размещать формирователь импульса.