Самоделкины писал(а):мы пробовали стартовать с длинными импульсами а потом их уменьшая, и ничего это не дало, также резонанс на старте был и грохот...
Все нужно подбирать. И частоты резонансные, и кривые, и ширину начального импульса, и много еще чего.
Согласен с предыдущим оратором, тут проще сказать, чем сделать.
По сути там все очень просто, а вот с реализацией могут быть проблемы.
В принципе, у тебя может так получится, что твой контроллер просто не тянет новый интерфейс (например). И вобще еще много чего может вылезти в реальной жизни))))
P.S. Не пробовал смотреть осциллограммы с китайским чипом?
Вывод...
Садись сразу АRM там в многих чипах есть аппаратная обработка энкодера. Куча счетчиков и прочих хардовых вещей... производительность на порядок выше 8 битных мк.
И старайтесь не пихать всякие скетчи в которых испульзуется только одна функция.
Пишите коротко. И только необходимое.
А для степ дира ровноного еще и прерывания на второстепеннные функции запилить надо. Что в ожидаемое время не оказалось так что проц занят "ерундой" вместо сигнала степ....
Но на арме вам вполне может хватить времени....
Не надо микроскомом долбить гвозди! Карл Цейс в гробу вертеться начинает.
Задача вменяемо разогнать движок решиться и на восьмибитке, просто нужен тот же реалтайм. Через RTOS, простенький диспетчер либо подсчетом циклов - уже не важно. Дело не в железе, а исключительно в грамотном софте...
А так - автору уже сказали, что делать. Подоткнуть простенький Saleae Logic копеешный и убедиться что на выходе STEP у его железки полный трэш и угар... Либо хотя бы убедиться что там его нет. Но в любом случае предпринимать какие-то действия. А на тех исходных данных что он дал - уже все обсосали...
Всем спасибо, завтра будем смотреть на осциллографе китайский сигнал и наш, конечно будет разница я думаю.
Но всеже кто нибудь скажет мне как заставить включить плавный режим в драйвере через программу, или так нельзя? помню на предыдущем драйвере был джампер - плавный ход...
Не надо микроскомом долбить гвозди! Карл Цейс в гробу вертеться начинает.
Задача вменяемо разогнать движок решиться и на восьмибитке, просто нужен тот же реалтайм. Через RTOS, простенький диспетчер либо подсчетом циклов - уже не важно. Дело не в железе, а исключительно в грамотном софте...
А так - автору уже сказали, что делать. Подоткнуть простенький Saleae Logic копеешный и убедиться что на выходе STEP у его железки полный трэш и угар... Либо хотя бы убедиться что там его нет. Но в любом случае предпринимать какие-то действия. А на тех исходных данных что он дал - уже все обсосали...
Проблемма нанется тогда когда туда же захотят прикрутить жки с клавой 485 линию и прочие свистелки.
Я к тому что на вырост надо брать...
А цена с течением времени стремится к 8 бит=arm .
Но тут дело вкуса..
Я лишь дал совет...
Uhu написали на ассемблере чтобы впихнуть в 8ми битник что то толковое. Си компиллер вряд ли устроит оптимальный код.
Арм сишный хекс съест легче risk контроллера. Хотябы потому что там набор команд больше и есть аппаратные математические операции.
Самоделкины писал(а):
Но всеже кто нибудь скажет мне как заставить включить плавный режим в драйвере через программу, или так нельзя? помню на предыдущем драйвере был джампер - плавный ход...
Нет там такого режима. То, о чем говорится в инструкции не имеет никакого отношения к вашей проблеме. И то, о чем говорится в инструкции и так работает. Если только вы не напутали с режимом спада тока (если он вообще задается в этой микросхеме).
Не было на этих драйверах джампера "плавный ход".
И гул - это одно, резонанс - другое, нестабильность сигнала - третье.
У каждой проблемы может быть около десятка причин, и их все невозможно устранить переключением джампера в режим "плавной работы".
Пока вы будете скрывать информацию - мы сможем лишь предполагать наиболее распространенные ошибки, но не сможем вам дать точных рекомендаций, т.к. до сих пор не понимаем, о какой проблеме идет речь.
Лучше бы видео снять со звуком.
А то сейчас обсуждение похоже на какой то бред - это как в автосервис позвонить и сказать, что после замены родной китайской детали на самодельную все стало круто, но мотор тарахтит, и не крутит.
И при этом даже не сознаваться об автомобиле идет речь, или о газонокосилке, и какую деталь вообще заменили.
Читал я, читал тему и ответы...
1. Непонятна скрытность ТС по поводу своей железки: железка его реально никому, кроме него, не нужна, поэтому просить о помощи и не рассказывать о проблеме подробно - моветон. Зачем нужно гадание на кофейной гуще? Ьолько трата времени.
2. Судя по постам, ТС не электронщик. А где электронщик, который должен был уже давно посмотреть все картинки осциллографом и грамотно все изложить?
3. В моей практике был случай, когда электронщик не особенно вникая в смысл работы, просто подключил драйвер ШД к железяке и сказал программисту: "У меня все работает, теперь дело только за тобой". Программист, тоже не вникая в суть, просто тупо задавал фиксированную частоту шагания, в зависимости от требуемого времени перемещения. Пока двигали медленно - работало, как увеличили скорость - затык. И так электронщик с программистом препирались друг с другом, перепихивая проблему. А все дело было в разгоне/торможении...
В конструировании таких устройств, как у ТС, важно, чтобы все - и электронщик и программист - хорошо представляли суть задачи и аппаратно/программные возможности МК, на котором делается устройство. Возможны и варианты:
- электронщик - сам неплохой программист
- есть грамотный руководитель проекта, способный детально поставить задачи электронщику и программисту.
4. При разработке устройств, очень важное значение имеет промежуточное тестирование и проведение испытаний готового устройства. Обычно, для проведения испытаний пишут программу и методику испытаний, в которой указывается что и как проверять и какие результаты должны быть достигнуты, а если результат не получен, какие действия следует предпринять дальше.
Для себя не обязательно оформлять это как документ, но, хотя бы, в голове нужно держать четкий план и следовать ему.
Непонятные результаты и незнание что с ними делать, как интерпретировать - следствие "детского" подхода: "Вот я щас как спаяю, быстренько запрограммирую и ухххх!"
Так работает только устройство "помигать светодиодом" или чуть сложнее.
Итого:
1 продумать объем и последовательность испытаний устройства;
2 если не получилось самостоятельно понять суть проблемы - изложить ее здесь детально;
3 подключить электронщика.
Самоделкины писал(а):Но всеже кто нибудь скажет мне как заставить включить плавный режим в драйвере через программу, или так нельзя? помню на предыдущем драйвере был джампер - плавный ход...
А еще лучше, покажите волшебную кнопку "все работает само"
Самоделкины писал(а):Но всеже кто нибудь скажет мне как заставить включить плавный режим в драйвере через программу, или так нельзя? помню на предыдущем драйвере был джампер - плавный ход...
А еще лучше, покажите волшебную кнопку "все работает само"
michael-yurov писал(а):Так микроскопом же не стоит забивать?
Просто перечислил варианты, и RTOS есть примитивнейшие и простые. Здесь опять же все зависит от автора и архитектуры программы.
Да я выше не то, чтобы верно выразился... Просто часто вижу "ставь ARM" в контексте решения какой-то проблемы, но здесь же дело не в архитектуре
"Ставь ARM" потому, что они дешевые и мощные и сегодня их купить можно везде - да, согласен. Но ставить их потому, что сразу станет хорошо - нет... Я уже просто после электронных форумов на эту фразу видимо хреново реагирую, примелькалась она там )))
raddd писал(а):Проблемма нанется тогда когда туда же захотят прикрутить жки с клавой 485 линию и прочие свистелки.
Я к тому что на вырост надо брать...
N1X писал(а):
"Ставь ARM" потому, что они дешевые и мощные и сегодня их купить можно везде - да, согласен. Но ставить их потому, что сразу станет хорошо - нет... Я уже просто после электронных форумов на эту фразу видимо хреново реагирую, примелькалась она там )))
Я был вынужден поставить arm потому что для равномерного разгона нужна операция деления, а в arm-ах есть аппаратная поддержка деления. Да и 32-битные числа для этого дела тоже были очень кстати.
Для простых задач разгона / торможения с определенным ускорением и определенной скорости - можно было бы решить задачу и без деления, и без 32 бит.
michael-yurov писал(а):Я был вынужден поставить arm потому что для равномерного разгона нужна операция деления, а в arm-ах есть аппаратная поддержка деления. Да и 32-битные числа для этого дела тоже были очень кстати.
Да, в плане вычислительной мощности вообще вопросов быть не может:)
А просто ради интереса: FPGA не рассматривали на этапе выбора? (хотя два STM32 вероятно будет дешевле)
Самоделкины писал(а):Да, я не электронщик, и это не скрываю. По моему заданию делается эта штука.
Может быть, лучше позвать к обсуждению проблемы тех, кто работает над реализацией твоего задания, у кого возникла проблема и кто может внятно изложить ее суть? Вместо пересказа чужих мыслей "по поводу"? Электронщика и программиста, например?
Выявлена причина, китай тупа воткнул самые слабые моторы серии, плавный запуск, плавная остановка также была сделано, была сделано удержание магнитным полем - не помогло, на 6 см выпадает 50-70 шагов...
Господа, если вскрыть шаговый и посмотреть на провода обмоток, то по сечению провода можно как то определить на какой ток он рассчитан? в моем случае есть моторы с 0.6 амперами и до 2.8 амперов?!