Вопрос № 85701: Гм... Вопрос следующий)
У меня есть испытательная камера. С нее идет 2 аналоговых линейных выхода. На одном температура (от 20 д 90 градусов по цельсию с уровнями от 2 до 4,5 вольт), на другом влажность (от 60 до 100 процентов, с напряжениями 2,4...
Вопрос № 85.701
Гм... Вопрос следующий)
У меня есть испытательная камера. С нее идет 2 аналоговых линейных выхода. На одном температура (от 20 д 90 градусов по цельсию с уровнями от 2 до 4,5 вольт), на другом влажность (от 60 до 100 процентов, с напряжениями 2,4 и 4,5 вольт соответственно). Мне эти показания надо снять и обработать микроконтроллером(MSC51). Для этого я беру АЦП ADS7816.
Итак: 1). Как используя только один АЦП снять показания с двух аналоговых выходов, сначала с одного, а потом с другого. Какая схема? Показания снимаются программно, то есть без участия человека в процессе) Возможно ли использование микроконтроллера для этого дела? Или ставить два АЦП???
2). И как собственно работает АЦП. Как он преобразует информацию: то есть со входа он снимает например показания 2 вольт температуры, а на микроконтроллер попадает какое значение: число 20 в двоичном коде, или как????
=====================
Спасибо заранее за ответы) Помогите студентке, пожалуйста)
Отвечает: Sidorov Serg
Здравствуйте, Рогова Ольга Алексеевна!
Лучше использовать AD7705, у него 2 входа и возможно подключить внешний опорник (в вашем случае
понадобится опора с уровнями 0-2 и 4.5-5в. Показания снимаются контроллером через п&
#1086;следовательный интерфейс АЦП. Любой АЦП преобразует напряжение на входе в двоичный
код на выходе. Для AD7705 формула преобразования D=65536*(Uвх-Uref(-))/(Uref(+)-Uref(-)). Для других АЦП может быть д
088;угая формула.
Например: Uвх=2В, Uref(+)=5В, Uref(-)=0В. Тогда будет D=26214.
Задавайте вопросы дальше, попробую помочь...
Ответ отправил: Sidorov Serg (статус: 9-ый класс)
Ответ отправлен: 06.05.2007, 16:06 Оценка за ответ: 5 Комментарий оценки: Достаточно полной и подробный ответ на мой слегка запутанный вопрос.
Отвечает: Dark128
Здравствуйте, Рогова Ольга Алексеевна!
1. Для этого необходимо предусмотреть электронную коммутацию аналоговых сигналов. Но, зачем вам такая древняя элементная база(MSC51)??? Все это можно реализовать на современной, например если взять контроллер PIC12F675. В его состав уже входит АЦП и у него 5 аналоговых входа, которые переключаются программно. Контроллер восьмивыводный, если нужно больше портов всегда можно подобрать и другой, например PIC16F876A. Стоят они буквально копейки, первый около 40р, второй уже в районе 150р. Если такое задание, то
берите например микросхему ADG411, ULN2003, в их составе имеются четыре аналоговых ключа, которые управляются логическими уровнями. Есть АЦП и с двумя входами, но это надо смотреть документацию на них. Это еще просто так на вскидку. То есть это возможно, несомненно.
2. число на выходе АЦП будет зависеть от опорного напряжения. Возводим число 2 в степень, к примеру 10(скольки разрядный АЦП, в такую степень и возводим) и получаем 1024. Так вот, опорное напряжение делиться на 1024 отсчета, и следовательно на выходе будет число от 0 до 1023, в зависимости от входного напряжения. Т.е. при 4,5В опорного на выходе будет присутствовать 1023 при макс. напряжении и при 2 вольтах что то около 455-456. Можно посчитать пропорцией. А следовательно можно поиграться опорным напряжением,
чтобы числа на выходе были наиболее удобны для расчетов. Если взять опорное 5.12В вы получите наиболее удобоваримые числа, например при 2В на входе, на выходе получите число 400 естественно в двоичном виде. При 4.5В получите число 900. Остается только поделить на 200. Естественно можно подобрать и другое значение опорного напряжения, лишь бы не выходило за рамки дозволенного. Все это относительно преобразователей встроенных в PIC контроллеры. Для других АЦП может быть и
сложнее, но в тех. документации всегда найдете то что нужно.
--------- Так и только так и никак иначе
Ответ отправил: Dark128 (статус: Студент)
Ответ отправлен: 06.05.2007, 19:22 Оценка за ответ: 4 Комментарий оценки: К сожалению я не могу себе позволить выбрать что-то другое в данной ситуации по нескольким причинам: язык программирования, которого я не знаю, архитектура, которая мне тоже к сожалению пока незнакома) А АЦП последовательный - потому что входов на параллельный не хватает. Но в любом случае, спасибо за участие =)
Отвечает: Denaon
Здравствуйте, Рогова Ольга Алексеевна!
На все Ваши вопросы в рамках рассылки полностью ответить невозможно. Проясню некоторые моменты
1. Для переключения источников, можно использовать либо электронные ключи, либо АЦП с несколькими входами, как Вам и предложили выше.
2. на этот вопрос тоже правильно ответили.
От себя еще добавлю:
Желательно использовать нормирующие усилители. Обычные операционные усилители, которые приводят входной сигнал к нужному уровню и диапазону (в соответствии с параметрами АЦП). А также согласуют выходное сопротивление датчиков и входное сопротивление АЦП. Ну и на всякий случай защищают АЦП от перенапряжений по входу.
АЦП выбирается исходи из требуемой точности измерений и быстродействия, это первоочередные требования. По быстродействию думаю, ограничений у Вас нет. А точность определяется его разрядностью.
Можете посмотреть один из моих первых рабочих проектов http://denaon.narod.ru/Reologiay/Reologiay.html
Это система сбора данных, примерно то же самое, только на два канала, нужно и Вам. Посмотрите, надеюсь, поможет.
Про AD7705.
Для выбора входа используется Communications Register, его два бита CH1–CH0 (смотрите Table VII. Channel Selection for AD7705 в описании).
По линии Sclk микроконтроллер тактирует принимаемые/передаваемые данные по последовательному интерфейсу. тактируется АЦП по линии MCLK IN от внешнего источника импульсов, или подключением резонатора к входам MCLK IN и MCLK OUT.
--------- Многознание уму не научает
Ответ отправил: Denaon (статус: Студент)
Ответ отправлен: 06.05.2007, 20:16