|
|
  |
Драйвер шагового двигателя на BTS7960B |
|
|
|
Nov 26 2014, 13:28
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 9-05-13
Из: Львов, Украина
Пользователь №: 76 782

|
Собрал драйвер биполярного шагового двигателя на четырёх BTS7960B по даташиту. Управляю сием безобразием с помощю микроконтроллера. Возникли проблемы с температурным режимом микросхем и измерением тока. Если я заставляю двигатель постоянно вращаться, то они нагреваются где то до 45 градусов и держат такую температуру, а если например я сделал шаг и жду около 30 секунд, то микрухи безбожно греются и через пару минут уходят в защиту от перегрева. Второй баг это показания тока, оно если движок на удержании почему то растёт. Может кто имел дело с сием чудом? Возможно я не правильно организовал алгоритм управления. PS: частота ШИМ у меня 20кГц, а ток на моторе 3А. Я при включении питания наращиваю ШИМ пока не получу ток 3А (меряю напругу на ноге IS), запоминаю показания ШИМа и в дальнейшем их использую. Схема прилогается. Ещё вопрос - до какой скорости я могу разогнать двигатель 23HS2430?
Сообщение отредактировал glags - Nov 26 2014, 13:32
Эскизы прикрепленных изображений
|
|
|
|
|
Nov 27 2014, 09:26
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 9-05-13
Из: Львов, Украина
Пользователь №: 76 782

|
Цитата(Tanya @ Nov 26 2014, 16:07)  Нормальный алгоритм, как мне кажется... должен быть другой. Обычно такой - включаем напряжение - смотрим ток. Как только ток достигнет желаемого, выключаем напряжение (коротим мостом или отдаем ток назад в питание - рекуперация) на некоторое фиксированное время. Потом опять... При движении и при стоянии разная противоэдс и, сответственно, разный ток будет при Вашем способе управления. Спасибо за ответ, но у меня управляется аппаратным ШИМом и по этому я не могу отслеживать когда пришёл импульс и коротить мостом по достижении нужного тока. И кроме того для компенсации обратной ЭДС внутри микрухи стоят быстродействующие диоды. Ваша теория применима если б я не использовал готовые микросхемы драйверов, а сделал свой мост на полевиках и не использовал аппаратный ШИМ. Фактически я ШИМом меняю ток. Пробовал я отслеживать ток на обоих обмотках и в онлайн с помощью ШИМ поддерживать его на уровне 3А. Фигня получилась - движок крутится и переодически дёргается в обратном направлении. Получился какой то дисбаланс. А когда я в начале запуска драйвера определил какой ШИМ нужен для 3А и постоянно его поддерживаю, то двигатель крутится нормально. Но в паузах сильно греется. Я пробовал давать ему половину тока в режиме удержания. Но это не спасло ситуацию.
|
|
|
|
|
Nov 27 2014, 11:52
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 9-05-13
Из: Львов, Украина
Пользователь №: 76 782

|
Цитата(Tanya @ Nov 27 2014, 13:47)  Вы не поняли. Ток, который, как Вы думаете, что поддерживаете, попробуйте измерить в режиме стояния. Просто тестером. Теория не моя - посмотрите алгоритм работы интегральных драйверов ШД. А разве обычным тестером можно нормально померять ток на частоте 20кГц? При начальном тесте - алгоритм следующий Выставляб ШИМ 1% и через 30мсек меряю ток, если он не достиг 3А то увеличиваю ШИМ и через 30 мсек опять меряю ток и так в цикле. В начальном тесте я получаю значение ШИМа которое соответствует току 3А и в дальнейшем его использую для управления мотором. Так вот я попробовал померить ток тестором(М890G) в разрыв мотора и при удержании увидел ток 5А, а в рабочем цикле (когда движок крутится) 20-30мА. По моему это фигня какая - то. PS: Вы советуете ток контролировать и подгонять в режиме удержания?
Сообщение отредактировал glags - Nov 27 2014, 12:10
|
|
|
|
|
Nov 27 2014, 12:19
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(glags @ Nov 27 2014, 14:52)  А разве обычным тестером можно нормально померять ток на частоте 20кГц? Почему бы и нет? Даже старым - стрелочным... Цитата(glags @ Nov 27 2014, 14:52)  PS: Вы советуете ток контролировать и подгонять в режиме удержания? Я советую все время следить за током - поддерживать его. Для этого и используют шунты - смотрите устройство стандартных драйверов от Allegro, TI, ST... Цитата(glags @ Nov 27 2014, 14:52)  По моему это фигня какая - то. Тут я Вас поддерживаю.
|
|
|
|
|
Nov 27 2014, 12:33
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 9-05-13
Из: Львов, Украина
Пользователь №: 76 782

|
Цитата(Tanya @ Nov 27 2014, 14:19)  Я советую все время следить за током - поддерживать его. Для этого и используют шунты - смотрите устройство стандартных драйверов от Allegro, TI, ST... тут шунт не нужен, у микрухи есть выход IS с помощю которого можно определить ток на нагрузке. С этой ноги я ток и контролирую. Пробовал я отслеживать ток на обоих обмотках и в онлайн с помощью ШИМ поддерживать его на уровне 3А при работе двигателя. Фигня получилась - движок крутится и переодически дёргается в обратном направлении. Не мог понять в чём причина.
|
|
|
|
|
Nov 27 2014, 13:22
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 9-05-13
Из: Львов, Украина
Пользователь №: 76 782

|
Цитата(Tanya @ Nov 27 2014, 14:44)  Еще раз предлагаю почитать, как устроены интегральные драйверы. Ведь они выпускаются огромными партиями... Обратите внимание на режимы fast and slow decay. Я прошу прощения за наглость, а не могли бы Вы ссылочку дать?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|