Компенсация задержек мультиплексированных каналов с помощью программы ZETFormula. |
|
Для чего это нужно?
На модулях ZET 210, ZET 220, ZET 230 установлен один аналогоцифровой преобразователь (АЦП), который выполняет последовательную оцифровку всех подключенных каналов. АЦП в равные промежутки времени оцифровывает аналоговый сигнал. У микросхемы АЦП один единственный вход. Для увеличения количества каналов используется принцип мультиплексирования. Многоканальный мультиплексор коммутирует входные каналы модуля на вход микросхемы АЦП. Сигналы оцифрованные по многим каналам не оцифровываются одновременно и по этой причине возникают фазовые задержки между каналами.
Рисунок 1
Разность фаз зависит от многих параметров:
- количества включенных каналов,
Рисунок 2
- частоты дискретизации по ним,
Рисунок 3
Рисунок 4
В приведенных выше примерах использовалось устройство ZET-210, входы 1 и 8 которого были подключены к первому каналу генератора.
В программе ZETFormula фазовая синхронизация выполняется в фоновом режиме.
Вот пример такой синхронизации, с теми же входными параметрами, что и в предыдущих примерах:
Рисунок 5
Вид осциллограмм сигналов:
- до синхронизации (на глаз видна разность фаз в четверть периода)
Рисунок 6
- после синхронизации в ZETFormula (четкое совпадение фаз)
Рисунок 7
Как с этим работать?
В программе ZETFormula для удобства пользователя существует несколько видов скрытой предобработки входных данных. Важнейшие из них – это привидение всех каналов к одной частоте дискретизации, и их последующая синхронизация. Для того чтобы эти функции стали активны достаточно просто включить программу и в поле «Выражение» написать имя нужного канала, а затем работать с выходными каналами ZETFormula . По умолчанию они называются «Канал1», «Канал2» и т.д.
Откуда берется фазовая задержка?
Для начала определим, что такое последовательная обработка каналов и откуда возникает фазовая задержка. Под последовательной обработкой в данном случае понимается последовательное считывание данных со входов устройства.
Приведем пример: пусть в программе Настройка параметров АЦП и ЦАП включено 4 канала. Тогда АЦП будет считывать данные так:
-
1-й отсчет первого канала
-
1-й отсчет второго канала
-
1-й отсчет третьего канала
-
1-й отсчет четвертого канала
-
2-йотсчет первого канала
-
2-й отсчет второго канала
-
2-й отсчет третьего канала
-
2-й отсчет четвертого канал
-
3-й отсчет первого канала
-
3-й отсчет второго канала
-
3-й отсчет третьего канала
-
3-й отсчет четвертого канал…..
Причем временной интервал между двумя очередными отсчетами по одному и тому же каналу (к примеру: 1-й и 2-й отсчет первого канала) будет равен периоду дискретизации. А интервал между одним и тем же отсчетом по двум соседним каналам (2-й отсчет второго и 2-й отсчет третьего) будет равен интервалу дискретизации деленному на число включенных каналов. Теперь становиться ясно, откуда берется фазовая задержка между каналами: она является следствием временной задержки.
Как это работает?
Встроенная функция синхронизации выбирает из сигнала четыре последовательные точки и проводит через них кривую третьей степени (аппроксимирует многочленом третьей степени). Затем определяет необходимый «временной сдвиг» и находит значение в искомой точке. Т.е. встроенная синхронизация является по сути своей фильтром с очень маленькой задержкой.
В ходе тестов функция синхронизации показала минимальную ресурсоемкость, поэтому была внедрена в качестве фоновой.
Примечание: в программе ZET Formula есть функция TimeShift() – сдвиг по времени. Ею не следует пользоваться для синхронизации каналов, т.к. она не предназначена делать сдвиг на столь малые кванты времени.
В любой части настоящего сайта могут иметься неточности и технические ошибки. В содержание могут периодически вноситься изменения и/или поправки.
Россия, Москва, Зеленоград, проезд 4922 (Озерная аллея), дом 4 стр. 5. Схема проезда.
Тел./Факс: +7(495)739-39-19 (многоканальный); E-mail: info@zetlab.ru, sale@zetlab.ru.
GPS координаты: долгота 37°13′14.57″E (37.220713) широта 55°59′1.3″N (55.983695)
|