С недавних пор в радиолюбительской практике стали популярны так называемые виртуальные измерительные приборы. В данном случае под «виртуальностью» подразумевается тот факт, что некоторая часть функций или узлов измерительного прибора реализуется с помощью персонального компьютера. Виртуальные измерительные приборы можно условно разбить на две категории. Приборы первой группы «полностью виртуальны» и фактически состоят из одной программы для PC, а функции по вводу-выводу измеряемого или генерируемого сигнала возлагаются на штатные аппаратные средства, например, звуковую карту [1],[2]. Приборы второй группы имеют кроме «виртуальной» части еще и материальную. К компьютеру в этом случае подключается некое устройство, которое является неотъемлемой частью виртуального прибора. Такие устройства реализуют некоторые функции или узлы измерительного прибора, которые по тем или иным причинам нельзя возложить на компьютер. Эти устройства могут иметь различную сложность - от «навороченных» промышленно выпускаемых интерфейсных плат,встраиваемых в компьютер, до простых устройств, подключаемых к компьютеру через СОМ или LPT порт [3],[4], [5]. Именно таким способом реализован предлагаемый виртуальный частотомер. Итак, почему же не получается реализовать виртуальный частотомер только в виде программы? Упрощенная структурная схема «обычного» электронно-счетного частотомера в режиме измерения частоты изображена на рис.1, а в режиме измерения временных интервалов на рис. 2.
Хотя современные компьютеры обладают большим быстродействием и хорошей стабильностью тактовой частоты, использовать эти свойства для формирования стабильных временных интервалов (например «временных ворот» или «меток времени») проблематично. Это связано с тем, что управляющая программа распоряжается компьютером не монопольно, а делит процессорное время с операционной системой и другими программами. Поэтому функцию формирователя временных интервалов придется реализовывать во внешнем устройстве. Кроме этого во внешнем устройстве желательно расположить входной формирователь сигнала и счетчик импульсов. Для реализации на компьютере остаются только функции индикации и управления. Минимизировать аппаратные затраты такого частотомера можно, применив для этих целей микроконтроллер, который будет выполнять измерения с помощью своих аппаратно-программных ресурсов. В предлагаемой конструкции используется микроконтроллер семейства AVR AT90S2313 производства Atmel. Он удобен тем, что имеет у себя «на борту» аналоговый компаратор (на нем реализуется входной формирователь), быстродействующие таймеры-счетчики (подсчет импульсов), последовательный порт (связь с компьютером). Кроме этого он содержит 8-ми битный RISC процессор с быстродействием 10MIPS, 32 рабочих регистра, 2 килобайта ПЗУ, 128 байт ОЗУ, сторожевой таймер. Микроконтроллер имеет небольшое энергопотребление и может программироваться внутрисхемно, без извлечения из устройства. Более подробно с микроконтроллерами AVR можно ознакомиться на сайте производителя [б].
Принципиальная схема устройства изображена на рис.3. С помощью 25-контактного разъема устройство подключается к СОМ порту компьютера. Питание схемы осуществляется от линий DTR и CTS этого же порта. (Кстати, почитать о питании различных устройств от сигнальных цепей СОМ порта можно в [7]). Если порт компьютера не может обеспечить необходимую нагрузочную способность (например, это notebook), то в этом случае питание подается извне, через контакт 13 разъема. Транзисторы VT1 и VT2 предназначены для согласования уровней сигналов TxD и RxD в контроллере и в порте компьютера. На элементах R10...R15 выполнен R-2R ЦАП; R16, С4 представляют собой входной фильтр НЧ, на R17.VD9 собран входной ограничитель. Цепи, подключенные к выводам 17,18,19 микроконтроллера, предназначены для его внутрисхемного программирования через СОМ порт.
Принцип действия. Частотомер функционирует под управлением компьютера, который подает ему команды через СОМ порт. Назад , в компьютер, устройство возвращает ответы на команды и данные измерений. Частотомер имеет всего один внешний вход для подачи измеряемого сигнала. Однако при этом сигнал может быть как цифровым так и аналоговым. Под различные режимы измерений микроконтроллер производит переконфигурацию своих внутренних аппаратных средств. Конфигурация устройства для измерения временных интервалов и периода следования импульсов показана на рис.4. В этом режиме на вход 16-разрядного таймера Т1 подается тактовая частота. Фиксация момента начала или окончания импульса осуществляется с помощью специального регистра захвата. Если прибор настроен на измерение сигнала с цифровыми уровнями, то запоминание состояния таймера осуществляется по изменению сигнала на выводе ICP (11), если измеряется аналоговый сигнал, то сигнал захвата подается с выхода встроенного аналогового компаратора, на вход AINO (12) которого подается аналоговый сигнал, а на вход А1М1(13) подается уровень, сформированный с помощью трехразрядного R-2R ЦАП. После запоминания начала и конца временного интервала программно вычисляется длительность самого интервала. Конфигурация устройства для режима измерения частоты изображена на рис.5. При измерении сигналов с цифровыми уровнями сигнал подается непосредственно на вход таймера Т1(9). К сожалению невозможно переключить выход встроенного компаратора на вход таймера Т1, поэтому для измерения частоты аналоговых сигналов организуется программный счетчик ТЗ. Он обладает меньшим быстродействием по сравнению с аппаратным таймером Т1. Поэтому частотный диапазон по аналоговому входу значительно меньше, чем по цифровому. При измерении низкочастотных аналоговых сигналов можно включить на входе компаратора RC фильтр низкой частоты с частотой среза около 21 кГц. При этом мешающие высокочастотные сигналы будут подавляться. Для подключения фильтра вывод 8 микроконтроллера конфигурируется на выход и на него подается низкий уровень. В результате для входного сигнала образуется ФНЧ R16C4. Для отключения сигнала вывод 8 конфигурируется как вход. В результате конденсатор С4 отключается от «земли». Так как входное сопротивление аналогового компаратора много больше сопротивления резистора R16, то теперь резистор не вносит заметного ослабления сигнала. Правда образуется паразитный RC фильтр R16 - последовательное соединение С4 и емкости входа 8. Но частота среза такого фильтра выше максимальной частоты, измеряемой по аналоговому входу.
Основные технические характеристики
1. Рабочие режимы - измерение частоты, измерение периода, измерение интервала времени, подсчет числа импульсов.
2.Измерение частоты.
2.1.Прибор позволяет измерять по аналоговому входу частоту периодических сигналов, которые имеют один экстремум положительной полярности за период. Диапазон измеряемых частот от 0,1 Гц до 250 кГц при напряжении входного сигнала от 0,1 до 30 В.
2.2. Прибор позволяет измерять по цифровому входу частоту цифровых сигналов в диапазоне от 0,1 Гц до 5 МГц . Напряжение логического нуля измеряемого сигнала должно находиться в диапазоне 0...2 В, логической единицы - в диапазоне 2,5...30 В.
2.3. Время счета 1 мс, 10 мс, 100 мс, 1 сек,10 сек.
3.Измерение периода.
3.1.Прибор позволяет измерять единичный и усредненный период периодических сигналов положительной полярности в диапазоне от 10 мкс до 10 сек при напряжении входного сигнала от 0,1 до 30 В.
3.2.Период меток времени (разрешающая способность ) 0,1 мкс.
3.3. Число усредняемых периодов 10, 100,1000,10000.
4. Измерение длительности.
4.1.Прибор позволяет измерять длительность импульсов положительной полярности в диапазоне от 10 мкс до 10 сек при напряжении входного сигнала от 0,1 до 30 В.
4.2. Разрешающая способность при измерении длительности 0,1 мкс.
4.3. В этом режиме прибор позволяет также измерять время между импульсами.
5. Прибор позволяет измерять в режиме самоконтроля частоту собственного кварцевого генератора 10 МГц.
6. Входное сопротивление прибора для сигналов напряжением менее 4,7 В 1 МОм, для сигналов напряжением более 4,7 В 1 кОм.
Конструкция и детали. При использовании компонентов в SMD исполнении удалось поместить всю конструкцию внутри корпуса разъема DB-25 (рис.6.). При этом использовались следующие детали: микроконтроллер AT90S2313-10SI, резисторы и конденсаторы типа 1206, диоды BAS32L, стабилитроны BZX84-C4V7, n-р-n транзистор BCW32L, р-n-р транзистор ВС859С, разъем DB-25F.
Двухсторонняя печатная плата (рис.7, рис.8) была изготовлена любительским способом (по технологии «лазерного утюга»). Однако при повторении конструкции можно использовать и обычные детали -контроллер в DIP корпусе AT90S2313-10PI, любые резисторы с рассеиваемой мощностью 0,125...0,25 Вт, конденсаторы типа К10-17, диоды КД522, стабилитроны КС147, транзисторы КТ315 и КТ361. При этом прибор будет несколько больших габаритов, однако это никак не отразится на его технических характеристиках.
При настройке прибора прежде всего необходимо убедиться в правильности монтажа. Затем можно подать питание 5В на выводы 7 и 13 разъема и убедиться с помощью осциллографа в том, что работает кварцевый генератор - на выводах 4, 5 микроконтроллера должен быть сигнал частотой 10 МГц. Дальше необходимо загрузить в ПЗУ микроконтроллера микропрограмму. Это можно сделать двумя способами. Первый - запрограммировать микроконтроллер с помощью любого стандартного программатора. Второй - загрузить микропрограмму через СОМ порт с помощью программы comprg. Для этого необходимо подключить устройство к свободному СОМ порту и подать на выводы 7 и 13 разъема питание 5 В. Затем на компьютере запустить программу comprg. Если нет ошибок в монтаже, то микропрограмма будет загружена в память микроконтроллера. Этот способ удобен тем, что микроконтроллер программируется без извлечения из схемы. После этого аппаратная часть виртуального частотомера готова к работе. С большинством компьютеров устройство может работать, получая питание от сигнальных цепей СОМ порта. Если компьютер имеет маломощный СОМ порт (при этом напряжение на выводе 20 микроконтроллера будет менее 4 В при установленных сигналах DTR и CTS), то необходимо будет соединить внутри компьютера вывод 13 разъема с цепью питания +5 В.
Управляющая программа (скриншот на рис.9) работает под управлением ОС Windows 95...2000 . Она реализует поддержку всех заявленных режимов измерения. Кроме этого, с ее помощью можно вести журнал измерений. Последние версии управляющей программы, программы загрузки, а также прошивку микроконтроллера можно взять здесь: http://home.skif.net/~yukol, а также на сайте журнала «Радиохобби» http://radiohobby.da.ru (будет она и на очередном CD «Радиохобби-2001»).
Литература и ссылки:
1. Е.Музыченко , Программные анализаторы спектра : Радиохобби №6,1998, стр.32. Радиохобби №1, 1999, стр. 38 .
2. Е.Музыченко , Программные генераторы звуковых сигналов : Радиохобби №5, 1998, стр. 32.
5. П.Гёлль, Как превратить компьютер в измерительный комплекс. Серия "В помощь радиолюбителю», ДМК, 144с.
7. http://www.hut.fi/Misc/Eiectronics/circuits/rspower.html
Юрий Колоколов, Донецк
РадиоХобби № 4,2001