Дом > Обзор отрасли >Мотор-редуктор
ТЕХНИЧЕСКАЯ ПОДДЕРЖКА

ШИМ-управление принципом угла поворота рулевого механизма. Соответствующая зависимость между шириной импульса и углом.

Опубликовано 2026-03-03

Не понимаю связи между ШИМ исервоприводугол? Увидевсервоприводне поворачиваясь или поворачиваясь беспорядочно, я чувствовал тревогу. Не волнуйтесь, сегодня мы разберем его и подробно объясним, чтобы вы не только знали, как его настроить, но и поняли лежащие в его основе принципы.

Почему он не двигается, когда я подаю сигналсервопривод?

Many friends have encountered this situation when they played with servos for the first time: after the wires are connected and the program is burned in, the servos just won’t move. Обычно это происходит потому, что вы не понимаете, что такое ШИМ-сигнал. Проще говоря, в рулевом механизме есть небольшой моторчик и набор цепей управления. Он не смотрит ни напряжение, ни ток, а распознает только специальный импульсный сигнал, которым является ШИМ.

Этот сигнал подобен строгому командиру, посылающему команду на рулевой механизм каждые 20 миллисекунд (то есть с частотой 50 Гц). Ширина этой команды, то есть продолжительность высокого уровня, напрямую определяет, насколько сильно будет вращаться сервопривод. Ваш сигнал имеет неправильную частоту или неправильную ширину импульса. Сервопривод не может этого понять и, естественно, проигнорирует вас.

Какая связь между шириной импульса и углом?

Нам необходимо четко прояснить эти основные взаимоотношения. Длительность импульса стандартного сигнала сервоуправления обычно составляет от 0,5 до 2,5 миллисекунды. Вы можете думать об этом как о шкале времени. Когда высокий уровень сохраняется в течение 1,5 миллисекунд, выходной вал сервопривода остановится в среднем положении, то есть под углом 90 градусов.

Если время высокого уровня сократить до 0,5 миллисекунды, сервопривод повернется в крайнее левое положение, обычно на 0 градусов. Напротив, если его продлить до 2,5 миллисекунд, он повернет крайне вправо, то есть на 180 градусов. Таким образом, управление углом поворота рулевого механизма по существу заключается в точном контроле продолжительности этого высокого уровня, который мы часто называем «рабочим циклом».

Как точно рассчитать необходимый рабочий цикл

Поняв взаимосвязь между шириной импульса и углом, нам нужно выяснить, как получить это точное время. Мы используем сигнал частотой 50 Гц с периодом 20 миллисекунд. Чтобы получить высокий уровень в 1,5 миллисекунды, рабочий цикл нужно разделить 1,5 на 20, что соответствует 7,5%. Аналогично, 0,5 миллисекунды соответствуют рабочему циклу 2,5%, а 2,5 миллисекунды соответствуют рабочему циклу 12,5%.

Этот расчет имеет решающее значение при программировании. Например, если вы его используете, его функция выводит значение от 0 до 255, что соответствует рабочему циклу от 0% до 100%. Вам необходимо преобразовать 7,5% в соответствующее значение, которое составляет около 19. Если расчет неточен, сервопривод не сможет повернуть в нужное вам точное положение.

Как мне написать это в коде, чтобы оно работало?

Теперь, когда теория ясна, давайте начнем ее записывать. Если взять в качестве примера наиболее распространенный вариант, то его невозможно использовать отдельно, поскольку его частота по умолчанию не равна 50 Гц. Нам нужно использовать библиотеку Servo.h, которая поможет нам справиться со всеми сложными вычислениями ШИМ. Вам нужно всего лишь написать .(9), подключить сигнальную линию к контакту 9, а затем написать .write(90), и сервопривод повернется на 90 градусов.

Если вы используете другие платы разработки, например STM32, принцип тот же. Главное — найти функцию, которая контролирует частоту ШИМ и ширину импульса. Основная идея такова: настроить таймер, установить частоту ШИМ на 50 Гц, а затем изменить значение регистра сравнения, чтобы отрегулировать ширину импульса для управления углом.

Почему сервопривод иногда вибрирует?

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

Другая причина – помехи сигнала. Если ваши линии управления и линии привода двигателя перепутаны или сам сигнал ШИМ недостаточно стабилен, это также может вызвать дрожание. Проверьте проводку, постарайтесь держать сигнальные линии подальше от сильноточных линий и убедитесь в коде, что прерывание таймера, генерируемое сигналом ШИМ, не часто прерывается другими программами.

Как использовать сервопривод, угол которого превышает 180 градусов

Если вы чувствуете, что стандартного сервопривода с поворотом на 180 градусов недостаточно и хотите сыграть что-нибудь покруче, то вам стоит присмотреться к сервоприводу с непрерывным вращением на 360 градусов или использовать бесщеточный мотор с ESC. Although their control principle is still PWM, the logic is different. Для сервопривода, вращающегося на 360 градусов, ширина импульса 1,5 мс останавливает его. Если оно меньше 1,5 мс, он будет поворачиваться в одном направлении. Если оно больше 1,5 мс, оно повернет в противоположном направлении. Чем больше отклоняется ширина импульса, тем быстрее он будет вращаться.

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

Надеюсь, то, о чем я говорил сегодня, поможет вам досконально понять ШИМ и сервоуправление. С какими еще странными проблемами вы сталкивались при регулировке рулевого механизма? Например, сталкивались ли вы когда-нибудь с ситуацией, когда сервопривод вращается или сильно нагревается? Добро пожаловать, поделитесь этим в комментариях, давайте обсудим и решим эту проблему вместе! Если статья окажется для вас полезной, не забудьте поставить ей лайк и поделиться ею с друзьями, которые тоже играют.

Время обновления: 3 марта 2026 г.

Энергия будущего

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

Написать письмо в Kpower
Отправить запрос
+86 0769 8399 3238
 
kpowerMap