Простой аналого-цифровой преобразователь

Рейтинг:  0 / 5

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Ю.С. Магда г. Черкассы РА 6'2007
Довольно часто в радиолюбительской практике возникает необходимость получить цифровое представление аналоговых сигналов, например, при разработке систем измерения и обработки данных, получаемых от датчиков, а также при создании систем управления различными технологическими процессами. Важнейшей частью подобных систем является аналого-цифровой преобразователь, позволяющий получить дискретное представление аналогового электрического сигнала.


Вниманию читателей предлагается очень простой 12-разрядный аналого-цифровой преобразователь, в котором использована популярная и недорогая микросхема LTC1286 фирмы Linear Technology. Преобразователь содержит несколько электронных компонентов и управляется через параллельный порт персонального компьютера. Программное обеспечение для управления преобразователя позволяет выполнить измерения и сохранить результат в текстовом файле для дальнейшей обработки. Особенностью программного обеспечения является то, что оно работает в операционных системах Windows XP/2003/Vista.

Данное устройство можно также использовать в домашних и лабораторных разработках в качестве простейшего программно-управляемого «осциллографа».
Микросхема LTC1286 представляет собой микромощный 12-разрядный аналого-цифровой преобразователь, работающий по методу последовательных приближений. LTC1286 позволяет выполнить до 12,5 тыс. преобразований в секунду, потребляя при этом ток около 250 мкА. В режиме ожидания микросхема потребляет всего 1 нА. При таких характеристиках энергопотребления для питания устройства можно использовать батареи или аккумуляторы. Микросхема работает с питающими напряжениями от 5 до 9 В и может выполнять преобразование как однополярных, так и двухполярных входных сигналов.
Результат преобразования передается в параллельный порт персонального компьютера по протоколу SPI. Как известно, протокол SPI требует наличия всего трех сигнальных линий, что значительно облегчает подключение преобразователя к удаленному оборудованию, например к микроконтроллерам или удаленным системам управления.
Рассмотрим принципиальную схему преобразователя (рис.1). Данное устройство работает с однополярными входными напряжениями в диапазоне 0...5 В.
Микросхема LTC1286 подключается к схеме следующим образом:
1. Vref (выв.1) - к этому выводу подключается источник опорного напряжения, определяющий диапазон преобразуемого напряжения. В данном случае вывод источника опорного напряжения подключен к источнику напряжения +5 В, что и определяет диапазон преобразования от 0 до 5 В;
2. +IN (выв.2) - к этому выводу подключается источник сигнала положительной полярности.
3. -IN (выв.З) - к этому выводу подключается источник сигнала отрицательной полярности (в данном случае вывод заземлен, поскольку преобразователь включен для обработки однополярного сигнала положительной полярности).
4. GND (выв.4) - к этому выводу непосредственно подключается общий провод аналоговой части схемы («аналоговая земля»).
5. CS/SHDN (выв.5) - выбор кристалла (Chip Select, CS). Логический «О» на этом входе разрешает работу микросхемы LTC1286. Лог.»1» на этом входе запрещает работу микросхемы, переводя ее в режим минимального потребления мощности.
6. Dout (выв.6) - выход цифрового сигнала. На этом выводе появляется последовательность двоичных битов, являющаяся результатом преобразования.
7. CLK (выв.7) - вход тактовой частоты. На этот вход подаются импульсы тактовой частоты, синхронизирующие последовательность битов на выводе Dout. Кроме того, частота тактовых импульсов определяет скорость преобразования.
8. Vcc (выв.8) - к этому выводу подключается источник питания. Он должен обеспечивать по возможности минимальный уровень пульсаций, поскольку это сказывается на точности преобразования. В данной конструкции используется широко распространенный стабилизатор типа 7805, а в качестве входного напряжения для стабилизатора служит обычная 9-вольтовая батарея или аккумулятор. Поскольку преобразователь потребляет незначительную мощность, то вполне оправдано применение батарейного питания, которое обеспечивает длительную работу преобразователя. Кроме того, при батарейном питании отсутствуют пульсации и помехи, свойственные сетевым источникам питания, что обеспечивает высокую точность преобразования.
Для управления процессом преобразования и получения результата используются следующие программы:
1. Porttalk.sys - драйвер ядра, позволяющий приложению пользователя получить доступ к портам ввода-вывода персонального компьютера в операционных системах Windows 2000/XP/2003/Vista. Драйвер снимает бит защиты с портов ввода-вывода, делая их доступными приложению пользователя.
2. Allowio.exe - программа, управляющая доступом к конкретным портам ввода-вывода. Программа передает драйверу porttalk адреса портов, к которым нужно получить доступ, и идентификатор пользовательского процесса, требующего такого доступа (в данном случае, таковым является процесс, создаваемый при запуске программы adl286pro.exe). 3. Adl286pro.exe - программа пользователя, непосредственно управляющая преобразованием входного сигнала в последовательный код. Программа позволяет выполнить аналого-цифровое преобразование в одном из двух режимов: пошаговом или автоматическом. Результат преобразования отображается в окне приложения и может быть сохранен в текстовом файле для дальнейшей обработки.
4. Run_conversion.bat — командный файл, выполняющий запуск программного обеспечения аналого-цифрового преобразователя. Именно этот файл должен запускаться пользователем.
Для запуска преобразователя необходимо выполнить следующие шаги:
1. Подключить преобразователь к параллельному порту персонального компьютера.
2. Скопировать файлы porttalk.sys, allowio.exe, ad 1286pro.exe и run_conversion.bat в один и тот же каталог.
3. Перейти в этот каталог и запустить на выполнение командный файл run_conversion.bat, после чего на экране появится окно приложения adl286pro (рис.2).
Измерение входного напряжения может выполняться в пошаговом или автоматическом режимах. При запуске приложения по умолчанию устанавливается пошаговый режим. В этом случае при нажатии кнопки «Single-step» выполняется единичный цикл преобразования. Если выбран автоматический режим, то измерения входного напряжения будут выполняться циклически через указанные интервалы времени.
Для перехода в автоматический режим нужно:
1. Установить отметку в окне «Timer».
2. Ввести в окне редактирования нужный интервал времени в миллисекундах. Например, при запуске программы интервал по умолчанию устанавливают равным 1000 мс (рис.2). Минимальное значение интервала выборки данных выбрано равным 100 мс, максимальное - 30000 (30 с), а шаг изменения интервала выбран равным 50 мс.
3. Нажать кнопку «Start Timer».
Для изменения интервала получения данных нужно остановить таймер, нажав кнопку «Stop Timer», затем установить требуемый интервал и вновь запустить таймер. Для перехода из автоматического в пошаговый режим необходимо снять отметку с окна «Timer».
Полученные данные отображаются в окне редактора, и их можно сохранить в текстовом файле для последующей обработки, нажав кнопку «Save As...». Для очистки окна редактирования нужно нажать кнопку «Clear all!».
Для запуска программ в операционных системах Windows XP/2003/Vista пользователь должен иметь права администратора или входить в группу администраторов системы.

Кроме того, при запуске программ в операционной системе Windows Vista может потребоваться установка атрибута «Run this program as an administrator» для приложений allowio.exe и adl286pro.exe.
Несколько слов о конструкции преобразователя. Для соединения устройства с параллельным портом ПК желательно использовать плоский кабель длиной не более 30 см. Если же необходим более длинный кабель, то нужно применить буферные усилители/формирователи сигналов. Все соединения на плате преобразователя нужно выполнить проводниками минимальной длины и использовать для питания источник с минимальными пульсациями, либо предусмотреть варианты фильтрации помех по шине питания.
Схему преобразователя можно модифицировать, например, для работы с несколькими источниками сигналов, подключив их ко входу микросхемы через мультиплексор.
Детальное описание микросхемы LTC1286 можно найти на сайте www.linear.com фирмы Linear Technology.
По всем вопросам, касающимся разработки и функционирования аналого-цифрового преобразователя, можно обращаться к автору по адресу Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. или yusm2004@mail. ru.

Оставлять комментарии могут только зарегистрированные пользователи