|
универсальный вход для любых датчиков, разработка универсального аналогового входа для разных датчиков |
|
|
|
Dec 27 2006, 03:44
|

Местный
  
Группа: Свой
Сообщений: 226
Регистрация: 2-06-06
Пользователь №: 17 720

|
Нужно 4-8 аналоговых входов для подключения разнообразных датчиков (пока планируются резистивные ТСМ,ТСП 50,100; Pt100,1000; KTY34; аналоговые TMP35,36; HIH3610; цифровые DS1820,1821), возможно, еще потребуется подключение термопар. Подключение для экономии контактов разьема желательно одно-, в крайнем случае двухпроводное. Процессор - Мега16. 10 разрядов его АЦП должно хватить (точность нужна до 1-2х градусов, диапазон - 10-130 градусов). Думаю, схемотехника должна быть приблизительно такая: программируемый ЦАПом или ШИМом генератор тока (0,5-5 мА) для резистивных и цифровых датчиков, аналоговый коммутатор на 4 или 8 каналов (CD4052 или 2xCD4051), дифференциальный усилитель с программируемым К.У., АЦП. Может, удастся обойтись встроенным АЦП (у него есть диф.режим и программируемый К.У.). Делал кто-нибудь что-то подобное?
|
|
|
|
|
 |
Ответов
|
Dec 27 2006, 15:52
|

Местный
  
Группа: Свой
Сообщений: 226
Регистрация: 2-06-06
Пользователь №: 17 720

|
Вот собрал такое (пока на макете) - работает (четыре канала), подключал DS18B20, Pt100, TMP36, HIH3610, ТСМ-50. Используется трехпроводная схема. ШИМ с PD4 задает ток для резистивных датчиков. U8A - повторитель после фильтра, U8B - генератор тока. AO0-AO3 - выходы тока, AI0-AI3 - входы напряжения. PA4 - используется для работы с цифровыми датчиками (для K_AV - им нужен подтягивающий резистор - ток 0,5 - 2 мА - вот по каналу генератора тока он и генерируется, работает прекрасно). После RC фильтра аналоговый сигнал поступает на PA3. Если нужно, АЦП используется в диф. режиме (по входу PA2 ШИМом с PD5 задается уровень на втором диф. входе, то есть неиспользуемый диапазон резистивных датчиков отрезается). Для датчиков с большим сигналом (TMP36, HIH3610) используется обычный, не диф. вход. Для 100 и 50 омных включается внутр. усилитель 10х. В программе создан массив параметров для типов датчиков (задан ток, который нужен данному датчику, режим АЦП (диф/обычный, Ку), нужен ли цифровой обмен). Алгоритм приблизительно такой : 1.Конфигурируем АЦП в соответствующий выбранному каналу (подключенному датчику) режим (обычный/диф., Ку) 2.В регистр ШИМа тока пишем значение, соответствующее току для данного типа датчика, в регистр ШИМа диф. сигнала - соответствующее значение. 3.пауза для установления параметров 4.меряем АЦП или обмениваемся с DSxxx 5.пишем считанное значение в массив измеренных значений 6.выключаем ток 7.пауза 8.переключаемся на следующий канал 9.перейти на п.1 Точности пока хватает (в +-3 градуса укладывается). Смещения компенсируются калибровкой по двум точкам (у LM358 они большие, но компенсируются нормально, пробовал MCP617 - значительно лучше, OPA2335 должно быть еще лучше). Если применить вместо встроенного внешний АЦП (например ADS1110) c программируемым усилением, должно быть вообще прекрасно.
Эскизы прикрепленных изображений
|
|
|
|
|
Dec 27 2006, 17:22
|
Местный
  
Группа: Свой
Сообщений: 492
Регистрация: 19-08-06
Пользователь №: 19 667

|
Цитата(umup @ Dec 27 2006, 14:52)  Вот собрал такое (пока на макете) - работает (четыре канала), подключал DS18B20, Pt100, TMP36, HIH3610, ТСМ-50. Используется трехпроводная схема. ШИМ с PD4 задает ток для резистивных датчиков. U8A - повторитель после фильтра, U8B - генератор тока. AO0-AO3 - выходы тока, AI0-AI3 - входы напряжения. PA4 - используется для работы с цифровыми датчиками (для K_AV - им нужен подтягивающий резистор - ток 0,5 - 2 мА - вот по каналу генератора тока он и генерируется, работает прекрасно). После RC фильтра аналоговый сигнал поступает на PA3. Если нужно, АЦП используется в диф. режиме (по входу PA2 ШИМом с PD5 задается уровень на втором диф. входе, то есть неиспользуемый диапазон резистивных датчиков отрезается). Для датчиков с большим сигналом (TMP36, HIH3610) используется обычный, не диф. вход. Для 100 и 50 омных включается внутр. усилитель 10х. Вот теперь замысел понятен. Я бы так все равно не делал, но раз тебя устраивает - почему бы и нет. а) использовать источник тока вместо подтягивающего резистора безбоязненно можно только в статике. Сомневаюсь, что твой источник тока успевает отрабатывать импульсы информационного обмена. Скорее, спасает широкий допуск на ток "подтяжки" в этой цепи. "Ноль" задается жестко, а к единице чем бы ни тянулся - в большом диапазоне токов почти все равно. Но чревато. б) Если раньше, говоря об "однопроводном" подключении датчика, видимо, имелось в виду 2 физических провода  , то теперь "трехпроводное" - это три или четыре? Видимо, все же 3, просто с терминами напряженка. В подключении проволочных термосопротивлений трехпроводное подключение означает не только то, что проводов 3, но и то, что падение напряжения на обоих проводах питания датчика компенсируется (пусть с использованием всего одного доп. провода). У тебя, судя по всему, - нет (точнее, компенсируется падение на одном проводе). Не полностью уверен, т.к. не нарисовано - но подозреваю. Хотя опять же - если устраивает... в) такой "дифференциальный" режим измерения из исходного поста совсем не ожидался. Ну да ладно. Другое дело, что он плохо реализован. Ты создаешь вычитаемое напряжение из ШИМ. Получаемое напряжение зависит, вообще говоря, не только от скважности ШИМ, но и от его амплитуды. Амплитуда определяется в данном случае напряжением питания контроллера. А оно у тебя застабилизировано в достаточной степени, чтобы использоваться в качестве сравнительной величины (через ШИМ) для 10-разрядного АЦП? По-простому, требуется питание контроллера 5+-0,005 В.
|
|
|
|
Сообщений в этой теме
umup универсальный вход для любых датчиков Dec 27 2006, 03:44 upc2 Уже лет двадцать для этих целей существует универс... Dec 27 2006, 08:50 iosifk Цитата(umup @ Dec 27 2006, 03:44) Нужно 4... Dec 27 2006, 09:13 Ruslan1 Цитата(umup @ Dec 27 2006, 02:44) Нужно 4... Dec 27 2006, 10:08 K_AV Цитата(umup @ Dec 27 2006, 02:44) Нужно 4... Dec 27 2006, 10:42 Евгений Николаев Вот накинулись на человека :-)
umup, вообще, желан... Dec 27 2006, 11:40 okela Мдя... Ну бывает, бывает. Человеку захотелось имет... Dec 27 2006, 14:04 Ruslan1 Цитата(okela @ Dec 27 2006, 13:04) Единст... Dec 27 2006, 14:56  okela Цитата(Ruslan1 @ Dec 27 2006, 15:56) Цита... Dec 27 2006, 15:06   Ruslan1 Цитата(okela @ Dec 27 2006, 14:06) Цитата... Dec 27 2006, 16:04 Ruslan1 Цитата(umup @ Dec 27 2006, 14:52) Если пр... Dec 27 2006, 19:17 umup ЦитатаСомневаюсь, что твой источник тока успевает ... Dec 27 2006, 18:02 K_AV umup
Знаешь, если честно - то мне все равно. Я вед... Dec 27 2006, 18:37 umup ЦитатаТы ведь, наверное, посмотрел, что у LM317 те... Dec 27 2006, 19:08 umup Смотрел когда-то схемотехнику у МПР51 (Овен) - тож... Dec 27 2006, 20:25 Арахис Цитата(umup @ Dec 27 2006, 20:25) Смотрел... Dec 27 2006, 23:44 noise2009 Здравствуйте! Подскажите как реализовать униве... Apr 10 2009, 07:50 Арахис Цитата(noise2009 @ Apr 10 2009, 11:50) Зд... Apr 13 2009, 19:04 noise2009 На счет конкуренции не беспокойтесь - я диплом дел... Apr 15 2009, 10:30 Арахис Цитата(noise2009 @ Apr 15 2009, 14:30) Ка... Apr 17 2009, 19:07 Tanya Цитата(noise2009 @ Apr 15 2009, 14:30) С ... Apr 18 2009, 10:32 noise2009 Выходит как то так? Осталось все это правильно сое... Apr 18 2009, 11:51 noise2009 Забыл проект прицепить Apr 18 2009, 12:59
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|