Перейти к содержанию
Авторизация  
n/a

tmc239 управление spi

Рекомендуемые сообщения

Интересует собственно сабж. Дано: плата сопряжения с оным драйвером и силовой обвязкой каналов шаговика типа nema23, в загашниках есть ардуина, на их сайте нашел пример организации step/dir для этого драйвера на атмеге, малех покоцал этот примерчик и зацепил это от ардуины (по сути пользую ее как обычную атмегу, ноги дергаю напрямую).

 

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

 

В один из моментов когда я использовал непрямое изменение регистров (через ущербные digitalRead|Write) из-за этих задержек двигатель стартовал нормально (причем задержки есть перед началом очередной порции байтов по spi т.к. плата расширения имеет некоторый набор логики и нужно ее малость передергивать).

Поделиться сообщением


Ссылка на сообщение

alkaed, С какой частотой пытаетесь крутить мотор? Попробуйте ее снизить. Если на небольших скоростях все заработает, то придется делать плавный разгон.

Поделиться сообщением


Ссылка на сообщение
Дата: (изменено)

<b>Гаражник</b>, вот тут и непонятно со скоростью, пробовал ставить брейки перед очередным шагом - шпиндель начинает ооочень медленно, но плавно двигатся НАЗАД, а потом резко делает шаг ВПЕРЕД, такое ощущение что сначала идет движение микрошагом, а после передергивания ног когда должен приходить очередной импульс завершения порции бит по управляющему каналу (т.е. CSN переходит в 1) происходит полный шаг вместо микрошага.

 

ЗЫ что-то вы заставили меня подумать над частотой, надо попробовать подавать STEP от отдельного генератора, сейчас все собрано в одной ардуине.

Изменено пользователем alkaed

Поделиться сообщением


Ссылка на сообщение

Все разобрался. Надо внимательней читать даташиты. В чем была проблема: этот драйвер требует мнимум двойную задержку по CSN перед первым байтом (100 ns вроде) и после завершения последнего байта, т.е. по SCK должен прийти хотя бы один пульс между передачами. У меня степпинг был засунут в основной цикл т.е. байты летели с основной частотой spi 8 мгц и драйвер просто не успевал сдвигать регистр, как уже летели байты очередного шага и двигатель уходил в резонанс, а двигался он лишь тогда когда по странному стечению обстоятельств совпадал очередной шаг.

 

Да для тех кто столкнется с этой байдой в будущем, этот драйвер не работает с дефолтным режимом spi, ему нужен mode 1 (CPHA 1), во всех прочих он тупо уходит в резонанс.

Поделиться сообщением


Ссылка на сообщение

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу


×
×
  • Создать...

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.