|
|
  |
терморегулятор, помогите |
|
|
|
Aug 1 2008, 17:30
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Цитата(Lost_Viking @ Aug 1 2008, 17:46)  Заметил вот что: записал в ADMUX: Код REFS1 REFS0 ADLAR MUX4 MUX3 MUX2 MUX1 MUX0 0 0 1 0 0 0 0 0 Циферки перестали бегать, а АЦП все еще мерял что-то. Какая чушь! ADLAR=1! Вай-вай-вай! Лучше RTFM, чем вопросы.  По поводу усреднения - не забудьте, что отношение сигнал/шум растет пропорционально квадратному корню из числа N усредняемых выборок, т.е. для 256 отсчетов имеем с/ш выросла в 16 раз. Младший разряд должен стоять и бояться. Это если у нас мат. ожидание есть состоятельная оценка. В противном случае придеццо делать обработку медианой.
|
|
|
|
|
Aug 1 2008, 21:47
|
Частый гость
 
Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091

|
Цитата(xemul @ Aug 1 2008, 22:01)  ADLAR=1 очень даже удобно, если читать только ADCH. Вот REFS0 = REFS1 = 0 только с кондюком на AVref гораздо прикольней - опора на входном токе ноги контроллера. Срочно патентовать!!!  Однако работает! Сам не понимаю. Собрал опору на TL431, и радуюсь.10Бит. Вот только наводки иногда проскакивают, теперь займусь ФНЧ, возможно применю цифровую фильтрацию. Как закончу - выложу полный код на Си с комментами и алгоритмом. Что бы такие же как я не наступали на грабли. Цитата(_Pasha @ Aug 1 2008, 22:19)  Дык автор хочет 10 бит, а получает 8 и радуется  Для меня и 8 бит хватило бы. Но мне пришла в голову мысль использовать сабж на даче для измерения сетевого напряжения, для регистрации (с записью в EEPROM,и дальнейшей пересылкой в ПК) температуры окружающей среды за промежуток времени, и т.п. Далее хотелось бы попробовать сделать датчик влажности грунта для автоматической поливалки... Вот так-то  Цитата(_Pasha @ Aug 1 2008, 21:30)  Это если у нас мат. ожидание есть состоятельная оценка. В противном случае придеццо делать обработку медианой. а можно без нецензурных выражений?
Сообщение отредактировал Lost_Viking - Aug 1 2008, 21:48
|
|
|
|
|
Aug 2 2008, 15:27
|
Частый гость
 
Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091

|
Цитата(domowoj @ Aug 2 2008, 15:26)  Lost_Viking А мож Вам лучше DS18x20 применить, никаких АЦП и никаких тебе опорных. Дергай только ножками правильно, читай температуру в цифре и выводи на индикатор. Нет, все эти датчики до 125 градусов. Мне же нужно до 200, в реале регулировка будет в районе 160-170.
|
|
|
|
|
Aug 3 2008, 06:25
|

Профессионал
    
Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486

|
Цитата(_Pasha @ Jul 31 2008, 18:57)  1. TL431 ему в опору, чтоб не баловался. 2. Noise canceler ему в мозги, иначе у младшего разряда нервный тик не пройдет. 3. Накопление методом скользящего среднего вне зависимости от того, удался ли п.2. 1.ТЛка - слабовато для опорного по точности 2.Это -сомо собой необходимо 3.Может быть применить какой-нибудь вероятностный критерий вместо скользящего среднего. И провести темпер. диапазон изменения входного к опорному. На каком датчике остановился?
--------------------
И на камнях растут деревья!
|
|
|
|
|
Aug 3 2008, 14:01
|
Частый гость
 
Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091

|
Цитата(domowoj @ Aug 3 2008, 10:25)  1.ТЛка - слабовато для опорного по точности Уже заметил. На чем посоветуешь опорное сделать? Цитата(domowoj @ Aug 3 2008, 10:25)  2.Это -сомо собой необходимо Еще бы сделать небольшую паузу между переключением анодов индикатора, и в эту паузу мерить температуру с подавителем шумов.Тлько с синхронизацией замучаюсь. Цитата(domowoj @ Aug 3 2008, 10:25)  3.Может быть применить какой-нибудь вероятностный критерий вместо скользящего среднего. брр, только если на голодный желудок. Цитата(domowoj @ Aug 3 2008, 10:25)  И провести темпер. диапазон изменения входного к опорному. что-что? Цитата(domowoj @ Aug 3 2008, 10:25)  На каком датчике остановился? Что-нибудь из этого. Пока еще не занимался конкретным выбором датчика.Как мозги доделаю, так датчик буду искать. Кстати, такой вопрос: как правильно рассчитать значение на выходе АЦП? Судя по этой формуле:  На выходе получится максимум 1024, что никак не 10 бит, а все 11. т.е. 10000000000. Так как правильно считать?
Сообщение отредактировал Lost_Viking - Aug 3 2008, 14:10
|
|
|
|
|
Aug 3 2008, 15:18
|
Частый гость
 
Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091

|
Цитата(domowoj @ Aug 3 2008, 19:05)  а 1024 - это кол-во дискрет от 0 до 1023. А для рассчета в EXCEL ставить что? 1024 или 1023? Думаю, что 1023.
|
|
|
|
|
Aug 3 2008, 15:46
|
Частый гость
 
Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091

|
Цитата(domowoj @ Aug 3 2008, 19:31)  Lost_Viking Может лучше применить ЖК индикатор. Не хочу тратиться на него. В принципе, у меня есть дома индикатор, но я не знаю как им управлять. Посмотри, может ты подскажешь? P.S. Так все-таки что мне ставить в EXCEL для рассчета значения на выходе АЦП?1024 или 1023?
Сообщение отредактировал Lost_Viking - Aug 3 2008, 15:52
|
|
|
|
|
Aug 3 2008, 17:34
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(Lost_Viking @ Aug 3 2008, 21:46)  P.S. Так все-таки что мне ставить в EXCEL для рассчета значения на выходе АЦП?1024 или 1023? Вас в школе пропорцию составлять учили? Когда Vin=Vref получаем максимальное число которое можно представить 10-ю разрядами: 1023, т.е. Vref соответствует максимальному коду АЦП - 1023. Составляем пропорцию Код ADC Vin ---- = ----- отсюда следует 1023 Vref ADC=Vin/Vref*1023
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|