Buscar

PIC Sensoreamento Térmico

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 64 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 64 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 64 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Centro Universitário Positivo 
Pró-Reitoria de Pós-Graduação e Pesquisa 
Programa de Iniciação Científica 
 
 
 
 
 
 
 
 
 
Sistema de Sensoriamento Térmico 
 
 
 
 
 
 
 
 
Monografia do Projeto do 
Programa de Iniciação Científica, 
desenvolvido no ano de 2000, na 
área de Engenharia da 
Computação. 
 
Alunos: 
Cleverson Rebelo Sabatowski 
Josmar Pedro Klemba 
Mauricio Perretto 
 
Orientador. Prof. Edson Pedro 
 Ferlin 
 
 
 
 
 
 
 
 
 
2000 
 2
Sumário 
I – Lista de Figuras pág. i 
II – Lista de Abreviaturas pág. iii 
III – Lista de Tabelas pág. iv 
IV – Unidades do Sistema Internacional de Medidas (S.I.) pág. v 
1 – Introdução pág. 04 
2 – Descrição do Projeto pág. 06 
3 – Sensores pág. 07 
 3.1 – Semicondutores pág. 07 
3.1.1 – Elétrons e Lacunas pág. 08 
 3.2- Dispositivos Semicondutores pág. 10 
3.2.1 – Diodos pág. 10 
3.2.2 – Transistores pág. 12 
3.2.3 – Termistores pág. 14 
3.2.4 – Termopares pág. 16 
4 – Conversores pág. 18 
 4.1 – Método da Voltagem em rampa pág. 18 
 4.2 - Método da Aproximação Sucessiva pág. 20 
5 – Interfaceamento com o Computador pág. 23 
 5.1 – Porta Serial pág. 23 
 5.2 – Porta Paralela pág. 24 
6 – Software pág. 27 
7 – Implementação pág. 29 
 7.1 - Principais Componentes pág. 29 
7.1.1 - Diodo 1N4148 pág. 29 
7.1.2 - Amplificador Operacional LM358 pág. 31 
7.1.3 - Conversor A/D ADC0804 pág. 34 
 7.2 – Hardware pág. 35 
 7.3 – Software pág. 39 
8 – Resultados pág. 47 
9 – Conclusão pág. 50 
Referências Bibliográficas pág. 53 
Anexos pág. 55 
Glossário pág. 59 
 i 
 
 
 
 
I – Lista de Figuras 
 
· Figura 2.1 – Diagrama em Blocos do Sistema pág. 05 
· Figura 3.1 – Estrutura de um Diodo pág. 10 
· Figura 3.2 – Relação de Tensão X Temperatura pág. 10 
· Figura 3.3 – Transistor PNP e NPN, nota-se que a base controla 
 a junção pág. 11 
· Figura 3.4 – Desenho de um Transistor funcionando c/ porta lógica pág. 12 
· Figura 3.5 – Porta NAND de 3 entradas operada à diodo pág. 13 
· Figura 3.6 – Dois metais com uma temperatura aplicada a eles pág. 15 
· Figura 3.7 – Desenho esquemático de um termopar pág. 15 
· Figura 4.1 – Configuração Lógica para a Voltagem em Rampa pág. 18 
· Figura 4.2 – Esquema lógico para a Aproximação Sucessiva pág. 21 
· Figura 5.1 – Pinagem da porta paralela pág. 24 
· Figura 5.2 – Funcionamento dos pinos da porta paralela pág. 24 
· Figura 6.1 – Fluxograma do software implementado pág. 27 
· Figura 7.1 – Relação Corrente X Temperatura em um diodo 1N4148 pág. 30 
· Figura 7.2 – Diagrama Esquemático do CI LM358 pág. 31 
· Figura 7.3 – Montagem para amplificação inversora pág. 32 
· Figura 7.4 – Montagem para amplificação não inversora pág. 33 
· Figura 7.5 – Esquemático da Amplificação da Diferença pág. 33 
· Figura 7.6 – Vista superior do ADC0804 pág. 34 
· Figura 7.7 – Circuito para conversão contínua com o ADC0804 pág. 35 
· Figura 7.8 – Esquemático do Hardware implementado pág. 37 
· Figura 7.9 – Interface Gráfica com o Usuário pág. 39 
· Figura 7.10 – Aviso de temperatura pág. 40 
 ii 
· Figura 8.1 – Relação Temperatura X Tensão no transistor 2N2222 pág. 47 
· Figura 8.2 – Relação Temperatura X Tensão no diodo 1N4148 pág. 48 
· Figura I.1 – Interface do Software pág. 56 
· Figura I.2 - Aviso indicando que a temperatura excedeu o limite pág. 58 
 iii 
 
 
 
 
II – Lista de Abreviaturas 
 
A/D – Analógico para Digital 
ASP – Ajustador de Sinal de Prova 
D/A – Digital para Analógico 
DAC – Conversor Digital para Analógico (Digital/Analog Converter) 
DTL – Lógica Diodo-Transistor 
E/S – Entrada e Saída 
IEEE – Instituto de Engenheiros Elétricos e Eletrônicos 
LSB – Less Significative Bit – Bit Menos Significativo 
MSB - More Significative Bit – Bit Mais Significativo 
NTC – Negative Temperature Coefficient – Coeficiente de Temperatura Negativo 
PTC – Positive Temperature Coefficient – Coeficiente de Temperatura Positivo 
RS – Registrador Sequencial 
SD – Sequenciador Digital 
USB – Universal Serial Bus – Barramento Serial Universal 
Vcc – Tensão de Corrente Contínua 
Vh – Tensão de entrada alta 
Vl – Tensão de entrada baixa 
 iv
 
 
 
III – Lista de Tabelas 
 
Tabela 7.1 – Características Elétricas do Diodo 1N4148 pág. 30 
Tabela 7.2 – Características principais do LM358 pág. 32 
Tabela 7.3 – Características Principais do ADC0804 pág. 34 
Tabela 7.4 – Listagem dos Componentes pág. 36 
 
 v
 
 
 
 
IV – Unidades do Sistema Internacional de Medidas (S.I.) 
 
Símbolo Unidade Descrição 
C Celsius Escala de temperatura, nesta escala as temperaturas 
de fusão e ebulição da água ficam próximas de 0º e 
100º, escala criada por Andres Celsius. 
A Ampère Unidade de Medida da Intensidade da Corrente, 
tem esse nome em homenagem ao físico e 
matemático André Marie Ampère. 
F Fahrenheit Escala de temperatura ainda utilizada em países 
anglo-saxões, escala criada por Daniel Gabriel 
Fahrenheit para o termômetro de mercúrio. 
K Kelvin Escala de temperatura onde o 0º corresponde ao 
zero absoluto, momento onde as moléculas param 
de vibrar. 
M mili Dimensão de unidade que corresponde a 10-3 da 
unidade original 
N Newton Unidade de força, homenagem a Sir Isaac Newton 
O Ohm Unidade de resistência elétrica, homenagem a 
George Simon Ohm, físico alemão. 
V Volts Unidade de diferença de potencial. 
 
 3
 
 
 
 
1 - Introdução 
 
 A engenharia sempre deu um enfoque especial sobre os efeitos da temperatura 
em determinadas situações, nos componentes e nas máquinas. Em especial na parte 
eletrônica a temperatura pode causar a queima dos componentes, devido a eles terem 
uma faixa de atuação ante a temperatura. Na mecânica a temperatura tem vital 
importância na quebra ou desgaste de peças, pois quanto maior for a temperatura mais 
propensa a quebras a peça estará. 
 Para esses problemas e outros é necessário um sistema que possa monitorar a 
temperatura e gerar um alerta em determinados valores de temperatura que sejam 
críticos, definidos caso a caso. 
 O projeto tem como função principal o monitoramento da temperatura através de 
uma interface, acoplada ao computador, que terá o objetivo de supervisionar todo o 
monitoramento. 
 Esse sistema tem uma aplicação nas indústrias para que haja um sensoriamento 
constante nos equipamentos, em estabelecimentos comerciais e residências para 
prevenção de incêndios, pois ele pode disparar os alarmes de incêndio; em indústrias 
químicas e siderúrgicas, no controle do processo através da temperatura; e nas demais 
aplicações em que é necessário um acompanhamento constante da temperatura. 
 No projeto, a grandeza física inicial é a temperatura que será medida e 
apresentada na tela do computador. Para que isto aconteça é necessário a transformação 
 4
da temperatura em algo que o computador manipule. Como não existe dispositivo 
eletrônico que faça toda essa transformação, é necessário separar as partes: detenção da 
grandeza, conversão A/D (Analógico para Digital), interfaceamento com o computador 
e apresentação dos resultadosno monitor do computador. 
 5
 
 
 
 
2 – Descrição do Projeto 
 
 No projeto, a grandeza física inicial será a temperatura que será medida e 
apresentada em um monitor, para que essa apresentação aconteça é necessário a 
transformação da temperatura em algo que o computador entenda, não existe dispositivo 
eletrônico que faça toda essa transformação, então é necessário separar as partes: sendo 
uma delas a parte de captura da temperatura e a outra a transformação para uma 
linguagem que o computador entenda. 
 O computador trabalha com dados digitais, as grandeza físicas são analógicas, 
para que ocorra a transformação é necessário um conversor A/D, os conversores A/D 
recebem tensão, e transformam em um conjunto de bits. Então para que exista a 
absorção dos dados pelo computador há a necessidade de um conversor e como o 
conversor recebe como dado de entrada uma tensão é necessário um dispositivo que 
transforme a temperatura em tensão. 
 Por essas razões nosso projeto foi dividido em 4 partes principais, como 
mostrado na figura 2.1: sensor, conversor, interface e software. 
 
Figura 2.1 – Diagrama em Blocos do Sistema
 6
 
 
 
 
3 – Sensores 
 
 Segundo [ENC – 1987] os sensores são, basicamente, dispositivos que tem como 
função transformar medidas de uma grandeza física qualquer para outra grandeza física, 
normalmente elétrica. 
 Partindo deste princípio é necessário o uso de dispositivos que sofram alguma 
alteração, de suas propriedades elétricas, ante a uma variação de temperatura, que é o 
escopo do trabalho. 
 Como exemplo de dispositivos que podem ser usados para essa finalidade estão 
os: diodos, transistores, termistores e termopares, mas para um melhor entendimento 
desses elementos, citar-se-á os princípios básicos dos semicondutores, que são os 
componentes básicos destes dispositivos. 
 
3.1 – Semicondutores 
 
 Os semicondutores, como o próprio nome indica, constituem uma categoria 
intermediária entre os bons condutores e os bons isolantes de eletricidade. O material 
semicondutor não é usado em seu estado puro, pois são acrescentadas quantidades 
controladas de certas impurezas, as quais, conferem certas propriedades condutoras ao 
material, produzindo o que se denomina de um semicondutor estimulado. 
 7
 O termo elétron é um termo proveniente da química e está associado com a 
eletrônica e o fluxo de corrente. Aceita-se, geralmente, que o fluxo de corrente nos 
componentes eletrônicos seja constituído de elétrons. O termo lacuna por sua vez, indica 
uma carga positiva ou a ausência de elétron. 
 O material estimulante pode ser de um dos seguintes tipos: 
 Impureza doadora – doa elétrons ao semicondutor. Semicondutores tipo N. 
 Impureza aceitadora – aceita elétrons do semicondutor. Semicondutores tipo P. 
 A principal diferença entre o material do tipo P o tipo N reside na espécie de 
carga que se movimenta em seu interior. No material tipo N a corrente é produzida pela 
circulação de elétrons. Obviamente, no material do tipo P a corrente é produzida pelo 
movimento das lacunas ou cargas positivas. 
 
3.1.1 – Elétrons e Lacunas 
 
 Para uma melhor compreensão, é necessária uma pequena descrição da estrutura 
de um átomo. Os átomos são constituídos por um núcleo, circulado por anéis de 
elétrons. Cada anel contém um número certo de elétrons. Os elétrons do anel externo 
situam-se numa órbita, ou banda, chamada de banda de valência. Um nível 
característico de energia dessa banda fornece a força que liga todos os elétrons da banda 
de valência de um átomo aos elétrons da banda de valência de outro átomo, formando, 
desta forma, a estrutura do cristal, conforme explicado em [MAN – 1970]. 
 Se fosse adicionado átomos com cinco elétrons de valência à estrutura, o 
material ficaria então com elétrons livres que não seriam ligados por uma banda de 
valência. Essa adição pode ser feita nos semicondutores pela introdução de uma 
impureza doadora, que produz um semicondutor do tipo N. Os elétrons (cargas 
 8
negativas), não ligados na estrutura do cristal, poderão ser usados como portadores de 
corrente. No material do tipo N os elétrons são denominados portadores majoritários 
porque o maior fluxo de corrente é constituída de elétrons. Essa afirmativa faz supor 
que a corrente pode fluir por lacunas, o que é verdade, desta forma, as lacunas são 
portadores minoritários nos semicondutores do tipo N. 
 Da mesma forma que fosse introduzida uma impureza doadora, que doa elétrons 
ao material semicondutor, pode-se introduzir uma impureza aceitadora que aceita 
elétrons, produzindo assim um semicondutor do tipo P. 
 Para compreender esta teoria, deve-se lembrar que: 
(1) um elétron é uma partícula com carga negativa que será atraída e se 
movimentará na direção de uma carga positiva; 
(2) que a lacuna é uma carga positiva que será atraída por uma carga 
negativa e se movimentará na direção dela. 
Um elétron que abandona a banda de valência deixa uma lacuna nessa banda, 
formando um par elétron-lacuna. O elétron e a lacuna tem a mesma carga, mas com 
polaridades opostas. Se um elétron ocupar uma lacuna na banda de valência, as cargas 
se neutralizam. 
 Os pontos principais a salientar são que os elétrons são partículas carregadas 
negativamente e que as lacunas são cargas positivas. Ambos podem movimentar-se e, 
por causa disso, podem ser portadores de corrente. Nos semicondutores do tipo P as 
lacunas são os portadores majoritários. Logo, a corrente nos semicondutores é formada 
pelo movimento de cargas positivas, negativas ou ambas. 
 Após essa breve explanação, descrever-se-á os dispositivos semicondutores que 
podem ser usados como sensores, ou seja, converterão a grandeza física temperatura em 
uma grandeza elétrica. 
 9
3.2 – Dispositivos Semicondutores 
 
 Descrever-se-á abaixo as características, de alguns dispositivos semicondutores e 
sua relação temperatura/tensão, fundamental ao funcionamento dos sensores de 
temperatura. 
 
3.2.1 Diodos 
 
 Os diodos são dispositivos constituídos da junção de elementos do tipo P e do 
tipo N mantendo a continuidade da estrutura cristalina. Desta definição que surge o seu 
nome diodo: dois elementos de tipos diferentes unidos em uma mesma estrutura física. 
 O diodo opera da seguinte forma: quando se forma uma junção PN como na 
figura 3.1, o material N tem excesso de elétrons e o P excesso de lacunas, havendo 
difusão de lacunas de P para N e de elétrons de N para P. Durante a difusão as áreas 
próximas da junção tendem a ficar livres de portadores de cargas (lacunas e elétrons), 
devido a recombinação e conseqüente anulação delas, assim um elétron vindo do lado N 
encontrará uma barreira negativa do lado P que o repelirá, dando-se o mesmo com as 
lacunas, formando, desta forma, um campo elétrico. Para que essa barreira ocorra é 
necessário uma diferença de potencial de ordem 0,3 a 0,6 Volts dependendo do material, 
e a temperatura. Isso tudo tem como conseqüência o alargamento da Camada de Carga 
Espacial (C.C.E.), que é o espaço em que a corrente circulará no dispositivo. 
 10 
 
Figura 3.1 – Estrutura de um Diodo 
 
 Como comentado anteriormente um diodo varia suas características elétricas 
devido a temperatura. Para cada aumento de 1ºC na temperatura ter-se-á uma queda de 
tensão de aproximadamente 2,5 miliVolts, ou seja, quanto mais a temperatura aumentar 
menor será a tensão em um diodo. 
 Na figura 3.2, observa-se as características elétricas do diodo para diferentes 
temperaturas, e que as curvas de relação entre corrente e tensão mudam conforme a 
variação da temperatura, ou seja, quanto maior a temperatura, menor atensão. 
 
Figura 3.2 – Relação de Tensão X Temperatura em um Diodo 
 
 11 
3.2.2 Transistores 
 
 Os transistores são dispositivos que possuem duas uniões de semicondutores PN 
(a mesma dos diodos), capazes de controlar a passagem de uma corrente. Podem ser de 
dois tipos, de acordo com as uniões de semicondutores: PNP ou NPN, e apresentam 
terminais denominados de base, emissor e coletor. 
 A base é a parte que controla a passagem de corrente; quando a base esta 
energizada, há passagem de corrente do emissor para o coletor, quando não há sinal na 
base, não existe essa condução. A base esquematicamente, como mostrado na figura 3.3 
é o centro do transistor. O coletor é uma das extremidades do transistor: é nele que 
“entra” a corrente a ser controlada. A relação existente entre o coletor e a base é um 
parâmetro ou propriedade do transistor conhecido como beta e é diferente para cada 
transistor. O emissor é outra extremidade, por onde sai a corrente que foi controlada. 
Algumas características que deve-se observar nos transistores são: a tensão máxima 
entre base e coletor, a potência máxima dissipável e a freqüência máxima de operação. 
 
Figura 3.3 – Transistor PNP e NPN, nota-se que a base controla a junção 
 
 Existem muitos usos para os transistores na eletrônica, como amplificadores, 
osciladores, etc, mas especialmente na microinformática os transistores são usados 
como portas lógicas na família de circuitos integrados TTL (Transistor-Transistor-
Logic), na figura 3.4 está o desenho esquemático de um transistor como porta inversora 
 12 
e o funcionamento dele em seguida, porta inversora é a aplicação do operador lógico 
NOT da álgebra booleana em um circuito elétrico. 
 
Figura 3.4 – (a) desenho de um transistor como porta lógica 
(b) desenho esquemático da porta 
 
 Uma tensão denominada Vcc é aplicada ao extremo do coletor com um resistor 
(através de uma fonte de alimentação), o emissor é ligado ao terra (que é o terminal 
negativo da fonte de alimentação), enquanto o base é que vai receber a tensão de entrada 
(Vh ou Vl) se a base receber um nível lógico 0 (tensão entre 0 à 0,8 Volts), o transistor 
não conduz corrente entre o coletor e o emissor, assim a tensão de saída no final do 
coletor será um nível lógico 1 (tensão entre 2 à 5 volts); ao contrário se a base receber 
um valor de nível lógico 1, então o transistor conduz a corrente entre os seus terminais 
(coletor e emissor) e a tensão de saída, Vo, será igual a um nível lógico 0. 
 Na microinformática os transistores podem ser usados como portas lógicas junto 
com os diodos, como por exemplo, uma porta NAND pode ser implementada através de 
um circuito NOT operado por um transistor após de um circuito AND operado por um 
diodo como mostrado na figura 3.5, esses circuitos são chamados de portas lógicas a 
diodo e a transistor (DTL). 
 13 
 
Figura 3.5 – (a) Porta NAND de 3 entradas a diodo; (b) um diodo sendo usado para melhorar as 
características de saída de um transistor 
 
3.2.3 Termistores 
 
 O termo termistor é de origem inglesa, thermal resistors. Um termistor é um 
resistor sensível à temperatura, composto por elementos semicondutores que se 
comportam como uma resistência com um alto coeficiente de resistência à temperatura 
e, geralmente, negativo. Uma definição simples é que a resistência apresentada entre os 
terminais do termistor, está diretamente relacionada com a temperatura de sua estrutura. 
 Na composição dos termistores são utilizados elementos químicos como o 
germânio, o silício, ou misturas de cerâmicas de óxidos condutores, como o manganês, 
o níquel, o cobalto, o cobre, o ferro, o urânio, o estrôncio, o titânio, etc., no caso das 
resistências com coeficiente de temperatura negativo (Negative Temperature Coefficient 
– NTC), e mistura de cerâmica com titanato de bário, no caso do coeficiente de 
temperatura positivo (Positive Temperature Coefficient - PTC). A composição do 
termistor determinará se o coeficiente de temperatura do dispositivo será positivo ou 
negativo. 
(a) 
(b) 
 14 
 O termistor do tipo PTC, de relativa linearidade, também é chamado de silístor 
e, para indicar o termistor que mostra um grande aumento no valor nominal da 
resistência a partir de uma temperatura preestabelecida, costuma-se denomina-lo de 
termistor comutado (switched-type). 
 A resistência de um termistor à temperatura, pode diminuir até 6% a cada 1ºC de 
aumento da temperatura. Sua margem de resistência vai de 0,5O a 75 O e existem uma 
ampla gama de formas, como gota, tubo, disco, anilha ou circuito integrado, e 
tamanhos, variando entre 0.1 mm à até vários centímetros. Os menores tem um diâmetro 
de 0.1 mm a 1.25mm. 
 O uso de termistores está muito difundido, em especial na faixa de temperatura 
entre – 100ºC à 300ºC. 
 Existem, basicamente, duas formas de variar a temperatura do dispositivo: 
- internamente: por meio de uma simples variação da corrente que 
atravessa o dispositivo produz uma alteração no valor da temperatura 
interna; 
- externamente: através de uma variação da temperatura do meio que 
o envolve, mergulhando, por exemplo, o dispositivo em uma solução 
quente ou fria. 
 No caso do NTC, qualquer aumento de temperatura no meio que o envolve 
provoca uma redução da resistência do termistor. 
 Devido a alta sensibilidade à temperatura, o termistor é muito usado para 
medições e controle, com muita precisão. Exemplos destas aplicações estão as sondas 
de temperatura em aplicações industriais, em aparelhagem médica, em 
eletrodomésticos, em instrumentação para investigação científica, no setor automotivo, 
em telecomunicações, em aplicações militares, etc. 
 15 
 A aquisição de temperatura por termistores pode ser mais ou menos complexa, 
porque pode envolver condicionadores de sinais e placas de aquisição de dados para a 
digitalização da informação e o seu processamento no computador, dependendo da 
aplicação. 
 
3.2.4 Termopares 
 
 Considerar-se-á dois metais denominados genericamente “A” e “B” submetidos 
à mesma diferença de temperatura entre suas extremidades. Em cada um deles surgirá 
uma força eletromotriz, conforme mostrado na figura 3.6: 
 
Figura 3.6 – Dois metais com a mesma temperatura aplicada em suas extremidades 
 
 Verificou-se que quando os metais são unidos em uma das extremidades, 
conforme a figura 3.7, mede-se uma força eletromotriz entre as extremidades separadas 
cujo valor corresponde à diferença entre os valores da força eletromotriz que surge em 
cada um dos metais. 
 
Figura 3.7 – Desenho Esquemático de um termopar 
 16 
 
 Este fenômeno, segundo [ROD – 1998], é conhecido como Efeito Seebeck e a 
configuração acima corresponde ao sensor de temperatura conhecido como termopar ou 
par termoelétrico. Os elementos “A” e “B” que constituem o termopar são denominados 
termoelementos e, em função da polaridade da força eletromotriz, “A” é o 
termoelemento positivo e “B” é o termoelemento negativo do termopar “AB”. Na 
configuração de um termopar a extremidade em que se faz a união dos termoelementos 
é denominada junção de medição, enquanto a outra extremidade é denominada junção 
de referência. Se a temperatura da junção de referência for fixada em 0ºC, então o valor 
da força eletromotriz dependerá somente da temperatura da junção de medição. O 
conhecimento desta relação permite utilizar o termopar como um sensor de temperatura. 
 Os termopares são normalmente utilizados como sensores de temperatura em 
aplicações industriais pois dependem apenas do coeficiente térmico dos materiais 
utilizados. 
 17 
 
 
 
 
4 – Conversores 
 
 Os conversores comoo nome indica são dispositivos eletrônicos que fazem a 
conversão entre uma grandeza analógica, normalmente tensão, em uma grandeza digital, 
um número binário, e vice-versa. 
 Em nosso projeto será necessário o uso de um conversor A/D 
(Analógico/Digital) para converter o valor enviado pelo sensor (grandeza elétrica) em 
um número binário que é um formato aceito pelas portas de E/S (Entrada/Saída). 
 Abaixo, descrever-se-á alguns métodos de conversão A/D que são normalmente 
utilizados pelos conversores modernos. 
 
4.1 Método da Voltagem em Rampa 
 
 Esse método é o mais simples e, também, o menos usado, e é normalmente 
utilizado em instrumentos de medidas, como em voltímetros digitais. 
 Segundo [KHA- 1984], o método de conversão da voltagem em rampa funciona 
pelo seguinte esquema, para melhor compreensão compare com a figura 4.1: 
1. é aplicado um sinal de entrada analógica, para ser digitalizado, na entrada do 
comparador; 
2. um nível lógico alto “1” é aplicado no terminal de início, liga o processo de 
conversão executando as três funções seguintes: 
 18 
3. apaga o contador, removendo, desta maneira, qualquer informação nele contida, 
da operação anterior. 
4. Coloca o circuito biestável R-S no estado Q, ativando, assim a porta AND A1. 
5. Inicia o gerador de voltagem em rampa, através da porta AND A2. 
6. A voltagem de referência do gerador de rampa é alimentada na segunda entrada 
do comparador e esta voltagem aumenta linearmente. 
7. Neste meio tempo, os pulsos do marcador de tempo fixo são retidos no contador 
através de uma porta AND A1 e começam a incrementá-lo. 
8. Quando a voltagem em rampa atinge e excede ligeiramente a voltagem da 
entrada analógica, a saída do comparador muda de “0” para “1”. 
9. Isto restaura o circuito biestável para o lado ~Q, desativando, desta maneira, a 
porta AND A1 e evitando que os pulsos do marcador de tempo incrementem, 
posteriormente, o contador. 
10. A saída em “1” do comparador também desativa a porta AND A2, que, por sua 
vez, DESLIGA o gerador de voltagem em rampa, retornando, assim, a saída do 
comparador para um “0”, em preparação para a próxima operação de conversão. 
11. O contador contém o valor equivalente em digital do sinal de entrada analógica. 
 
 
Figura 4.1 – Configuração lógica para a técnica da Voltagem em rampa 
 19 
 
Mas, para uma melhor compreensão do circuito acima descrito, abaixo mostrar-se-á 
um algoritmo de conversão: 
1. O conversor recebe o valor analógico, um pulso zera o contador, e segue-se o 
seguinte laço: 
2. Soma-se um 1 bit; 
3. Converte o valor em conversor D/A; 
4. Compara o valor de entrada com o valor do conversor D/A; 
Se o valor do conversor é maior ou igual termina-se a conversão; 
Senão continua-se até ser satisfeito esse critério. 
 
 Este método tem a desvantagem de o contador ter que alcançar a contagem 
máxima em um período de tempo extremamente curto, em decorrência de uma entrada 
analógica máxima. 
 
4.2 – Método da Aproximação Sucessiva 
 
 Esse método é o mais amplamente usado na conversão A/D, é utilizado na 
maioria dos conversores A/D atuais. 
 Segundo [MAL – 1985], o método da aproximação sucessiva obedece a seguinte 
sequência, para compreensão compare com a figura 4.2: 
1. SD (Sequenciador Digital) envia um “1” na linha MSB (Bit Mais Significativo). 
Isto, também, ativa a porta A8. A entrada para o DAC (Digital/Analogic 
Converter – Conversor Digital/Analógico) é 10000000 em binário. 
2. A saída do DAC é introduzida no ajustador do sinal de prova (ASP). O ASP 
emite um sinal de prova que é a metade da escala. 
 20 
3. Se o sinal de entrada analógica for menor que o sinal de prova, então o 
comparador emite um “0”; isto é alimentado na segunda entrada de A8. A saída 
de A8 é “0”, portanto o bit 8 (o MSB) de RS (Registrador Sequencial) continua 
um “0”. 
4. Se o sinal de entrada analógica for maior que este sinal de prova, o comparador 
emite um “1” que ativa A8 completamente. Neste caso, um “1” vai ser carregado 
na posição de bit 8 do RS. 
5. A saída “1” de A8 é, também, alimentada no ASP. Isto diz ao ASP para somar 
uma metade do valor. 
6. Agora, o SD emite um “1” na próxima linha de saída inferior. A entrada para o 
DAC é 01000000 e a saída é a metade do valor da saída anterior. 
7. ASP vai ajustar a saída maior ou menor, dependendo se a saída da operação 
anterior estava em “1” ou em “0”. 
8. Este processo é repetido com SD emitindo um “1” digital em cada linha de saída 
subsequente em cada etapa sucessiva. Portanto, em cada etapa sucessiva, o 
processo resulta em uma aproximação que fica mais perto do sinal de entrada 
analógica. 
9. Após 8 fases do processo, o RS conterá a aproximação em binário do sinal de 
entrada analógica. 
 21 
 
Figura 4.2 – Esquema lógico para o método da aproximação sucessiva 
 
Também, para melhor compreensão do método visto acima, na seqüência 
descreve-se um algoritmo: 
1. conversor recebe o valor analógico, e segue-se o seguinte laço: 
2. Um sequenciador digital joga um nível lógico “1” no MSB, um conversor D/A 
converte esse valor e compara com o sinal analógico; 
 Se for maior ele armazena “0” em um registrador seqüencial; 
 Senão armazena-se “1”. 
3. Passa-se para o próximo MSB até se chegar ao LSB (bit menos significativo), o 
valor digital aproximado estará no registrador seqüencial 
 22 
 
 
 
 
 
5- Interfaceamento com o Computador 
 
 É necessário que haja a comunicação entre o dispositivo conversor e o 
computador para que os dados possam ser recebidos e processados, tanto para o 
programa tomar decisões pelos seus parâmetros, como para ter uma forma visível da 
temperatura, para isso usar-se-á as portas de comunicação do computador. 
 Existem vários tipos da portas de comunicação entre equipamentos e o 
computador, desde as clássicas portas paralela e serial, desde os novos padrões de 
infravermelho, USB (Universal Serial Bus) e IEEE1394 (Instituto de Engenheiros 
Elétricos e Eletrônicos). 
 No projeto abordar-se-á as portas paralela e serial, devido a terem um bom 
funcionamento e serem de mais fácil implementação. 
 
5.1- Porta Serial 
 
 A porta serial é composta por uma linha de envio de dados (TX), outra para o 
recebimento (RX) e mais algumas para regularizar como os dados estão sendo enviados 
por estas duas linhas. 
 23 
 Devido a sua simplicidade, a porta serial tem sido utilizada para que o 
computador comunique-se com quase todos os dispositivos – desde modems e 
impressoras até sistemas específicos como os de alarme. 
A utilização mais freqüente para a porta serial é para mouse ou modem. O 
motivo é que a porta serial não é um meio muito eficiente para a transferência de dados. 
Ela consegue somente enviar dados em série (um atrás do outro), o que gera uma baixa 
taxa de transferência. 
A porta serial é normalmente conhecida como porta RS-232, e é uma 
especificação da Associação das Indústrias Eletrônicas, a qual definiu como um padrão 
para este tipo de interface de comunicação. 
 
5.2 – Porta Paralela 
 
A comunicação paralela implica transferência simultânea de todos os bits que 
compõem o byte. Esse método de transmissão e recepção é utilizado nas ligações 
internas dos computadores e ligações entre computador e periféricos bastante próximos 
[DAS – 1991]. 
Na comunicação em paralelo, os dados são transferidos em grupos de bits 
simultaneamente a cada ciclo, em geral byte a byte, através de diversas linhas 
condutoras de sinais e, neste caso, a taxa de transferência de dados é alta. 
 No computador, as portas paralelas são identificadas pelas siglas: LPT e 
geralmente, a portapadrão é a LPT1. 
 A comunicação da porta física é feita através de endereços que variam de uma 
porta para outra. Por exemplo, na porta LPT1 o endereço 378h e serve para enviar um 
byte de dados pela porta, já o endereço 379h recebe um valor da porta. Às vezes, a porta 
 24 
LPT2 pode estar disponível, usando as mesmas funções da LPT1, mas com diferentes 
endereços. 
 
Figura 5.1 – Pinagem da porta paralela 
 
 O DB25 é o conector usado pela porta paralela, e normalmente fica na parte da 
trás do gabinete do computador, e é através deste, que conecta-se o cabo paralelo ao 
computador para poder enviar e receber dados. Como o próprio nome indica, ele tem 25 
pinos, cada um com uma função e um nome que os identifica. Nas figuras 5.1 e 5.2 
descrevem o significado de cada pino e o esboço de funcionamento. 
 
Figura 5.2 – Funcionamento dos pinos de uma porta paralela 
 25 
 
 Existem três tipos diferentes da porta paralela conhecidas pelas suas siglas: SPP 
(Standard Parallel Port – Porta Paralela Padrão), EPP (Extended Parallel Port – Porta 
Paralela Estendida) e ECP(Enhanced Capabilities Port – Porta com Capacidades 
Aumentadas), sendo a primeira de comunicação unidirecional, do computador para o 
periférico externo, e as outras duas formas são bidirecionais. 
 Segundo [REI - 2000], a porta paralela é subutilizada por projetistas e 
estudantes, apesar de ser a maneira mais fácil de comunicação entre o computador e os 
meios externos. 
Este projeto visa a comunicação do periférico com o computador, necessitando 
da bidirecionalidade da porta. 
 26 
 
 
 
 
6 – Software 
 
Outra parte muito importante do projeto é o software, que será responsável pelo 
tratamento das informações a respeito da temperatura recebidas através da porta de 
comunicação. Para isso, utilizar-se-á a linguagem de programação “C” [SCH-1996], 
devido a sua finalidade de aplicações geral e de ser uma linguagem de nível médio, ou 
seja, ela permite operações diretas em binário (manipulação de bits) e de endereços de 
memória – os elementos básicos com os quais o computador funciona. 
Há algum tempo, já existem versões orientadas a objetos como o Microsoft 
Visual C++â e Borland C++ Builderâ que são ferramentas de construção e de 
montagem de programas, na qual reutiliza-se “peças” ou objetos, que reúnem 
informações e instruções, combinando as etapas simples ou complexas, para formar um 
único procedimento, ou seja, não é uma técnica de codificação, mas de agrupamento de 
código (subcomponentes). Desta forma, pode-se resumir a Programação Orientada à 
Objetos em duas palavras: encapsulamento e herança, onde encapsulamento é separar o 
código do programa em blocos, facilitando a manutenção e a reutilização deste no 
mesmo programa, ou mesmo em outros programas, por isso o termo herança. 
Essas ferramentas trabalham com os sistemas operacionais Windows 95â, 
Windows 98â e Windows NT. No projeto utilizar-se-á estas plataformas para executar 
o programa de leitura das informações, pelas facilidades de operação e visualização dos 
dados. 
 27 
 
 O funcionamento do software é descrito no fluxograma apresentado na figura 
6.1. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Figura 6.1 – Fluxograma do software implementado 
 
Assim como, descrito no algoritmo, que foi implementado, apresentado na seqüência. 
 
 28 
 
//-------------------------------------------------------------------------------------------------------// 
//Algoritmo do Programa para um Sistema de Sensoriamento Térmico // 
//desenvolvido para o Programa de Iniciação Científica. // 
//-------------------------------------------------------------------------------------------------------// 
INICIO 
{ 
 int unidade=1, selecao, intervalo, temperatura; 
 intervalo = 1; 
 enquanto 1 < 2 faça{ 
 escreva(“1 – Iniciar”); //menu de seleção inicial 
 escreva(“2 – Escolher Unidade”); 
 escreva(“3 - Mudar intervalo de medida”); 
 escreva(“4 – Sair”); 
 faça{ //loop para o usuario não selecionar 
 leia(selecao); //opções inválidas 
 }enquanto(selecao<1 OU selecao>4); 
 escolha(selecao){ //seleção da opção do menu principal 
 caso 4: 
 salve arquivo de log; //opção para saída do programa salvan- 
 abandone; //do o conteúdo em arquivo de log 
 caso 3: 
 escreva(“Digite novo intervalo de medida em segundos”); 
 leia(intervalo); 
 caso 2: 
 escreva(“1 – Celsius”); 
 escreva(“2 – Farenheit”); 
 escreva(“3 – Kelvin”); 
 faça{ 
 leia(unidade); 
 }enquanto(unidade<1 OU unidade>3) 
 caso 1: //opção de início do sensoriamento 
 while(1){ //loop até o pressionamento do ESC 
 if(TeclaPressionada()==’ESC’) break; 
 temperatura = leia(PortaParalela); 
 if(unidade==2) temperatura = 9/5*temperatura+32; //conversão 
 if(unidade==3) temperatura = temperatura+273; //em escalas de 
 escreva(temperatura); //temperatura 
 espere(intervalo); //espera antes da próxima leitura 
 } 
 }fim escolha 
}fim enquanto 
}FIM 
 29 
 
 
 
 
7 – Implementação 
 
 Como apresentado anteriormente este projeto pode ser dividido em quatro partes 
distintas mas interligadas, que são: sensor, conversor A/D, interface e o software, nas 
partes eletrônicas, sensor e conversor A/D, existem componentes indispensáveis, sem os 
quais não seria possível a execução deste projeto, estes componentes são apresentados 
na seqüência. 
 
7.1 - Principais Componentes 
 
 Em projetos eletrônicos existem componentes essenciais para o desenvolvimento 
do trabalho, nas 4 partes que são divididas este projeto, como visto na figura 2.1, 
capítulo 2, existem certos componentes eletrônicos que tem importância fundamental, 
esses componentes são descritos a seguir. 
 
7.1.1 - Diodo 1N4148 
 
 Uma das subdivisões deste projeto é o sensor. Como visto anteriormente utilizar-
se-á como elemento sensor um componente eletrônico semicondutor. Após alguns teste 
chegou-se a definição deste diodo como melhor elemento sensor. 
 30 
 O diodo 1N4148 é um diodo para aplicações gerais com alta velocidade de 
resposta fabricado por todas as empresas que trabalham com semicondutores e suas 
características principais são apresentadas na tabela 7.1. 
Símbolo Parâmetros Mínimo Máximo Unidade 
VRRM Tensão alternada c/ 
polarização invertida 
- 75 V 
VR Tensão contínua c/ 
polarização invertida 
- 75 V 
IF Corrente Contínua - 200 mA 
IFRM Corrente Alternada - 450 mA 
Ptot Potência total dissipada - 500 mW 
Tstg Temperatura p/ estoque -65 +200 ºC 
Tj Temperatura junção - +200 ºC 
Tabela 7.1 – Características Elétricas do Diodo 1N4148 
 
 Este diodo foi utilizado porque apresentada uma variação de tensão mais linear 
como apresentado no figura 7.1 obtida de [PHI – 1996]. 
Figura 7.1 – Corrente X Temperatura 
 
 Com o desenvolvimento do circuito sensor utilizando-se o diodo descrito acima, 
chegou-se a definição que trabalharíamos com uma faixa de tensão de 0 à 100 mV, esta 
faixa de tensão é muito baixa para a utilização de um conversor A/D, a próxima 
subdivisão do projeto, o conversor A/D trabalha com faixas de tensões de 0 à 5 V, assim 
sendo necessitava-se de um elemento que transformasse a tensão máxima de saída do 
 31 
sensor, 100 mV, na tensão máxima do conversor A/D, de 5V, para esse fim foi utilizado 
um amplificador operacional. 
 
 
7.1.2 - Amplificador Operacional LM358 
 
 Como visto anteriormente, a tensão máxima de saída do circuito sensor e a 
tensão mínima da entrada do conversor A/D são incompatíveis entre si, paraque possa-
se trabalhar com os dois circuitos em conjunto é necessária a amplificação do sinal de 
saída do sensor para que ela seja reconhecida pelo conversor A/D. 
Figura 7.2 – Diagrama Esquemático do CI LM358 
 
 O LM358 é um amplificador operacional desenvolvido pela National 
Semiconductors® usado para amplificação transistorizada, ganho de tensão e outros 
usos de amplificadores operacionais. Desenvolvido para ser usado com apenas uma 
alimentação de tensão de +5V para utilização em sistemas digitais, ao contrário da 
maioria dos amplificadores operacionais desenvolvidos com alimentação de +12V e –
12V. Em nosso circuito é utilizado para um ganho de tensão em 50 vezes, pois a saída 
máxima do circuito sensor é de 100mV enquanto a entrada máxima do conversor A/D é 
de 5V, suas características principais são apresentadas na tabela 7.2 e na figura 7.2 é 
apresentado o seu esquemático 
 32 
 
Descrição Mínimo Máximo 
Tensão de Trabalho (V) 0-+5 -12-+32 
Temperatura de Trabalho (Celsius) 0º 70º 
Potência Dissipada (mW) 435 850 
Corrente de Entrada (mA) 0,5 50 
Corrente de Saída (mA) 0,3 40 
Tabela 7.2 – Características principais do LM358 
 
Amplificação da Diferença 
 
 Este método de amplificação é aqui descrito pois foi utilizado para a 
amplificação do sinal sendo que a tensão real era medida pela diferença de duas outras 
tensões. 
 O circuito da amplificação da diferença é feito utilizando-se dois outros circuitos 
amplificadores, conhecidos como amplificador inversor e amplificador não-inversor, os 
seus respectivos circuitos são mostrados nas figuras 7.3 e 7.4. 
Figura 7.3 – Montagem inversora 
 
 
 33 
 
Figura 7.4 – Montagem para amplificação não inversora 
 
 Utilizando-se as duas montagens simultaneamente, podemos implementar um 
circuito que amplifica a diferença entre duas tensões distintas, apresentado na figura 7.5. 
 
Figura 7.5 – Esquemático da Amplificação da Diferença 
 
A partir deste esquemático e com o teorema da sobreposição de fontes é possível 
reconhecer duas fontes distintas de energia, apresentadas na equação 1 abaixo: 
 
Equação 1 
 34 
 
 
 Fazendo as simplificações possíveis na equação 1 chega-se a equação 2, 
que é a equação necessária para se calcular o ganho de tensão no amplificador: 
 
Equação 2 
 
7.1.3 - Conversor A/D ADC0804 
 
 Após a amplificação do sinal podemos utilizar o conversor A/D para 
repassarmos os dados para o computador que os manipulará, e para isto, utilizar-se-á o 
circuito integrado ADC0804. 
Figura 7.6 – Vista superior do ADC0804 
 
 O ADC0804 é um conversor Analógico/Digital com saída de 8 bits que utiliza o 
método da aproximação sucessiva para executar a conversão, com clock interno e saída 
tri-state, suas características principais são apresentadas na tabela 7.3, a pinagem é 
apresentada na figura 7.6. 
 
Símbolo Parâmetro Margem Unidade 
Vcc Tensão de alimentação 4 até 6,5 Volts 
TA Temperatura -40 até +85 Celsius 
PD Potência Dissipada 1650 MiliWatts 
Tabela 7.3 – Características Principais do ADC0804 
 35 
Utilizando-se do conversor ADC0804 projetou-se um circuito que fizesse a 
conversão da tensão recebida do circuito sensor para a forma digital, esse circuito é 
mostrado na figura 7.7. 
Figura 7.7 – Circuito para conversão contínua com o ADC0804 
 
7.2 Hardware 
 
 Como visto estes três componentes tem uma função especial na execução do 
projeto, na tabela 7.4 são apresentados todos os componentes utilizados para a 
implementação do projeto. 
 
 
 36 
Componente Quantidade 
Resistor 40O 1 
Resistor 120O 1 
Resistor 200O 1 
Resistor 1KO 1 
Resistor 2,2KO 2 
Resistor 10KO 4 
Resistor 56KO 1 
Resistor 100KO 1 
Resistor 110KO 2 
Resistor 470KO 1 
Resistor 560KO 1 
Trimpot 10KO 2 
Trimpot 200KO 1 
Capacitor 100nF 2 
Capacitor 56pF 1 
Capacitor 1nF 1 
Diodo 1N4148 1 
LM358 1 
ADC0804 1 
Conector DB25 1 
Tabela 7.4 – Listagem dos Componentes 
 
 O hardware é constituído de uma parte sensora, que mantém a corrente do 
circuito sempre estável, assim a tensão irá ser alterada quando a temperatura variar, 
após temos um estágio amplificador para compatibilizar a saída do circuito sensor com 
a entrada do circuito conversor, e o circuito conversor finaliza a operação analógica 
convertendo a tensão em um valor binário ao qual o computador compreende e pode 
manipular. 
 O esquemático do circuito da placa, hardware, é apresentado na figura 7.8. 
 
 
 
 
 
 
 37 
Folha para impressão do Esquemático
 38 
Procedimento para Ajuste/Calibragem do Hardware 
Como com o tempo pode ocorrer dos circuitos sofrerem desgastes e perderem a 
sua calibragem inicial apresentamos abaixo o método necessário para a calibração do 
sensor e do conversor A/D: 
1. Coloca-se o dispositivo sensor, diodo, em uma cuba de gelo que 
atinja 0ºC. 
2. Com um multímetro mede-se as diferenças entre a saída do 
potenciômetro P2 e o terra do circuito, altera-se a resistência do 
potenciômetro P1 até que a o multímetro aponte 0mV. 
3. Após aquece-se o sensor até a temperatura de 100ºC, altera-se a 
resistência do potenciômetro P2 até que a diferença atinja 100mV. 
4. Após mede-se a diferença de tensão entre a saída do potenciômetro 
P3 em relação ao terra do circuito, altera-se a resistência deste 
potenciômetro até que o valor atinja 2,5 V. 
 39 
7.3 - Software 
 
Como comentado anteriormente o projeto constitui-se de hardware, a parte física 
dele, que gera os dados, e do software que manipula os dados gerados pelo hardware, 
com esse intuito foi desenvolvido um software específico para a manipulação dos dados 
transmitidos pelo hardware, esse software é descrito na seqüência. 
A implementação do programa não é sofisticada, contendo elementos básicos 
como conversão da temperatura para as três escalas: Celsius, Fahrenheit e Kelvin; a 
freqüência de leitura da temperatura, o gráfico com o histórico da temperatura, a 
manipulação de arquivos (com o registro das temperaturas) e outras, para que o usuário 
do software dos sistema de sensoriamento térmico o opere facilmente. A figura 7.9, 
mostra um exemplo de como é a interface gráfica com o usuário. 
 
Figura 7.9 – Interface Gráfica com o Usuário 
 
 40 
 
O funcionamento e a operação é simples: Ao clicar no botão Iniciar, o programa 
inicia um laço e começa a leitura da porta de comunicação. O valor indicado na caixa 
Tempo de Leitura é a freqüência com que o programa irá ler a porta de comunicação. 
Após ter lido o valor, ele será convertido através de uma fórmula, que relaciona o valor 
binário com o correspondente em temperatura, e este valor será a temperatura, 
armazenado em um arquivo, que conterá o horário, momento (da leitura), que será 
obtido do computador e a data. Conforme a seleção da Escala, apresentar-se-á a 
temperatura na tela por meio de gráfico e pela caixa Temperatura Atual. Caso a 
temperatura lida exceda o valor máximo permitido, será emitido um aviso sonoro assim 
como um alerta visual: “A temperatura excedeu o limite máximo”, conforme mostra a 
figura 7.10. Clicando-se no botão Parar o programa interromperá o processamento 
(leitura) até que o usuário reinicie o processo. 
 
 
Figura 7.10 – Aviso indicando que a temperatura excedeu 
o limite máximo. 
 
 
 Na seqüência apresentar-se-á o código-fonte do programa feito com o objetivo 
de receber dados gerados pelo hardware descrito acima, os quatro primeiros códigos são 
referentes aos arquivos de biblioteca criados por nós no segundo é descrito o arquivo do 
software em si. 
 41 
 
Arquivo temperatura.h, contém as definições do programa de leitura://--------------------------------------------------------------------------- 
#ifndef temperaturaH 
#define temperaturaH 
//--------------------------------------------------------------------------- 
#include <Classes.hpp> 
#include <Controls.hpp> 
#include <StdCtrls.hpp> 
#include <Forms.hpp> 
#include "CSPIN.h" //definicao das bibliotecas padrao do compilador 
#include "PERFGRAP.h" //que serao necessarias 
#include <Buttons.hpp> 
#include <ComCtrls.hpp> 
#include <ExtCtrls.hpp> 
#include <Menus.hpp> 
//--------------------------------------------------------------------------- 
class TForm1 : public TForm 
{ 
__published: // IDE-managed Components 
 TPerformanceGraph *PerformanceGraph1; //classes das bibliotecas acima 
 TLabel *Label9; //cada classe tem uma relacao direta 
 TProgressBar *ProgressBar1; //com um objeto por exemplo um 
botao 
 TGroupBox *GroupBox1; 
 TLabel *Label1; 
 TRadioGroup *RadioGroup1; 
 TBitBtn *BitBtn1; 
 TGroupBox *GroupBox2; 
 TLabel *Label2; 
 TGroupBox *GroupBox3; 
 TLabel *Label3; 
 TGroupBox *GroupBox4; 
 TLabel *Label4; 
 TGroupBox *GroupBox5; 
 TLabel *Label6; 
 TLabel *Label7; 
 TCSpinEdit *CSpinEdit2; 
 TCSpinEdit *CSpinEdit3; 
 TBitBtn *BitBtn2; 
 TCSpinEdit *CSpinEdit1; 
 TBitBtn *BitBtn3; 
 TMainMenu *MainMenu1; 
 TMenuItem *Arquivo1; 
 TMenuItem *Ajuda1; 
 TTimer *Timer1; 
 TTimer *Timer2; 
 TMenuItem *Iniciar1; 
 TMenuItem *Parar1; 
 TMenuItem *N1; 
 TMenuItem *Sair1; 
 TLabel *Label8; 
 TLabel *Label10; 
 TMenuItem *Sobre1; 
 TMenuItem *VerArqdeLog1; 
 void __fastcall BitBtn1Click(TObject *Sender); //funcoes orientadas a evento 
 void __fastcall Timer1Timer(TObject *Sender); 
 void __fastcall Timer2Timer(TObject *Sender); 
 void __fastcall BitBtn2Click(TObject *Sender); 
 void __fastcall CSpinEdit1Change(TObject *Sender); 
 void __fastcall BitBtn3Click(TObject *Sender); 
 void __fastcall FormClose(TObject *Sender, TCloseAction &Action); 
 void __fastcall Timer3Timer(TObject *Sender); 
 void __fastcall Sobre1Click(TObject *Sender); 
 42 
 void __fastcall Iniciar1Click(TObject *Sender); 
 void __fastcall Parar1Click(TObject *Sender); 
 void __fastcall VerArqdeLog1Click(TObject *Sender); 
 void __fastcall Sair1Click(TObject *Sender); 
private: // User declarations 
public: // User declarations 
 __fastcall TForm1(TComponent* Owner); 
}; 
//--------------------------------------------------------------------------- 
extern PACKAGE TForm1 *Form1; 
//--------------------------------------------------------------------------- 
#endif 
 
 
 A seguir são apresentadas as quatro bibliotecas com as funções necessárias ao 
funcionamento do programa. 
 
Arquivo Unit2.h, contém as definições da tela de alerta. 
 
//--------------------------------------------------------------------------- 
#ifndef Unit2H 
#define Unit2H 
//--------------------------------------------------------------------------- 
#include <Classes.hpp> 
#include <Controls.hpp> 
#include <StdCtrls.hpp> 
#include <Forms.hpp> 
#include <MPlayer.hpp> 
//--------------------------------------------------------------------------- 
class TForm2 : public TForm 
{ 
__published: // IDE-managed Components 
 TButton *Button1; 
 TLabel *Label1; 
 void __fastcall Button1Click(TObject *Sender); 
private: // User declarations 
public: // User declarations 
 __fastcall TForm2(TComponent* Owner); 
}; 
//--------------------------------------------------------------------------- 
extern PACKAGE TForm2 *Form2; 
//--------------------------------------------------------------------------- 
#endif 
 
 
Arquivo Unit3.h, contém as definições da tela de ajuda. 
 
//--------------------------------------------------------------------------- 
#ifndef Unit3H 
#define Unit3H 
//--------------------------------------------------------------------------- 
#include <Classes.hpp> 
#include <Controls.hpp> 
#include <StdCtrls.hpp> 
#include <Forms.hpp> 
#include <ExtCtrls.hpp> 
#include <jpeg.hpp> 
//--------------------------------------------------------------------------- 
class TForm3 : public TForm 
{ 
__published: // IDE-managed Components 
 TMemo *Memo1; 
 43 
 TButton *Button1; 
 TTimer *Timer1; 
 TImage *Image1; 
 void __fastcall Button1Click(TObject *Sender); 
 void __fastcall Timer1Timer(TObject *Sender); 
 void __fastcall FormActivate(TObject *Sender); 
private: // User declarations 
public: // User declarations 
 __fastcall TForm3(TComponent* Owner); 
}; 
//--------------------------------------------------------------------------- 
extern PACKAGE TForm3 *Form3; 
//--------------------------------------------------------------------------- 
#endif 
 
 
Arquivo Unit4.h, contém as definições da tela de log. 
 
//--------------------------------------------------------------------------- 
#ifndef Unit4H 
#define Unit4H 
//--------------------------------------------------------------------------- 
#include <Classes.hpp> 
#include <Controls.hpp> 
#include <StdCtrls.hpp> 
#include <Forms.hpp> 
//--------------------------------------------------------------------------- 
class TForm4 : public TForm 
{ 
__published: // IDE-managed Components 
 TMemo *Memo1; 
 TButton *Button1; 
 void __fastcall Button1Click(TObject *Sender); 
private: // User declarations 
public: // User declarations 
 __fastcall TForm4(TComponent* Owner); 
}; 
//--------------------------------------------------------------------------- 
extern PACKAGE TForm4 *Form4; 
//--------------------------------------------------------------------------- 
#endif 
 
 
Arquivo temperatura.cpp, arquivo que contém o programa propriamente dito. 
 
//-------------------------------------------------------------------------------------------// 
// Programa de Sensoriamento Térmico desenvolvido em conjunto com Hard // 
//ware para o PIC-2000 // 
//Alunos: Cleverson Sabatowski, Josmar Klemba, Mauricio Perretto // 
//Última Alteração: 11/11/2000 Versão: 0.9a // 
//-----------------------------------------------------------------------------------------// 
 
//--------------------------------------------------------------------------- 
#include <vcl.h> 
#include <stdlib.h> 
#pragma hdrstop 
#include "temperatura.h" 
#include "Unit2.h" 
#include "Unit3.h" 
#include "Unit4.h" 
//--------------------------------------------------------------------------- 
#pragma package(smart_init) 
#pragma link "CSPIN" 
#pragma link "PERFGRAP" 
#pragma resource "*.dfm" 
 
 44 
short int inp(unsigned short port); //funcao para leitura de um endereco de memoria 
/* valor = inp(porta); 
 | |-> endereco de memoria, em hexadecimal ou caracter 
 | ex.: 0x378 ou 'LPT1' 
 |-> variavel inteira */ 
void outp(unsigned short port, unsigned char value); //funcao que envia 
 //dados para um endereco 
/* oup(porta, valor); 
 | |-> valor a ser enviado 
 |-> endereco de memoria em hexadecimal, ex.: 0x378 
*/ 
 
TForm1 *Form1; 
//----------------------Variaveis Globais------------------------------- 
TStrings *arquivo; 
short int resposta=0, temperatura=23; 
bool valor; 
//----------------------------------------------------------------------//----------------------Funcoes Criadas--------------------------------- 
short int inp(unsigned short port){ 
 asm mov dx,port 
 asm in al,dx 
 asm xor ah,ah 
 return _EAX; 
} 
 
void outp(unsigned short port, unsigned char value){ 
 asm mov dx,port 
 asm mov al, value 
 asm out dx, al 
} 
 
//---------------------------------------------------------------------- 
__fastcall TForm1::TForm1(TComponent* Owner) 
 : TForm(Owner) 
{ 
 //inicializacao da variavel q armazenar o log 
 arquivo = new TStringList(); 
 
 //carregamento do arquivo de log antigo 
 if(FileExists("C:\\temp\\temp.log")) 
 arquivo->LoadFromFile("C:\\temp\\temp.log"); 
 //definição de um tempo com o qual o aplicativo irá iniciar 
 Timer1->Interval = CSpinEdit1->Value*1000; 
} 
 
//---------------------------------------------------------------------- 
void __fastcall TForm1::Timer1Timer(TObject *Sender) 
{ 
 //variavel temporaria utilizada para a criacao do arquivo de log 
 AnsiString dados; 
 
 //defini que a porta paralela ira receber dados externos 
 outp(0x37A,32); 
 
 //le a porta paralela 
 resposta = inp(0x378); 
 
 temperatura = (100*resposta)/255; //converte para graus Celsius pela 
 // formula: 100 - 255 --> X = (100 * resposta)/255; 
 // X - resposta 
 45 
 
 //criando os registros temporários que ao final serão repassados ao 
 //arquivo de log 
 dados = DateToStr(Date())+" "+TimeToStr(Time())+" "+temperatura; 
 arquivo->Add(dados); 
 
 Label1->Caption = IntToStr(temperatura)+"ºC"; 
 ProgressBar1->Position = temperatura; //alteracao dos dados na barra 
 PerformanceGraph1->DataPoint(234,temperatura);//e no grafico 
 PerformanceGraph1->Update(); 
 
 //acionamento do alerta se a temperatura excedeu os limites 
 if((temperatura<CSpinEdit3->Value) ||(temperatura>CSpinEdit2->Value)){ 
 Form2->Show(); 
 } 
 
 if(((temperatura>CSpinEdit3->Value) && (temperatura<CSpinEdit2->Value)) && (Form2-
>Visible==true)) 
 { 
// Form2->MediaPlayer1->Stop(); 
 Form2->Hide(); 
 } 
 //seleção de transformação de unidades 
 switch(RadioGroup1->ItemIndex) 
 { 
 case 1: 
 temperatura = 9/5*temperatura+32;//conversao para Farenheit 
 Label1->Caption = IntToStr(temperatura)+"ºF"; 
 break; 
 case 2: 
 temperatura = temperatura + 273;//conversao para Kelvin 
 Label1->Caption = IntToStr(temperatura)+"ºK"; 
 break; 
 } 
 
 arquivo->SaveToFile("C:\\temp\\temp.log"); 
} 
//---------------------------------------------------------------------- 
 
void __fastcall TForm1::Timer2Timer(TObject *Sender) 
{ 
 //timer para as horas 
 Label2->Caption = DateToStr(Date()); 
 Label4->Caption = TimeToStr(Time()); 
} 
//---------------------------------------------------------------------- 
 
void __fastcall TForm1::BitBtn1Click(TObject *Sender) 
{ 
//Botao que inicia o monitoramento, ativando o timer1 
 Timer1->Enabled = true; 
 BitBtn1->Enabled = false; 
 BitBtn2->Enabled = true; 
 Iniciar1->Enabled = false; 
 Parar1->Enabled = true; 
} 
//---------------------------------------------------------------------- 
 
void __fastcall TForm1::BitBtn2Click(TObject *Sender) 
{ 
//Botao que cancela o monitoramento, desativando o timer1 
 Timer1->Enabled = false; 
 BitBtn1->Enabled = true; 
 BitBtn2->Enabled = false; 
 Iniciar1->Enabled = true; 
 Parar1->Enabled = false; 
} 
 46 
//---------------------------------------------------------------------- 
 
void __fastcall TForm1::CSpinEdit1Change(TObject *Sender) 
{ 
//Quando o valor da caixa intervalo de leitura for alterado,essa linha 
//irá alterar o tempo de leitura do timer1 
 Timer1->Interval = CSpinEdit1->Value*1000; 
} 
//---------------------------------------------------------------------- 
 
void __fastcall TForm1::BitBtn3Click(TObject *Sender) 
{ 
//Botao para fechamento do programa 
 Form1->Close(); 
} 
//---------------------------------------------------------------------- 
 
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) 
{ 
 arquivo->SaveToFile("C:\\temp\\temp.log"); 
} 
//--------------------------------------------------------------------------- 
 
 
void __fastcall TForm1::Timer3Timer(TObject *Sender) 
{ 
 valor = true; 
} 
//--------------------------------------------------------------------------- 
 
 
 
void __fastcall TForm1::Sobre1Click(TObject *Sender) 
{ 
 Form3->Show(); 
} 
//--------------------------------------------------------------------------- 
 
void __fastcall TForm1::Iniciar1Click(TObject *Sender) 
{ 
 Timer1->Enabled = true; 
 BitBtn1->Enabled = false; 
 BitBtn2->Enabled = true; 
 Iniciar1->Enabled = false; 
 Parar1->Enabled = true; 
} 
//--------------------------------------------------------------------------- 
 
void __fastcall TForm1::Parar1Click(TObject *Sender) 
{ 
 Timer1->Enabled = false; 
 BitBtn1->Enabled = true; 
 BitBtn2->Enabled = false; 
 Iniciar1->Enabled = true; 
 Parar1->Enabled = false; 
} 
//--------------------------------------------------------------------------- 
 
void __fastcall TForm1::VerArqdeLog1Click(TObject *Sender) 
{ 
 Form4->Show(); 
} 
//--------------------------------------------------------------------------- 
 
void __fastcall TForm1::Sair1Click(TObject *Sender){ 
 Form1->Close(); 
} 
 47 
 
 
 
8. Resultados 
 
 Inicialmente definiu-se que o circuito sensor a ser implementado deveria ter uma 
faixa de atuação de 0ºC à 100ºC, a partir desta definição iniciou-se testes com os 
dispositivos semicondutores descritos, para descobrir qual teria uma variação de tensão 
mais linear em relação a temperatura, os resultados destes teste podem ser vistos nas 
figuras 8.1 e 8.2, nas quais estão descritos as curvas de resposta do 
Figura 8.1 – Relação Temperatura X Tensão no transistor 2N2222 
 
 diodo 1N4148 e do transistor 2N2222, pode-se notar que eles tem uma variação 
bastante linear na faixa entre 0ºC e 80ºC, mas a partir deste último eles tem uma curva 
abrupta sendo a curva do diodo mais suave, a partir desta conclusão definimos o diodo 
1N4148, seria utilizado como elemento sensor neste projeto. 
 
Transistores
0
20
40
60
80
100
0 10 20 30 40 50 60 70 80 88
Temperatura (ºC)
T
en
sã
o
 (
m
V
)
 48 
Figura 8.2 – Relação Temperatura X Tensão no diodo 1N4148 
 
 Na implementação do hardware ocorreram diversos contratempos, o principal 
foi quanto a impedância do amplificador operacional, como ela não era grande o 
suficiente, quando conectava-se o amplificador, o circuito sensor não funcionava 
corretamente, após a resolução desse problema pode-se concluir o projeto devidamente. 
A implementação da comunicação entre o hardware e o software também causou-nos 
contratempos, pois não tínhamos informações precisas de como ativar a leitura de dados 
através da porta paralela, com o auxílio de [KRI - 1998] efetuou-se a transmissão sem 
problemas. 
Foram executados testes com o circuito montado em uma protoboard, uma 
tablatura com conexões para montagem e testes de circuitos em fase de 
desenvolvimento ou pesquisa, o circuito foi testado com temperaturas que variavam da 
temperatura ambiente, passando pela temperatura corpórea de um ser humano, até o 
aquecimento através de isqueiros e ferros de solda, procedimento perigoso que resultou 
na quebra de um diodo, após mantivemoso projeto funcionando por um longo período 
de tempo para testar a durabilidade deste. Com os testes pode-se assegurar que a placa 
Diodos
0
20
40
60
80
100
0 10 20 30 40 50 60 70 80 88
Temperatura (ºC)
T
en
sã
o
 (
m
V
)
 49 
cumpre o seu propósito de verificar e controlar a temperatura, pois fizemos testes com 
várias temperaturas e medindo as mesmas com dispositivos termosensores, 
termômetros, pode-se constatar que a placa apresenta pouquíssima diferença em relação 
a este último, dentro de uma faixa de erro prevista já que a curva de resposta tensão X 
temperatura não era totalmente linear. 
 50 
 
 
 
 
9 – Conclusão 
 
 Como observado acima, existem diversos dispositivos que poderiam ser usados 
como sensores foi necessária uma avaliação mais técnica de cada um para que chegue-
se em um consenso de qual foi o melhor para utilização no projeto. Para o 
interfaceamento é melhor utilizar a porta paralela pois tem uma boa taxa de transmissão 
e não é muito utilizada pelos periféricos externos do computador. 
 Com a utilização da porta paralela se faz necessário um conversor que transmita 
os dados de 8 bits por vez (formato da porta paralela) e, desta forma, tornou-se 
necessário uma pesquisa mais detalhada a respeito do conversor. 
 O software foi desenvolvido simultaneamente à parte eletrônica, e por fim, foi 
elaborada toda a documentação do projeto, com todas as fases e resultados obtidos.
 Através desde projeto tivemos a oportunidade de nos adentrarmos na eletrônica 
analógica, necessária para o desenvolvimento do circuito sensor, e através disso 
compreender como funcionam dispositivos que fazem a transmissão de dados 
analógicos para digital assim como de amplificadores operacionais, áreas nas quais não 
tínhamos nenhuma visão clara ao iniciarmos o desenvolvimento deste projeto. Assim 
como tivemos que aprender como comunicarmos com o hardware interno do 
computador, pois até então apenas tínhamos feito programas que recebiam dados do 
usuário, assim sendo o hardware se encarregava dos problemas que tivemos que 
solucionar. 
 51 
 Alguns projetos podem vir a utilizar-se deste como princípio como o aumento da 
faixa de atuação do sensor, conexão de vários sensores, alteração do modo de 
transmissão dos dados, conversão do programa para outro sistema operacional, 
microprocessamento da placa o que permitiria a utilização do sensor sem a utilização de 
um computador, outra aplicação que poderia ser implementada facilmente a partir deste 
projeto é o aumento da faixa de atuação, isto é facilmente implementável através do 
processo de calibração quando definesse a temperatura mínima e máxima ao qual o 
sensor irá responder, ao invés de calibrar 0 mV a 0ºC definisse a temperatura mínima 
em 0 mV o mesmo ocorrendo com a temperatura máxima, este método tem o 
inconveniente de aumentar a faixa de erro, outro projeto implementável a partir deste é 
o desligamento automático de aparelhos eletrônicos, adicionando-se apenas uma linha 
de código no programa ele poderia acionar um relé que desligaria automaticamente uma 
máquina, este acionamento poderia ser feito a partir da porta paralela; o custo total dos 
componentes constituintes da placa é de aproximadamente R$ 12,00, não é possível 
determinar o custo da placa em si pois depende de fatores como a quantidade de placas 
fabricadas e da empresa contratada para esse serviço. 
 Através deste projeto pode-se ter um envolvimento do desenvolvimento de um 
projeto de pesquisa, as diversas seqüências de pesquisas que se deve tomar, as fases de 
testes, o cumprimento de metas e objetivos segundo um cronograma pré-definido que 
deve ser respeitado, a interdisciplinaridade que um curso de engenharia deve ter, pois 
dentro deste projeto envolveu-se conceitos de física, química, programação de 
computadores, hardware de computadores e eletrônica analógica, todas matérias vistas 
em cursos de engenharia de forma isolada. Também desenvolveu-se o conceito de 
trabalho em equipe, delegação de funções aos membros da equipe e estudo conjunto, 
pois apesar de cada membro executar partes separadas elas deveriam ser interligadas 
 52 
entre si, assim sendo todos os membros da equipe deveriam `ter o conhecimento 
necessário sobre as outras áreas que estavam sendo implementadas. Este projeto foi de 
grande valia também porque ensinou a aprender com os próprios erros e nunca desistir, 
não importando o quão difícil e árdua a tarefa possa parecer. 
 Já existem diversos projetos de sensoriamento térmico já desenvolvidos, assim 
como circuitos integrados que fazem a medição da temperatura, o que demonstra a 
preocupação com sistemas desta natureza. 
 
 53 
 
 
 
 
Referências Bibliográficas 
 
[DAS – 2000] – Da Silveira, J. L.; Comunicação de Dados e Sistemas de 
Teleprocessamento; São Paulo; Makron Books – McGraw-Hill 
Ltda; 1991. 
[ENC – 1987] – Larousse, Librarie; Enciclopédia Larousse Cultural; Editora Universo 
Ltda, 1987, São Paulo, Brasil 
[KHA – 1984] – Khambata, Adi J.; Microprocessadores, Microcomputadores: Volume 
1; Editora Campus; 1984; Rio de Janeiro; Brasil. 
[KOK – 1999] – Kokkori, Th.; Registrador de Temperatura; Revista Elektor; Edição 
Maio/1999; Editora Elektor; Seção PC Tópicos; págs. XIV à XV. 
[KRI – 2000] – Heidenstrom, Kris; k@heidenstrom.gen.nz; Nova Zelândia 
[LEM – 2000] – Lemmens , L.; Temperature Recorder DS 1615; Revista Elektor; 
Edição Fevereiro/2000; Editora Elektor; págs. 33 à 37. 
[MAL – 1985] – Malvino, A.P.; Microcomputadores e Microprocessadores; Editora 
McGraw-Hill; 1985; Rio de Janeiro; Brasil. 
[MAN – 1970] – Mann, George B.; ABC dos Transistores; Antenna Empresa 
Jornalística S/A; 3ª Edição; 1970; Rio de Janeiro; Brasil. 
[ROD – 1998] – Rodrigues, A. B.; http://ciel2.eletr.ufpr.br/edu/ie99/trab2/augusto/; 
Termopar Tipo T; 1998. 
 54 
[REI – 2000] – Reimbold, Manuel M. P. et alli; Módulo Didático para Acesso ao 
Desempenho Unidirecional da SPP dos PC´s Utilizando C++; 
Revista de Ensino de Engenharia; Volume 19; Número 1; págs. 
27-35; 2000. 
[SCH – 1996] – Schildt, Herbert; C Completo e Total; 3ª Edição; Editora Makron 
Books; 1996; Rio de Janeiro; Brasil. 
 55 
 
 
 
 
Anexos 
 
I. - Software - Manual do Usuário 
 
 Descrição 
 
 O software é o elemento responsável pelo processamento, tratamento das 
informações vindas do monitoramento da temperatura, bem como a apresentação visual. 
 Ele possui apresentação gráfica no padrão 32 bits, pois foi desenvolvido em 
linguagem visual, para Windows 95 ou superior. No caso, foi utilizado o Borland C++ 
Builderâ. 
 Ele contém elementos básicos, como conversão da temperatura para as três 
escalas: Celsius, Fahrenheit e Kelvin; caixas de seleção da freqüência de leitura da 
temperatura; o gráfico com o histórico da temperatura; um termômetro; a manipulação 
de arquivos (com o registro das temperaturas lidas). 
 
Requisitos de Hardware e Software 
 
· IBM/PC Compatível; 
· 32 Mbytes de memória RAM; 
 56 
· Windows 9X/Me 
· Porta Paralela Bidirecional, padrão PS/2; 
· Monitor SVGA; 
· Placa de Som. 
 
Instalação 
 
 O software pode ser instalado, e ser executado a partir de qualquer diretório, 
deixando a critério do usuário. 
 A instalação é em ambiente gráfico. Para iniciá-la, deve-se abrir o arquivo 
“instalar.exe”, feito isto basta selecionar o diretório para a instalação. 
 
Funcionamento Básico 
 
 O layout principal da tela do software, como mostrado na figura I.1, possui a 
 57 
Figura I.1 – Interface do software 
 
caixa temperatura atual, que mostra a temperatura lida pelosensor; possuí uma caixa de 
seleção da escala para a temperatura, que, pode ser Celsius, Fahrenheit ou Kelvin, e 
então aplica o valor recebido do sensor a fórmulas de conversão de escala; existem 
caixas temporais, onde é mostrada a data e a hora do sistema; também existem caixas de 
seleção para definição de limites de temperaturas, ou seja, o usuário define os pontos 
críticos, máximo e mínimo, que ele considera que o equipamento ou ambiente 
monitorado, não pode alcançar. 
 O usuário é quem define o intervalo (freqüência) de leitura dos dados 
(temperatura) via porta paralela. 
 Após configuração acima, feita pelo usuário, basta clicar no botão Iniciar, para 
que o programa comece o monitoramento. Clicando no botão Parar, o monitoramento é 
suspenso. Existe ainda um terceiro botão, Sair, que encerra a execução do programa. 
 A apresentação gráfica da temperatura é feita por um termômetro, e por um 
gráfico Temperatura X Tempo. 
 O programa possui um recurso de armazenamento em arquivo do histórico da 
temperatura, que conterá a temperatura lida, o horário e a data. Este arquivo, chamado 
de arquivo de log, poderá ser aberto para consulta, no próprio Software do Sistema de 
Sensoriamento Térmico, ou em qualquer editor de texto. O arquivo, é sempre salvo com 
o nome “temp.log”, no diretório selecionado pelo usuário para a instalação. 
No menu Arquivo, pode-se abrir o arquivo com o histórico da temperatura, e no 
menu Sobre, pode-se obter informações diversas. 
O funcionamento e a operação é simples: ao clicar no botão Iniciar, o programa 
inicia uma seqüência repetitiva de leitura da porta de comunicação, o valor indicado na 
 58 
caixa Tempo de Leitura é a freqüência com que o programa lerá a porta de 
comunicação. Após ter lido o valor, ele será convertido através de uma fórmula, que 
relaciona o valor binário com o correspondente em temperatura, e este valor será a 
temperatura, armazenado em um arquivo, que conterá o horário, momento (da leitura), 
que será obtido do computador e a data. Conforme a seleção da Escala, apresentar-se-á a 
temperatura na tela por meio de gráfico e pela caixa Temperatura Atual. Caso a 
temperatura lida exceda o valor mínimo ou máximo permitido, será emitido um aviso 
sonoro bem como visual: “A temperatura excedeu o limite máximo”, conforme mostra a 
figura I.2. Clicando-se no botão Parar, o programa suspende o processamento (leitura) 
até que o usuário reinicie. 
 
Figura I.2 – Aviso indicando que a temperatura excedeu 
o limite máximo. 
 
 59 
 
 
Glossário 
 
· Camada de Carga Espacial – Espaço da junção PN de um diodo, responsável pela 
determinação se o diodo irá conduzir corrente ou se portar-se-á como um isolante. 
· Circuito biestável – Circuito que possui dois estados de equilíbrio e que é capaz de 
passar de um ao outro, sob a ação de excitações. 
· Efeito Joule – Efeito observado em objetos que se mostra pelo aquecimento do 
objeto pelo atrito. 
· Eletromotriz – Algo que produz eletricidade a partir da ação de uma força 
mecânica. 
· Elétron – Partícula fundamental do átomo portadora de carga elétrica negativa. 
Encontra-se em volta do núcleo e é a única partícula fundamental que pode se mover 
para fora do átomo. 
· IEEE 1394 – Novo barramento externo de dados projetado pela Apple® e aceito 
recentemente pelo IEEE (Instituto dos Engenheiros Elétricos e Eletrônicos), tem boa 
taxa de transferência de dados, mas não é utilizado no mercado. 
· Lacuna – Dá-se o nome de lacuna a falta de elétron em um átomo. 
· Núcleo – Porção central do átomo onde estão o próton e o nêutron e onde os 
elétrons circulam em volta. 
· Período de clock – Período de uma instrução de um computador. 
· Resistor – Dispositivo eletrônico caracterizado pela sua resistência elétrica. 
· Resistência Elétrica – Propriedade física de um objeto que varia segundo sua 
constituição. 
· USB (Universal Serial Bus) – Tipo de barramento que vem ganhando espaço no 
mercado porque é mais fácil a manutenção de periféricos externos para o usuário. 
· Voltímetro Digital – Aparelho eletrônico responsável pela medição de tensão em 
um circuito.

Outros materiais