Комментарии 6
Как быть с точностью?
Если мы, к примеру 1000 раз переместимся на 100 мм вперед и на 100 мм вперед, вернется ли мотор в стартовое положение или набежит большая погрешность?
Если мы, к примеру 1000 раз переместимся на 100 мм вперед и на 100 мм вперед, вернется ли мотор в стартовое положение или набежит большая погрешность?
Если с механикой все в порядке, то вернется ровно в стартовое положение.
Судя по осциллограммам, всё будет верно. Если честно, я просто добился осциллограмм, как в настоящем 3D принтере (я их снимал в 2016-м, когда Marlin на STM32 перетаскивал), а на практике пока времени не было проверять. Здесь речь идёт скорее о практических опытах с UDB, чтобы разбавить сухую теорию. А играть приятнее с чем-то реальным. Проблема частых прерываний в 3D принтере — вполне реальная вещь.
В целом, что описано в данной статье — это сферический конь в вакууме. Если головку резко дёрнуть — двигатель пропустит шаги при разгоне. Тут-то погрешность и набежит. Чтобы этого не происходило — как я отметил в тексте, надо добавлять ускорения. Чуть попозже опишу, как я этого добивался (снова — применительно к практике работы с UDB). Тут — просто и так огромный текст получился.
В целом, что описано в данной статье — это сферический конь в вакууме. Если головку резко дёрнуть — двигатель пропустит шаги при разгоне. Тут-то погрешность и набежит. Чтобы этого не происходило — как я отметил в тексте, надо добавлять ускорения. Чуть попозже опишу, как я этого добивался (снова — применительно к практике работы с UDB). Тут — просто и так огромный текст получился.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Использование блоков UDB контроллеров PSoC фирмы Cypress для уменьшения числа прерываний в 3D-принтере