Сага о драйверах, или укрощение строптивого (Anycubic Kossel Linear Plus)

Подписаться на 3Dtoday
DjAntony
Идет загрузка
Загрузка
13.07.19
2183
30
печатает на Anycubic Kossel linear plus
Техничка
14
Приветствую всех 3D-печатников!)

Предисловие.
Не так давно стал я обладателем прекрасного аппарата Anycubic Kossel Linear Plus. Проделал стандартные операции (перепрошился на Marlin 1.1.9, распечатал усилители стоек) и начал печатать...)
Стали поступать определенные заказы и я понял, что принтер достаточно шумный. По ночам печатать – не вариант!) А днем я на работе и много не напечатаю.)
В общем, чтобы снизить шум, практически единственное и относительно недорогое решение – замена драйверов на более тихие. (Как, наверное, всем уже известно Anycubic Kossel поставляется с платой Trigorilla и драйверами A4988)
Поскольку был еще дилетантом в вопросах драйверов (сейчас-то я уже целую статью решил написать))), особо не разбираясь решил взять драйвера ST820. Просто подвернулась статья, что с заменой проблем нет (Ага...) и тишина гарантирована! (из соображений безопасности таких же начинающих, как и я, адрес не привожу))

ST820 или первый блин - комом
Заказал. Подождал. Приехали. Начал думать, как их установить…
И тут понеслось…

Оказалось, что у ST820 другая распиновка, чем у драйвера A4988(но кто бы об этом подумал раньше)))
для сравнения:
b8cbee62d1f583c216c72d19bc609f58.jpg
6b489bfc655be2e7c5652ce2844b44ee.jpg
Режимы деления шага:
ST820:
db813e83537254f4e26690674e6eb1c1.jpg
A4988:
8bc76efd93ba97417af82e3a81ef5c9d.jpg
Как видим есть несколько отличий. И основные заключаются в том, что у драйверов отличаются распиновки для шагового двигателя! А так же отличаются режимы деления шага.
A4988: 2B 2A 1A 1B
ST820: 1B 2B 2A 1A
А это все означает, что просто взять и заменить A4988 на ST820 не получится!
Хотя в информации, которую удалось добыть, говорилось, что можно просто воткнуть, инвертировать DIR в прошивке и еще кое-что
и все будет ОК
Правда говорилось про плату RAMPS 1.4
Оказывается, что Trigorilla хоть и аналог RAMPS 1.4 да не совсем-то и аналог!

Плата Trigorilla
Итак, немного помучившись, понял, что что-то здесь не так))
Я не зря выделил красным режимы деления шага в таблицах выше.
Первое, что я начал искать – это перемычки деления шагов… и… их нет!))
d4784eeea88eeb31c4389c05f1854be8.jpg
Гениальные инженеры платы решили не париться и просто замкнули все выводы MS1 MS2 MS3 драйверов на логические 5 Вольт!! Плата ведь рассчитана на A4988, а там все эти ножки должны быть в высоком уровне, чтобы шаг был 1/16.
Однако в спецификации указано, что плата совместима с драйверами: A4988, DRV8825, TMC2100.
DRV8825 здесь рассматривать не буду, т.к. скорее всего с ними все будет работать, но отзывы о них в Интернетах не однозначные и по тишине мне кажется будут такими же как и A4988.

TMC2100
ОК думаю я. Раз поддерживаются TMC2100, полезу ка я посмотрю распиновку (я же уже прошаренный)…
И что я вижу:
ba17677fa8c0cc8ac54c862aa43a105b.png
Смотрим таблицу шагов:
20722f8f5b5d058a9b71c9e6ca2a839f.jpg
Оказывается – не все так гладко. Выводы для мотора совпадают, а вот пины деления шага...
2d4e3481e4bd2c9874ec38149ce23bd4.jpg
т.е. получается, что для нашей платы, мы получим те же яйца, только в профиль (то же самое деление шага, что и в A4988 без дополнительной интерполяции). Скорее всего будет тише, но можно лучше)

TMC2130
Этот драйвер вообще нельзя втыкать напрямую в нашу плату - сразу сгорит!
79c74044366f718c9f681a572917d36f.png
Либо покупать только в таком варианте:
bfbdc0c13347daacba0d7bf1e8faf270.jpg
И программировать каждый драйвер через SPI.

TMC2208
PREVIEW
Видим, что отличается распиновка выводов шагового двигателя. Но это не критично, т.к. если перевернуть разъем, рядом с драйвером или на шаговом двигателе, то получается то, что надо!)
Деление шага тоже в самый раз:
ddc5264820802dbdbda69b1cac7453b9.jpg
При нашей конфигурации присутствует и деление шага 1/16 и внутренняя интерполяция драйвера. т.е. печатать должно и тише и точнее!

TMC2209
Недавно появились на алике. В теории присутствует технология CoolStep при которой драйвер должен значительно меньше греться.
Новейшие драйвера. Даже спецификацию трудно найти (я нашел)). Но опять-таки смотрим распиновку:
71e200fdf64dc112db1b129f5aea699d.jpg
Видим, что выводы на двигатель не совпадают. По поводу деления шага - там вообще все странно. Короче для платы Trigorilla не советую брать.

Немного про двигатели
Вот такая распиновка у двигателей на Anycubic
efa7ed300fa69ba4e8e1b45d6b40e9d6.jpg
А вот обычные NEMA17
7910a6e16275b729f3b1983c5c3b8d15.jpg
Просто подключение ШД меня тоже в свое время смутило))

Выводы:
1. Читайте даташиты перед покупкой (да это муторно и надо разбираться в теме. а кому сейчас легко))
2. Ну а для себя я сделал выбор в пользу драйвера TMC2208 как самого оптимального для принтера Anycubic Linear Plus.

Полезные ссылки:
Сравнение тихих драйверов от производителя
Спецификация на TMC2208 + Калькулятор расчета тока

Немного технопорна фото по изменению микрошага на ST820 для платы Trigorilla:
8dd349ec1c73e7a191bb231b12775a37.JPG
7d8be1dd40f0eedf1a2449220666f86c.JPG
843676c7c1a7e0dda4ef6371863c4358.JPG
P.S.: это моя первая статья, поэтому прошу сильно не пинать.
P.P.S.: Здоровая критика приветствуется)
P.P.P.S.: Тихой и качественной всем печати!
P.P.P.P.S.: Всем Добра!
Подписаться на 3Dtoday
14
Комментарии к статье

Комментарии

13.07.19 в 18:20
4
Оказалось, что у ST820 другая распиновка, чем у драйвера A4988
Неверная формулировка.
Распиновка одинакова. Проблема направления вращения решается переворачиванием разъема на двигатель на 180гр. либо в прошивке DIR инвертировать.
Деление шага, да есть в тригориле такая засада. Для быстрого и безболезненного применения необходимо либо выпать, либо выкусить штыри на которых должен быть "0"
Ну и не увидел у вас действительно важного отличия, это сигнал Enable его активный уровень отличается от 4988. И его нужно в прошивке инвертировать.
13.07.19 в 19:59
1
Распиновка одинакова. Проблема направления вращения решается переворачиванием разъема на двигатель на 180гр. либо в прошивке DIR инвертировать.
Читайте внимательней) распиновка пинов ШД у ST820 кардинально отличается от A4988 и простым переворачиванием не решается:
A4988: 2B 2A 1A 1B
ST820: 1B 2B 2A 1A
Деление шага, да есть в тригориле такая засада. Для быстрого и безболезненного применения необходимо либо выпать, либо выкусить штыри на которых должен быть "0"
Именно это и было сделано (фото в конце статьи)
Ну и не увидел у вас действительно важного отличия, это сигнал Enable его активный уровень отличается от 4988. И его нужно в прошивке инвертировать.
Все это было сделано. основная проблема была в пинах ШД
13.07.19 в 23:49
3
у меня есть эти драйвера, и я их устанавливал, но они мне не понравились. LV8729 оказались лучше.
кардинально отличается
A4988: 2B 2A 1A 1B
ST820: 1B 2B 2A 1A
все очень просто - отличие есть лишь в обозначении, на деле нет.
У 4988 выходы на обмотки двигателя обозначены - для обмотки 2 вывод В и А, для обмотки 1 вывод А и В
У 820 выходы на обмотки двигателя обозначены - для обмотки В вывод 1 и 2, для обмотки А вывод 2 и 1.

Посмотрите вами же приведенные схемы подключения
9f3e160a08e5836671e3401e195c75b2.JPG

Обвел для вас синим и красным, присмотритесь как включены обмотки. И о чудо - одинаково, только комбинация буков и цифр разная.
вашими же словами
те же яйца, только в профиль
Все это было сделано.
где у вас упоминание о сигнале Enable?
основная проблема была в пинах ШД
так как вы решили эту мифическую основную проблему, где об этом?
14.07.19 в 10:44
0
Обвел для вас синим и красным, присмотритесь как включены обмотки. И о чудо - одинаково, только комбинация буков и цифр разная.
Для меня сильно странно, что один и тот же производитель путается в цифрах и буквах.
Если правда на вашей стороне, то отлично! Кому-то будет полезно!
У меня же ST820 так толком и не заработали на этой плате.
Заказал и поставил TMC2208. Завелись без проблем. В прошивке инвертировал DIR.
14.07.19 в 11:23
1
Для меня сильно странно, что один и тот же производитель путается в цифрах и буквах.
Дело не в производителе, а в имеющейся маски которую китайцы просто копируют с вышедшего на рынок изделия. К тому же производители чипов разные и у них даташиты соответственно к своей продукции, которые вы рекомендовали
Выводы:
1. Читайте даташиты перед покупкой (да это муторно и надо разбираться в теме. а кому сейчас легко))
Если правда на вашей стороне, то отлично!
Это реальность, вы толком ни в чем не разобрались и наделали своих умозаключений не имеющих отношения к реальности.
Кому-то будет полезно!
Если почитают комменты,
У меня же ST820 так толком и не заработали на этой плате.
Где об этом указано в статье??
А не заработали потому как я писал выше
не увидел у вас действительно важного отличия, это сигнал Enable его активный уровень отличается от 4988. И его нужно в прошивке инвертировать.
Для 4988 этот сигнал активный "0", для 820 активный "1"
Они у вас просто не работали, если бы заработали, то звук вас вряд ли порадовал бы. С ними есть еще несколько нюансов. Которые становятся видны когда "заработало"
Заказал и поставил TMC2208. Завелись без проблем. В прошивке инвертировал DIR.
Об этом не сказано, лишь умозаключение в выводе..
2. Ну а для себя я сделал выбор в пользу драйвера TMC2208 как самого оптимального для принтера Anycubic Linear Plus.
И что интересно, другое обозначение на выводах(на двигатель) у драйвера не вызвало у вас вопросов
кардинально отличается от A4988 и простым переворачиванием не решается:
A4988: 2B 2A 1A 1B
TMC2208: 1B 1A 2A 2B

13.07.19 в 18:22
1
Тоже пролетел по замене A4988 на A5985 в MKS Robin Mini. Datasheet на A5985 обещал drop in replacement. На деле оказалось, что никакого drop in replacement нет - ноги и установка шагов не совпадает. К тому же на плате все выводы MS1 MS2 MS3 посаженны 5 Вольт что соответствует 16 микро шагам на A4988 и только 8 A5985. Вот и доверяй потом этим datasheet.


P.S. вот вам теория о пропуске шагов и шуме драйверов A4988.
13.07.19 в 18:26
0
Поскольку был еще дилетантом в вопросах драйверов (сейчас-то я уже целую статью решил написать)))
Теперь профессор?
А скажите вы кроме 4988 и 820 другие драйвера пробовали использовать? или это все ваши умозаключения
т.е. получается, что для нашей платы, мы получим те же яйца, только в профиль (то же самое деление шага, что и в A4988 без дополнительной интерполяции). Скорее всего будет тише, но можно лучше)

TMC2130
Этот драйвер вообще нельзя втыкать напрямую в нашу плату - сразу сгорит!

Новейшие драйвера. Даже спецификацию трудно найти (я нашел)). Но опять-таки смотрим распиновку:

Видим, что выводы на двигатель не совпадают. По поводу деления шага - там вообще все странно. Короче для платы Trigorilla не советую брать.
13.07.19 в 20:07
0
Теперь профессор?
Сразу видно, ирония не для Вас. Поясняю. Это была ирония. Над собой. Профессором никогда не был.))

А скажите вы кроме 4988 и 820 другие драйвера пробовали использовать? или это все ваши умозаключения
С радостью бы испробовал их все на практике, если найдется спонсор!) Это все сугубо личные умозаключения.
Если на TMC2130 на все выводы SPI подать высокий уровень, я думаю ничего хорошего не будет.
13.07.19 в 23:54
1
Сразу видно, ирония не для Вас.
и я поясню, это был сарказм..
на ваши умозаключения и рекомендации по использованию драйверов, которых вы и в руках не держали.
Если на TMC2130 на все выводы SPI подать высокий уровень, я думаю ничего хорошего не будет.
Глупость несусветная.....
13.07.19 в 19:08
5
Очередная статья от человека, не разобравшегося в вопросе.
13.07.19 в 20:10
4
Надеюсь Вы, как профессионал в данном вопросе, напишете подробную статью о тонкостях подключения тихих драйверов на плату Trigorilla. Я был бы очень благодарен (думаю, не я один!)
13.07.19 в 21:04
3
Ну я бы даже не задумывался на тему совместимости драйверов с платой, я бы тупо порезал дороги и накидал перемычек как мне надо. Что я, собственно, и делал со своими платами. Возможно, даже микропереключатели с обратной стороны налепил. С подтягивающими резисторами.

Но! Мои претензии к статье:
1. Вы зачем-то пишите про все драйвера, имея только 2 вида. Из этого закономерно вытекают следующие пункты:
2. Вы уделяете слишком много внимания распиновке шаговиков, и пропустили остальные конфигурационные пины 2208/2209. А там и внешний клок подаётся, и spreadCycle включается-выключается... Что с этими пинами на тригорилле происходит?
3. Вообще не затронута тема fast/slow/mixed decay, а это - ключевой момент тишины и стабильности DRV8825 (A4988 тоже, хотя и в меньшей степени).
4. Не затронута тема UART. А он нынче поломан в марлине 2.0, TMC2209/08 на atmega2560 завести не удаётся.
В итоге выходит статья по большей части о там, как вы смотрели картинки в интернете, и минимально полезная информация содержится только в последних фото. Хотя бы написали, что это перемычка для шага 1/32 и рассказали, что вышло по токам и шуму...
14.07.19 в 00:00
0
А он нынче поломан в марлине 2.0, TMC2209/08 на atmega2560 завести не удаётся.
Если не затруднит коллега чуть подробнее. На 1.1.9 2208 по уарту у меня работают без проблем(мега2560), или это только на марлине 2? а то я подумывал накатить 2.
14.07.19 в 00:59
1
На втором. Сижу вот с новеньким 2209 на стендалоне, жду багфиксов :(.
15.07.19 в 16:55
0
А он совсем поломал или только на ардуине. Работает ли 2209 на платах SKR 1.3
А то в субботу пришла плата и драйвера. Прошивку залил, но там ошибка.
И еще вопросик в тему знающему человечку. В конфиге написано, что перемычками можно на этих драйверах аппаратный адрес выставлять. И этих адресов всего 4. Это делать обязательно или это может и программно работать. Я так понял при 32 битах надо на этих драйверах отключать интерполяцию и лупить сразу 256 шагов.
16.07.19 в 08:19
0
Понятия не имею, ветка в разработке, в любой момент может поломаться что угодно. Но главные разработчики ща в основном на 32 битах сидят, так что должно быть норм.
Адресация - смотря как на плате разведено. Может там их из коробки запараллелить и не получится. А вообще - лучше на один провод все сажать. Но адреса забивать в прошивке и джамперами надо обязательно.
Кормить 256 микрошагов напрямую - лютейшая глупость. Максимум 1/32 по осям, 1/64 на экструдере типа МК8. И то, с натяжкой. Не факт, что увидите у себя разницу с 1/16. Это всё для 1,8-градусных моторов. Для моторов 0,9 - делите всё на два.
16.07.19 в 11:46
0
Спасибо огромное за ответ.
Адресов всего 4, а я хотел ...
Позже поэкспериментирую.
14.07.19 в 11:07
1
Ну я бы даже не задумывался на тему совместимости драйверов с платой, я бы тупо порезал дороги и накидал перемычек как мне надо. Что я, собственно, и делал со своими платами. Возможно, даже микропереключатели с обратной стороны налепил. С подтягивающими резисторами.
Отлично, что у Вас на это есть время. У меня - нет.
Статья расчитана на новичков, которые захотели утихомирить свой принтер.
Мой сугубо личный совет - на данный принтер ставить TMC2208, что я собственно и сделал. Проблем нет. Необходимо в прошивке инвертировать DIR на каждом драйвере:
У меня это так:
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false // for TMC2208. default 'true'
#define INVERT_Y_DIR false // for TMC2208. default 'true'
#define INVERT_Z_DIR false // for TMC2208. default 'true'
// @section extruder
// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR false // for TMC2208. default 'true'

Хотя бы написали, что это перемычка для шага 1/32
Не стал описывать эти извращения, опять таки, т.к. статья - для новичков, таких как я. Завести эти драйвера быстро не получилось. А тратить на это много времени не хотелось.

и рассказали, что вышло по токам и шуму...
в общем вот статья: https://3dtoday.ru/blogs/starovoit/replacement-stepper-motor-driver-with-a4988-on-st820-stspin820-driver/
Там все довольно подробно описано. Хотя на автора тоже были нападки.
Я же выставлял напряжение Vref = 0.13В
Работали довольно тихо.
НО TMC2208 работают тише! ШД стали бесшумными! Сейчас шумит только БП.
Следующим этапом будет утихомиривание БП и кулеров на хотэнде.
15.07.19 в 15:45
1
не обращайте внимания. здесь мало тех, кто может сказать что то дельное, но зато много тех, кто рад покритиковать других.
15.07.19 в 15:58
0
Спасибо за поддержку
Надеюсь кому-то всё таки будет полезно
14.07.19 в 13:31
0
У автора, наверное, огромное количество свободного времени. Всего-то купить SKR1.3 и тихие драйверы TMC.
15.07.19 в 16:57
0
купил, пославил 2209, залил марлин 2.0 и не работает
15.07.19 в 16:57
0
А вывод где, как впечатление от проделанной работе. Ну как вообще дельта на 8бит печатает?
15.07.19 в 17:07
0
Как по мне, Дельта на 8 бит работает отлично.
Драйвера в итоге поставил TMC2208. Работают отлично! Звука вообще нет при печати (не считая шум от кулеров и БП). Такое ощущение, что вообще не печатает)) постоянно посматриваю))
В прошивке инвертировал DIR (писал выше). либо перевернуть разъемы на плате.
16.07.19 в 05:50
0
Глядя на все эти картинки пришла мысль, что "пресловутые" свичики-перемычки ms1-3 нужно не прятать под драйвером, а вытаскивать наружу, рядом ставить еще одну линейку на 3 или 4 пина, заведеную на GND. И тогда ничего на драйверах откусывать не нужно - конфигурируй их как удобно этими перемычками. Нужно - цепляй на +5v, нужно - цепляй на "землю", а нужно - цепляй "воздушкой" на нужные пины для SPI. В догонку еще и RESET + SLEEP (в редакции A4988) тоже не замыкать в-тупую, а вывести также пинами наружу: надо замкнуть - замыкай, надо зацепить на что-то другое - цепляй. Конечно эникейщикам будет головоломка, но.. Универсальнее )
16.07.19 в 16:21
0
Уже неделю, пока едут драйверы, остро стоит вопрос: а взлетит ли TMC2209 на Lerdge-X? Бубен и паяльник уже подготовлены.

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

Читайте в блогах

Российские врачи готовят рекомендации по использованию 3D-печатных медицинских изделий

Как я начал использовать Uniz SLASH PLUS в стоматологии _1 часть

Поступление продукции Uniz: принтер Slash Plus и многое другое!

Широкоформатный 3D принтер DX Plus . Видео Обзор .

В Екатеринбурге 3D-печать используется в проектировании системы «Умный город»

Минпромторг подготовил каталог отечественных 3D-принтеров