Н.В. Клиначев

Комплект разработчика устройств управления электродвигателями

Рабочие файлы: [MCKIT-50V-5A.zip] [MCKIT-KNV.zip] [MCKIT-50V-5A.jpg]
[ЦСУ Настройки ЛАЧХ] [Си ARM Sensorless PMSM] [Terminal Modbus RS-485]

Описан комплект разработчика устройств управления электродвигателями: электрическая принципиальная схема, печатная плата, gerber-файлы, перечень элементов, проекты пошаговой разработки программного кода. Комплект рекомендуется учебным заведениям и инженерам предприятий, где ведутся разработки частотных преобразователей. Аппаратная часть комплекта поддерживает режимы векторного электропривода и синхронно-векторного выпрямителя. Подхват синхронной машины или промешенной сети. Функционирование без датчика положения. Связь с компьютером.

Ключевые слова: электропривод, векторный выпрямитель, АВН, ККМ, электрическая принципиальная схема, учебный комплект, motor control KIT.

Введение

Разработка частотных преобразователей для управления электродвигателями – это сложная и дорогостоящая задача. Задача, которую необходимо решать в условиях наличия широкого предложения от мировых лидеров электронной промышленности Siemens, ABB, Schneider Electric, Delta electronics. Которые готовы продать электроприводы для лифта, швейной машинки, ветряка, но не для ключевых технологических процессов (газотурбинные энергоустановки, атомная, нефтяная, космическая промышленности). В статье описывается комплект, который необходим разработчику цифровых систем управления для электроприводов, синхронно-векторных выпрямителей, многофазных источников вторичного электропитания. С одной стороны векторные системы управления сложны, отлаживать соответствующий программный код непросто. С другой стороны конечный результат – программа для управляющего микроконтроллера получается похожей для любых приводов. Например, автор работал с частотными преобразователями от фирм Siemens, Schneider Electric и Delta electronics. Преобразователи названных фирм имеют высокую чувствительность к погрешности ввода конструктивного коэффициента машины. Десятипроцентная погрешность приводит к резкому увеличению тока холостого хода машины (в два и более раз). Согласно теории электропривода подобное не должно наблюдаться. Это, безусловно, ошибка в программе для управляющего микроконтроллера, которую можно исправить. Поэтому нам необходимо делать собственные частотные преобразователи, не повторяя слепо чужие решения. Но решать эту задачу с конечным инвертером (высоковольтным или сильноточным) – недопустимо. В процессе разработки ошибки будут – нет инженера, который все знает, все умеет. А цена упомянутой аппаратной части – дороже его труда. Решение очевидно – отлаживать системы управления разумно на низковольтных, слаботочных комплектах. Недорого, безопасно, удобно.

                                                        Таблица 1
+---------------------------------------------------------------+
|                  Паспорт комплекта (MCKIT)                    |
+---------------------------------------------------------------+
| Номинальное напряжение dc-шины                      50 В      |
| Номинальный ток стойки моста (амплитуда)             5 А      |
| Процессор                       STM32F303xB / STM32F303xC     |
|                                 LQFP48 (7 × 7 mm)             |
| RS-485                          с гальванической развязкой    |
| Режимы работы                   с датчиками или без           |
|                                 векторный электропривод       |
|                                 векторный выпрямитель (АВН)   |
| Тормозной резистор              внутренний 10 Вт              |
|                                 или внешний                   |
| Входы цифровые                  датчики Холла, 3 шт           |
|                                 GPIO, 2 шт                    |
| Входы аналоговые                резистор (задание скорости)   |
|                                 СКВТ / резольвер / редуктосин |
| Выходы аналоговые               ЦАП, 2 канала, 12-бит         |
+---------------------------------------------------------------+

Данные паспорта комплекта приведены в таблице 1. Наиболее дешевый двигатель, подходящий по паспортным данным к комплекту, доступен для покупки и имеет много аналогов (FL42BLS02, BLY172S_24V_4000, DN4261_24_053, DT4260_24_055_04, http://ru.aliexpress.com/wholesale?SearchText=42BLS01). Но действительно удобно отлаживать программный код системы управления с моментным двигателем. Подходящим является мотор-колесо велосипеда, которое можно приобрести у ОАО «МиассЭлектроАппарат», тип по каталогу ДБУ 260-120-60 или в Китае. Заметим, что системы управления частотных преобразователей отлаживаются на холостом ходу, поэтому подобными комплектами можно крутить самые разные двигатели. И на 3 ватта и на 30 кВт. И с одной парой полюсов и с 34-мя. И на 0.2 А и на 2 кА. С конструктивными коэффициентами 0.01 и 40 В/(рад/сек).

EasyEDA – комплекс программных средств для разработки электрических принципиальных схем и печатных плат

20 лет назад автор использовал программу PCAD для разработки печатных плат. И знал об ошибке в базах данных компонентов – для разъемов серии IDC (или PLS) определены отверстия меньшего диаметра, чем требуется. Ошибка распространена и 20 лет не исправляется. Например, о ней пишет для своих клиентов главный инженер зеленоградского предприятия производящего печатные платы [1]. Подобное же предприятие в Китае помогло четырем отважным китайцам. И они творят революцию – успешно перевели на веб-платформу комплекс программных средств для разработки электрических принципиальных схем и печатных плат. Называли его EasyEDA [2]. Электрическая принципиальная схема описываемого комплекта и печатная платы были разработаны автором с помощью этого инструментария. Некоторые проблемы роста у программного комплекса имеются. Но впечатление положительное. Можно предполагать, что через несколько лет главный инженер китайского предприятия не будет предупреждать своих клиентов об упомянутых разъемах. Поскольку конструкторскую базу данных контролирует его предприятие, а совершенствуют её, т.е. фактически работают на это предприятие тысячи сторонних инженеров. В том числе и автор данных строк, исправивший ошибку в базе.

Электрическая принципиальная схема частотного преобразователя

Электрическая принципиальная схема комплекта разработчика устройств управления электродвигателями, которую китайцы уже получили, представлена на рис. 1. В верхней части схемы изображены четыре драйвера для управления затворами силовых транзисторов. Три драйвера обслуживают стойки силового моста. Четвертый – ключ тормозного резистора. Драйверы обеспечивают ток перезаряда емкости затвора 1 А. Соответственно, в стойках можно использовать транзисторы с током стока в 10..20 раз большим. Для уменьшения амплитуды переходного процесса на шине постоянного тока, каждая стойка силового моста зашунтирована керамическим конденсатором. Слева от силового моста изображены: тормозной резистор, ключ и винтовой клеммный разъем. Если тормозные режимы непродолжительны, резистор может быть распаян на плате. В противном случае, во избежание нарушения теплового баланса, резистор можно расположить вне платы и подключить с помощью клеммника. Справа от моста изображены операционные усилители нормирующие сигналы датчиков тока. Физически эти усилители являются составной частью микропроцессора и не входят в перечень элементов (см. BOM в прилагаемом архиве). Еще правее, на токовых зеркалах собрана схема нормирования сигнала обратной связи по напряжению шины постоянного тока. Она определяет минимальное и максимальное напряжение, которые могут быть измерены аналогово-цифровым преобразователем микропроцессора (при указанных номиналах резисторов обвязки – от 20 до 52 В). Ниже силового моста и ключа тормозного резистора изображены делители напряжения, которые используются для измерения противо-ЭДС свободно вращающейся синхронной машины с возбуждением от постоянных магнитов. Измерение противо-ЭДС машины необходимо для её подхвата. Допустимое отклонение номинала резисторов делителей – менее 1 %. В связи с тем, что диапазон входных сигналов для АЦП микропроцессора серии STM32F30x в дифференциальном режиме должен принадлежать диапазону от Vss + 0.3 В до Vdd - 0.3 В, применены сопротивления подтяжки линейных потенциалов к шине +3 B. Можно не распаивать эти делители, соответствующие входы двух аналогово-цифровых преобразователей выведены и на разъем P1. К ним можно подключить ортогональные сигналы редуктосина, резольвера или СКВТ (выход ЦАП-а на разъеме имеется). Альтернативно, к тому же разъему можно подключить датчики Холла, если таковыми оборудована синхронная машина. 13-ый, 14-ый и 15-ый контакты разъема предназначены для подключения внешнего переменного резистора, который, в зависимости от решаемой задачи, может быть использован для задания скорости, момента, напряжения. Рядом с микропроцессором показан SWD-разъем P2 интерфейса прошивки микропроцессора и отладки кода с последовательным доступом. Для облегчения процесса отладки предусмотрены два светодиода, тактовые кнопки пользователя S2 и сброса микропроцессора S1.

Электрическая принципиальная схема комплекта разработчика устройств управления электродвигателями (частотного преобразователя)
Рис. 1. Электрическая принципиальная схема комплекта разработчика
устройств управления электродвигателями

В нижней части схемы изображены импульсный преобразователь напряжения и линейные стабилизаторы, питающие фрагменты схемы. Драйверы силовых ключей потребляют ток импульсами. Но средний ток не превышает 10..20 мА, поэтому для их питания применен линейный стабилизатор MC78M12. Микропроцессор и датчики питаются от +3 и +5 В. Поэтому входное напряжение первоначально понижается импульсным преобразователем до +5.5В. За тем применены линейные стабилизаторы для независимого питания цифровой и аналоговой части микропроцессора. Датчики тока (микросхемы ACS712) запитаны через LRC-фильтр, который подавляет шум импульсного преобразователя. Напряжения питания силового моста и обслуживающих цепей разделены. Микросхему импульсного преобразователя можно запитать от напряжения в диапазоне от 15 до 35 В. На силовой мост можно подать от 20 до 50 В. Допустимо объединение цепей питания на винтовом клеммном разъеме.

Для измерения тока можно применить одно из четырех решений. Первое – установить шунты в стойки моста и нормировать сигналы операционными усилителями в дифференциальном включении. С одной стороны это решение характеризуется самой широкой полосой пропускания, поэтому может быть использовано, в том числе и для защиты моста от такой аварийной ситуации как короткое замыкание на клеммном разъеме. Но все же, быстродействия этой схемы не хватает при функционировании синхронной машины на холостом ходу в случае, если применяется пространственно-векторная модуляция. Для многих решений динамические потери в транзисторах – это первый сдерживающий фактор, поэтому шунты в стойках лучше не применять. Второе, третье, четвертое, решения, о которых скажем, используются в более ответственных приложениях. Они обеспечивают гальваническую развязку, но характеризуются меньшей полосой. Для системы управления это не критично. И даже возможно обеспечить защиту силового моста как от неправильного соединения секций машины, так и от межвиткового замыкания в статоре, но не от короткого замыкания на клеммном разъеме. Если мост сильноточный, то лучше применять датчики тока на основе эффекта Холла (HAS 600-S, FHS 40-P/SP600, ACS712). Но сигнал датчика Холла имеет малую амплитуду. Для его нормирования используют операционные усилители либо с повторно-кратковременной самоустановкой нуля, либо с периодической компенсацией дрейфа нуля. Плюс требуется время на ортогональную обработку сигналов для компенсации погрешности установки кристалла на проводнике и погрешности вызванной внешним магнитным полем. Задержка у таких датчиков – от 3 мкс. Еще одно решение для ответственных приложений заключается в установке шунтов в цепи секций статора и применении микросхем развязки аналоговых сигналов (HCPL-788J, HCPL-7851/HCPL-7840 или ACPL-C79B/C79A/C790), схемотехника которых основана на сигма-дельта модуляторе, чей сигнал передается через барьер гальванической развязки оптроном с логическим выходом. Очевидно, что применяемый фильтр, усредняющий цифровой сигнал, не может не вносить задержку. Её типовая величина для названных микросхем превышает 5 мкс. Последнее решение – нормирующий усилитель IR2175 с бутстрепным питанием (от коммутируемого конденсатора) и ШИМ-выходом не обеспечивает гальваническую развязку и предполагает цифровое усреднение, вносящее еще большую задержку.

Поскольку отказ от пространственно-векторной модуляции недопустим, для измерения тока в комплекте применяются микросхемы ACS712. Но защиты от короткого замыкания на клеммном разъеме нет.

Для подключения комплекта к компьютеру предусмотрен асинхронный интерфейс последовательной придачи данных RS-485. В комплекте применена микросхема приемо-передатчика ADM2582E в полудуплексном включении, имеющая гальваническую развязку и встроенный, включая трансформатор, DC/DC конвертер. Предполагается, что со стороны компьютера будет использован дешевый преобразователь интерфейсов USB / RS-485 без гальванической развязки китайского производства.

Для прошивки флешь-памяти процессора и отладки программного кода, инженеру необходимо иметь любую из оценочных плат с ARM-процессором и SWD-разъемом от фирмы ST Microelectronics, например, STM32F3DISCOVERY или фирменный программатор с гальванической развязкой.

Печатная плата частотного преобразователя

Экранная копия чертежа печатной платы комплекта разработчика устройств управления электродвигателями представлена на рис. 1. В конструкции отдано предпочтение SMD-элементам монтируемым на поверхность печатной платы. Размер корпуса элементов – 1206. Поэтому плату не сложно распаять вручную. За исключением трех силовых транзисторов все элементы монтируются с одной стороны платы. Силовые транзисторы в полностью изолированном корпусе (TO-220FP) расположены на печатной плате слева. Они монтируются парами, как элементы поверхностного монтажа и стягиваются болтами М3. Отверстия предусмотрены. Тепло отводится в печатную плату. Или, торец платы можно отрезать и расположить между транзисторами алюминиевую пластину теплоотвода (10..15 см^2 на ватт).

Печатная плата комплекта разработчика устройств управления электродвигателями
Рис. 2. Печатная плата комплекта разработчика
устройств управления электродвигателями

Есть особенность, которую должен учитывать разработчик устройств управления электродвигателями. Обратите внимание на широкую дорожку, проходящую воль верхнего края печатной платы от разъема питания J3 до транзисторов силового моста. При токе 10 А падение напряжения на этом участке составит около 0.3 В. Соответственно рассеивать эта дорожка будет 3 Вт (больше чем транзисторы). И заметьте, насколько усложнилась бы задача разводки платы, если токовые шунты были бы установлены в стойках моста. Казалось бы, что можно заказать плату с более толстой фольгой – потери будут меньше. Для расчета количественных показателей можно рекомендовать online-калькулятор расчёта ширины дорожки печатной платы [3]. Однако станки производящие печатные платы имеют технологическое ограничение. Если зазоры между дорожками на плате маленькие, то невозможно протравить толстую фольгу. В данном случае шаг между контактными площадками, предназначенными для распайки процессора – 0.5 мм. Минимальный зазор – 0.162 мм. При таком техническом задании зеленоградский завод [4] изготовит плату с толщиной фольги не более 35 мкм. Именно по этой причине на фотографиях плат регуляторов хода вентильных двигателей многомоторных беспилотных летательных аппаратов можно увидеть дорожки, по всей длине которых припаян медный провод. Но в данном случае – комплект учебный – силовые дорожки закрыты маской (изолированы). В имеющиеся же переходные отверстия в обязательном порядке должны быть запаяны снижающие их омическое сопротивление перемычки из медного провода.

Комплект Gerber-файлов для заказа печатной платы

Описанный комплект разработчика устройств управления электродвигателями вы можете собрать самостоятельно. Ниже заголовка данной статьи имеется гиперссылка на архив рабочих фалов проекта. В папке SCH имеется файл с расширением json. Это схема, которую можно редактировать в программе EasyEDA.

  1. Воспользуйтесь браузером FF, Сh или Eg. Откройте сайт https://easyeda.com/editor.
  2. Можно игнорировать процедуру регистрации. Воспользуйтесь командой меню File > Open EasyEDA file. Укажите файл схемы.
  3. Вы можете редактировать схему и аналогичным образом сохранить.

Обратите внимание, для каждого элемента схемы определен пользовательский атрибут, имеющий имя ChipDip. Это уникальный код радиоэлемента – товара в магазине «Чип и Дип» (http://www.chipdip.ru). Воспользуйтесь командой меню Miscelaneous > BOM report. Сервер сгенерирует для вас перечень элементов (файл Экселя). Используя коды, вы можете найти все элементы в магазине.

Аналогичным образом вы можете открыть json-файл с чертежом печатной платы из папки PCB. После открытия файла вам будет доступна команда просмотра печатной платы в фотографическом виде и генерации комплекта Gerber-файлов для заказа печатной платы. Если вы не пожелаете заказать плату в Китае, то сможете скачать комплект Gerber-файлов с сервера (копия имеется в архиве). Архив файлов, без вопросов, примет зеленоградский завод изготовления печатных плат.

В комплект Gerber-файлов входят файлы с текстовым описанием последовательности команд направленных на прорисовку различных элементов топологии печатной платы с помощью графопостроителя или промышленного фотоплоттера (несуществующей ныне фирмы Gerber Systems Corporation), а так же файлы с командами для сверлильного станка (EXCELLON). Команды можно преобразовать и визуализировать в браузере. Подобный сервис – EasyEDA Gerber Viewer доступен. Запакуйте в архив файлы из папки Gerber и загрузите на сервер [5] разработчиков программы EasyEDA. Вы наглядно увидите, что изготовит для вас завод производящий печатные платы.

Проекты пошаговой разработки программного кода цифровой системы управления

В дополнение к аппаратной части, инженеру предоставлен комплект проектов для пошаговой разработки программного кода векторной системы управления. Гиперссылка на архив имеется ниже заголовка данной статьи. Архив включает "стандартную библиотеку драйверов периферии процессора STM32F30x". Поэтому после распаковки и открытия файла рабочего пространства интегрированной среды разработки IAR, любой из проектов успешно транслируется без каких либо дополнительных настроек. Стандартную библиотеку (от производителя процессора) можно и обновить, но некоторая коррекция кода потребуется (займет час рабочего времени). В прочем, это не касается кода системы управления – компилятор любого поставщика его странслирует, лишь бы целевой процессор имел 32-х разрядное целочисленное АЛУ. В каждом из проектов имеются 7 файлов: mckits.h, motors.h, mcu-s.h, mcu-s.c, mclib.h, mclib.c, main.c. От проекта к проекту их содержимое дополняется. В частности, это базы данных силовых мостов, паспортных данных двигателей, микропроцессоров. Макросы математических преобразований и листинг главной программы. Проекты составлены таким образом, чтобы инженер мог быстро найти и увидеть в названных файлах добавляемые на каждом шаге фрагменты кода. Для чего рекомендуется использовать инструменты файлового менеджера Total Commander "Синхронизация каталогов" и "Сравнение содержимого файлов". Перечислим наименования проектов с краткими описаниями.

00_Tmplate – шаблон проекта интегрированной среды разработки IAR, к которому подключена "стандартная библиотека драйверов периферии процессора STM32F30x". Можно делать копии содержимого данной папки в родительской, переименовывать её и одноименные файлы с расширениями ewp, ewd, dep. Вновь созданный проект следует подключить и рабочему пространству командой меню программы IAR.

01_Timer – скелет программы цифровой системы управления. Включает функции конфигурирования и запуска периферии процессора (MCU_Init, MCU_Start). А так же функцию обработки прерывания таймера. Главный счетчик таймера настраивается так, чтобы период счета таймера соответствовал периоду коммутации ключей. А счетчик реверсов – кратно увеличивает период между прерываниями, задавая тем самым требуемый период дискретизации цифровой системы управления. Контроль периода дискретизации осуществляется по периоду мигания светодиода.

02_DAC – проект, как и все последующие, основанный на предыдущем, в котором сконфигурировано периферийное устройство процессора – ЦАП. Это инструмент, который существенно облегчает разработку цифровых систем управления в реальном времени. Для контроля движения координат системы предполагается подключение осциллографа к соответствующему выводу процессора.

03_FSM – добавлен шаблон кода "программной машины состояний" для низкоприоритетных операций. Для современной элементной базы оптимальна следующая архитектура цифровых систем управления. Код системы управления (код цифровой обработки сигналов и регуляторов) – линейный (одна функция). И является дополнением к "аппаратной машине состояний". Последняя конфигурируется из периферийных устройств процессора: таймер, АЦП, контролер ПДП. И не требует ресурсов ядра процессора для организации взаимодействия в реальном времени. Таймер сам запускает АЦП. АЦП формирует запрос контроллеру ПДП. Последний, заполнив буфер формирует прерывание. Но управляемый объект может находиться в разных состояниях – включен / выключен / подхват / синхронное вращение и пр. Задача перевода объекта из одного состояния в другое решается "программной машиной состояний". В данном проекте по нажатию кнопки включается и выключается светодиод.

04_1s – это первый проект, в котором демонстрируется особый стиль написания вычислительного кода с плавающей точкой, при соблюдении которого трансляторы генерируют команды целочисленной арифметики. Неотъемлемыми атрибутами стиля являются: константа GL_Q, тип данных _iq, макросы _IQ(A) и _IQmpy(A, B). Стиль использован при написании кода интегратора угла. Выходная координата этого преобразователя – закодированное в целом типе данных число с плавающей точкой, принадлежащее диапазону от -3.14 до +3.14 – масштабируется и выводиться в ЦАП для контроля осциллографом. Программная машина состояний опрашивает кнопку пользователя, по событию нажатия – меняет знак интегрируемой константы.

05_sin – для векторных систем управления необходимы синусоидальный и косинусоидальный преобразователи. В данном проекте прототип библиотеки IQ-Math library и Motor Control library дополнен макросами _IQsin и _IQcos, которые вычисляют одноименные функции по двум членам степенного ряда с приемлемой для приложений электропривода / электроснабжения абсолютной погрешностью 4.5e-3. Аргумент для функций вычисляет интегратор угла. Контроль синтеза визуальный, с применением осциллографа. Угол и синус, в перемежающемся режиме, выводятся в ЦАП. Кнопка пользователя задействована для реверса ортогональной последовательности.

06_Clarke – преобразователь Кларка (преобразователь числа фаз) – еще оно дополнение к прототипу библиотеки IQ-Math library и Motor Control library. Угол и трехфазная синусоидальная последовательность, в перемежающемся режиме, выводятся в ЦАП. Преобразователь Парка и соответствующий макрос инженеру приложено добавить в программу самостоятельно. Подсмотреть решение можно в старших проектах.

07_PWM3Ph – питание драйвера верхнего ключа стойки силового моста может осуществляться от независимого гальванически развязанного источника или от бутстрепного (коммутируемого) конденсатора. В первом случае допустима стопроцентная ШИ-модуляция (пределы _IQ(-1.0) и _IQ(+1.0)-1). Во втором случае, чтобы конденсатор не разрядился, требуется ограничение модулирующего сигнала. Способ ограничения зависит от вида модуляции. Если используется синусоидальная модуляция, то ограничение должно быть симметричным (по модулю от 85% до 95%). Если пространственно-векторная модуляция, то сигнал должен быть ограничен лишь верхним пределом. В данном проекте инженер должен выбрать способ, пределы ограничения модулирующего сигнала и проконтролировать наличие бестоковой паузы.

08_OPAMP – процедура конфигурирования периферийных устройств ARM-процессора унифицирована. Требуется заполнить структуру с настройками и передать её соответствующей функции. В данном проекте конфигурируются операционные усилители процессора STM32F30x, которые используются для нормирования сигналов датчиков тока. На данном этапе, если инженер адаптирует программу к новой аппаратной части, можно заняться тюнингом делителей, которые определяют уровни питающего напряжения и смещения нуля схем нормирования сигналов.

09_ADC – в этом проекте включены и сконфигурированы для работы в паре два АЦП процессора. Запускает преобразователи таймер. В прерывании таймера, из регистров АЦП считываются результаты преобразований. Далее по коду, простейшими операциями униполярные 12-ти битные значения приводятся к относительным величинам в диапазоне от _IQ(-1.0) до _IQ(+1.0). Во время отладки кода предполагается, что инженер ознакомиться с итерационной процедурой подбора констант CS_U0 и CS_V0, с помощью которых компенсируются смещения нуля датчиков тока соответствующих фаз. Для визуального контроля, в перемежающемся режиме в ЦАП выводятся идеальный ноль и смещение нуля датчика усиленное в 8 раз. Кнопка пользователя переключает канал, для которого выполняется тюнинг.

10_DMA – Мышка за кошку, Кошка за Жучку, Жучка за внучку, Внучка за бабку, Бабка за дедку, Дедка за репку – так и работает аппаратная машина состояний необходимая для построения цифровой управляющей системы. Таймер, отсчитав период ШИМ, запускает АЦП. АЦП, выполнив преобразование, запрашивает обслуживание у контроллера ПДП. Контроллер, заполнив выборками буфер в ОЗУ, формирует прерывание. Для решаемой задачи, аппаратная машина состояний в этом проекте сконфигурирована полностью. Обработка результатов оцифровки включает операцию усреднения нескольких выборок.

11_Udc – процессор STM32F30x имеет две пары АЦ-преобразователей. Первая пара отвечает за измерение токов статора и авто-коррекцию смещений нуля соответствующих датчиков. Вторая пара АЦП, совместно с обслуживающим их контроллером ПДП, конфигурируются в данном проекте. Они задействованы для измерений напряжений шины постоянного тока, аналогового входа, фазных противо-ЭДС. На данном этапе, при адаптации программы к новой аппаратной части, задача инженера заключается в уточнении параметров датчика напряжения шины постоянного тока – констант BASE_VOLTAGE и MIN__VOLTAGE. Код АЦП, приведенный в переменной McKit.Vdc к относительному масштабу [0.0, 1.0], выводиться в ЦАП.

12_BEMF – синхронный двигатель с возбуждением от постоянных магнитов сам по себе является датчиком положения ротора. Три диода и десяток резисторов, подключенных к процессору – хоть и не лучше схемотехническое решение, но решать задачу подхвата ротора или промышленной сети можно. Кнопка пользователя задействована для коммутации выводимых в ЦАП координат наблюдателя. Контролируя осциллограммы противо-ЭДС фаз, инженер должен настроить смещения нуля соответствующих датчиков (ES_U0, ES_V0). Ориентируясь на амплитуду осциллограмм составляющих потокосцепления по осям alpha и beta – подобрать весовой коэффициент датчиков противо-ЭДС статора (K_BEMF). И выбрать глубину обратной связи, охватывающей интеграторы наблюдателя потокосцепления (параметр WF), по допустимой величине аддитивной составляющей на их выходах. Итог – вращаем моментный двигатель рукой – видим осциллограмму угла.

13_11-12 – двигатель выключен – нужно наблюдать за противо-ЭДС; измерять напряжение на шине постоянного тока незачем. Частотный преобразователь крутит двигатель – нужно измерять напряжение на шине постоянного тока; а противо-ЭДС для измерений недоступна. Лишних АЦП нет. Нужно перенастраивать имеющуюся пару преобразователей. В проекте определены соответствующие макросы реконфигурации.

14_FOC – ПОЕХАЛИ! Да, без датчика напряжения. Да, без подхвата. Да, подвирает наблюдатель скорости. А тормозной резистор придумали враги. Но едем! :-) Главное – не разогнаться так, чтоб лабораторный источник или силовой мост обратным напряжением не спалило. И, это важно. Напишите плакат и прицепите к машине с конструктивным коэффициентом 10..40. "Руками машину не крутить!". Есть, кстати, у каждого в старых запасах стабилитроны на 50 В.

15_Udc – осваиваем безопасное движение на велосипеде. В этой программе замкнута обратная связь по напряжению шины постоянного тока. Вне зависимости от количества съеденных пирожков можем поддерживать заданную скорость движения. Если программа адаптируется для частотного преобразователя с независимым питанием драйвера верхнего ключа, то можно смело включить пространственно-векторную модуляцию.

16_FLY – отвлечемся от игрушки. Мост – 1000 В. Пытаемся запустить соответствующую машину. Используем пространственно-векторную модуляцию. Чуть откроем верхние транзисторы (на 1/100 периода) – а ток уже 100 А. Регуляторы тока не способны сформировать синусоиду. Ток искаженной формы раскачивает контур ФАПЧ. Запуск невозможен. Возвращаемся к игрушке и дорабатываем программу. Запускаем машину, используя синусоидальную модуляцию. После подхвата, налету, выполняем переход на пространственно-векторную.

17_OVR – ORC, ORV, ORP, ORM – "Шаг влево, шаг вправо – расстрел!". Точнее "расстрел" транзисторов был возможен в предыдущих проектах. В этом реализованы базовые защиты: по току, по напряжению, по мощности, по модуляции. Плата подключена к компьютеру с помощью витой пары и преобразователя интерфейсов USB / RS-485. Включаем / выключаем привод, меняем уставки из терминальной программы. В любой момент закрываем и открываем программу вновь. Программа опрашивает частотный преобразователь и подстраивается под его состояние. Убеждаемся, что привод функционирует. В терминальной программе указываем любую из 12 пар внутренних координат системы управления. Подключаем к ЦАП-у микропроцессора осциллограф. И романтично произносим: "Я тебя – Вижу"!

18_CCCP – этот проект является основой для реализации двузонного регулирования скорости СДПМ. CCCP-стратегия ослабления поля – одна из нескольких и предназначена для тепловых испытаний частотного преобразователя и двигателя без нагрузки. Базовая функциональность соответствующего вычислительного кода (FLUX_WEAKENING_CCCP_MACRO) состоит в ограничении передаваемой через зазор двигателя электромагнитной мощности. Функция ослабления поля статора – дополнительная опция, включается подачей задающего сигнала, fwl.uId, на соответствующий регулятор тока.

19_CVCP – стратегия ослабления поля статора СДПМ, предполагающая ограничение мощности и сдерживания роста питающего напряжения, характеризуется высоким КПД и предпочтительна для высоконадёжных приводов, к которым не предъявляется требование поддержки форсированного режима работы электромашины (общественный транспорт с электромеханической трансмиссией, приводы станков и инструментов). В структуру "Вычислителя пределов тока" (FWL_TypeDef), впервые представленную в предшествующем проекте, добавлены новые поля (переменные). Макрос FLUX_WEAKENING_CVCP_MACRO дополнен вычислительным кодом ПИ-регулятора напряжения статора, который и ослабляет поле, формируя задание, fwl.uId, для соответствующего регулятора тока. Как и в предыдущем проекте, эту функцию можно отключить, оставив лишь отсечку по мощности.

20_CVMT – Стратегии ослабления поля CCCP и CVCP являются двумя крайними вариантами, между которыми существует еще несколько. CVMT-стратегия лишь одна из них. В первом приближении, при заданных параметрах силового моста (предел по напряжению, предел по току) она позволяет развить максимальный момент. Как и в предшествующих проектах, основа кода реализующего ослабление поля – это структура "Вычислителя пределов тока" (FWL_TypeDef). Три проекта написаны так, чтобы в режиме сравнения файлов по содержимому однозначно идентифицировалось все, что с ней связано (параметры, межблочные связи, расчетный код). Простейший анализ позволит объединить все три стратегии в одном проекте, чтобы один привод мог функционировать в разных режимах. Выполняя эксперименты, будьте внимательны, ослабление поля может до двух раз расширить диапазон регулирования скорости СДПМ. Если сработает защита (ORE) – противо-ЭДС может поднять напряжение на шине постоянного тока до двух раз с тормозным резистором, и до 4-х раз – без.

21_BRK – добавлен код регулятора ключа тормозного резистора. Плата комплекта подключена к лабораторному источнику через диод. После запуска периодически реверсируется уставка скорости. Можно оценить момент инерции. Удобно настраивать все регуляторы. Дополнительно в этом проекте показано, каким образом можно задействовать следящий за ортогональными проекциями вектора потокосцепления контур фазовой автоподстройки частоты (ФАПЧ) для вычисления углового положения ротора. (В предыдущих проектах для решения этой задачи использовалась функция вычисления арктангенса с операцией деления).

22_CAP – существенно доработана программная машина состояний частотного преобразователя. Реализована функция подхвата. Из одного состояния в другое частотный преобразователь переходит без вмешательства человека. Крутим мотор-колесо коляски рукой, нажимаем кнопку "Пуск". Без каких либо перегрузок преобразователь подхватывает двигатель, сохраняя направление вращения. Останавливаем двигатель, запускаем вновь. Преобразователь замораживает поле, ориентируя ротор. За тем разгоняет его в синхронном режиме. И подхватывает.

23_SVR – подключаем частотный преобразователь не к синхронному двигателю, а к трехфазному трансформатору. Переключаем несколько указателей в программе, перенастраиваем регуляторы. Нажимаем кнопку "Пуск". Преобразователь подхватывает сеть и выдает стабилизированное напряжение на шине постоянного тока. Резюме. Имеем выпрямитель, потребляющий ток синусоидальной формы с коэффициентом мощности трансформатора. Путаем устройство. Меняем последовательность фаз при подключении к сети – работает чудо враждебной техники. Подключаем к аккумуляторам с большим напряжением – фиксируем реверс энергии в промышленную сеть.

24_RS485 – это шаблон программной реализации подчиненного Modbus-устройства, чей набор функциональных возможностей обеспечивает базовые требования к удаленному терминальному контролю любого электропривода. С помощью преобразователя интерфейсов USB / RS-485 подключаем плату к компьютеру. Запускаем терминальную программу. Программа посылает запросы. Процессор платы шлёт ответные пакеты данных. Нажимаем кнопку Event в окне программы. Убеждаемся в том, что она дублирует действие кнопки пользователя на плате. Шаблон дополняет проект "05_sin". См. соответствующие разъяснения выше по тексту.

Ответ на главный вопрос жизни, вселенной и бездатчикового электропривода

– 18. – 18? – Да, минимум из 18-ти дискретных значений должен формироваться период питающего двигатель напряжения, чтобы наблюдатели не теряли ротор. Цифра получена из опыта настройки моделей бездатчикового электропривода с разными машинами. В практических экспериментах удалось сохранить устойчивость привода с двигателем FL42BLS02 при 25-ти дискретах (ЩИМ 10 кГц, 400 Гц).

Ошибки в схеме

  1. Сопротивление цепи тормозного резистора имеет паразитную индуктивную составляющую. Она мала. И энергия, которая в ней накапливается, тоже мала. Но ее всегда достаточно, чтобы пробить транзистор. На обратной стороне платы, около тормозного ключа (Q1), с двух дорожек следует снять маску (по 1 мм^2) и запаять диод DL4148.
  2. Шум DC/DC преобразователя (пульсации выходного напряжения +5VDD) имеет множество ВЧ гармоник. Такие пульсации (с разрывами) беспрепятственно проходят полупроводниковые схемы. Для питания АЦП микроконтроллера применен отдельный стабилизатор (U13). Схема работает. И работает хорошо. Но запитать стабилизатор следовало через высокочастотный фильтр (L2, R65, C52).
  3. Резистор R34 следуют зашунтировать конденсатором емкостью от 10 нФ до 0.1 мкФ. Запаять конденсатор следует непосредственно на резистор (размеры совпадают, 1206). Можно отложить эту операцию. Без конденсатора схема будет чуть более чувствительна к наводкам. И можно увидеть как коммутация стоек моста (при малой скважности) сбивает АЦП. Классика!!! Сбой наблюдается два раза на периоде тока через 120 градусов при низкой частоте вращения ротора. Работоспособность системы управления не нарушается. В примерах программного кода разъясняется какими решениями можно разделить во времени АЦ-преобразование и коммутацию стоек моста.
  4. Для конденсаторов C51, C52 размеры кантатных площадок по ошибке выбраны на размер больше (SMD-E, SMD-G). Следует запаять их с небольшим смещением в сторону положительного вывода.
  5. Выводы кнопок не выходят за контактные площадки. Но положенный допуск отсутствует. Изготовители кнопок не покрывают их выводы оловом. Перед монтажом кнопок на плату следует облудить выводы, применяя в качестве флюса таблетку ацетилсалициловой кислоты.

Адаптация проектов для комплекта разработчика устройств управления электродвигателями фирмы TI

С момента появления у автора доступа к Интернету сайт TI был и остается важнейшим источником информации. Но удивительное дело – если сравнить ARM-процессоры адаптированные для задач управления электроприводом и специализированные микроконтроллеры TI, то последние проще, а программировать их почему-то сложнее. И ситуация не меняется более 10 лет. В любом программном коде есть неоптимальные фрагменты. Это не так страшно. И если оценивать каждую недоработку в отдельности – ерунда полная – экономически целесообразно выпустить продукт на рынок. Но количество таких помарок превышает все разумные пределы. Многие помарки блестяще замаскированы. Например, язык программирования C/C++ имеет очень мало защитных механизмов и благодаря этому возможны нестандартные решения. Когда неискушенный человек видит их впервые – он шокирован, удивлен и восторженно воспринимает виртуозно написанный код. Но вот представьте себе, что для такого кода требуется маленькое исключение – забыл про него или автор ни чего не сказал (например, об особенности настройки оптимизатора кода) – и не работает код в другом проекте. Такие исключения есть: в стандартной библиотеке драйверов периферии, в примерах проектов, в настройках проектов, в способах организации рабочего пространства интегрированной среды разработки, в настройках редактора текста, в механизмах загрузки обновлений и прочее. Совершенно очевидно, что их сделал не один человек. ... По запросу, автор может выслать ссылку на архив проекта "17_OVR" адаптированный к комплекту разработчика LAUNCHXL-F28027F / BOOSTXL-DRV8301.

Литература

  1. Сергей Торопов. Допуски на элементы печатных плат: то, что вы не знали, но стеснялись спросить. // Производство электроники: технологии оборудование материалы. – №1, 2007, с. 22-24.
  2. EasyEDA – комплекс программных средств для разработки электрических принципиальных схем и печатных плат. // EasyEDA web site. – URL: https://easyeda.com. Дата обращения: 28.07.2016.
  3. Расчёт ширины дорожки печатной платы. // The CircuitCalculator.com Blog. – URL: http://www.circuitcalculator.com/wordpress/2006/01/31/pcb-trace-width-calculator // – URL: http://radioaktiv.ru/raschet-shiriny-dorozhki-pechatnoy-platy.html. Дата обращения: 28.07.2016.
  4. ООО "РЕЗОНИТ", Москва, г. Зеленоград – производство и монтаж печатных плат. // Сайт компании. – URL: http://rezonit.ru. Дата обращения: 28.07.2016.
  5. EasyEDA Gerber Viewer – бесплатный инструмент просмотра выходных файлов для оборудования производства печатных плат. // EasyEDA web site. – URL: https://gerber-viewer.easyeda.com. Дата обращения: 28.07.2016.

28.07.2016