Двигатель с синусоидальным движением

Мне нужно запустить двигатель, чтобы получить гармоническое движение с заданной амплитудой и частотой (гармоническое движение означает, что угловое положение двигателя является синусоидальной функцией времени). Я хочу сделать определенное количество синусоидальных колебаний. Я не знаю, как сказать двигателю, что я хочу, чтобы скорость была синусоидальной функцией времени. Есть идеи? Кроме того, я все еще начинаю проект? Следовательно, я довольно гибко выбираю любые двигатели (постоянный ток, сервопривод, шаговый двигатель, бесколлекторный двигатель) или любой контроллер, но система должна быть точной. Если вы, ребята, знаете, какие контроллеры позволяют такое движение, пожалуйста, дайте мне знать! Спасибо :)

ИЗМЕНИТЬ: так что я пытаюсь сделать реометр, который измеряет реологические свойства материала. В принципе, доступны два метода измерения: ротационные тесты и колебательные тесты. При вращении измерительный боб поворачивается в одном направлении. При колебательном тесте измерительный груз "колеблется" вокруг оси.

На что я обращаю внимание при тестировании колебаний с установленными синусоидальными колебаниями. Основной принцип колебательного реометра состоит в том, чтобы вызвать синусоидальную деформацию сдвига в образце и измерить результирующую реакцию на напряжение; измеряемый масштаб времени определяется частотой колебаний ω деформации сдвига. В типичном эксперименте образец помещается между двумя пластинами, как показано на изображении ниже. В то время как верхняя пластина остается неподвижной, двигатель вращает нижнюю пластину, создавая тем самым зависящую от времени деформацию γ(t)=γ ·sin(ωt ) на образце. Одновременно с этим количественно определяется зависящее от времени напряжение σ (t) путем измерения крутящего момента, который образец оказывает на верхнюю пластину.

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

, 👍1

Обсуждение

что значит "точный"?, @jsotola

непонятно, как вы хотите, чтобы мотор вел себя.... нарисуйте пожалуйста схему, поясняющую, о чем вы спрашиваете... если можно, опишите проект, @jsotola

Для меня это звучит как степпер с большим количеством микрошагов (TMC с интерполяцией)., @towe

Сервопривод может быть самым простым вариантом, при условии, что вы можете справиться с его ограниченной точностью (также известной как «мертвая зона»)., @Edgar Bonet

Двигатель с постоянной скоростью производит точное синусоидальное движение, если смотреть на него сбоку :), @DataFiddler

См. https://en.m.wikipedia.org/wiki/Scotch_yoke, @Razvan Socol


1 ответ


1

Наилучшим вариантом будет:

  • Чтобы иметь двигатель постоянного тока с редуктором, чтобы он вращался на более низких скоростях (скажем, 300 об/мин), и иметь энкодер для подсчета шагов. Либо поставьте энкодер перед полем редукции (здесь можно использовать энкодер с низким разрешением, например, 16 позиций), либо после редукции (здесь вам нужно более точное, например, те самые 1024 позиции).

  • Чтобы иметь шаговый двигатель, который обеспечит хороший контроль угла, если он не пропускает шаги (если крутящий момент слишком велик, он остановит свое движение, и вы потеряете счет угла, который вы уже перемещены).

Теперь, чтобы заставить двигатель двигаться таким образом, чтобы его угловое положение имело форму theta(t) = A*sin(ωt), вам нужно написать некоторый код, который перемещает двигатель в каждое желаемое положение. И сложность этого будет во многом зависеть от требуемой амплитуды (A) и угловой скорости (ω).

Наблюдения: не стесняйтесь изменять/добавлять информацию здесь

,