«Автоматизированные линии статической балансировки покрышек» (В.Ю. Саванович, Г.В. Никитин - РУДН);
и многие другие.
Все эти примеры как нельзя лучше показывают, насколько огромен мир применения LabVIEW.
Таким образом, благодаря всем приведенным выше своим достоинствам среда программирования LabVIEW была выбрана мною в данной работе в качестве инструмента для создания программного обеспечения, управляющего установкой для измерения вольтамперной характеристики фотодиода.
2. Разработка автоматизированной измерительной установки
фотодиод программный пользователь автоматизированный
Использование платы NVL-08
Многофункциональное устройство NVL-08 представляет собой плату сбора данных и предназначено для работы в составе ПЭВМ типа IBM PC AT. Это устройство обеспечивает преобразование внешних аналоговых и цифровых сигналов в форматы данных ПЭВМ и обратное преобразование данных формата ПЭВМ во внешние аналоговые и цифровые сигналы. Внешний вид платы NVL-08 показан на рис. 7.
Рис. 7. Внешний вид платы сбора данных NVL-08
Функции платы. Плата NVL-08 выполняет следующие функции:
- аналого-цифровое преобразование;
- цифро-аналоговое преобразование;
- цифровой ввод / вывод.
Технические характеристики платы
Аналоговый ввод:
Разрядность …………………………………………………….…. 12 бит
Время преобразования АЦП ………………………….…………. 4 мкс
Количество каналов …….… 8 дифференциальных или 16 одиночных
Диапазон входных напряжений (полная шкала) ……………. +/ - 5,12 В
Предельное входное напряжение ………………………………. +/ - 12 В
Режим запуска ……………………………………………. программный
Метод приема информации ……………. программный, по ожиданию
готовности, по прерыванию
Аналоговый вывод:
Разрядность ………………………………………………………. 12 бит
Время установления …………………………………….……. <= 5 мкс
Количество каналов ……………………………………………………. 1
Диапазон выходного напряжения ……………………………… +/- 3 В
Линейность ……………………………………………………… +/ - 0,1%
Цифровой ввод:
Количество входных линий …………………………… 8 (уровень ТТЛ)
Цифровой вывод:
Количество выходных линий ………… 8 (уровень ТТЛ) с повышенной
нагрузочной способностью (до 30 мА на линию)
Описание структурной схемы платы. Функционально плата NVL-08 разделяется на следующие логические части:
- блок сопряжения с шиной IBM PC AT;
- блок аналогового ввода;
- блок аналогового вывода;
- блок цифрового ввода / вывода.
Блок сопряжения с шиной IBM PC AT обеспечивает согласование шины данных IBM PC AT и внутренней шины данных платы NVL-08, дешифрирует адресные комбинации для фиксации адресов логических частей платы NVL-08 в адресном пространстве ввода / вывода IBM PC AT, формирует сигналы запросов на прерывание по линии IRQ на системной шине IBM PC AT.
Блок аналогового ввода обеспечивает согласование внешнего измеряемого напряжения с входным сигналом АЦП, преобразование этого сигнала в цифровой код и передачу кода на шину данных IBM PC AT. Этот блок состоит из аналогового коммутатора, буферного дифференциального усилителя, схемы выборки-хранения, интегрального АЦП, источника опорного напряжения и схемы синхронизации.
Блок аналогового вывода обеспечивает преобразование цифровых кодов, передаваемых по шине данных IBM PC AT в аналоговое напряжение. Он состоит из буферного регистра входного кода, интегрального ЦАПа, преобразователя ток-напряжение и источника опорного напряжения.
Блок цифрового ввода / вывода обеспечивает прием на шину данных IBM PC AT и буферизированную передачу цифровых сигналов разрядностью до 8 бит.
Описание контактов разъема платы NVL-08.
Распайка разъема
1 AIN7
20 BIN7
2 AIN6
21 BIN6
3 AIN5
22 BIN5
4 AIN4
23 BIN4
5 AIN3
24 BIN3
6 AIN2
25 BIN2
7 AIN1
26 BIN1
8 AIN0
27 BIN0
9 ANOUT
28 GND
10 *****
29 DOUT7
11 DIN7
30 DOUT6
12 DIN6
31 DOUT5
13 DIN5
32 DOUT4
14 DIN4
33 DOUT3
15 DIN3
34 DOUT2
16 DIN2
35 DOUT1
17 DIN1
36 DOUT0
18 DIN0
37 GND
19 GND
AIN0..7 и BIN0..7 - входные аналоговые сигналы при дифференциальном включении, BIN0..7 соответствуют сигналам AIN8..15 при одиночном включении; ANOUT - выход ЦАПа; DIN0..7 - цифровые входы; DOUT0..7 - цифровые выходы; GND - общий провод.
Программирование платы NVL-08. Программно плата NVL-08 представляется в виде ряда адресов регистров в адресном пространстве IBM PC AT. Абсолютный адрес каждого регистра NVL-08 складывается из двух составляющих - базового адреса и адреса смещения. С помощью перемычек на плате NVL-08 базовый адрес может принимать следующие значения - 200h, 220h и 300h. Это позволяет устанавливать NVL-08 на любое «свободное» адресное место в IBM PC AT или же устанавливать до трех устройств в одну IBM PC AT. Адреса смещений постоянны.
Программирование цифрового ввода / вывода. Прием байта из буфера цифрового порта (выводы 11, 12, 13, 14, 15, 16, 17, 18 внешнего разъёма платы NVL-08) осуществляется операцией чтения байта по адресу BASE + 06h, где BASE - базовый адрес (устанавливается при поставке 300h), 06h - смещение. Таким образом, адрес регистра порта цифрового ввода равен 300h + 06h = 306h. Запись байта в буфер порта цифрового вывода (выводы 29, 30, 31, 32, 33, 34, 35, 36 внешнего разъёма платы NVL-08) осуществляется операцией записи байта по адресу BASE + 06h. (Информация в этом буфере будет храниться до следующей операции записи по указанному адресу).
Программирование аналоговoго выхода. Выходное напряжение ЦАПа платы NVL-08 при настройке устанавливается таким образом, что максимальный размах напряжений равен +/-3В, причем минимальному напряжению -3В соответствует код 0000h, записанный по адресу BASE + 04h (вывод 9 внешнего разъема платы NVL-08), а напряжению +3В соответствует код 0FFFh, записанный по тому же адресу. Код слова ЦАПа записывается в буферные регистры и хранится там до следующей операции вывода.
Программирование АЦП. К программированию АЦП относятся следующие операции:
- управление входным коммутатором;
- запуск АЦП;
- ожидание готовности после цикла преобразования АЦП;
- считывание кода АЦП.
Программное управление входным коммутатором осуществляется путем записи в регистр номера канала по адресу BASE + 02h байта с кодом номера канала, напряжение на входе которого надо измерить. В плате NVL-08 предусмотрен программный режим запуска АЦП. Для этого необходимо записать любое число по адресу BASE + 00h. Действительное значение кода АЦП, соответствующее измеряемому напряжению формируется в буферном регистре с адресом BASE + 00h только после выполнения определённой последовательности действий:
- выбор канала;
- запуск АЦП;
- фиксация момента окончания цикла преобразования АЦП.
Окончание цикла преобразования АЦП может быть зафиксировано тремя способами:
- программно - путем опроса бита готовности;
- программно - путем организации задержки на время преобразования после команды запуска;
- по прерыванию - после окончания цикла преобразования.
Калибровка платы. Плата NVL-08 имеет четыре органа настройки:
- смещение АЦП;
- чувствительность АЦП;
- смещение ЦАП;
- размах выходного сигнала ЦАП.
Процедуру калибровки удобно производить, используя тестовую заглушку, распаянную по ниже прилагаемому описанию. В тестовой заглушке нулевой канал АЦП замкнут на общий провод, на канал 1 подается напряжение с внешнего источника (стабилитрон с заранее известным Uст), на канал 2 подается выход ЦАПа, а на остальные каналы - напряжения от внешнего источника (желательно от батарейки) с использованием делителей. Следует отметить, что после включения питания необходимо выждать около 15 мин для вхождения в режим.
Сначала настраивают смещение АЦП резистором R1 по каналу, замкнутому на общий провод. Затем подстройкой резистора R2 производят калибровку по каналу с известным напряжением. Теперь можно приступить к настройке ЦАПа, используя настроенный АЦП.
Резистором R3 устанавливают нулевое напряжение на выходе ЦАП, резистором R4 устанавливают размах выходного напряжения ЦАП +/-3В. Расположение регулировочных резисторов указано на рис. 8.
Установка перемычек на плате NVL-08. С помощью перемычек на плате NVL-08 производятся следующие переключения:
- установка базового адреса (при поставке 300h);
- установка номера прерывания, формируемого после окончания цикла преобразования АЦП (при поставке IRQ5);
- установка типа входных линий (переключаются две перемычки одновременно!; при поставке - дифференциальный вход).
Расположение перемычек указано на рис. 8.
Рис. 8. Схема платы сбора данных NVL-08
Итак, прежде чем приступить непосредственно к реализации автоматизированной измерительной установки, плата в данной работе была установлена в слот расширения ISA-16 компьютера и откалибрована. Перемычками на плате NVL-08 в данной работе были выбраны следующие режимы работы платы:
- базовый адрес - 300h;
- номер прерывания - IRQ5 (механизм прерываний в данной работе я не использую);
- тип входных линий - однополюсный режим.
Разработка схемы измерительного комплекса
После того, как плата сбора данных подготовлена к работе, следует тщательно обдумать функциональную схему измерительной установки. В данной работе имели место следующие рассуждения:
· так как диапазон выходного напряжения ЦАПа платы NVL-08 составляет всего +/-3В, чего недостаточно для получения полноценной вольтамперной характеристики фотодиода в обратном смещении, то следует на выходе ЦАПа платы NVL-08 поставить усилитель напряжения (в данной работе было решено усилить напряжение до +/-10В);
· усиленный по напряжению сигнал следует подавать на последовательно соединенные фотодиод и резистор с известным сопротивлением; резистор нужен для того, чтобы по падению напряжения на нем определить ток, протекающий через фотодиод;
· так как входной диапазон АЦП платы NVL-08 составляет +/-5.12 В, то после усиления напряжения, подаваемого на резистор с фотодиодом, следует в заданное количество раз уменьшить по напряжению измеряемый сигнал (напряжение, падающее на резисторе) - для этого было решено использовать делитель напряжения (в данном случае это достаточно корректно, так как входное сопротивление АЦП очень велико);
· так как в плате NVL-08 содержится только один ЦАП, который задействован в измерении ВАХ фотодиода, то необходимо позаботиться об управлении яркостью свечения светодиода (об управлении освещенностью фотодиода) - для решения этой проблемы в данной работе было сочтено достаточным изготовить простейший 6-разрядный ЦАП с использованием масштабирующих резисторов и операционного усилителя (управление этим ЦАПом осуществляется при помощи цифрового выхода платы NVL-08).
Таким образом, после приведенных рассуждений получилась функциональная схема, представленная на рис. 9. В данной работе усилитель напряжения, делитель напряжения, ЦАП для управления яркостью подсветки, измерительный резистор, фотодиод и светодиод выполнены в одном корпусе (для определенности условно назовем его блоком сопряжения).
Рис. 9. Функциональная схема измерительного комплекса
Принципиальная электрическая схема блока сопряжения (без указания питания операционных усилителей и без схем балансировки операционных усилителей) приведена на рис. 10. Здесь АЦП1 и АЦП2 означают первый и второй каналы АЦП платы NVL-08 соответственно, 0 - младший разряд, а 5 - соответственно старший разряд цифрового вывода платы NVL-08.
«Верхний» операционный усилитель (см. рис. 10) используется для усиления напряжения, подаваемого с ЦАПа платы NVL-08. Коэффициент усиления этого операционного усилителя равен 3.45 (он установлен при помощи подстроечного резистора на 22 кОм в цепи обратной связи). «Нижний» операционный усилитель вместе с масштабирующими резисторами, подключенными к цифровому выводу платы NVL-08, образует простейший ЦАП (для регулировки яркости свечения светодиода). Транзистор на выходе этого операционного усилителя нужен для усиления мощности, так как максимальный выходной ток используемого операционного усилителя (К153УД6) не превышает 5 мА, чего явно недостаточно для нормальной работы светодиода.
Рис. 10. Принципиальная электрическая схема блока сопряжения
Глядя на рис. 10, легко понять методику измерения ВАХ фотодиода: сначала на последовательно соединенные фотодиод и два резистора номиналом в R = 200 Ом подается напряжение U = 3.45·UАЦП1 (3.45 - коэффициент усиления операционного усилителя), затем измеряется падение напряжения UАЦП2 = UR на одном резисторе, после чего, зная U, UR и R, легко вычислить ток Iф, протекающий через фотодиод, и напряжение Uф, падающее на фотодиоде: Iф = UR/R, Uф = U - 2·UR.
Внешний вид изготовленного в данной работе блока сопряжения и начиняющей его электронной платы показан на рис. 11. Для блока сопряжения требуется питание от стабилизированного источника постоянного напряжения на 24В, 0.5А.
Рис. 11. Внешний вид блока сопряжения и начиняющей его электронной платы
3. Разработка программного обеспечения
Из многообразия сред для разработки программ в данной работе была выбрана среда LabVIEW6 фирмы National Instruments. Этот выбор обусловлен прежде всего тем, что построение измерительной системы с использованием LabVIEW обеспечивает разработчику наиболее удобный интерфейс программирования и позволяет существенно экономить время на разработку программ, а пользователю предоставляет удобный и наглядный интерфейс в стиле Windows-программ.