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

Прямой цифровой синтез синусоидального сигнала для возбуждения резольвера или синусно-косинусного вращающегося трансформатора

Рабочие файлы: [Демодуляция сигналов СКВТ] [EZ430-F2013: Генератор синусоиды]

Резольверы и синусно-косинусные вращающиеся трансформаторы (СКВТ) являются датчиками углового положения и используются в механике ротационных перемещений. Существуют и альтернативные датчики угла – полупроводниковые и оптические. Последние более популярны. Поэтому микроконтроллеры серий "motor control", обеспечивая интеграцию с энкодерами приращений, имеют специализированный модуль декодирования ортогональных импульсных последовательностей Enhanced Quadrature Encoder Pulse (eQEP), а вот модуля для поддержки возбуждения резольверов (генератора синусоидального сигнала) у таких микроконтроллеров нет.

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

Модель, представленная на чертеже 1, будучи запущена, функционирует в режиме авто-рестарта. Не останавливая вычислительный процесс, удерживая клавишу Ctrl, выделите фрагмент осциллограммы вдоль линии отражающей константу величиной 4074 ед. (см. код программы). Цель этого действия – отследить генерацию выборок синусоид с максимальными значениями. Убедитесь в том, что амплитуда дискретных синусоидальных последовательностей меняется в пределах нескольких квантов.

Остановите процесс моделирования. Увеличьте конечное время моделирования в 100 раз. Отключите режим авто-рестарта. Настройте режим отображения осциллограммы, при котором точки соединяются линиями. Установите нижний и верхний пределы для оси Y (4050 и 4090 ед.). Отключите одну из двух синусоид. Запустите вычислительный процесс. Убедитесь в том, что процесс девиации амплитуды имеет периодический характер. Попробуйте менять начальное условие. Инициируйте переменную oz2 значениями -5, -4, -3, ... 3, 4.

Чертеж 1

Обнаруживаемая девиация амплитуды вызвана погрешностью процесса квантования при дискретизации синусоидальной функции. Процесс квантования (округления) текущий выборки ведет либо к уменьшению, либо к увеличению приращения площади полупериода синусоиды. Но алгоритм имеет обратную связь, и, частично, компенсирует текущие отклонения на полном периоде синусоиды. Если уменьшается площадь текущего полупериода, то увеличивается амплитуда следующего. Требуются дополнительные исследования, но вполне может оказаться, что при подобной девиации формы интегральная ошибка будет меньше, чем при прямом цифровом синтезе синусоиды по табличным значениям считываемым из ПЗУ. Заметим, что ничто не мешает определить процедуру поправки начальных условий при синтезе каждого следующего периода синусоиды и полностью избавиться от девиации амплитуды.

В листинге программного кода присутствуют две одинаковые функции calcStep. Любую можно удалить (подправив имя). Вторая функция присутствует лишь для демонстрации замены операции вычитание сложением (с заменой вычитаемого двоичным дополнением).

Собрать генератор можно на трех микросхемах. Подходящим микроконтроллером является: MSP430F2013 (входит в состав комплекта разработчика EZ430-F2013) или MSP430F2012 (EZ430-T2012) или MSP430L092 (с ЦАП 8-бит) или MSP430G2121 (корпус 14PDIP). ЦАП с SPI – DAC5311/DAC6311/DAC7311 или AD5601/AD5611/AD5621 (8-/10-/12-бит) +REF3033/TLE2425/AD680. И два операционных усилителя в одном корпусе AD8397/AD8592/AD8594 с максимальным током выходного каскада 310/250 мА. Для питания обмотки возбуждения резольвера следует собрать мостовой усилитель. В этом случае все три микросхемы можно питать от однополярного источника +5 В.

Ни кто не запрещает использовать AD9833 / AD9837 / AD9838, но их тоже надо программировать. TANAGAWA AU6802 ...

Приложение

Рабочие файлы: [Модель мостового усилителя]

Электрическая принципиальная схема генератора синусоидального напряжения для питания обмотки возбуждения резольвера или синусно-косинусного вращающегося трансформатора с однополярным питанием (+5В). Для прямого цифрового синтеза применен микроконтроллер MSP430F2013

Рис. Электрическая принципиальная схема генератора синусоидального напряжения для питания обмотки возбуждения резольвера или синусно-косинусного вращающегося трансформатора с однополярным питанием (+5В). Для прямого цифрового синтеза применен микроконтроллер MSP430F2013

11.01.2015