Выбор метода формирования опорного напряжения.

wladimir69tv

Доброго времени суток.
необходимо изготовить контроллер для униполярного двигателя с микрошагом. Микрошаг необходим для снижения вибрации на малых оборотах.
Как я понял для реализации аппаратного ШИМ, опорное формируют несколькими методами:

  1. В апноуте Микрочипа - синусоида подается только на один компаратор а на другой в это время напряжение обеспечивающее максимальный рабочий ток.
  2. Синус и косинус на оба компаратора - формируются с помощью ШИМ и фильтра. (Kreutz) или ЦАП.
    На форуме в основном обсуждают второй метод. Хотелось бы получить совет ГУРУ плюсы и минусы подходов чтоб изначально не пойти по тупиковому варианту.

Для ознакомления вскрыл один из драйверов промышленного изготовления. М.сх естественно затерты но угадывается PIC 20-ти ногий, ПЛИС Altera наверное 3032, ЦАП какой-то одноканальный и счетверенный компаратор, не считая мелочи. Судя по тому что канал ЦАП обнаружился только один по всему они формируют микрошаг первым методом.
Что скажут ГУРУ какому методу отдать предпочтение и в чем + и -?

ATLab
wladimir69tv:

… какому методу отдать предпочтение и в чем + и -?

Для начала делайте, то, что лично Вам проще сделать.
Если сделаете, что-то на МК, то таблицы опорного в любой момент можно заменить, или переключать джамперами.

wladimir69tv

Так я уже на одни грабли наступил. Не хотелось бы дальше. Получалось вроде компактно и хорошо (PIC16F690 + ЦАП MCP4921 и силовая часть) маленькие движки крутил. Но это только по началу. Оказалось что канал аппаратного ШИМ я организую только один (где синусоида) а второй постоянно открыт. Надо все схему ШИМ переделывать - так как в МК только один канал PWM который бы мог сброситься аппаратно от компаратора. Дальнейшая ее модернизация потребует 4 внешних компаратора + кучку логики и при этом у меня синусоида будет только по одному каналу.
Собрал на макетке почти Kreutz (логику менял под то что было). Крутит, но странно ведет себя опорное - при малой частоте шагов - красивая синусоида и двигатель тоненько попискивает и крутится. При повышении частоты - срезается макушка у синусоиды (если было Umax = 0,3 В то на уровне 0,2) двигатель начинает шипеть но крутится. Дальнейшее увеличение частоты приводит к тому что опорное становится постоянным (0,2 ) ШИМ на формирование опорных принимает фиксированное значение. Движок крутится и шипеть перестает.
Сильно беспокоят средние обороты - потому что вибрирует он при них сильно.
Опять же нет исходников.
Вот теперь на перепутье по какому направлению пойти.

ATLab
wladimir69tv:


Собрал на макетке почти Kreutz (логику менял под то что было). Крутит, но странно ведет себя опорное - при малой частоте шагов - красивая синусоида и двигатель тоненько попискивает и крутится. При повышении частоты - срезается макушка у синусоиды (если было Umax = 0,3 В то на уровне 0,2) двигатель начинает шипеть но крутится. Дальнейшее увеличение частоты приводит к тому что опорное становится постоянным (0,2 ) ШИМ на формирование опорных принимает фиксированное значение. Движок крутится и шипеть перестает…

Вы довольно точно описали работу драйвера Kreutz-а: на низкой скорости SIN/COS, на средней - режим HighTorque когда форма SIN/COS искажается, на большой скорости - полный шаг. Это сделано для сохранения более-менее стабильного момента.
Почитайте его ветку на cnczone или статьи в блоге (я не помню адрес блога, должен быть в ветке cnczone). Кстати, исходники там были в свободном доступе, только последние (вроде как оптимизированные по скорости отработки STEP) он не выкладывал. Написано на BASIC (BascomAVR) и все достаточно прозрачно.

Рекомендую и собственную разработку делать на МК от Atmel, они для этой цели удобнее PIC, таймеров с ШИМ больше.
ЦАП вообще излишество. Я тоже начинал с ЦАП, все было красиво, но не нужно для ШД. На сегодня я считаю, что для формирования опорного вполне достаточно ШИМ на достаточно высокой частоте и ФНЧ 1-го порядка.

P.S. Нашел адрес блога:
…blogspot.com/…/mardus-kreutz-unipolar-micro-stepp…
Кстати, обратите внимание, что его силовая часть работает неправильно: расчетная частота ШИМ для силовой части (стабилизации тока в обмотке) должна быть 38 кГц, а у него она только 19 кГц, т.е. драйвер срывается на субгармонику из-за того, что ток в обмотке не успевает вырасти до нужного значения за 1/2 периода ШИМ (типичная болезнь драйверов с фиксированным периодом ШИМ).
Это хорошо видно по его же осциллограмме, см. ниже.

Dominator
ATLab:

и ФНЧ 1-го порядка.

Это что бы не было писка ?

wladimir69tv
ATLab:

на средней - режим HighTorque когда форма SIN/COS искажается, на большой скорости - полный шаг. Это сделано для сохранения более-менее стабильного момента.

А почему U max снижается при искажении SIN? и по какому напряжению ток в обмотке выставлять? по постоянному уровню или по максимуму когда SIN еще красивый?
Еще меня смущает наличие двух подстроечников на разные обмотки как внешне проявляется различие тока в обмотках.
И все-же чем плох вариант - когда SIN только в одной обмотке?

ATLab
wladimir69tv:

А почему U max снижается при искажении SIN?..

Это чтобы сохранить площадь импульса тока. В идеале амплитуда SIN в 1,41 раза выше уровня постоянного напряжения. Искаженная - что-то промежуточное, реализацию смотрите в таблицах прошивки Kreutz.
Настройку делайте как удобнее, но, наверное, по постоянному току удобнее, можно обойтись мультиметром.

И все-же чем плох вариант - когда SIN только в одной обмотке?

Да ничем он не плох, двиг крутится так же, как при SIN/COS. Просто момент в пределах шага меняется, тогда как при SIN/COS в идеале должен быть постоянным. Только где тот идеал…
Наверное, изменение момента, может привести к какому-нибудь резонансу. Только здесь все еще сильно завязано на механику привода: двигатель на столе и двигатель в станке работают по-разному.

Это что бы не было писка ?

Нет, это чтобы из ШИМ сигнала (представляющего собой импульсы с частотой, скажем, 78 кГц и амплитудой 5 В), формирующего опорное напряжение выделить этот самый опорный сигнал, в виде того же SIN/COS или постоянного напряжения.

wladimir69tv

Сегодня крутил двигатель (AVR) без нагрузки при частоте полных шагов 156,25 начинает гудеть, при дальнейшем увеличении частоты гудит меньше а на частоте 312,5 снова начинает вибрировать причем очень сильно. При дальнейшем увеличении частоты вибрация исчезает. Результат одинаковый как в шаге 1/16 так и 1/8 1/4.
как я понял это резонанс. Как с ним бороться? На экране при этом - среднее фото на датчике тока (0,2 В, 0,5 мс). Когда не рычит то вид как на последнем.
На четвертом фото - как я понял ШИМ еще работает, а дальше на 1 и 2 уже нет. Этим определяется максимальная скорость шагания? или нет.
И еще при работе с постоянной скоростью вращения меняется тональность с периодом около 2 сек. Что бы это могло быть? Прошивка стоит TRANS_REV01Npp.hex а исходников так и не нашел ни старых ни новых, буду очень признателен если поделитесь.

mura

при микрошаге резонанса не может быть.
форма тока несколько далека от синуса.

Dominator
mura:

при микрошаге резонанса не может быть.

При условии что микрошаг реализован грамотно а не на дешевых микрухах типа TA8435 .

wladimir69tv
mura:

форма тока несколько далека от синуса.

А как это лечится? Движок без лейбы, но если не обманули -FL57ST-3006, питание 30 в, ключи IRF640 c с драйверами. Датчик тока 0,1 Ом. А схема Kreutz правда на макетке.

ATLab
wladimir69tv:

Прошивка стоит TRANS_REV01Npp.hex а исходников так и не нашел ни старых ни новых, буду очень признателен если поделитесь.

  1. Прошивки и схемы по-прежнему доступны в на форуме:
    www.cnczone.com/forums/showthread.php?t=25361&page…
    с последующим изменением таблиц
    www.cnczone.com/forums/showthread.php?t=25361&page…
    Если хочется совсем последнего - пишите письмо Kreutz-у.

  2. Вы когда драйвер включаете, джамперы микрошага в каком положении? Не в полном ли (полу) шаге? Установите правильно джамперы.

  3. Посмотрите осциллографом форму опорного напряжения в точках TP1, TP2, должна соответствовать выбранному дроблению шага.
    Для примера посмотрите мои картинки (1, 2), обратите внимание, что частота сигнала STEP на входе драйвера была примерно одинакова.

  4. Приведенные Вами картинки похожи на то, что:

  • режим полный шаг
  • частота STEP слишком велика для установленного напряжения питания.
    Я, в подтверждение, приведу Вам свои картинки (3, 4)- копия, того, что сняли Вы.
  1. В результате всех манипуляций, форма напряжения на Rизм при микрошаге должна выглядеть примерно так, как на пятой картинке.

mura
Dominator:

При условии что микрошаг реализован грамотно а не на дешевых микрухах типа TA8435 .

Имея большой опыт работы с TOSHIBA скажу следующее:
Эксперементировал с ДШИ-200 на 8435, на шаге в резонанс входил легко, на полушаге с трудом, на 1\8 найти не смог.
С фирменным движком резонанс ловил только на полном шаге.

Dominator
mura:

Имея большой опыт работы с TOSHIBA скажу следующее:
Эксперементировал с ДШИ-200 на 8435, на шаге в резонанс входил легко, на полушаге с трудом, на 1\8 найти не смог.
С фирменным движком резонанс ловил только на полном шаге.

Попробуйте сделайте 75 об в мин , у Вас наверное все это хозяйство под рукой , может поменяете свое мнение .

ATLab

Коллега Dominator, может про TA8435 лучше в соседней ветке, специально ей посвященной?
Например, рядом есть: rcopen.com/forum/f110/topic123955

wladimir69tv

С исходниками вроде решил. Написал Kreutz и уже сегодня получил (правда еще не смотрел). Еще нарыл на Украинском сайте версию на Си - поправил под свои нужды, запустил - эффект тот же. Хотя у него искаженный синус не проваливается по амплитуде.

Работает в микрошаге и на малых частотах step картинки такие же красивые.

ATLab:
  • частота STEP слишком велика для установленного напряжения питания.

Я как раз и спрашивал - это предел? и дальше нет смысла увеличивать частоту STEP? или есть способы увеличить не поднимая напряжения питания?

Но все - таки очень беспокоит вибрация на малых оборотах 156 и 312 полных шагов - как с ней бороться? Пробовал нагружать двигатель - она не исчезает.

Dominator
ATLab:

Коллега Dominator, может про TA8435 лучше в соседней ветке, специально ей посвященной?
Например, рядом есть: rcopen.com/forum/f110/topic123955

Но человек то в этой теме говорил что при микрошаге не может быть резонанса а не в той , и речь была в принципе не о TA8435 ( это было просто в качестве примера ) а о резонансе , будьте внимательным о чем речь идет и не торопитесь людям рот затыкать !

ATLab
Dominator:

Но человек то в этой теме говорил что при микрошаге не может быть резонанса а не в той , и речь была в принципе не о TA8435 ( это было просто в качестве примера ) а о резонансе , будьте внимательным о чем речь идет и не торопитесь людям рот затыкать !

  1. Я рот не затыкал, я вежливо попросил.
  2. Прочтите наименование ветки и найдите в названии или вопросе автора что-либо про резонанс
  3. В том сообщении от mura главным, imho, ,было “…форма тока несколько далека от синуса”, а вибрации - последствия этого, неважно, на чем сделан драйвер.

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

wladimir69tv:


Но все - таки очень беспокоит вибрация на малых оборотах 156 и 312 полных шагов - как с ней бороться? Пробовал нагружать двигатель - она не исчезает.

  1. 156, 312 полных шагов - в секунду? в минуту? Если в секунду, то 1 полный оборот происходит за примерно 1,3 и 0,64 секунды соответственно. Так это?
  2. Покажите осциллограммы опорного напряжения и напряжения на измерительном резисторе на этих или близких частотах STEP. С осциллограммами обязательно укажите параметры развертки (естественно регулятор “время/дел ПЛАВНО” должен быть в калиброванном положении).
  3. Не пересчитывайте в полные шаги, просто укажите частоту импульсов STEP и степень дробления шага (микрошаг).
  4. Есть возможность опробовать драйвер с другим ШД?

Я как раз и спрашивал - это предел? и дальше нет смысла увеличивать частоту STEP? или есть способы увеличить не поднимая напряжения питания?

Частоту STEP имеет смысл наращивать, пока ток в обмотке успевает вырасти до установленного значения. Потом момент падает, и увеличивать частоту STEP можно, только если хватает этого пониженного момента.
Увеличить напряжение питания - это просто способ ускорить нарастание тока в обмотке, следовательно дольше сохранить момент при увеличении частоты STEP.
Все это, конечно, упрощенно.