Как управлять двигателем постоянного тока с датчиком Холла, используя Arduino и драйвер двигателя?

Я использую двигатель постоянного тока с датчиком Холла. Я купил его в DX.

Я выполнил все подключения к драйверу двигателя и Arduino, и, полагаю, всё правильно. Я подключил контакты M1 и M2 двигателя к контактам драйвера двигателя, фазы A и B энкодера — к контактам 3 и 11 Arduino, а GND двигателя — к GND Arduino, а контакт 3,3 В двигателя — к контакту 3,3 В Arduino. Драйвер двигателя также подключён к Arduino.

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

, 👍1


1 ответ


1

Что означают контакты «m1» и «m2», о которых вы говорите?

На схеме по этой ссылке контакты «1-M1 motor -» и «6-M1 motor +» должны быть подключены к драйверу двигателя. Остальные четыре контакта должны быть подключены только к Arduino.

Вы, вероятно, можете проверить двигатель, отсоединив его и подключив контакты 1 и 6 к батарее напряжением 9–12 В или аналогичному источнику, чтобы увидеть, вращается ли он.

Кстати, полагаю, что два соединения фазы энкодера на Arduino будут настроены с помощью параметра PinMode "INPUT_PULLUP". Но, поскольку вы уже видите положения, эта часть может не иметь значения.

,

m1 и m2 — это контакты, которые вы упомянули во 2-м абзаце., @Shekhar

Я попробую сегодня подключить контакты двигателя к аккумулятору и посмотреть, будет ли он вращаться., @Shekhar

Он не работает, когда я подключаю первый и последний контакты двигателя к источнику питания. Но если я подключаю другой двигатель постоянного тока к тому же источнику питания, он работает., @Shekhar

К сожалению, похоже, с этим мотором что-то не так... Я бы взял мультиметр (если возможно) и измерил сопротивление на этих двух контактах. Если оно очень высокое (мегаомы) или очень низкое (менее 5-10 Ом), я бы сказал, что что-то не так. Можно также проследить дорожки на плате и измерить сопротивление на двух больших «пятнах» припоя, которые соединяются с мотором..., @Andy

Знаешь что... Я подключил эти два больших блока к 12-вольтовому источнику питания, и мотор заработал!!!! Но у меня возникла другая проблема... Один из моих моторов вращается быстрее другого. Когда я поднимаю своего робота над землёй, оба вращаются, но с разной скоростью. А если я держу их на земле, один вообще не вращается. Похоже, он не может выработать достаточный крутящий момент. Пожалуйста, помогите!, @Shekhar