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

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

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

KVV
Сообщения: 4
Зарегистрирован: 02 фев 2021, 15:44
Предприятие: НПП Темп

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

Сообщение KVV »

KVV писал(а): 19 фев 2021, 13:19 Попробовал... Результат предсказуем. Домножение скоростей на частоту хх не влияет никак, влияет на момент по всё видимости, с ним надо отдельно разбираться.
Погорячился я с таким ответом. В общем, влияет, но в меньшую сторону, т.е. обороты ещё сильнее падают - до 300.
На увеличение скорости - растет поток - обороты падают. На уменьшение потока растет скорость. Всё логично...

На более ли менее правильный результат (с точки зрения скорости и токов при номинальной нагрузке) становится похоже, если скорости домножить на количество пар полюсов, а присваеваемое потокосцепление магнитов поделить на квадрат числа пар полюсов. Как это не ужасно звучит.... Пока у меня КПД больше единицы остается, но тут может у меня неверно мощность вычисляется, буду проверять дальше....
По модели же вопросы остаются в силе...
SavkinDmI
Сообщения: 1
Зарегистрирован: 20 фев 2021, 12:17
Предприятие: ООО "НПФ Вектор"

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

Сообщение SavkinDmI »

Добрый день.
Сама модель в осях d-q выглядит адекватной, за исключением того, что действительно частоты вращения в уравнениях используются механические и их надо домножить на число пар полюсов.
То что в описании представлена модель в осях alfa-betta, а в d-q модель не описана - это упущение описания. Будем исправлять.

Дам сюда выдержки из учебного пособия Ключева с представленной моделью в осях d-q.

У нас есть подозрение, что проблема может крыться в неправильной величине прикладываемого к модели двигателя напряжения.
Попробуем это проверить.
Вложения
2021-02-20_11-27-02.png
2021-02-20_11-27-02.png (65.36 КБ) 1078 просмотров
2021-02-20_11-28-52.png
2021-02-20_11-28-52.png (49.87 КБ) 1078 просмотров
2021-02-20_11-29-53.png
2021-02-20_11-29-53.png (60.49 КБ) 1078 просмотров
__________________________________________
Савкин Дмитрий, ООО "НПФ Вектор", НИУ МЭИ
Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

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

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

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

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

Сообщение petrovitch »

Отладил структуру векторного управления, но есть вопросы.

Нет реверса, пока не установить параметр "Рекуперация" 5114.03 в 1. Так и должно быть?

И как тогда реализуются режимы генераторного торможения при использовании стандартной платы инвертора от TI?
Куда идёт сброс энергии, если нет тормозного резистора?

У меня блок питания с защитой от превышения напряжения и обычно возникает авария (Понижение U ЗПТ) при срабатывании защиты БП.

Другой вопрос - это логика значений номеров режимов в системе в файле build.h. (...4, 5, 10(?), 55(?), ...).
Если мне необходимо создать свою структуру управления, какой номер брать?
Аватара пользователя
Лашкевич
Сообщения: 373
Зарегистрирован: 13 май 2015, 13:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

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

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

Флаг рекуперации там сделан по-простому для направления только вперёд. Если нужен реверс, работу флага рекуперация надо переделать в зависимости от знака текущей скорости.

Сброс энергии в TI никуда не идёт, если рекуперативная энергия двигателя превышает потери в системе, звено будет расти.

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

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

Сообщение petrovitch »

Флаг рекуперации там сделан по-простому для направления только вперёд. Если нужен реверс, работу флага рекуперация надо переделать в зависимости от знака текущей скорости.
Если правильно понял, то установкой значения "Рекуперация" регулируется скорость либо в одном, либо в другом направлении?
Структура управления 5 предусматривает вращение двигателя только в одном направлении?

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

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

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

Читайте код. Он будет лучше объяснений, как работает та или иная переменная.

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

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

Сообщение petrovitch »

Желая сделать свой контур регулирования скорости со своим способом коммутации ключей, для начала по образу и подобию скопировал часть кода с векторной системы управления в новый блок switch - case в файле SM_Ctrl и предварительно прописав в build.h новый define для такого контура. Те же действия проделал и с методом ШИМ. Меняю в UniCON в настройках СУ код на определённый мной и так же в ШИМ.
В результате почему-то за входе задатчика интенсивности 0, на выходе - 0, система молчит.

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

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

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

Ну отлаживать надо. Посмотрите, как дискретный автомат по стейтам ходит, может быть, вы в стейте RUN переход на свой не прописали. Пользуйтесь переменными debugW1 - 4, напишите debugW1++ где-нибудь в своём коде, чтобы понять, считается он или нет. Дебаги эти выведены в юникон. Или если не подавать силу, можно прямо житагом поотлаживать по точкам останова
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
porsche2492
Сообщения: 70
Зарегистрирован: 21 янв 2018, 00:42
Предприятие: Авиаавтоматика
Откуда: Курск

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

Сообщение porsche2492 »

Почему при задании скорости 800 об/мин (5112h01) в программе COODedit Basic v.7.3.9 значение скорости отличается от того которое выводится в программе UniCon v.4.1.13? Unicon выводит 12000 об/мин.
Ответить

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