LusoRobótica - Robótica em Português

Sistemas específicos => PIC => Tópico iniciado por: beirao em 07 de Maio de 2010, 23:34

Título: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: beirao em 07 de Maio de 2010, 23:34

Ora viva malta,

Venho aqui postar um trabalho que fiz, recorrendo a um PIC18F4520.

O objectivo do trabalho era a simulação de um sistema integrado de aquisição de valores de uma camara de combustão, com a aquisição da temperatura através de um sensor, uma RTD – PT100, possibilitar ao utilizador a definição, através de um menu, da temperatura de referência e das temperaturas limite da câmara de combustão, disponibilizar todos estes valores ao utilizador através de um LCD, e possibilitar ao utilizador a consulta de um histórico das temperaturas do sistema.
Sendo assim, o sistema implementado terá de controlar o PIC18F4520 para este manter a temperatura instantânea da câmara de combustão o mais próximo possível da temperatura de referência e, no caso da temperatura instantânea ultrapassar o valor mínimo ou o valor máximo, emitir uma condição de alarme que consiste no aviso ao utilizador desta situação através da intermitência de um led e de uma mensagem no LCD.

O sistema possui as seguintes características:

 - Dois sensores: RTD - PT100 e um "forno" (oven, disponivel no PROTEUS VSM). Recorreu-se ao ADC de 10bits que o PIC18F já possui, para fazer a aquisição de sinal de cada um dos sensores. Para a RTD foi efectuada ainda a linearização do sinal;

 - LCD : O sistema possui um LCD onde era visível a temperatura de referência (definida pelo utilizador), a temperatura instantanea, e uma mensagem de erro no caso de o sensor escolhido ultrapasse os limites de temperatura definidos;

 - Módulo USART: Este módulo faz a interface com o utilizador. Neste módulo o utilizador define a temperatura mínima, máxima e de referência, o sensor a utilizar e ainda pode consultar um histórico de temperaturas medidas;

 - Protocolo I2C: Este protocolo serve para gravar os valores das temperaturas medidos, nomeadamente 20 leituras;

 - Timers: Foram utilizados dois timers. O timer0 para colocar um led de emergência em intermitência, e o timer2 para fazer a cadência da aquisição do sinal através do módulo ADC.

Coloco em anexo uma imagem do PROTEUS, com o sistema implementado.

Se alguém quiser o código C, eu posto aqui!

Cumps
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: Sérgio_Sena em 09 de Maio de 2010, 16:41
Beirão,

está óptimo o trabalho!

Quero fazer algumas sujestões, mas não sei se serão bem-vindas! são melhorar algumas partes de hardware, para teres melhor funcionamento na prática.

POdemos falar po PM, ou se quiseres ponho aqui as ideias, para todos lerem.

Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: msr em 09 de Maio de 2010, 16:59
Está muito giro beirao! E a descrição detalhada é sempre bem vinda para quem pouco percebe do assunto, como é o meu caso.

Fiquei no entanto com uma duvida. Como é que é regulada a temperatura? Em malha aberta (pelo utilizador) ou fechada (pelo PIC)? Que "componentes" é que permitiriam aquecer/arrefecer a câmera por forma a manter a temperatura constante?

Uma ideia de uso que me ocorre é usar um forno com o "termostato" destes e assim soldar componentes SMD!
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: beirao em 09 de Maio de 2010, 17:47
Beirão,

está óptimo o trabalho!

Quero fazer algumas sujestões, mas não sei se serão bem-vindas! são melhorar algumas partes de hardware, para teres melhor funcionamento na prática.

POdemos falar po PM, ou se quiseres ponho aqui as ideias, para todos lerem.

Podes colocar aqui as ideias..! Estamos cá para discutir estes assuntos...  ;)
Está muito giro beirao! E a descrição detalhada é sempre bem vinda para quem pouco percebe do assunto, como é o meu caso.

Fiquei no entanto com uma duvida. Como é que é regulada a temperatura? Em malha aberta (pelo utilizador) ou fechada (pelo PIC)? Que "componentes" é que permitiriam aquecer/arrefecer a câmera por forma a manter a temperatura constante?

Uma ideia de uso que me ocorre é usar um forno com o "termostato" destes e assim soldar componentes SMD!

A temperatura é regulada em malha fechada quando a temperatura é "lida" através do forno ou em malha aberta quando é utilizada a RTD.

Em malha fechada, o PIC liga ou desliga o forno consoante a situação (se a T está abaixo ou acima da temperatura de alarme). Em malha aberta, é necessária a intervenção do utilizador para este aumentar ou diminuir a temperatura.

Relembro que este projecto é baseado totalmente em simulação através do PROTEUS... Por agora não há intenção de o implementar.. talvez um dia ;)
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: Sérgio_Sena em 10 de Maio de 2010, 15:43
Então olha, as minhas ideias são ::

# estás a comutar a alimentação do LCD com um NPN, mas não é o mais correcto. Deve-se, sim, usar um PNP ou PMOS, assim não se tem a queda de tensão Vbe, e alimenta-se o LCD com quase 5V em vez dos 4.3V. O PMOS é realmente uma boa opção, porque não consome corrente e a Vds é minima.
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fwww.senaeng.com%2Ffiles%2Fforum%2FLCD_power_ctrl.JPG&hash=588767d5fc107a859759b52ce95bd7789b75584e)

# o circuito de leitura da PT100, não está a ajudar à leitura do sinal. Estás a ler directamente a variação de dezenas de milivolt, quando podes aproveitar U3 para te amplificar por 10 ou 20. Assim, tens mais largura para o ADC poder trabalhar, e mais precisão. Este circuito abaixo, funciona muito bem e, é extremamente interessante do ponto de vista que a tensão de referência pode vir do PIC e, assim, se houver uma flutuação de energia, o circuito da PT100 varia na mesma proporção que o PIC.
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fwww.senaeng.com%2Ffiles%2Fforum%2Fcircuito_pt100.JPG&hash=c5423114318eab52566483edf731b274a4d1febc)

# A saída de temperatura da câmara de combustão, presumo que seja uma PT100 também? ou é um circuitoque já dá saída directa de tensão?.. de qualquer forma, todos os sensores e sinais analógicos, devem levar um tratamento para melhor a gama dinâmica do ADC. De que vale converter de 0..5V, se o nosso sinal varia apenas 200mV ?

# Como é um circuito de simulação, funciona bem no PC. Para implementar em sistema real, há muitas voltas a dar, inclusivé o desenho da PCB que tem q ser vocacionado para a redução de ruido e afins...



Bom trabalho ;)

Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: beirao em 11 de Maio de 2010, 14:55
Ora viva,

Muito obrigado pelas tuas sugestões asena!

Tens toda a razão na questão da leitura da PT100.. obrigado!

Na questão do forno, ele tem uma saída totalmente linear, V/ºC.. nomeadamente 0,02 V/ºC, os tais 200mV.

Sim, em simulação funciona tudo bem.. na realidade sabemos que nem sempre assim é!

Cumps
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: Goshawk em 17 de Junho de 2012, 00:16
Boas Beirao. Caso possas postar o código C agradecia, pode vir a dar jeito para um mini-projecto que estou a desenvolver este semestre.

Desde já, obrigado.
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: Njay em 17 de Junho de 2012, 00:37
Podes elaborar sobre como vais ler a PT100, que intervalo de temperaturas e com que resolução / precisão queres ler?
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: beirao em 18 de Junho de 2012, 21:48
Agora não o tenho neste pc, mas depois disponibilizo o código (se me esquecer, manda PM)

Podes elaborar sobre como vais ler a PT100, que intervalo de temperaturas e com que resolução / precisão queres ler?

Essa pergunta é para o Goshawk, certo?
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: Njay em 19 de Junho de 2012, 00:00
É para ti, porque com o que sei de PT100 e com o esquema que aí tens não tou a ver como lês o que quer que seja desse sensor. Também não vejo onde é que o sinal RT1(E+) vai dar.
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: beirao em 19 de Junho de 2012, 19:48
É para ti, porque com o que sei de PT100 e com o esquema que aí tens não tou a ver como lês o que quer que seja desse sensor. Também não vejo onde é que o sinal RT1(E+) vai dar.

Isto já é bastante antigo e não me lembro de tudo, mas o sinal RT1(E+) é uma fonte de corrente constante de 50mA... Pelo que vi agora no relatório que fiz:
RTD = R0 x (1 + ?T), em que R0 = 100 Ohm e ? = 0.0039803, logo RTD = 100 + 3.9803T ou T= (RTD – 100) / 3.9803 (ºC)

Assim, sabendo a corrente e respectiva tensão, sei a temperatura... a gama de temperatura está definida, e quando é ultrapassada é limitada pelo buffer

Mais logo posso ver isto melhor que já nao me lembro muito bem ;)
Título: Re: Projecto: Sistema integrado de aquisição de uma câmara de combustão
Enviado por: Njay em 20 de Junho de 2012, 03:15
(...)  o sinal RT1(E+) é uma fonte de corrente constante de 50mA...

Já percebi, obrigado :)