Как отследить движение движущейся двери

8

На работе мы измеряем различные параметры, чтобы протестировать недавно разработанный прототип печи. Чтобы сделать вещи более эффективными, я пытаюсь создать электронную установку для автоматизации измерения, в частности движения двери (от полностью открытого до полностью закрытого).

Цель состоит в том, чтобы измерить мгновенную скорость двери в различных точках ее движения, которая является фиксированной радиальной траекторией. Обратите внимание на акцент на мгновенной регистрации скорости, в отличие от средней скорости, определяемой только по времени.

Как я могу измерить скорость овердура / отследить его движение с разумной точностью? (Разумная подразумеваемая ошибка <1-2 см / с)

Поскольку это только фиксированное радиальное движение (и никакой компонент вдоль любой другой оси), и поскольку есть движущийся компонент и стационарный компонент, я предполагаю, что это должно быть более простой проблемой, чем, скажем, измерение скорости независимого тела, такого как человек или рука.

Моей первой мыслью был метод на основе акселерометра-гироскопа-IMU, то есть интеграция ускорения во времени для получения скорости, но чтение этого предмета предполагает, что это приведет к значительным ошибкам.

boardbite
источник
Почему вы не используете ультразвуковые устройства? И измерить время на размышление? Как и в ультразвуковых анемометрах en.wikipedia.org/wiki/Anemometer#Sonic_anemometer , в вашем случае ветер будет дверью.
Сигрлами
В какой части двери вы хотите измерить скорость, и что вы думаете о получении разных показаний скорости из разных участков двери (с разными радиусами)?
Энди ака
1
Возможно, можно использовать эффект Доплера. Отражать высокочастотный звук от движущейся поверхности и отслеживать эхо, возвращаемое для изменения частоты по сравнению с исходным звуком. Вы должны быть в состоянии сделать это с помощью микроконтроллера.
Джим Дирден
@Andyaka: Скорость центра масс двери. Хотя, поскольку дверь представляет собой твердое тело, измерения точки на краю двери также должно быть достаточно.
Boardbite

Ответы:

6

Одно из предложений состоит в том, чтобы иметь набор недорогих лазеров малой мощности, расположенных по дуге над верхней плоскостью вращения двери, направленной прямо вниз. Соответствующую дугу ПИН-фотодиодов или фототранзисторов непосредственно под нижней плоскостью вращения двери можно подключить к выводам GPIO микроконтроллера, чтобы последовательно обнаружить прерывание света каждого луча.

Я сделал грубую иллюстрацию расположения, используя угол обзора 5 градусов. При необходимости эта точность может быть снижена до 1 градуса на датчик.

Датчики скорости двери

Этого красного лазера точечного типа на 5 В 5 мВт будет достаточно ( около 1 доллара США на eBay, включая международную доставку ):

лазер

Для датчика можно использовать PIN-фотодиод, такой как OP906 ( 0,59 долл. США в единицах от Digikey ):

PIN-диод

В вашем коде микроконтроллера время для последовательных прерываний лазерного луча обеспечит точную мгновенную скорость вращения между любыми двумя точками, разделенными на 5 градусов, когда дверь открывается или закрывается.

Частота дискретизации АЦП, точность таймера и скорость обработки микроконтроллера определят достижимую точность данных.


Одним из полезных упрощений этой конструкции ( спасибо, @ jippie , за то, что заставили меня задуматься в этом направлении ), если точность не является сверхкритической, является использование одной лампы с узкой трубкой , такой как 8-ваттная люминесцентная лампа или лампа КЛЛ, над дверь, чтобы заменить лазеры. Детекторы света останутся такими, какие есть, свет для них будет прерван по порядку при закрытии двери.

Аниндо Гош
источник
1
Я просмотрел кучу ваших ответов, и они всегда хорошо проиллюстрированы (в дополнение к хорошим ответам!). Какое программное обеспечение вы используете для создания макета графики, как показано на рисунке выше?
настольный прикус
1
@boardbite Зависит от того, какое программное обеспечение я бы в настоящее время использовал для своей реальной работы: иногда это рисованная иллюстрация вручную в CorelDraw или PhotoShop, иногда чертеж в САПР в зависимости от того, какой инструмент CAD у данного клиента находится в их офисе, такой как этот сделано в Inventor.
Аниндо Гош
@Anindo: какое креативное решение! Кроме того, я мог бы расширить дискретное зондирование LET-DETECTED и LIGHT-INTERRUPTED, проводя аналоговое измерение интенсивности света. Если мой источник света является основным в среде настройки, то на основании изменения аналогового значения интенсивности света и некоторых эмпирических данных, хранящихся в виде справочной таблицы или в качестве подгоночной функции, я также мог бы вывести путь дверь постоянно, потому что я могу оценить ее положение, даже когда ее центр точно не выше одного из датчиков света / фотодиодов.
Boardbite
1
@Inga Спасибо. Вариант освещения с узкой трубкой пригоден для такого аналогового позиционного измерения, в то время как для сверхточного дискретного измерения лазерный вариант подходит лучше. Вы даже можете сделать оба сразу, расположив трубку чуть выше лазеров. Удачи вам в этом, и если возможно, поделитесь фотографией своей реализации.
Аниндо Гош
6

Я не полностью осознаю контекст этой двери духовки; но я хотел бы внести предложение.

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

Кроме того, если вы дифференцируете положение по времени (на практике вы можете просто разделить скорость изменения позиции, которую вы получаете, на скорость изменения во времени), вы получите угловую скорость. Затем вы можете рассчитать скорость движения двери.

введите описание изображения здесь

Из рисунка выше, угловая скорость будет немного омега. V - скорость движения конца двери. V, очевидно, полученная с угловой скоростью, умноженной на радиус.

Ник Уильямс
источник
1
Вы дифференцируетесь один раз, чтобы получить скорость, дифференцируетесь снова, чтобы получить ускорение, и дифференцируетесь в третий раз, чтобы получить рывок.
Коннор Вольф
@Nick: Это звучит как хороший, надежный (и достаточно удобный для вычислений) способ сделать это. Конфигурация в конечном итоге должна быть легко переносимой с одного устройства на другое. Следовательно, я не уверен, насколько портативен вышеупомянутый метод, учитывая, что точное измерение от потенциометра / поворотного датчика потребовало бы жесткого соединения с шарниром. Хм, возможно, это можно легко исправить с помощью метода проб и ошибок в стиле вложения.
настольный прикус
1
Это усложняет вещи; самое прагматичное решение (по крайней мере, я могу придумать), если вы хотите пройти путь потенциометра, состоит в том, чтобы построить два небольших кронштейна, один для крепления на двери и один для установки снаружи. Эти две скобки будут связаны вместе через шарнир. Затем горшок будет измерять угловую скорость этого шарнира. Практичность этой идеи зависит от того, знаете ли вы кого-то, кто хорош в металлообработке. Интересный проект, удачи!
Ник Уильямс
3

Я удивлен, что никто не упомянул использование струнного энкодера или струнного потенциометра. Это довольно простое и точное решение. В основном строка подключена к подпружиненному датчику, и датчик измеряет движение строки. Движущейся массы очень мало, и не требуется, чтобы вал датчика был коллинеарным с шарниром или какие-либо модификации шарнира, такие как зубчатая передача или ремни.

Линдон
источник
2

Если основное движение происходит по круговому пути, один гироскоп должен давать достаточную точность. Потребовалось бы немного математики, чтобы перейти от угловой скорости к скорости центра масс, но это однократный расчет.

В основном, если скорость ограничена угловой скоростью, гироскоп + математика может дать вам мгновенную скорость.

Проблема с подходами IMU и типа «мертвого вредителя» заключается в том, что в течение длительного времени вы получаете сложную ошибку скорости от интегрирования линейного ускорения. Это происходит потому, что, как правило, нет хорошего способа определения линейной скорости. Это становится намного хуже, когда вы пытаетесь определить положение, учесть смещения вращения линейной скорости и т. Д. И т. Д.

В зависимости от того, какой тип тестирования вы проводите, вы можете дополнить IMU датчиком, определяющим, когда дверь закрыта / находится в положении остановки, а затем использовать его для обнуления IMU. При таком подходе ИДУ должен быть достаточно точным только в течение времени, которое требуется, чтобы открыть / закрыть дверь (предположительно, всего за несколько секунд), что я считаю разумным.

CoderTao
источник