реклама на сайте
подробности

 
 
> Проблема с термопарой, ... или с АЦП ?
alux
сообщение Aug 5 2010, 15:23
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Делаю терморегулятор для печи. Термопару для отладки взял от китайского тестера (в фторопластовой изоляции с разъемом на конце). Индикация - четыре 7-сегментных знакоместа. Вывожу значение напряжения с первого канала, куда подключена термопара. Отрицательный вывод термопары соединен с опорным напряжением +2,5В, которое является опорным для АЦП (AD7799). Режим измерения - биполярный.

Проблема в том, что при правильном подключении термопары ("-" к AIN1-, "+" к AIN1+) значение напряжения неизменное от температуры (прикладываю конец ТП к включенной настольной лампе). Если же подключить ТП наоборот к АЦП, то, значение меняется по температуре, но, естественно, в обратную сторону. В чем может быть дело?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
alux
сообщение Aug 8 2010, 05:13
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 589
Регистрация: 24-04-05
Пользователь №: 4 447



Подключил UART. Отдельная плата с MAX232, соединяется через 4 проводка: общий, +5В, RXD, TXD. В программу добавил драйвер UART, которым всегда пользуюсь. Но почему-то всегда передает 0x00, чтобы я не посылал.
Какое-то проклятие!!! smile3046.gif

Сейчас вывожу на 7-сегм индикатор значение напряжения в микровольтах, значение int.
При правильном включении ТП показывает значение -1.5 ... -1.7 мВ. ТП прикладываю к горячему. Показания не меняются.
Но если подключить неправильно ТП ("-" ТП на AIN1+ ) , то значения меняются по температуре, но в отрицательную область!
Я уже все больше склоняюсь к мысли, может просто убрать этот минус и пусть работает так?

Но все же этому должно быть какое-то простое объяснение.

PS. Значение Value.Average = 4, и это нее приведет к переполнению.

PS2. Это ж надо так было облажаться!!!

Код
// Read from data register, it should be previously requested from ad7799_request_data, the value is signed
//------------------------------------------------------------------------------
unsigned long ad7799_ReadData()
{
    unsigned long val = 0;

..................

Нужно возвращать значение типа long !. Главное, что в шапке функции я об этом специально написал smile.gif
Все теперь работает.
Спасибо.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- alux   Проблема с термопарой   Aug 5 2010, 15:23
- - Tanya   Цитата(alux @ Aug 5 2010, 19:23) Отрицате...   Aug 5 2010, 15:54
|- - alux   по даташиту напряжение на входе при включенном буф...   Aug 5 2010, 20:23
|- - Tanya   Цитата(alux @ Aug 6 2010, 00:23) по даташ...   Aug 6 2010, 03:10
- - MrYuran   Цитата(alux @ Aug 5 2010, 19:23) Отрицате...   Aug 5 2010, 20:32
|- - alux   Цитата(MrYuran @ Aug 5 2010, 23:32) Поясн...   Aug 6 2010, 05:57
|- - MrYuran   Цитата(alux @ Aug 6 2010, 09:57) Покажите...   Aug 6 2010, 06:05
|- - Tanya   Цитата(alux @ Aug 6 2010, 09:57) Что имен...   Aug 6 2010, 06:28
- - alux   Блин, ерунда какая-то... Подключил отрицательный в...   Aug 6 2010, 07:54
|- - MrYuran   Цитата(alux @ Aug 6 2010, 11:54) Блин, ер...   Aug 6 2010, 08:04
||- - alux   Цитата(MrYuran @ Aug 6 2010, 11:04) А на ...   Aug 6 2010, 08:18
||- - Tanya   Цитата(alux @ Aug 6 2010, 12:18) В принци...   Aug 6 2010, 09:50
|- - Tanya   Цитата(alux @ Aug 6 2010, 11:54) В чем де...   Aug 6 2010, 08:09
- - sensor_ua   Странно это. Выглядит как попутанные шнурки тестер...   Aug 6 2010, 10:04
- - alux   Выкладываю сырцы. Код// HEADER //-----------------...   Aug 6 2010, 11:04
|- - sgrig   Самое интересное вот здесь: Цитата(alux @ Aug...   Aug 6 2010, 11:43
|- - alux   продолжение... Код//------------------------------...   Aug 6 2010, 11:51
|- - Tanya   Цитата(alux @ Aug 6 2010, 15:51) продолже...   Aug 6 2010, 12:10
- - sensor_ua   Код(AdcValue - STEPS_B) * VREF / 128 / STE...   Aug 6 2010, 13:37
|- - alux   Цитата(sensor_ua @ Aug 6 2010, 16:37) Код...   Aug 6 2010, 13:45
- - sensor_ua   ЦитатаОбратили внимание Обратил. Но там тоже есть ...   Aug 6 2010, 14:04
|- - Tanya   Цитата(sensor_ua @ Aug 6 2010, 18:04) В д...   Aug 6 2010, 14:39
- - alux   В симуляторе проверил функцию Result.TemperatureTC...   Aug 6 2010, 18:36
- - MrYuran   А если откинуть пока лишнюю математику и посмотрет...   Aug 6 2010, 18:42
- - alux   Для этого необходимо либо UART, либо ЖКИ.   Aug 6 2010, 18:55
|- - Tanya   Цитата(alux @ Aug 6 2010, 22:55) Для этог...   Aug 7 2010, 03:36
- - alux   чтобы выводить 8-значные числа кодов АЦП. PS. Оч...   Aug 7 2010, 06:19
- - sgrig   Burnout выключите. Какой проц используете? JTAG ил...   Aug 7 2010, 07:12
- - alux   Burnout выключен, - проблема та же. ATmega8535. Б...   Aug 7 2010, 07:47
- - sgrig   А сколько сегментов на индикаторе? Для меня сомни...   Aug 7 2010, 08:02
- - alux   я переделал под целочисленную арифметику, по совет...   Aug 7 2010, 10:53
|- - Tanya   Цитата(alux @ Aug 7 2010, 14:53) На индик...   Aug 7 2010, 11:11
- - sensor_ua   Так сколько показывает? И какое напряжение сигнала...   Aug 7 2010, 11:44
|- - alux   Цитата(sensor_ua @ Aug 7 2010, 14:44) Так...   Aug 7 2010, 12:11
|- - Tanya   Цитата(alux @ Aug 7 2010, 16:11) Объяснит...   Aug 7 2010, 12:18
- - sensor_ua   Самое простое, если у Вас 8-и-сегментные индикатор...   Aug 7 2010, 13:15
|- - alux   Цитата(sensor_ua @ Aug 7 2010, 16:15) Пос...   Aug 7 2010, 14:42
- - sensor_ua   Насчёт long long Вы написали всё правильно и я на...   Aug 7 2010, 15:53
- - Krys   Цитата(MrYuran @ Aug 6 2010, 03:32) Что-т...   Aug 10 2010, 07:38
- - sensor_ua   ЦитатаПолностью поддерживаю! Это следует из пр...   Aug 10 2010, 14:45
- - Krys   Цитата(sensor_ua @ Aug 10 2010, 21:45) АЦ...   Aug 11 2010, 04:15


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 14:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.01386 секунд с 7
ELECTRONIX ©2004-2016