Как превратить персональный компьютер в измерительный комплекс
Шрифт:
Пользователю рекомендуется заранее подготовить несколько так называемых калибровочных таблиц, соответствующих текущим задачам. Впоследствии таблицы можно будет использовать по мере надобности.
В табл. 5.1 приведены некоторые примеры. Они показывают, как записывать на бумаге во временном масштабе значение напряжения, изменяющегося от 0 до 5 В или же приведенного к этому диапазону внешним устройством нормирования входного сигнала.
Таблица 5.1. Пример калибровочной таблицы
В первом примере значения регистрируются каждую миллисекунду (это самая высокая скорость регистрации)
Надо отметить, что такой режим соответствует предельным возможностям АЦП ADC 10. Прямоугольный сигнал с частотой 100 Гц, обработанный с помощью процессора 386SX25, будет выведен с заметно заваленными фронтами. А со старым ПК на процессоре 8086/8 МГц или 8088/4,77 МГц нежелательно превышать даже частоту 10 Гц. Но какой бы ПК ни использовался, гарантированы отличные результаты для любого входного сигнала с частотой, меньшей или равной 1 Гц. Таким образом, обеспечено согласование с возможностями программы PICOSCOPE.
Во втором примере также регистрируется одно значение за одну миллисекунду, но тысячу раз подряд, т. е. в течение одной секунды.
Третий пример иллюстрирует измерение, проводимое в течение одной минуты, со скоростью одно значение за 10 мсек. Эта скорость выборки достаточно высока для того, чтобы можно было выводить отчет на экран непосредственно во время регистрации. В этом случае на экран будет выдано сообщение о том, что идет процесс регистрации.
В четвертом примере регистрируется 14400 значений в час со скоростью одно значение за 250 мсек (т. е. 4 значения в секунду), но каждый раз вычисляется среднее арифметическое по десяти измерениям вместо трех. Это позволяет лучше отфильтровать возможные помехи, способные исказить вид кривой. Такая скорость сбора данных позволяет выводить отчет на экран в течение всего периода измерений и даже изменять параметры процесса прямо во время работы.
Верхняя часть таблицы («Параметры сбора данных» и «Параметры канала») соответствует тем настройкам, которые необходимо провести до начала работы. Все остальные этапы относятся к обработке результатов, а значит, их установка может быть проведена по окончании процесса измерений. Можно задать вид отчетов и в самом начале, если заранее известно, какой результат надо получить. Естественно, это необходимо сделать и при выводе отчета непосредственно в процессе измерений.
Надо четко представлять, что на этапе сбора информации в файл записываются «сырые» данные, не имеющие размерности. Это просто двоичные числа, например, в интервале от 0 до 255 при использовании 8-разрядного АЦП ADC 10. Этот поток данных называется «каналом», и ему должно быть присвоено имя. В приведенных примерах выбрано имя «ADC10». Разумеется, несколько каналов могут существовать одновременно — например, при работе с многоканальным АЦП, таким как ADC 11.
Среди всех видов отчетов, которые программа PICOLOG может извлекать из «сырых» данных, записанных в файле, самым употребимым будет, без сомнения, кривая изменения параметра в зависимости от времени (т. е. то, что выдает обычный ленточный регистратор). Именно такой отчет приведен в табл. 5.1.
Хотя вертикальную ось шкалы можно градуировать в двоичных кодах АЦП, гораздо более интересно провести их преобразование в единицы, соответствующие реальным величинам (например, напряжение от 0 до +5 В). Значит, надо определить имя параметра (здесь: «Напряжение») и указать программе математическую зависимость, связывающую информационные данные в «канале» и сам параметр. В данном случае это очень просто: зависимость линейная, смещение отсутствует (нулевой код на выходе АЦП соответствует О В на входе), а коэффициент преобразования составляет 5 В на 255 МЗР, или 0,01961 В/МЗР. После этого надо определить представление кривой «Y = F(t)» (рис. 5.5), но можно также запросить и табличное представление, образец которого приведен на рис. 5.6.
Рис 5.5. Пример графического отчета
Рис. 5.6. Пример отчета в виде таблицы
Сначала можно присвоить графику имя, которое будет отражено на бумаге в виде заголовка; впрочем, это необязательно. Затем надо градуировать оси, соблюдая размерности и единицы, выбранные на предыдущих этапах. По оси X, например, следует обеспечить максимальное значение 60000, если требуется произвести запись в течение одной минуты, с временной шкалой, проградуированной в миллисекундах (неважно, с каким интервалом проводились измерения — каждые десять или сто миллисекунд). По оси Y градуирование провести проще — достаточно объявить максимальное значение параметра, соответствующее полной шкале АЦП.
Позволительно также выводить в отчете информацию лишь о части измеряемого интервала, указав параметры «X мин.» и «X макс.», ограничивающие интересующий участок. Теоретически возможно сделать то же самое и для величин, откладываемых по оси Y, но тогда ухудшается разрешение. Поэтому лучше предварительно масштабировать сигнал, если его уровень не достигает величины +5 В. После вывода на экран и, возможно, после коррекции того или иного параметра вывода можно произвести распечатку полученных отчетов. Несколько примеров, приведенных здесь, дают представление о точности и четкости, которые достигаются даже на простом принтере с девятью иголками и с 8-разрядным АЦП.
Рис. 5.7 представляет пример распечатки в режиме низкого разрешения и альбомной ориентации, а рис. 5.8 — пример распечатки в режиме высокого разрешения и книжной ориентации.
Рис. 5.7. Распечатка с низким разрешением
Рис. 5.8. Распечатка с высоким разрешением
Приведенная на графиках экспонента отображает процесс разряда конденсатора емкостью 10 мкФ, заряженного до напряжения 5 В, через резистор сопротивлением 1 МОм.
Другой интересный случай — обработка файла, содержащего числовые значения, специализированными программами для получения высококачественной графики. Это могут быть как распространенные пакеты деловой графики, так и пакеты, предназначенные для научных исследований. Так, график, изображенный на рис. 5.9, был построен при помощи программы SigmaPlot, разработанной компанией SPSS Science, с использованием короткой записи сигнала, полученного от функционального генератора.
Рис. 5.9. Результат обработки данных специализированной программой
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ЧАСТНОГО ПРИМЕНЕНИЯ
Этот раздел можно назвать главным во всей книге: именно в нем рассказывается, как решать практически любые задачи, связанные со сбором данных при низких частотах дискретизации. Модульная структура нижеприведенных программ на языке BASIC или языке TurboPASCAL позволяет адаптировать их к новым задачам, изменяя лишь несколько строк.
На рис. 5.10 представлена структура, по которой будут строиться готовые к работе приложения.
Рис. 5.10. Общая структура прикладных программ, рассматриваемых в книге
В начале программы находится драйвер, соответствующий выбранному АЦП — либо готовому, либо собранному самостоятельно по описанию, которое приведено в этой книге. Каждый драйвер был написан в соответствии со спецификациями, представленными изготовителями используемых компонентов, причем особое внимание уделялось временным диаграммам протоколов связи. Драйверы можно рассматривать как ПО, поставляемое «под ключ», но допустимо также модифицировать в самых разных целях.