Некоторые особенности применения однокристальных прецизионных систем сбора информации с ARM-ядром
Высокая точность измерения различных физических величин в широком диапазоне их изменения и возможность обеспечения первичной обработки полученных результатов с использованием минимального набора инструментальных средств обеспечили широкую популярность у разработчиков контрольно-измерительной аппаратуры однокристальных прецизионных систем сбора и обработки информации (микроконверторов). Бесспорным лидером в разработке и производстве таких микросхем является фирма Analog Devices, которая, выпустив микросхему ADuC812 в 1999 г., открыла тем самым линейку устройств, объединяющих на одном кристалле прецизионный аналого-цифровой преобразователь и микропроцессорное ядро семейства MC51 с необходимой периферией. Затем эта линейка получила успешное развитие в сериях ADuC82х, ADuC83х и ADuC84х, в которых использованы 16- и 24-разрядные АЦП с сигма-дельта модуляцией и микропроцессорное ядро MC52. Слияние фирм Burr-Brown Products и Texas Instruments Inc. ознаменовалось появлением на рынке прецизионной системы сбора информации семейства MSC12xx на основе ядра MC52.
Технологический прорыв в современной микропроцессорной технике, сопровождающийся резким повышением производительности микропроцессорного ядра с одновременным снижением потребляемой мощности, привел к появлению новых серий информационных преобразователей. Фирма Analog Devices разработала и выпускает несколько семейств прецизионных 16- и 24-разрядных однокристальных систем с 32-разрядным ARM-ядром, включающих ADuC703х и ADuC7060 (61) [1] (табл. 1). В таблице для сравнения приведены соответствующие параметры типичной микросхемы ADuC845 с ядром MC52.
Таблица 1. Основные параметры прецизионных микроконверторов с ARM-ядром
Марка прибора |
MCU, MIPS | Объем флэш-памяти, кбайт | SRAM, байт | Разрядность АЦП | Быстродействие АЦП, KSPS | Количество АЦП/количество каналов | Дополнительная периферия | Напряжение питания, В |
ADUC7032-8L | 20,48 | 96 | 6144 | 16 | 8 | 3/3 | – | 3,5–18 |
ADUC7033 | 20,48 | 96 | 6144 | 16 | 8 | 2/2 | – | 3,5–18 |
ADUC7034 | 20,48 | 32 | 4096 | 16 | 8 | 2/2 | – | 3,5–18 |
ADUC7036 | 20,48 | 96 | 6144 | 16 | 8 | 2/2 | – | 3,5–18 |
ADUC7060 | 10,24 | 32 | 4096 | 24 | 8 | 2/10 | 14 бит ЦАП, ШИМ | 2,5 ±5% |
ADUC7061 | 10,24 | 32 | 4096 | 24 | 8 | 2/10 | 14 бит ЦАП, ШИМ | 2,5 ±5% |
ADUC845 | 12,58 | 62 | 2304 | 24 | 1,365 | 2/10 | 16 бит ЦАП, ШИМ | 3–5 |
Судя по параметрам, приведенным в таблице, производительность нового ядра по сравнению с ядром MC52 несколько увеличилась у микросхем серии ADuC703х (20,48 MIPS). Производительность ядра ADuC7060 (61) даже несколько снизилась, что, прежде всего, объясняется его малой потребляемой мощностью. Почти в два раза уменьшился объем встроенной флэш-памяти. Очевидно, свою долю в эти ограничения вносит сложность совмещения новой цифровой технологии с прецизионной аналоговой схемотехникой.
Сравнительная оценка производительности микропроцессора по показателям в MIPS, безусловно, недостаточна. Обработка многоразрядных данных, получаемых с АЦП, обычно требует значительного количества арифметических операций над числами с плавающей запятой. Система команд ARM-ядра позволяет значительно ускорить эти операции.
Для внутрисистемной загрузки программ во флэш-память в новых микросхемах помимо последовательного UART-интерфейса предусмотрен JTAG-интерфейс, что значительно облегчает процесс отладки используемой программы.
В семейство ADuC703х входят микроконверторы с двумя АЦП (ADuC7033, ADuC7034, ADuC7036) и с тремя АЦП (ADuC7032), которые обеспечивают одновременное преобразование трех аналоговых величин. Микроконверторы этого семейства предназначены для применения во встраиваемых системах с малым количеством контролируемых параметров и без требований формирования сигналов управления. В частности, они используются в автомобильных системах контроля аккумулятора, обеспечивая точное и непрерывное измерение напряжения, тока и температуры, характеризующих состояния аккумулятора, в том числе при выключенном двигателе [2]. Возможность использования напряжения питания достаточно высокого уровня (до 18 В) позволяет питать микросхему непосредственно от аккумулятора. Встроенный в микроконвертор LIN-интерфейс обеспечивает его легкую интеграцию в автоматизированную систему оптимизации работы электрооборудования (ECU).
Микроконверторы семейства ADuC7060 (61) анонсируются как устройства, предназначенные для удаленных систем сбора информации с питанием по линиям стандартных интерфейсов. Их основной особенностью является низкая потребляемая мощность (2,74 мА в активном режиме при частоте тактового генератора ядра 640 кГц и 10 мА — при частоте 10,24 МГц). Для снижения потребляемой мощности в микроконверторе предусмотрен экономичный режим работы аналого-цифрового преобразователя, при котором его тактовая частота снижается с 512 до 131 кГц, что, естественно, снижает его быстродействие, характеризуемое частотой выборок fadc.
Низкое напряжение питания этих приборов и, соответственно, снижение уровня преобразуемых сигналов требует повышенного внимания к уменьшению как собственных шумов аналого-цифрового преобразователя, так и шумов первичных преобразователей исследуемых сигналов.
Для уменьшения влияния высоких частот (f > fmax) на точность преобразования используется принцип передискретизации с последующей децимацией и фильтрацией, который реализован в микроконверторах с сигма-дельта преобразованием. Пользователь имеет возможность программно устанавливать требуемую конфигурацию характеристики цифрового фильтра путем задания соответствующих параметров.
Коэффициент децимации (SF) SINC3-фильтра ADuC7060 (61) может быть программно установлен в пределах от 0 до 127 семью битами регистра режима работы фильтра ADCFLT, что соответствует установке частоты выборок от 8 кГц до 50 Гц. При изменении величины SF от 0 до 125 значение fadc вычисляется по формуле:
при SF = 126 fadc устанавливается 60 Гц, а при SF = 127 — fadc = 50 Гц.
При установлении fadc = 50 Гц помехи, создаваемые промышленной сетью, подавляются фильтром более чем на 80 дБ (рис. 1). Следует также учитывать, что любой реальный фильтр не может иметь плоской вершины амплитудно-частотной характеристики (АЧХ) в пределах заданного частотного диапазона f < fmax, что приводит к определенному искажению сигнала. Так, для АЧХ, изображенной на рис. 1, практически без искажения передаются сигналы со спектром ниже 5,33 Гц, на расчетной частоте fmax = 25 Гц подавление сигнала составит 11 дБ.
Рис. 1. Амплитудно-частотная характеристика SINC3-фильтра при SF = 127, AF = 0, Chop Off, fadc = 50 Гц, tsettle = 60 мс
Шумы преобразования могут быть также снижены за счет усреднения результатов нескольких преобразований. Коэффициент усреднения AF задается программно (табл. 2). При этом:
Таблица 2. Возможные сочетания коэффициентов SF и AF
SF | 0–31 | 32–63 | 64–127 |
AF | 0–63 | 0–7 | 0 |
Снижая влияние случайных помех, усреднение приводит к увеличению времени преобразования. В результате при использовании усреднения для получения требуемой частоты fadc приходится уменьшать коэффициент децимации, что приводит к ухудшению характеристик фильтра (рис. 2).
Рис. 2. Амплитудно-частотная характеристика SINC3-фильтра при SF = 24, AF = 5, Chop Off, fadc = 40 Гц, tsettle = 25 мс
Сравнение АЧХ, представленных на рис. 1 и 2, показывает, что в первом случае огибающая примерно соответствует фильтру 3-го порядка, а во втором — фильтру 1-го порядка.
Для снижения влияния напряжения смещения входного программируемого усилителя (PGA) и самого АЦП в микроконверторе предусмотрен режим стабилизации прерыванием, разрешаемый установкой бита CHOP в регистре режимов работы фильтра. Суть режима [3] заключается в двукратном измерении входного сигнала с коммутационной переполюсовкой входов АЦП при каждом измерении с последующим усреднением полученных значений. В результате исключается ошибка и дрейф смещения, но скорость вывода АЦП уменьшается в 3 раза, если AF = 0 (рис. 3). Если AF > 0, то скорость вывода АЦП одинакова при включенной или выключенной стабилизации прерыванием. Когда стабилизация прерыванием включена, время установления равно двум периодам вывода.
Рис. 3. Амплитудно-частотная характеристика SINC3-фильтра при SF = 127, AF = 0, Chop On, fadc = 16,665 Гц, tsettle = 120 мс
Дополнительные возможности для повышения отношения сигнал/шум дает режим разрешения скользящего среднего по 2, который устанавливается битом RAVG2. Эта функция автоматически включается, когда разрешена стабилизация прерыванием. Дополнительная особенность состоит в том, что когда стабилизация прерыванием запрещена и данная функция разрешена, то скорость вывода АЦП не уменьшается, но время установления увеличивается на один период преобразования.
Наконец, бит NOTCH2 регистра режимов работы фильтра изменяет отклик SINC3-фильтра. NOTCH2 устанавливается пользователем для изменения стандартного частотного отклика SINC3-фильтра для увеличения степени подавления фильтра в полосе подавления приблизительно на 5 дБ. Это достигается путем вставки второго выреза (NOTCH2) на частоте:
где fNOTCH — положение первого выреза в отклике фильтра.
Подбор необходимого сочетания коэффициентов фильтра значительно облегчает программный пакет ADuC706x Digital Filter Frequency Response [4], обеспечивающий моделирование АЧХ при выбранных параметрах регистра фильтра.
Таким образом, у пользователя имеются возможности увеличить отношение сигнал/шум (SNR) и тем самым увеличить эффективную разрядность (Effective Number of Bits, ENOB) АЦП за счет грамотного выбора АЧХ цифрового фильтра.
Естественно, что выбор полосы пропускания фильтра определяется, прежде всего, спектральным составом исследуемого сигнала. Как известно, связь между частотой дискретизации fadc и максимальной частотой исследуемого спектра fmax определяется теоремой Котельникова-Найквиста fadc ≥ 2fmax, которая абсолютно справедлива для идеального фильтра, полностью устраняющего влияние всех частот выше fmax.
Для любого физически реализуемого фильтра при восстановлении сигнала с помощью линейной интерполяции используют зависимость [7]:
где ε — погрешность восстановления непрерывного сигнала по дискретным отсчетам, α — коэффициент, учитывающий эффект обрезания спектра на частоте fmax:
где
— энергия отброшенной части спектра;
— полная энергия спектра; Hhi(f) — амплитудно-частотная характеристика i-й настройки цифрового фильтра.
Расчет по формулам (1, 2) с использованием программного пакета Mathcad 14 показал, что для фильтра с амплитудно-частотной характеристикой Hh1(f) (рис. 1) (ослабление примерно 60 дБ/дек):
Для фильтра с амплитудно-частотной характеристикой Hh2(f) (рис. 2) при заданной погрешности ε ≤ 0,01 должно выполняться неравенство fadc ≥ 12×fmax.
Параметры цифрового фильтра, влияя на уровень собственных шумов АЦП, в значительной мере определяют и его эффективную разрешающую способность (ENOB).
Методике расчета значения ENOB посвящено значительное число работ [5, 6], но они не используют в полной мере информацию, представляемую документами компании [1].
Для типовых режимов действующее значение собственного шума и эффективная разрешающая способность (ENOB) АЦП задаются согласно табл. 3, 4 [1].
Таблица 3. Среднеквадратичное значение собственного шума АЦП в типовых режимах (мкВ)
Режим | Частота обновления данных | Uin | |||||||||
±1,2 В PGA = 1 |
±600 мВ PGA = 2 |
±300 мВ PGA = 4 |
±150 мВ PGA = 8 |
±75 мВ PGA = 16 |
±37,5 мВ PGA = 32 |
±18,75 мВ PGA = 64 |
±9,375 мВ PGA = 128 |
±4,68 мВ PGA = 256 |
±2,34 мВ PGA = 512 |
||
Chop On | 4 Гц | 0,62 | 0,648 | 0,175 | 0,109 | 0,077 | 0,041 | 0,032 | 0,0338 | 0,032 | 0,033 |
Chop Off | 50 Гц | 1,97 | 1,89 | 0,570 | 0,38 | 0,27 | 0,147 | 0,123 | 0,12 | 0,098 | 0,098 |
Chop Off | 1 кГц | 8,54 | 8,4 | 2,55 | 1,6 | 1,17 | 0,658 | 0,53 | 0,55 | 0,56 | 0,52 |
Chop Off | 8 кГц | 54,97 | 55,54 | 14,30 | 7,88 | 4,59 | 2,5 | 1,71 | 1,75 | 0,915 | 0,909 |
Таблица 4. Эффективная разрешающая способность АЦП по действующему значению ENOB_rms и полному размаху (ENOB_p-p) шумового сигнала в типовых режимах
Режим | Частота обновления данных | Uin | |||||||||
±1,2 В PGA=1 | ±600 мВ PGA=2 | ±300 мВ PGA=4 | ±150 мВ PGA=8 | ±75 мВ PGA=16 | ±37,5 мВ PGA=32 | ±18,75 мВ PGA=64 | ±9,375 мВ PGA=128 | ±4,68 мВ PGA=256 | ±2,34 мВ PGA=512 | ||
Chop On | 4 Гц | 21,9 (19,1) | 20,8 (18,1) | 21,7 (19) | 21,4 (18,7) | 20,9 (18,2) | 20,8 (18,1) | 20,2 (17,4) | 19,1 (16,4) | 18,2 (15,4) | 17,1 (14,4) |
Chop Off | 50 Гц | 20,2 (17,5) | 19,3 (16,6) | 20 (17,3) | 19,6 (16,9) | 19,1 (16,4) | 19 (16,2) | 18,2 (15,5) | 17,3 (14,6) | 16,6 (13,8) | 15,5 (12,8) |
Chop Off | 1 кГц | 18,1 (15,3) | 17,1 (14,4) | 17,8 (15,1) | 17,5 (14,8) | 17 (14,2) | 16,8 (14,1) | 16,1 (13,4) | 15,1 (12,3) | 14 (11,3) | 13,1 (10,4) |
Chop Off | 8 кГц | 15,4 (12,7) | 14,4 (11,7) | 15,4 (12,6) | 15,2 (12,5) | 15 (12,3) | 14,9 (12,2) | 14,4 (11,7) | 13,4 (10,7) | 13,3 (10,6) | 12,3 (9,6) |
Действующее значение UNoiseADC_rms можно рассчитать и по известному значению эффективной разрешающей способности ENOB_rms:
где Uin — максимальное значение входного сигнала при выбранном коэффициенте усиления встроенного программно-регулируемого усилителя PGA (табл. 4).
Соответственно, значение UNoiseADC_p-p можно найти из выражения:
Естественно, что в таблицах нельзя предусмотреть все возможные конфигурации цифрового фильтра. При необходимости создания нетиповой амплитудно-частотной характеристики фильтра требуется перерасчет значения ENOB для выбранного режима работы.
Для определения ENOB с учетом влияния шумов первичного преобразователя сигналов UNoiseConv и шумов источника опорного напряжения UNoiseRef необходимо первоначально вычислить суммарное действующее значение шума на входе АЦП UNoiseU:
В случае если шумовые характеристики первичного преобразователя заданы спектральной плотностью SNoise:
где BW — полоса пропускания цифрового фильтра.
Как было показано выше, при правильно выбранных параметрах цифрового фильтра частотами выше fadc можно пренебречь, что позволяет принять условие, что полоса пропускания фильтра лежит в пределах от 0 до fadc:
Значение fadc в типовых режимах задается табличными данными (табл. 4), а при других настройках фильтра вычисляется с использованием выражений (1, 2).
При известном значении UNoiseConv в соответствии с выражением (3) можно вычислить действительное значение эффективной разрядности OPENOB_rms:
Рассмотрим особенности расчета основных метрологических параметров типичной измерительной схемы на базе микроконвертора ADuC7060 (61), эффективно использующей его малое энергопотребление, на примере устройства контроля температуры с питанием по токовой петле (рис. 4) [8].
Малая потребляемая мощность позволяет осуществлять питание микроконвертора по традиционным каналам связи с объектом управления. Классическим примером такого решения является автономная схема контроля температуры с питанием от токовой петли 4–20 мА.
Напряжение, снимаемое с верхней ветви петли LOOP+, подается на вход понижающего DC/DC-преобразователя, формирующего напряжение питания микроконвертора и вспомогательного операционного усилителя (ОА).
Информационный ток петли ILOOP формируется источником тока, построенным на базе операционного усилителя ОА и транзистора VT. Обратная ветвь петли LOOP– соединяется с неинвертирующим входом ОА, а эмиттер транзистора — с общей точкой питания. Равновесие в схеме установится при равенстве Udata = U+:
где IVDD — ток потребления микроконвертора и операционного усилителя; IVT — ток регулирующего транзистора VT.
Ток петли задается сигналом Udata, формируемым широтно-импульсным модулятором (PWM), осуществляющим роль цифро-аналогового преобразователя.
Выражение (9) справедливо в диапазоне изменения сигнала Udata от 0 до UDAC/2. Максимальный ток петли ILOOPmax = UDAC/RLOOP формируется при Udata = 0. Управление током прекращается при Udata ≥ UDAC/2, так как при этом транзистор VT запирается (IVT = 0, ILOOP = IVDD).
Вольт-амперная характеристика регулятора тока (рис. 5) показывает, что формирование тока информационной петли 4–20 мА возможно при условии, что потребление тока микроконвертором и ОА будет менее 4 мА.
В качестве первичного преобразователя температуры в диапазоне –50…+130 °C в схеме используется платиновый терморезистор RTD типа PCS 1.1503.1 с сопротивлением 100 Ом. Для формирования опорного напряжения АЦП используется прецизионный резистор RREF с сопротивлением 6,82 кОм. Эти элементы являются источниками шума, определяющими величину UNoiseConv.
Спектральная плотность напряжения теплового шума резисторов S [В2/Гц] определяется как:
где k = 1,38×10–23 Дж/K — постоянная Больцмана.
Для терморезистора RTD при максимальной T = +130 °C = 403 K (RTDmax = 150 Ом) в соответствии с формулой (11) SNoiseConv = = 3,33×10–18 В2/Гц, а для RREF, работающего при комнатной температуре, — SREF = = 1,13×10–16 В2/Гц.
Для обеспечения требуемого значения опорного напряжения АЦП UREFmin ≈ 1,2 В при выбранном значении резистора RREF ток IE = 0,2 мА. При этом напряжение, снимаемое с терморезистора RTD, не превысит значения 30 мВ.
Зададим режим работы АЦП с частотой fadc = 50 Гц, PGA = 32, обеспечивающий практически полное использование диапазона преобразования входного сигнала. Действующее значение шума для этого режима UNoiseADC = 0,147 мкВ (табл. 3). Соответственно расчету по формулам (6, 7) и (5, 8) UNoiseConv = 4,13×10–7 В, UNoiseRef = 7,52×10–8 В, UNoiseU = 0,439 мкВ, OPENOB_rms = 17,4. Таким образом, в выбранном режиме работы АЦП из-за влияния шумов резисторов реальная разрешающая способность преобразования ухудшилась почти в 4 раза по сравнению с исходными данными, представленными в таблице 4.
В рассматриваемой схеме для уменьшения потребляемой мощности значение тока IE выбрано минимально возможным. Естественно, что при отсутствии такого ограничения отношение сигнал/шум можно увеличить за счет увеличения этого тока. Однако низковольтное напряжение питания микроконвертора ограничивает эти возможности.
С учетом остаточного напряжения на внутреннем источнике тока (0,7 В) напряжение, снимаемое с терморезистора RTD, должно соответствовать условию:
Для рассматриваемого случая выполнить это условие можно при IE ≤ 4 мА. Встроенный источник тока позволяет обеспечить ток не более 2 мА, что ограничивает величину преобразуемого сигнала 300 мВ. Соответственно, в режиме с PGA = 4 шумами резисторов можно пренебречь и, следовательно, OPENOB_rms = 20.
Другим примером, иллюстрирующим достоинство микроконвертора с низкой потребляемой мощностью, является использование его в автономном модуле измерения температуры с передачей информации по беспроводному каналу связи [9].
Комбинация микроконвертора ADuC706x с трансивером ADF7020, имеющим также низкую потребляемую мощность, обеспечили работу модуля с питанием от батареи с напряжением 3 В (рис. 6). Преобразование в напряжение 2,5 В осуществляется понижающим регулятором ADP121. Трансивер обеспечивает связь на расстоянии до 1 км (на открытом пространстве), потребляя средний ток менее 70 мкА при одной передаче в минуту в диапазоне ISM-частот (431–478 МГц или 862–956 МГц).
В системах, предусматривающих обмен информацией по каналу USB, он может также использоваться для внутрисистемного перепрограммирования флэш-памяти микроконвертора и его питания [10]. Преобразование 5-вольтового напряжения канала USB в напряжение 2,5 В осуществляется малошумящим регулятором ADP3333-2.5 (рис. 7). Следует обратить внимание на тщательную фильтрацию аналогового напряжения питания AVDD. Согласование каналов USB и UART осуществляется с помощью преобразователя FT232R. Ключи S1 и S2 нужны для выбора режима программирования или обмена информацией.
Естественно, что предлагаемая методика расчета эффективной разрядности АЦП и выбора параметров цифрового фильтра в зависимости от спектрального состава обрабатываемого сигнала может быть распространена и на другие типы микроконверторов с программно-перестраиваемыми цифровыми фильтрами.
Литература
- ADuC7060/ADuC7061. Low Power, Precision Analog Microcontroller, Dual Sigma-Delta ADCs, Flash/EE, ARM7TDMI. Analog Devices. http://www.analog.com
- Власенко, А. Новые микроконверторы фирмы Analog Devices: контроль автомобильного аккумулятора // Компоненты и технологии. 2006. № 11.
- Adrian Sherry. Chopping on ∑Δ-ADCs. AN-609 Application Note. Analog Devices. http://www.analog.com
- http://ez.analog.com/servlet/JiveServlet/download/16131-4462/aduc706x_freq_response.xls
- Moghimi R. Seven Steps to Successful Analog-to-Digital Signal Conversion (Noise calculation for proper signal conditioning). Analog Devices. http://www.analog.com
- Кестер У. Входной шум АЦП: хороший, плохой и опасный. Хорошо ли, когда его нет? // Компоненты и технологии. 2008. № 9.
- Макс Ж. Методы и техника обработки сигналов при физических измерениях. Т. 1. М.: Мир, 1983.
- 4 mA-to-20 mA Loop-Powered Temperature Monitor Using the ADuC7060/ADuC7061 Precision Analog Microcontroller. Circuit Note CN-0145. Analog Devices. http://www.analog.com/CN0145
- Low Power, Long Range, ISM Wireless Measuring Node. Circuit Note CN-0164. Analog Devices. http://www.analog.com/CN0164
- USB Based Temperature Monitor Using the ADuC7061 Precision Analog Microcontroller and an External RTD. Circuit Note CN-0075. Analog Devices. http://www.analog.com/CN0075