Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

petrovitch
Сообщения: 108
Зарегистрирован: 15 фев 2017, 18:07

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение petrovitch »

Привод с контуром по положению конечно заработал, но при инерционной нагрузке появляется авария либо по превышению тока фазы, либо по железу инвертора.
Вернулся снова назад проверить работу контра скорости и тока.
Получается такая картина:
Скорость_ток_.png
Скорость_ток_.png (90.61 КБ) 718 просмотров
Ввиду малости Тя, частоту ШИМ установил 35 кГц, но позже снизил до 20 кГц. В этой связи вопрос о допустимости поднятия чистоты ШИМ
до таких уровней в данной демонстрационной программе. Будут ли обеспечены правильные измерения АЦП? Как в этом убедиться?

По картинке вопрос о возможных причинах ухода текущего тока от заданного в конце осциллограммы.
Аватара пользователя
Лашкевич
Сообщения: 374
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение Лашкевич »

По поводу ухода тока от задания - надо смотреть выходы регуляторов тока (обоих) и их ограничения по напряжению. Не касаются ли выходы регуляторов своих ограничений при росте ЭДС двигателя.

По поводу других аварий - конечно же тоже нужны осциллограммы всех процессов со всех ракурсов - что какой регулятор выдал и в какую сторону. Просто так без конкретики тут ничего не посоветовать. Отлаживайте работу, смотрите все входы и выходы регуляторов, анализируйте причины, почему регулируемая величина не поддерживается.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 108
Зарегистрирован: 15 фев 2017, 18:07

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение petrovitch »

Ещё одна непонятная ситуация. На выходе регулятора положения стоит ограничение в 6000 об/мин. При снятии осциллограмм в контуре скорости задающее воздействие получается на уровне примерно 2300 об/мин. Это значение контур скорости и стремится отработать. В чём может быть причина? Где теряется заданное значение скорости?
Аватара пользователя
Лашкевич
Сообщения: 374
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение Лашкевич »

Вижу такие варианты:
1. Мягкий регулятор положения, который просто не вырабатывает такой большой выход, интегратор не успевает выйти на максимум за время отработки.
2. Мешает коэффициент списывания интегральной составляющий (Интегр.корректир.коэффициент, Kc_reg3). Если он большой, он мешает интегратору подняться. Попробуйте уменьшить.
3. Проблемы с переполнением входной или выходной величины через IQ24. Например, при умножении большой ошибки угла на большой Kp результат переполняется.
4. Отладьте синтетическими тестами без запуска привода. Подайте на вход рега положения желаемую ошибку и обратную связь, посмотрите графики выхода.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 108
Зарегистрирован: 15 фев 2017, 18:07

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение petrovitch »

Вот как выглядит насыщение на выходе регулятора положения:
Отработка положения с насыщением по заданной скорости.png
Отработка положения с насыщением по заданной скорости.png (32.33 КБ) 469 просмотров
Настройки регуляторов:
Регулятор положения.png
Регулятор положения.png (21.72 КБ) 469 просмотров
Регулятор скорости.png
Регулятор скорости.png (16.03 КБ) 469 просмотров
Увеличение Кр в регуляторе положения в итоге приводит к аппаратной аварии. Здесь маленькое уточнение: на приводе висит инерционная нагрузка, отлаживаюсь с ней.
Интегр.корректир.коэффициент, Kc_reg3 как видите нулевой!
И ещё проблема в том, что при отладке регулятора скорости ни при каких вариациях пропорционального и интегральных коэффициентов не удавалось избавиться от перерегулирования по скорости.
Аватара пользователя
Лашкевич
Сообщения: 374
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение Лашкевич »

Ну то что аппаратная авария происходит надо разбираться - у вас какое железо? Такое может быть как от превышения тока, так и от слишком высокой скважности, если используется будстрепное питание верхних ключей инвертора. Надо для этого отбельные осциллограммы для понимания.
А для отладки, почему регулятор положения выдаёт 2369 об/мин, а не 6000 - если используется стандартный код motorcontroldemo, то там для регулятора положения стоит ограничение величины ошибки угла, подаваемой на вход регулятора, чтобы там внутри ничего не переполнилось при многооборотном задании. Скорее всего, это ограничение помноженное на ваш Kp и даёт 2369 об/мин. Попробуйте добавить интегральную часть и посмотреть, какое получится ограничение выхода. Также в параметры выведены отдельно пропорциональная и интегральная составляющие выхода регулятора, можете их тоже проверить на осцилллограмме.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 108
Зарегистрирован: 15 фев 2017, 18:07

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение petrovitch »

Ну то что аппаратная авария происходит надо разбираться - у вас какое железо?
Железо силовой платы от VectorCard - TI. Первичные настройки драйвера затворов не трогал. Единственное, что вышло за рамки настроек, так это частота ШИМ. Она у меня 35 кГц! По другому не настраивался токовый контур. В этой связи максимальное число TPWM - 1428. А это сильно меньше стандартных настроек и автоматом увеличивает к-т усиления прямой цепи. Проверял, что в ряде случаев ШИМ выходит в насыщение, но при старте и не в аварийных ситуациях.
Скорее всего, это ограничение помноженное на ваш Kp и даёт 2369 об/мин. Попробуйте добавить интегральную часть и посмотреть, какое получится ограничение выхода. Также в параметры выведены отдельно пропорциональная и интегральная составляющие выхода регулятора, можете их тоже проверить на осциллограмме.
Добавлял интегральную часть и смотрел выходы с каждой составляющей. Всё работает правильно. Правда интегратор в контуре положения приводит к аварии превышения Udc (токогасящего резистора ведь нет). Поэтому проверил и убрал интеграл.
А вот с причиной аппаратной аварии хотелось бы разобраться. Думал, что в переменной флагов аварий будет информация, но нет. Я где-то в коде видел, что идёт считывание информации с драйвера затвора при аппаратной аварии. Могу ошибаться.
На картинке ситуация при аварии по фазе А.
Авария по фазе А_1.png
Авария по фазе А_1.png (28.24 КБ) 417 просмотров
Аватара пользователя
Лашкевич
Сообщения: 374
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение Лашкевич »

В VectorCard бутстрепное питание драйверов верхних ключей, а значит нижние ключи должны обязательно открываться на периоде ШИМ хотя бы немого, чтобы зарядить ёмкости. Для гарантии этого в настройках есть параметр
'ШИМ' --> 'U_огр [5105.03]' = 0.9
ограничение максимального напряжения, оно же коэффициент модуляции. Дефолта 0.9 хватало для частоты ШИМ 10кГц. Для большей частоты ШИМ при сохранности мёртвого времени нужно уменьшать ограничение, чтобы нижние ключи гарантированно открывались. Попробуйте 0.5 и посмотрите, уйдет ли проблема.

Также на вашей осциллограмме смущает скачок углового положения. Выведите другой угол с датчика, например Механическ.угол в метках или электрический угол - думаю, причина в том, что сбоит датчик положения, угол векторки прыгает, прикладывается напряжение совсем не то, что нужно, токи улетают... ну и аппаратка срабатывает от превышения тока, возможно.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 108
Зарегистрирован: 15 фев 2017, 18:07

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение petrovitch »

'ШИМ' --> 'U_огр [5105.03]' = 0.5 не очень помогает и приводит к ограничению максимальной скорости.
Беспокоит и другое: не могу избавиться от перерегулирования в контуре скорости. Коэффициент интегральной составляющей всего 0.001!
При увеличении только хуже. Повышать частоту обсчёта контуров?
Изображение
Вложения
Перерегулирование по скорости.png
Перерегулирование по скорости.png (22.03 КБ) 271 просмотр
Аватара пользователя
Лашкевич
Сообщения: 374
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: Проект MotorControlDemo для микроконтроллеров серии 1921ВК01

Сообщение Лашкевич »

При отладке любого регулятора надо смотреть на выход регулятора, в данном случае на задание тока, а также на то, как этот ток воспроизводится нижестоящим контуром (ток по оси q). У вас на графиках этого нет, а это ключ к пониманию происходящего.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
Ответить

Вернуться в «32-разрядные микроконтроллеры»