Отговори на тема  [ 12 мнения ] 
Въпрос за проектиране на терморегулатор. 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Дек 01, 2006 7:38 pm
Мнения: 6
Мнение Въпрос за проектиране на терморегулатор.
Здравейте приятели.Опитвам се да проектирам терморегулатор и горе-долу мисля ,че го направих но имам един
проблем.За сензор използвам термодвойка тип 'J',сигнала от нея подавам на АD594,която го усилва,линеазира и компенсира характеристиката.Напрежението от АD594 подавам на АЦП-то на PIC18F242,измервам го/512 замервания/,обработвам резултата и го визуализирам на три разреден светодиоден индикатор с динамично управление през порт Б.Температурата,която искам да поддържам задавам чрез ротационен енкодер и визуализирам на друг три разреден светодиоден индикатор с динамично управление през SPI интерфейса чрез
74НС595.Изхода е релеен .Проблема е ,че релето се включва,съответно изключва с няколко прещраквания при
достигане на зададената температура.Увеличих замерванията до 4096 но прещракванията пак ги има.Сложил съм
кондезатор 100нф на входа на АЦП-то.Кода от програмата за управление на релето е следния:
bsf PORTA,1 ;включвам релето през транзистор
movf RPG_counter,w ;това е младшия регистър на зададената температура
cpfsgt RES_0 ;сравнявам младшия регистър на текущата темп. със младшия на зададената
bra adres_0 ;връщане в началото на цикъл
movf RPG_counter+1,w ;старшия регистър на зададената температура в работния регт.
cpfseq RES_1 ;сравнение на старш. рег на текущата със старшия на зададената
bra adres_0
bcf PORTA,1 ;текущата е по-голяма от зададената-изключвам релето
bra adres_0

END


Съб Дек 16, 2006 10:34 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Съб Юни 24, 2006 8:25 pm
Мнения: 2292
Мнение Re: Въпрос за проектиране на терморегулатор.
1.Задай някакъв хистерезис (2-3 градуса) и вероятно ще си решиш проблема.

2.Възможно е масата по която върви сигналът от термодвойката да съвпада в някакъв учатък с масата през която тече токът от бобината на релето. Падът на напрежение върху този учатък се възприема като сигнал и започва едно заиграване на логиката, което наблюдаваш. Проводникът на масата за термодвойката не трябва да се използва от други вериги.

_________________
Две плюс две е приблизително равно на четири. Факт!


Съб Дек 16, 2006 11:11 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Дек 01, 2006 7:38 pm
Мнения: 6
Мнение 
АД594 я купувам от една пловдивска фирма -казва се "Кузмов електроникс" доколкото разбрах те я поръчват от Германия,между другого не е евтина -цената е около 20 лв.Сигурно има и
други начини за да се линеазира термодвойката но аз съм така да се каже "новобранец" в
програмирането на МК и електрониката въобще , занимавам се от месец и половина с тези неща.
По професия съм електроинженер-специалност-"Ел. машини и апарати" и се занимавам с производство на фурни и така да се каже на този етап до тук ми стига ума, но все трябва от
някъде да се започне.Използвам този процесор , защото уча по книгата на "Млад конструктор"
и за сега познавам само тази серия ,вероятно за в бъдеще ще видя , че има и по-оптимални
варианти ,но всичко с времето си.


Нед Дек 17, 2006 11:34 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Дек 01, 2006 7:38 pm
Мнения: 6
Мнение 
Благодаря ти "sthx" за отговора ,сега според мен проблема идва от там ,че не става изведнъж
преминаване от едната стойност към друга ,аз наблюдавам индикатора,примерно съм задал
300 градуса ,текущата ги достига и не преминава веднага на 301 ами " чука" два -три пъти
300-301 и тогава се установява в 301,същото се получава и при обратния процес -при намаляване на температурата.Колкото процеса е по-бавен /по-бавно увеличаване/намаляване на
температурата/,"почукванията" са повече.Ще помисля за хистерезис, но си мисля дали в момента
на влизане в хистерезиса нещата ще си останат същите и пак ще "прещраква".


Нед Дек 17, 2006 12:10 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Съб Юни 24, 2006 8:25 pm
Мнения: 2292
Мнение 
slavi написа:
АД594 я купувам от една пловдивска фирма -казва се "Кузмов електроникс" доколкото разбрах те я поръчват от Германия,между другого не е евтина -цената е около 20 лв.Сигурно има и
други начини за да се линеазира термодвойката но аз съм така да се каже "новобранец" в
програмирането на МК и електрониката въобще , занимавам се от месец и половина с тези неща.


Имаш пари - даваш. :) Линеаризацията можеш да я направиш , чрез таблица в паметта на професора, а компенсация на студения край - чрез друг датчик на температура - може и с едно диодче за 2 стотинки. :)

_________________
Две плюс две е приблизително равно на четири. Факт!


Последна промяна sthx на Нед Дек 17, 2006 12:50 pm, променена общо 1 път



Нед Дек 17, 2006 12:47 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Яну 30, 2006 2:48 am
Мнения: 1248
Местоположение: София
Мнение 
Хистерезиса решава въпроса.
Задание нпр. 300 - изключваш при 301, включваш при 299.
Това е хистерезис +/-1
Хистерезиса задължително се избира не по-малък от разлюляването на показанието на датчика, независимо поради каква причина


Нед Дек 17, 2006 12:49 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Фев 25, 2005 1:58 pm
Мнения: 4585
Местоположение: US
Мнение 
Може и времеви хистерезис да направиш, защото температурата е бавно променяща се величина. След като ти включи релето пускаш таймер за няколко секунди, чак след изтичане на това време пак можеш да го включваш/изключваш.

_________________
Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....


Нед Дек 17, 2006 2:33 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Яну 30, 2006 2:48 am
Мнения: 1248
Местоположение: София
Мнение 
Може, но това само намалява динамиката на регулиране.
Хистерезиса по стойност е задължителен, при нестабилност на обратната връзка - в случая показанието от датчика.
Всеки датчик е нестабилен в рамките на минимум +/- един дискрет


Нед Дек 17, 2006 4:00 pm
Профил WWW
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Дек 01, 2006 7:38 pm
Мнения: 6
Мнение 
STHX ,благодаря за идеята ,предполагам че компенсацията трябва да стане с някакъв операционен усилвател, но откровенно казано не ми е ясно,може ли да ме насочите към материал,който да прочета.


Вто Дек 19, 2006 7:21 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Просто коригираш с напрежението което генерира термодвоитака която се образува на студения край.
И аз доста си блъсках главата какво напрежение дава термодвойката в студения край.
От същата таблица като за топлия го вземаш ;)
Просто мериш с един диод температурата на конектора и по тази температура смяташ с колко трябва да коригираш.


Вто Дек 19, 2006 7:42 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Окт 10, 2004 9:55 am
Мнения: 1718
Мнение Mda
Nikola Kirov написа:
Просто коригираш с напрежението което генерира термодвоитака която се образува на студения край.
И аз доста си блъсках главата какво напрежение дава термодвойката в студения край.
От същата таблица като за топлия го вземаш ;)
Просто мериш с един диод температурата на конектора и по тази температура смяташ с колко трябва да коригираш.

Едно време като бях студент го правехме като другата термодвойка се слагаше във вода с кубчета лед , иначе не знам какво ще коригираш ако я оставиш така другата термодвоика трябва да отчиташ и температурата на помещението където е :)
Абе ако ползваш таблица с готови стоиности , просто го тарираш с такъв дето е точен и няма нужда да се занимаваш да смяташ толкова, таблицата ще ти е такава че всичко да е съобразено в нея . :wink:
Със стоиностите на ADC-то просто адресираш таблицата и вадиш готово число дори числото може да е направо готово като за индикацията със добавен предварително ASCI код :D


Вто Дек 19, 2006 7:54 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Яну 24, 2006 6:34 pm
Мнения: 1753
Местоположение: Варна
Мнение 
Подобна тема : http://www.mcu-bg.com/mcu_site/viewtopi ... 93&start=0


Вто Дек 19, 2006 8:27 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 12 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни