Направление шагового двигателя через усилители потока

У меня проблема с направлением шагового двигателя.

Я хочу изменить направление вращения шагового двигателя, когда вал шагового двигателя застрял.

Например, когда я держу вал шагового двигателя рукой, направление должно измениться.

Как я могу это сделать? Кто-то сказал мне, что вы должны рассчитать ток, но я не знаю, как это сделать?

Мои материальные компоненты:

  • Ардуино
  • Шаговый мотор-редуктор 12 В
  • УЛН 2003A

, 👍0

Обсуждение

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

Я сейчас это обсуждаю, но я не знаю, как я могу это сделать, я понятия не имею, схема или код для этого, вы можете помочь мне больше? мне это нужно, @Rayan_DPROGMEL

в лицо, если вы видели, что кондиционер разделен на шаговый двигатель операционной системы, он вращается на 360 градусов, но когда вал застревает, изменение направления я хочу сделать это, @Rayan_DPROGMEL

Если у вас нет никаких знаний об электронике, я боюсь, что вы потерпите неудачу в этом проекте. Сначала вам нужно было узнать, что такое ток, как измеряется ток (через шунт или нагревая провод или что-то еще). Вы, возможно, должны вычислить среднее значение. Вы должны были научиться использовать правильный потенциал земли и так далее. И есть проблемы с током, который потребляет степпер перед каждым шагом, чтобы преодолеть инерцию ротора. Но если вам нужно изменить направление вращения только в определенном месте, вы можете использовать переключатель в этом месте. Это намного проще., @Peter Paul Kiefer

Я теперь об электрике .но теперь много .но у вас очень хорошая идея насчет переключения в этом месте но у меня нет места для него я не буду работать как кондиционер, @Rayan_DPROGMEL

Я ничего не знаю о конструкции вашего устройства. Но есть разные возможности самостоятельно собрать переключатель, который подойдет к вашему дизайну. Например, вы ощущаете крошечный светодиод или датчик Холла и магнит., @Peter Paul Kiefer


1 ответ


Лучший ответ:

1

Когда двигатели застревают, их потребляемый ток увеличивается, вы можете почувствовать это увеличение тока, а затем изменить направление вращения двигателя. Самый простой способ измерения тока - с помощью шунтирующего резистора, для измерения больших токов обычно используются датчики тока на основе датчиков Холла. Одним из примеров является ACS712.

Как определить ток с помощью шунта?

По сути, мы измеряем падение напряжения на резисторе (RS), но падение напряжения слишком мало для измерения Arduino, поэтому нам нужен операционный усилитель для «усиления» входного сигнала:

схема

Приведенная выше схема представляет собой простейший способ измерения падения напряжения на "НИЗКОЙ СТОРОНЕ", существуют методы измерения в дифференциальном режиме и "ВЫСОКАЯ СТОРОНА".

Усиление операционного усилителя можно установить с помощью резисторов по следующей формуле:

Vвых = (1 + R2/R1) * V1

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

I = В / Р

Простой код для расчета тока:

int rawAnalog;
float voltageDrop;
int resistor = 0.1;
float current;

void setup() {
  pinMode(A0, OUTPUT);
}

void loop() {
  rawAnalog = analogRead(A0); // Чтение ввода A0
  voltageDrop = (rawAnalog * 5) / 1024; // Преобразование необработанного значения в напряжение
  current = voltageDrop / resistor; // вычислить текущий
}

Дополнительный бонус: INA219 — это простой в использовании модуль I2C верхнего плеча, который может измерять как ток, так и напряжение.

,

Я хорошая идея. Можете дать схему для датчика Холла? Датчик Холла должен подключаться к uln 2003 или arduino pin для отправки отзыва, @Rayan_DPROGMEL

Это было бы хорошим решением, если бы он использовал «обычный» двигатель постоянного тока. Степпер имеет как минимум две группы катушек, каждая из которых имеет свой плюс и минус. И ток не постоянен при шагании. Еще сложнее, если степпер работает с микрошагами., @Peter Paul Kiefer

@PeterPaulKiefer, он может измерить общий ток в источнике питания, нет необходимости измерять группу катушек ..., @ElectronSurf

Да, это правильно. Вы можете измерить ток, необходимый контроллеру для питания двигателя. Но в зависимости от нагрузки бывают высокие пики. Контроллер IC может ограничивать этот ток, чтобы защитить себя. Если у @Rayan_skofw не было опыта в таких вещах, он легко разочаровывается. Поэтому я бы предложил ему использовать переключатели, чтобы проверить, является ли вращение определенной точкой, а затем инвертировать направление. Проблема не в измерении, ИМХО, вы не можете легко отличить нормальный запуск шагового двигателя от конечного состояния, если проверяете только ток., @Peter Paul Kiefer

@Rayan_skofw для ASC712: вы просто подключаете модуль последовательно, и для него есть [Библиотека](https://github.com/muratdemirtas/ACS712-arduino-1). (откройте ссылку, там есть учебник по подключению и использованию ASC712)., @ElectronSurf

Спасибо всем вам, ребята. Я хочу сделать это сейчас, что я узнаю здесь, @Rayan_DPROGMEL

@Rayan_skofw Пожалуйста, если ответ был полезен, нажмите на серую галочку рядом с ответом, чтобы выбрать его как правильный ответ., @ElectronSurf

Какое падение напряжения может вызвать такая шунтирующая цепь? Вы указали резистор на 100 МОм, так что это не должно быть так уж плохо. Однако вам понадобится довольно мощный резистор., @Duncan C

Не могли бы вы подключить все катушки двигателя к датчику тока через сильноточные диоды и просто искать пиковый ток выше некоторого порога?, @Duncan C