Перейти к содержанию

Sergy

Members
  • Постов

    65
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Sergy

  1. В общем, я свою беду решил B-)

    Увеличил дискретность модельного времени. До этого шаг модельного времени выбирался simulink-ом автоматически, а я взял и свой вкатал (я расчет профиля делаю с дискретностью 10^(-4), потому сделал в три раза меньше шаг по времени - на переходы импульсов на +/-1 и 0). И все нормально пошло.

    Такие вот дела.

  2. Что-то долго нет ответа.

    Ладно, я переформулирую свой вопрос.

    Я могу рассчитать резонансную частоту по Кенио. Могу также расчитать максимальное ускорение (по резонансной частоту) и соответствующий минимальны коэффициент счета (по AVR466). Теперь вопрос. Полученный минимальный коэффициент счета является минимальным как и для постоянной скорости? Везде описано как получить резонансную частоту для однофазного и двухфазного возбуждения. А как ее получить для микрошагового режима? Ведь в этом режиме обмотки не полностью возбуждаются и, потому, момент создаваемый ними не равен удерживающему моменту, и потому, резонансная частота должна быть меньше, соответственно, и максимальное ускорение должно быть меньше.

    Кто что может сказать?

  3. Здраствуйте.

    Уже давно как я провел моделирование работы шагового двигателя при нескольких профилях скорости.

    Но вот начал я пересматривать результаты и мысли застучали как камешки в погремушке.

    Есть, скажем, профиль постоянной скорости. Вот так, сразу, без разгона. Резонансную частоту импульсов и соответствующий минимальный коэффициент счета c_0min (по аппноту AVR466) я вычислил. Постоянная скорость реализуется постоянным коэффициентом счета c_0. Возьмем сначала c_0 < c_0min (двигатель будет в резонансе). А потом, возьмем c_0 > c_0min (резонанс как ветром сдуло!). c_0 я увеличил изменением угла шага (был микрошаг 1:16, стал 1:8). Файлы графиков с резонансом и без резонанса я прикрепил. На них показано следующее: зеленым - положение ротора в зависимости от времени (в радианах), красным - задаваемую угловую скорость вращения (рад/с) и черным - скорость, полученную по положению ротора с дискретностью 0.05 секунды (рад/с).

    Почему нет совпадения в величине скорости (даже при отсутствии резонанса) я понимаю - все-таки ШД это статичная машина.

    Внимание, вопрос: в безрезонансной работе ШД наблюдается простой. С чем он может быть связан? Все это пока что делается не на физическом устройстве а на мат-модели в матлабе.

    Кто что может по этому поводу сказать?

    UPD1 : Да, кстати, вот еще вопрос в догонку - Есть у шагового двигателя такие две характеристики - максимальная пусковая частота и максимальная частота вращения (то есть уже после пуска). Какой из них соответствует минимальный коэффициент счета c_0min, полученный из максимального ускорения и резонансной частоты?

    UPD2 : Также прикрепляю картинку уже для другой скорости вращения (без резонанса). На ней - фиолетовый - положение ротора (радианы) и желтым - мгновенная скорость ротора (рад/с). На ней тоже видны "простаивания". С чем они связаны? Может все-таки остался в резонансе?

    velocity_rebuild_linear_resonant.pdfvelocity_rebuild_linear_noresonant.pdf

    post-137401-0-97941500-1368830600_thumb.png

  4. ШД относятся к высокомоментным двигателям, зачем выжидать паузу на нуле? ШД могут долговременно динамически менять скорость и это будет их штатным режимом...

    Понял.

    Главное, что бы создаваемого момента хватало? А момент, кажется, зависит от токов обмоток. Но в микрошаговом режиме токи может возникнуть ситуация, когда реверс выполняется на неполных токах и, как следствие, момент на валу может оказаться ниже необходимого, а потому пойдут пропуски шагов. Я правильно это понимаю?

  5. Перед изменением DIR надо плавно понизить частоту STEP почти до нуля. А это решается программно задатчиком скорости и частоты вращения. То есть все зависит от программы управления.

    У меня смена направления вращения возникает только при смене знака скорости, а это зависит уже от пользователя. Это он имеет право меандровый профиль скорости задать. Но у меня стоит проверка на максимальное ускорение, полученное из резонансной частоты ШД. Об этом подробнее описано в аппноте AND8404 от ON Semiconductor. Только я не совсем понял как быть с частотами выше резонансной - то есть, если я резко задам 200Гц при резонансе на 150Гц?

    В принципе реверс, по модулю ничем не отличается от изменения ускорения, у него 2 этапа, нужно сначала плавно сбросить скорость , а потом плавно её набрать до нужной..

    Это я понимаю, что нужно остановиться, простоять и, только потом, можно реверсировать.

    А сколько нужно простоять на нулевой скорости? Это ведь зависит от предыдущей скорости и инерционности нагрузки.

    P.S. Если кому интересно, мой алгоритм на расчет пауз в профиле скорости прикреплен к сообщению. Там, правда, нет пока еще расчета погрешности профиля скорости, а только погрешность в позиции. Но это сделать не сложно.

    algo.pdf

  6. Здраствуйте.

    Сразу к делу.

    У меня профиль скорости динамический и заранее не известный. По сути, я использую шаговый двигатель не для точного позицинирования, а для "точного" воспроизведения профиля скорости. Мне объясняли, мол, перед изменением ускорения должно быть, по-крайней, мере два шага на постоянной скорости. Что-то аналогичное говорили и про реверс. При реверсе у нас предыдущий шаг идет с DIR=0 (например), а следующий - уже с DIR=1. Но, насколько я помню, что-то говорили про пропуск шага. И, честно, не сильно понимаю, как нужно с этим бороться. Двигатель управляется в микрошаговом режиме 1:16 на драйвере TB6560.

    Я так понимаю, что пропуск шага возникает при большой инертности нагрузки на роторе (то есть, момент создаваемый валом на уже реверсанутом шаге меньше, чем момент кручения нагрузки после еще не реверсанутого шага). А что, если у меня нагрузки практически нету? Ведь у ротора тоже есть инерционность. Ему тоже свойственно пропускать шаги при реверсе.

    Прошу подсказки у знающей части населения. Согласен на толчок в нужном направлении.

    Благодарен буду за любой совет.

  7. Это же параллельный резонансный контур! При совпадении частоты ГНЧ и частоты резонанса контура сопротивление его увеличивается. Соответственно падение на резисторе уменьшается. Отсюда можно подсчитать индуктивность, зная емкость конденсатора.

    Ох, я балда! Напутал!

    Извиняюсь.

  8. Здраствуйте.

    Имеется вот такая схема для измерения индуктивности обмотки шагового двигателя.

    Вполне естественно, что при резонансе импеданс колебательного контура становится минимальным, а потому падение напряжения на резисторе (около 1 килоома сопротивлением) станет максимальным.

    Но вот незадача - на частоте примерно 1.36-1.4кГц падение напряжения на резисторе становится минимальным. На всех же остальных частотах - оно велико ( амплитуда около 2.6В) при амплитуде синусоиды, приходящей от ГКЧ, примерно 4В.

    Осциллограмма при сигнале с ГКЧ в диапазоне 0Гц - 10кГц:

    post-137401-0-30881600-1364282985_thumb.png

    post-137401-0-14040600-1364283013_thumb.png

  9. Я вот с ним не могу сообразить что это.

    Формула выглядит так:

    Tmj = km * sin[ n*PHI(t) + PHI0j ] * Ij(t)

    Tmj - момент создаваемый j-ой обмоткой

    km - постоянная, зависящая от исполнения двигателя

    n - число пар полюсов ротора (или число пар зубцов ротора)

    PHI(t) -текущее положение ротора

    PHI0j - положение j-ой обмотки на статоре

    Ij(t) - ток j-ой обмотки как функция времени

    Эта формула приведена при синусоидально изменяющемся магнитном поле в зазоре между статором и ротором.

    А ЭДС инджуцируемая в обмотке при прохождении по ней тока:

    E = km * sin[ n*PHI(t) + PHI0j ] * w

    w - (омега) - угловая скорость вращения ротора.

    UPD @ 22.03.2013:

    Сообразил я что такое Km - это потокосцепление обмотки (I*L) умноженное на число пар полюсов = n*I*L

  10. Схема иномарочная. Х.з. что они хотели этими квадратиками показать. Это предположение исходя из блок-схемы.

    Даже предположение помогает. Однако, это не сумма. Это произведение. Плохо отпечатанная звездочка.

    В крайнем случае я могу использовать модель (если не разберусь с передаточными функциями к ШИМ).

  11. ШД нужно рассматривать как статичную машину. Так что динамические характеристики можно не принимать во внимание. И понятие нагрузка на валу к нему неприменимо. Сколько может потянуть сила переключения магнитов обмоток - такова его сила и будет. И от скорости при правильном пректировании системы управления не зависит. Разве что инерция будет влиять.

    Статичная машина, я так понимаю, нечто, находящееся в неподвижном состоянии в любой момент времени (то есть, в применении к шаговым двигателям, с мгновенно выполняющимся поворотом ротора) с некоторым предельным допустимым моментом, прилагаемым к ротору.

    Вы же это не от балды взяли. Где бы про это подробнее прочитать?

  12. считай так же как и в ШИМе

    Это из-за ШИМ реализации задания тока обмоток? Я об этом не подумал...

    В каких режимах? Подробнее, с информацией.

    Микрошаг, полушаг.

    UPD: Однако я нигде не находил влияния нагрузки на валу.

  13. Так что после прочитанного делайте выводы об возможности изменении скорости по вашему закону и в ваших пределах.

    С этим я знаком. Алгоритмы у меня составлены.

    У меня вопросы касаются теории автоматического управления - передаточные функции ШД в различных его режимах.

  14. Для проформы отвечаю - Закон изменения скорости задан в виде уравнения.

    Вопрос не в том как это реализовать. С этим у меня проблем не возникло пока. Как регулировать скорость я в курсе. С аппнотами AVR466 и AND8404 я знаком. Все это у меня описано.

    У меня вопросы связаны с теорией автоматического управления.

    Особенно в части влияния нагрузки на вал.

  15. У меня задача - регулировать скорость вращения нескольких шаговиков по заданному закону.

    Схема есть (принципиальная) и как это должно быть устроено у меня уже описано.

    Но вот с описанием со стороны теории управления у меня не сложилось. Я в ней понимаю так-себе.

  16. Здраствуйте.

    Читал я тут на досуге книгу одну. Автор некто Т. Кенио. Называется - Шаговые двигатели и их микропроцессорные системы управления.

    В этой книге есть четвертая глава. Там описаны переходные процессы шагового двигателя при одном шаге.

    Мысли у меня появились такие (вместе с вопросами). Мы ведь можем считать контроллер, драйвер и сам ШД единым блоком с точки зрения теории управления. Эдаким "черным ящиком". Этот блок мы понимаем как импульсную систему, но вот вопрос: если мне по своим нуждам не особо важен момент, создаваемый двигателем, а больше важна скорость его вращения, то я могу ведь описать этот блок как преобразователь "частота импульсов - скорость вращения"?

    С другой стороны момент на валу и скорость вращения между собой имеют некоторую связь. Единственное, что я об этом слышал - "с ростом скорости вращения вала момент понижается". Однако мы не будем забывать, что ШД это не просто двигатель постоянного тока и его скорость (в идеальном случае) не во всех местах непрерывна, что приводит нас к вопросу: Что здесь понимается под скоростью вращения, чем она задается? Ок, мы говорим, мол, от скорости вращения мы можем перейти к частоте отработки шагов. Но это только для полношаговго режима. Даже к полушаговому это вряд ли относиттся. А как насчет микрошагового режима? В этом режиме мы управляем ШД как обычным синхронным или асинхронным (путаю я их), но все равно - какая бы дискретность у нас не была мы никогда не обеспечим линейности изменения токов обмоток, а потому и линейности вращения двигателя.

    Может кто знает где про это прочитать можно?

    По ходу пьесы у меня, скорее всего, еще будут возникать вопросы...

  17. С UART-ом я разобрался. Выставил таймауты, нормально прием пошел (контроллер не успевал так быстро отвечать).

    Но появились кое-какие помехи. Составил небольшую программу (для ПК и для меги) для кольцевания связи. То есть - на компе задал байт на отправку, мега его принимает и отправляет назад, комп этот байт выводит. Помехи такие - иногда выставляется старший бит в логическую единицу. При этом, когда подключаюсь через HyperTerminal, то таких "спецэффектов" не показывается.

  18. Нет, я недавно пытался запустить avr910-совместимый бутлоадер, не разрешал там прерывания, но прием и передача осуществлялись нормально, именно с проверкой битов UDRE и RXC (если интересно частота 115200, 8N1) причем в симуляторе студии на этом месте зависает либо я просто не знаю как ему сказать что передача завершена, но это не важно.

    По RXC у меня прием нормально осуществляется. Передача нормально ведется по UDRE.

    P.S.: У студии есть симулятор? Возможно ему стоит дать на скормление какой-нибудь файл или по-пробовать что-нибудь с виртуальным портом?

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