Sie sind auf Seite 1von 62

UNIVERSIDADE DE PASSO FUNDO

FACULDADE DE ENGENHARIA E ARQUITETURA


DEPARTAMENTO DE ENGENHARIA ELÉTRICA

Projeto de Graduação

INTERFACE MICROCONTROLADA PARA FONTE


DE ALIMENTAÇÃO AJUSTÁVEL

ALUNO:
Luis Mariano Nodari

ORIENTADOR:
Prof. Mikhail Polonskii

Passo Fundo, julho de 2003.


SUMÁRIO

Lista de abreviaturas 4
Lista de ilustrações 5
Resumo 6
Capítulo 1 – Introdução 7
1.1 Preâmbulo 7
1.2 Objetivos 8
1.3 Justificativa 9
1.4 Cronograma de trabalho 10
1.5 Estrutura do relatório 11
Capítulo 2 – Resumo teórico 12
2.1 Funcionamento de uma fonte de alimentação linear 12
2.1.1 Vantagens e desvantagens 13
2.2 Conversor D/A 14
2.3 Conversor A/D 16
Capítulo 3 – Implementação do hardware 18
3.1 Fonte de Alimentação 19
3.2Conversor D/A 22
3.3Conversor A/D 24
3.4Display 27
3.4.1 Observações 28
3.5 Microcontrolador 29
3.4.1 Teclado 30
3.6.1 Síntese de funcionamento do teclado 31
3.5Circuitos Condicionadores de sinal 32
3.7.1 Circuito para adequação do sinal de tensão de saída
da fonte 32
3.7.2 Circuito para adequação do sinal de corrente de saída
da fonte 33
3.7.3 Circuito para adequação do sinal de referência para
controle da tensão de saída da fonte 35

2
Capítulo 4 – Implementação do software 39
4.1 Fluxograma 40
Capítulo 5 – Testes e resultados 43
Capítulo 6 – Discussão e conclusões 51
Bibliografia 52
Anexo 1 Software em Linguagem C 53

3
LISTA DE ABREVIATURAS

A/D Analógico para Digital;

D/A Digital para Analógico;

AMPOPS Amplificadores Operacionais;

CLK Clock;

CI Circuito Integrado;

CPU Unidade Central de Processamento;

I/O Input/output;

RAM Memória de Acesso Aleatório;

CA/CC Corrente Alternada para Corrente Contínua;

VCO Oscilador controlado por tensão.

MSB Bit mais significativo.

LSB Bit menos significativo.

4
LISTA DE ILUSTRAÇÕES

Figura 1 Diagrama de Blocos de uma fonte linear 13


Figura 2 Esquema elétrico conversor D/A Somador 14
Figura 3 Esquema elétrico conversor D/A com malha R-2R 15
Figura 4 Esquema elétrico da fonte de alimentação 19
Figura 5 Esquema elétrico conversor D/A e Latch 22
Figura 6 Esquema elétrico conversor A/D 24
Figura 7 Diagrama de tempos do conversor A/D, ADC0808 25
Figura 8 Estrutura física do display de cristal líquido 27
Figura 9 Layout do teclado 30
Figura 10 Divisor resistivo para ajuste de tensão
de entrada do A/D 32
Figura 11 Amplificador diferencial para a leitura da
corrente de saída da fonte 33
Figura 12 Esquema elétrico do amplificador inversor 35
Figura 13 Diagrama de blocos do hardware 37
Figura 14 Esquema elétrico da interface microcontrolada 38
Figura 15 Fluxograma de func. do software (início) 41
Figura 15 Fluxograma de func. do software (continuação) 42
Figura 16 Tabela de tensões programadas e tensões
lidas na saída da interface 44
Figura 17 Gráfico: Tensão programada X Tensão lida 45
Figura 18 Tabela
Tensão lida p/ multímetro X Tensão lida p/ interface 46
Figura 19 Gráfico
Tensão lida p/ multímetro X Tensão lida p/ interface 47
Figura 20 Divisor resistivo para comparar a queda de tensão 48
Figura 21 Tabela
Tensão lida p/ multímetro X Corrente mostrada p/ Interface
49
Figura 22 Gráfico
Tensão diferencial lida X Corrente amostrada 50

5
RESUMO

Neste relatório será apresentado o desenvolvimento do projeto de uma


Interface Microcontrolada para Fonte de Alimentação Ajustável, para uso
em fontes de alimentação lineares ou chaveadas com fins didáticos ou
profissionais. Este equipamento poderá ser utilizado em fontes de alimentação
ajustáveis na faixa de 0 a 20 VCC.
Este equipamento servirá como interface, entre o controle de uma fonte
de alimentação e o usuário. Os ajustes de tensão poderão ser feitos, pelo
usuário, através de um teclado, podendo ser observado no display, onde
também, uma vez realizado e confirmado o ajuste, o usuário pode observar a
tensão e corrente na saída da fonte.
A interface estará trabalhando em malha aberta, em relação ao controle
da fonte de alimentação, desta forma, somente fornecerá a tensão de referência
para a fonte de alimentação, que deverá controlar a tensão de saída.
Para a construção da interface será utilizado um microcontrolador que
fará o controle do sistema, um conversor A/D, para fazer leituras de tensão e
de corrente e um conversor D/A, para converter a palavra digital de controle
em uma tensão de referência para a fonte de alimentação.

6
CAPÍTULO 1 – INTRODUÇÃO

1.1 Preâmbulo

Fontes de alimentação de bancada são equipamentos utilizados para


testes e manutenção de circuitos ou aparelhos que não possuam fonte de
alimentação própria. São formadas basicamente de um conversor CA/CC, que
pode ser de dois tipos: de regulação linear ou por chaveamento, através de um
conversor CC/CC.
Em trabalhos de bancada, seja em desenvolvimento de novos
equipamentos ou em manutenção surgem as mais distintas necessidades de
tensões e correntes para alimentação dos circuitos em testes.
Este projeto busca facilitar os trabalhos de bancada através de um
equipamento confiável e de fácil operação, proporcionando ao usuário uma
maior comodidade na execução de projetos e manutenções.

7
1.2 Objetivos

Este trabalho tem por objetivos desenvolver uma interface


microcontrolada para fonte de alimentação ajustável na faixa de 0 a 20 VCC,
que seja preciso, confiável, de operação simples. O equipamento deverá
ajustar níveis de tensão CC na saída da fonte e também fazer leituras de tensão
e corrente.
A fonte a ser controlada poderá ser do tipo linear ou chaveada; em
qualquer um dos casos o controle de malha fechada é feito própria fonte. A
interface digital atuará somente definindo o nível de tensão a ser controlado e
lendo as tensões e correntes de saída.
A tensão de referência para o ajuste da tensão de saída, pode ser feito de
várias formas, seja através de um potenciômetro, de uma chave seletora ou
através de um circuito externo, como é o caso da interface microcontrolada.
Nos dois primeiros casos o usuário interfere diretamente na tensão de
referência e por tanto, na tensão de saída da fonte. Havendo um engano no
momento de realizar o ajuste, ou ainda, a interferência mesmo que
involuntária do usuário, a tensão de saída irá variar instantaneamente podendo
causar danos aos equipamentos ligados à saída da fonte, ou somente o reajuste
da tensão.
A interface possibilitará a visualização simultânea dos ajustes a serem
feitos, através de um display, antes da sua confirmação, evitando ajustes
involuntários ou errôneos, pois o usuário ajustará a tensão desejada e somente
após pressionar uma tecla de confirmação é que a fonte fará o ajuste de tensão
na saída, prevenindo possíveis erros que poderiam causar danos ou prejuízos
ao usuário.

8
1.3 Justificativa

Ao efetuar manutenções ou desenvolver novos equipamentos e


tecnologias o usuário necessita de equipamentos eficientes e precisos, que não
lhe tirem a atenção do foco ou problema a ser resolvido.
A Interface Microcontrolada para fonte de alimentação ajustável é um
equipamento simples e de fácil operação, que poderá ser utilizado na
construção de fontes que poderão ser do tipo linear ou chaveada, tendo uma
fácil adequação a ambos os circuitos. Através da interface, o usuário poderá
realizar os ajustes na tensão de saída da fonte e terá as leituras de tensão e
corrente de saída. Facilita assim a operação e utilização da fonte.
Este projeto tem como finalidade contribuir com o aumento da
segurança e comodidade na utilização de tais equipamentos.

9
1.4 Cronograma de trabalho

1ª Etapa:
Pesquisar Normas nacionais e internacionais para a realização do
projeto.
2ª Etapa:
Especificar o projeto; tensão, corrente, precisão e proteções.
Descrever o funcionamento de uma fonte linear e de uma fonte
chaveada, vantagens e desvantagens das mesmas.
3ª Etapa:
Especificar a interface com o usuário.
4ª Etapa:
Projetar a interface microcontrolada.
5ª Etapa:
Implementação do projeto e testes.

 As 1ª, 2ª, 3ª etapas, juntamente com a primeira versão do relatório,


deverão estar prontas até o dia 24 de abril de 2003 para revisão do prof.
orientador.
 As possíveis alterações do relatório e entrega dos mesmos aos
professores da banca, serão realizadas ate o dia 2 de maio de 2003.
 Nos dias 8 e 9 de maio a apresentação parcial do projeto.
 As 4ª e 5ª etapas, juntamente com a versão final do relatório, deverão
estar prontas até o dia 4 de julho de 2003.
 As possíveis alterações do relatório, e entrega dos mesmos aos
professores da banca, serão realizadas até o dia 11 de julho de 2003.
 As possíveis alterações de projeto, ou correções de defeitos, deverão
estar prontas para o dia 16 de julho de 2003.
 Nos dias 17 e 18 de julho de 2003 as apresentações finais.
 Até o dia 24 de julho apresentação final do relatório ao prof. orientador.

10
1.5- Estrutura do relatório

Este relatório é apresentado em seis capítulos. O primeiro capítulo é


uma breve introdução ao tema do projeto. O segundo capítulo traz uma
revisão teórica sobre os conceitos e dispositivos a serem utilizados. O terceiro
capítulo descreve a implementação do hardware e todas suas considerações. O
quarto capítulo aborda a implementação do software e seus fluxogramas. O
quinto capítulo apresenta os cálculos do projeto testes e resultados obtidos.
Por fim, o sexto e último capítulo apresenta as discussões e conclusões a
respeito do projeto.

11
CAPÍTULO 2 – RESUMO TEÓRICO

Serão abordados, neste capítulo, alguns tópicos que servirão de base


para as principais estruturas utilizadas no desenvolvimento da interface
microcontrolada.
Para melhor compreensão deste projeto, será apresentado, de forma
resumida, uma síntese de funcionamento dos componentes utilizados no
projeto, uma breve explanação do funcionamento de uma fonte de alimentação
linear e de que forma a interface microcontrolada para fonte de alimentação
ajustável, poderá ser utilizada com esta fonte. Após será apresentado, uma
breve revisão da estrutura e funcionamento de um microcontrolador, também
serão abordados, conversores D/A, conversores A/D e suas formas de
conversão.

2.1 Funcionamento de uma fonte linear regulada


Analisando uma fonte linear, ela possui pelo menos quatro blocos
distintos: Transformador rebaixador de entrada, retificador e filtro, circuito de
controle e por fim o driver de corrente de saída
Através do transformador rebaixador de entrada, a tensão da rede
elétrica é rebaixada para um nível próximo ao nível de tensão CC requerido na
saída da fonte, de forma que, somando todas as quedas de tensão do circuito a
fonte possa garantir a regulação de tensão da saída quando estiver atuando
com sua carga nominal.
O conjunto retificador e filtro capacitivo, é responsável pela
conversão de CA/CC. Deve ser observado o nível máximo de ripple
admissível na tensão para garantir o bom funcionamento e regulação da fonte.
O bloco de controle é responsável pela regulação da tensão de saída
da fonte, ele faz a comparação de tensão e limita a tensão e corrente de saída.
Este circuito é de fundamental importância para garantir o bom funcionamento
da fonte.
A etapa de saída funciona como driver de potência, tem a finalidade
de fornecer a corrente de saída para a carga, mantendo os níveis de tensão
enviados pelo circuito de controle. (Boylestad,R. & Nashelsky,L. 1992)
Todas estas etapas são mostradas no diagrama de blocos da figura 1.

12
AC
DC

Trafo de Retificador Etapa de


entrada Filtro Cap. potência

V Ref. Controle
linear

Figura 1: Diagrama de Blocos de uma fonte linear

2.1.1 Vantagens e desvantagens de uma fonte linear regulada

Como vantagens de sua construção apresenta-se a regulação do


circuito, sua precisão, a facilidade de adquirir os componentes eletrônicos
necessários para sua construção e a simplicidade da tecnologia de
funcionamento do circuito.
Como desvantagens pode-se citar o baixo fator de potência, devido
ao sistema de retificação e filtro capacitivo que geram harmônicos na rede
elétrica, a baixa eficiência, devido ao funcionamento do circuito de driver que
dissipa potência internamente. Este fato se agrava quando a tensão de saída da
fonte ajustável é menor do que a máxima tensão de saída da fonte, porque
maior será a tensão sobre o circuito de driver. Também se pode citar o seu
peso, que em casos de grandes potências é elevado.

13
2.2 Conversores Digital para Analógico - D/A

Quando o sistema de controle digital tem a finalidade de controlar


uma planta analógica, surge a necessidade de transformar um número finito de
dígitos binários em um sinal analógico para comandar o mundo externo ao
controle digital.
Um conversor D/A é o responsável pela conversão de sinais digitais
em sinais analógicos, transformando um número finito de bits em uma tensão
analógica em sua saída, tensão esta que deverá atuar sobre uma planta
analógica.
Em sistemas microcontrolados, este conversor é uma interface de
saída, tendo o microcontrolador como referência.
Existem vários tipos de conversores D/A, dentre eles os mais comuns
são:
Amplificador somador ponderado: Neste circuito, os bits de
entrada digitais, a serem decodificados, estão ligados, através de resistores,
aos nós de entrada paralelos de um amplificador somador. Para cada canal do
amplificador, o resistor de entrada, aumenta por um fator de 2 enquanto que o
peso do bit binário correspondente é diminuído, o esquema elétrico do circuito
pode ser visto na figura 2.

Figura 2: Esquema elétrico conversor D/A Somador.

14
As principais desvantagens deste método são a sua sensibilidade aos
valores dos resistores de entrada que, com combinações diferentes, carregam o
circuito de forma diferente, devido aos valores dos resistores de entrada.
(Horenstein, Mark N. 1996)

Conversor em malha R-2R: Neste circuito, a principal característica


é que os bits de entrada, a serem decodificados, estão ligados à uma rede de
resistores chamada de malha R-2R. A malha de resistores esta ligada a um
bufer de saída que minimiza a corrente drenada pela malha, reduzindo a carga
no circuito digital, como pode ser observado no esquema elétrico da figura 3.

Figura 3: Esquema elétrico conversor D/A com malha R-2R

Este circuito é mais preciso e não apresenta diferença de


carregamento no circuito digital. (Horenstein, Mark N. 1996)

15
2.3 Conversores Analógico para Digital - A/D

A utilização de sistemas baseados em lógica de controle digital


implica que os sinais analógicos provenientes do mundo exterior sejam
digitalizados, isto é, suas amplitudes codificadas por meio de um número
finito de dígitos binários, constituíndo-se no que se chama de quantização de
sinal.
Um conversor A/D é responsável pela conversão de sinais analógicos
em sinais digitais, ou seja, em um número finito de bits que poderão ser lidos
e tratados por circuitos digitais, como por exemplo, os circuitos
microcontrolados. Em sistemas microcontrolados, este conversor é uma
interface de entrada quando o microcontrolador é tomado como referência.
Na conversão A/D tem-se uma tensão analógica de entrada e depois
de certo tempo, temos um código digital de saída que representa a tensão
analógica de entrada. A conversão A/D é um processo geralmente mais
complexo e demorado que a conversão D/A. Existem vários métodos
desenvolvidos e utilizados; os mais utilizados são:
Conversor Aproximações Sucessivas: é um dos mais utilizados e
complexos métodos de conversão, muito rápido, faz conversões na ordem dos
nano segundos e o tempo de conversão não depende do valor analógico lido.
Neste método o contador parte do centro de sua escala, o bit MSB é setado
fazendo comparações com a tensão analógica lida da mesma forma fazendo
comparações bit a bit do mais significativo para o menos significativo até o
final da conversão.
Conversor Flash: A conversão Flash ou paralelo é a mais rápida
forma de conversão das existentes, porém, utiliza uma grande quantidade de
comparadores para sua construção, o que contribui para o aumento de
tamanho e preço do mesmo. Não necessita de clock para conversão (não tem
seqüência de conversão); uma vez presente à tensão em sua entrada analógica
imediatamente está em sua saída digital a palavra correspondente ao nível de
tensão analógica.
Conversor Contagem ou Seguidor: É relativamente lento, utiliza
internamente o método de contagem digital. A cada vez que é indicada a
conversão o contador é resetado e é preciso fazer a contagem até que atinja o
código digital correspondente á tensão analógica de entrada.

16
Conversor Dual-slope: Um dos métodos mais lentos de conversão
(com tempos que variam de 10ms a 100ms), porém é de baixo custo, porque
não necessita de componentes de precisão.
Sua operação básica está no tempo de carga ou descarga de um
capacitor; tem-se uma tensão analógica na entrada de um comparador e em
sua outra entrada a tensão de carga do capacitor. Na saída do comparador está
ligado o pino de enable de um contador; quando a tensão de carga do
capacitor ultrapassa a tensão analógica lida o comparador muda de estado na
saída e desliga o contador. O número de contagens, com o clock e a constante
de carga do capacitor, conhecidos, tem-se a conversão A/D.
Conversor Tensão-Frequência: Este conversor utiliza internamente
um oscilador controlado por tensão (VCO), e em sua saída a freqüência
correspondente ao nível de sinal analógico de entrada.
Conversor Sigma Delta: É um conversor de tensão e freqüência,
porém, não varia simplesmente a freqüência na saída, e sim, uma palavra de
forma serial variando sua densidade de uns e zeros. (Tocci, Ronald J., &
Windmer, Neal S., 1998)

17
CAPÍTULO 3- IMPLEMENTAÇÃO DO HARDWARE

Tendo como base o objetivo do projeto, que é o desenvolvimento de


uma interface entre o controle de uma fonte de alimentação e o usuário, de
forma que os ajustes possam ser feitos através de um teclado, podendo
também ser observado pelo usuário, e que uma vez realizado e confirmado o
ajuste, o usuário possa observar a tensão e corrente na saída da fonte,foram
observadas as seguintes características para o dimensionamento do hardware:
a escala de ajuste deverá ser de 0 a 20 volts com um ajuste mínimo de 100mv
e as leituras de tensão e corrente serão de 0 a 20 volts com leitura mínima de
100mV e 0 a 30 amperes com leitura mínima de 100mA.
A precisão mínima desejada para as medidas é de 1%, tanto no ajuste da
tensão de saída quanto nas leituras de tensão e corrente de saída.
Desta forma, o dimensionamento dos componentes utilizados foi feito
de acordo com os objetivos de ajuste e precisão do projeto, de forma que
atendam aos ajustes mínimos e máximos de tensão e também a precisão
mínima desejada. As leituras de tensão e corrente também são consideradas
para o dimensionamento.
As tensões a serem lidas e ajustadas na saída da fonte são analógicas,por
isso, são utilizados conversores A/D e D/A, escolhidos de forma que atendam
as necessidades mínimas.
As tensões a serem lidas e ajustadas variam de 0 a 20 VCC, utilizando
conversores de 8 bits temos que:

VFS 20Vcc
VLSB  VLSB   0,0784V
255 255

O que garante um ajuste mínimo de 78,4 mv e uma precisão de 0,4%.


Estes níveis de ajustes de tensão e de precisão, atendem as necessidades
do projeto, por isso serão utilizados os conversores de 8 bits.

18
Para o funcionamento da interface microcontrolada, primeiramente foi
projetada e implementada a fonte de alimentação da própria interface, que
deverá fornecer as tensões de alimentação e referência para o hardware da
mesma. Para o projeto da fonte, foi tomando por base as tensões necessárias
para cada circuito e os seus respectivos consumos, de acordo com as
especificações dos fabricantes.

3.1 Fonte de Alimentação

A fonte de alimentação deverá ter entrada 220 Volts CA, devendo


fornecer 250mA para os circuitos descritos anteriormente. Este valor para
corrente foi obtido pelo levantamento de consumo dos componentes do
circuito, segundo as especificações dos fabricantes.
Utilizando um transformador de 12 + 12 Volts, 300mA, a fonte
fornecerá em sua saída as tensões reguladas em +9V, -9V, e +5V.
O diagrama elétrico da fonte pode ser visualizado na figura 4.
F1
FUSE
AC_IN U12

1 3
AC_IN VIN VOUT 5VCC
GND

RV1 C3 C4

330n 7805 100n


2

VARISTOR
12
11

T1
110 + 110 To 12 + 12 U13

1 3
VIN VOUT 15VCC
GND

C1 C2
5

330n 7809 100n


2

D3
1

F2
FUSE
2 - BRIDGE + 4
U14
C7
2 3
VIN VOUT -15VCC
1000uF
GND

C5 C6
F3
3

FUSE 330n 7909 100n


1

C8

1000uF

Figura 4: Esquema elétrico da fonte de alimentação.

(Texas. 2000)

19
Por se tratar de uma fonte simétrica, será utilizado um retificador de
onda completa em ponte, que tem como sinal de saída um sinal DC pulsante:
É necessária a utilização de um capacitor como filtro, para reduzir o
ripple do sinal da fonte a um valor inferior a 6.5%, para uma melhor
regulação. Considerando um ripple máximo de 6.5%, temos uma tensão de
ripple igual a:
Vr (rms)
r  100% (1.0)
Vcc

Assim:

V (rms)
6,5%   100% Vr ( rms )  1,1V
16.97

O valor mínimo para o capacitor para se obter esta tensão de ripple é


obtido através da seguinte equação:

Icc Icc
Vcc  Vm  então: C
4 FC 4 F (Vm  Vcc)

Onde
ICC é o valor da corrente a ser fornecida a carga em mA;
C é o valor mínimo do capacitor de filtro em uF;
Vr é o valor eficaz da tensão de ripple.
Vm é o valor de pico da tensão após o retificador.
F é a freqüência da rede
(Boylestad,R. & NashelskyL., 1992)
Assim,

0.250
C
4  60  1.1

C  946.9 F

Serão utilizados capacitores eletrolíticos de 1000 uF / 25V.

20
Para se obter as tensões reguladas, serão utilizados os CI’s
reguladores de tensão 7809 para fornecer +9V, 7909 para fornecer –9V, e
7805, que fornecerá a tensão de +5V.
Para proteção do circuito, será utilizado um fusível ligado ao
enrolamento primário do transformador, especificado da seguinte maneira:

220V  I  24V  0.25 A 2

I  38,5mA
Como o valor mais próximo é de 100mA, serão utilizados também
fusíveis no enrolamento secundário do transformador, no valor de 200mA.
Para o teste de desempenho da fonte de alimentação projetada, foi
feita a montagem da mesma e realizados testes de regulação para variações na
carga e na rede elétrica.
Primeiramente, para cada saída regulada foram conectados resistores
simulando a carga do circuito, baseado no levantamento do consumo de
corrente dos circuitos a serem alimentados pela fonte.
Para a fonte de +9V, o valor de tensão de saída ficou em +8,98V com
ripple inferior a 10 mV, que corresponde a 0,11%. Para a fonte de –9V, o
valor de tensão de saída ficou em -9,07V para um mesmo nível de ripple. E a
fonte de +5V, teve um valor de tensão de saída de +4,97V, com um ripple
inferior a 0,1% que corresponde a 5mV.
Para o teste de regulação de carga, foi variado o valor nominal do
resistor acoplado à saída de cada fonte em mais de 50% e foi observado que os
níveis de tensão e ripple mantiveram-se inalterados se comparados com os
valores anteriores.
Para o teste de regulação para alterações na rede elétrica, foi utilizado
um transformador variador de tensão marca STP, tipo ATV-215-M, de entrada
220V e saída de 0 a 240V.
Com resistores simulando carga nominal, foi variada primeiramente a
tensão de alimentação da fonte de 220V até 240V, não havendo alteração
perceptível na tensão das saídas reguladas da fonte. Logo após foi variada a
tensão de entrada de 220V a 180V, também sem alteração perceptível. Os
níveis de tensão CA variados na entrada da fonte foram baseados na tensão da
rede elétrica. Deseja-se que não tenha variações superiores a 10% (de 198V a
242V).

21
3.2 Conversor Digital-Analógico

O conversor digital analógico escolhido foi o DAC 0808. É produzido


pela National Semiconductors, é um conversor de uma porta analógica e 8
bits, apresenta baixo consumo, faz interfaceamento direto com lógicas TTL e
CMOS. Possui as seguintes características:
 Precisão relativa :  0,19% erro Máximo
 Alimentação :  4,5V à  18V
 Baixo consumo: 33mW @  5V
 Tempo de conversão: 150 ns típico.
 Fácil interfaceamento com microcontroladores e lógicas TTL e
CMOS.
O esquema de ligação pode ser visto na Figura 5, a seguir.

VCC -9 VCC 5 VCC 9 VCC

C4 100n C5 R6
DAC 0808 100n 5K
U4 74HC573 1 16
20 10 NC COMP
2 VCC GND 19 12 C6
3 D0 Q0 18 11 A8 LSB 100n
4 D1 Q1 17 10 A7 13
5 D2 Q2 16 9 A6 VCC 2
6 D3 Q3 15 8 A5 GND
7 D4 Q4 14 7 A4 4
8 D5 Q5 13 6 A3 I OUT
9 D6 Q6 12 5 A2
11 D7 Q7 A1 MSB R10
1 LE 3 15 5K
OE VEE VREF- 14
VREF+

Figura 5: Esquema elétrico conversor D/A e Latch.

22
Onde:
Vfs
VLSB  (3.0)
255

5V
VLSB 
255 VLSB  0,02V

(National. 1995)

Precisão do circuito:

A precisão desejada para o circuito é de um décimo de volt (uma


casa após a vírgula, em volts); a tensão máxima na saída do D/A, é -5 VCC.
A tensão de referência para a fonte de alimentação ligada à interface
deve ser de, no máximo, 20 volts. Portanto, o circuito condicionador de sinal
de saída do D/A deve ter um ganho AV= 4. Logo: o valor de um bit LSB na
saída do condicionador de sinal é de 0,08V, o que equivale a 0,25% de
precisão e atende ás necessidades do projeto, onde o menor ajuste de tensão é
de 100 mV.

23
3.3 Conversor Analógico-Digital

O conversor A/D deve ter no mínimo duas entradas, para que se possa
fazer leitura de tensão e corrente na saída da fonte, o conversor A/D escolhido
foi o ADC0808. Produzido pela National Semiconductors, é um conversor de
8 portas analógicas e 8 bits, possui alta impedância nas entradas analógicas e
TRI-STATE nas saídas digitais. Possui as seguintes características:
 Fácil interfaceamento com microcontroladores.
 Não necessita de ajuste de zero ou fim de escala.
 Saídas digitais TTL.
 Resolução: 8 bits
 Baixo consumo: 15mW
 Tempo de conversão: 100 us
No projeto são utilizadas somente duas das oito entradas analógicas
disponíveis neste componente, as demais entradas e os pinos de controle das
mesmas serão são ligadas ao terra. O circuito foi montado de acordo com a
recomendação do fabricante. Suas entradas analógicas estão conectadas aos
circuitos condicionadores de sinal de leitura de tensão e corrente. As saídas
digitais estão ligadas diretamente a uma porta do microcontrolador e seus
pinos de controle, de mesma forma, porem, ligados à outra porta. O esquema
de ligação do A/D pode ser visto na Figura 6, a seguir.

U1 ADC0808
17 26
D0 IN0 A/D_IN0
14 27
D1 IN1 A/D_IN1
15 28
8 D2 IN2 1
18 D3 IN3 2
19 D4 IN4 3
20 D5 IN5 4
21 D6 IN6 5
D7 IN7
10
CLK
25
A0 24
A1 23
A2 7
EOC 22
VCC ALE 9
OE 6
12 START
REF+ 16
REF-
11 13
VCC C7 GND

1n

Figura 6: Esquema elétrico conversor A/D

24
Um conversor A/D para funcionar corretamente necessita de vários
sinais de controle, o ADC 0808, deve ter a sinalização conforme o gráfico da
figura 7, esta sinalização é feita via software pelo microcontrolador.

Figura 7: Diagrama de tempos do conversor A/D, ADC0808.

25
Precisão do circuito

No circuito conversor A/D a precisão mínima desejada é de um


décimo de volts (uma casa após a vírgula, em volts); a tensão máxima nas
entradas do A/D é de 5 VCC.
Então:

Vfs
VLSB  (3.0)
255

5V
VLSB 
255 VLSB  0,02V

A tensão máxima a ser lida pelo A/D na saída da fonte é de 20 VCC.


Portanto, o circuito condicionador de sinal na entrada do A/D deve dividir o
sinal lido na saída da fonte por 4, para adequar ao nível máximo de sinal de
entrada no A/D, que é de 5 Vcc. Logo: o valor de um bit LSB na entrada do
D/A equivale a 0,08V na saída da fonte; equivale a 0,25% de precisão, o que
atende às necessidades do projeto, onde a menor tensão a ser lida é 100 mV.
Na leitura de corrente, o circuito de condicionamento de sinal
amplifica um sinal que é originalmente no máximo 700 mV por um fator de
7.1, conforme o circuito de adequação de sinal da leitura de corrente, para a
tensão de fundo de escala do A/D.
Então:
Vfs
VLSB  (3.0)
255

5V
VLSB 
255 VLSB  0,02V

Assim o valor de um bit LSB é de 0,02 V, o que atende as


necessidades do projeto, onde a menor corrente a ser lida é de 100mA.

26
3.4 Display

Para o interfaceamento com o usuário será necessário um display e um


teclado, O display deverá oferecer ao usuário as informações de tensão e
corrente na saída da fonte, assim como as informações de programação feitas
por parte do usuário, desta forma, foi escolhido o display de cristal líquido de
2 linhas por 16 colunas da Alfacom que possui consumo extremamente baixo,
interfaceamento simples, dimensões e peso reduzidos.
A geração de caracteres e sua atualização é feita internamente, possui
gerador de caracteres interno com 192 caracteres, sendo necessário no
máximo 14 linhas para sua alimentação e completo interfaceamento com
quaisquer microprocessadores com via de dados de 4 ou 8 bits. O visor é
refletivo, com imagem positiva, caracteres escuros sobre fundo claro.
Toda vez que a alimentação do módulo for ligada deve ser executado
o procedimento de inicializarção, o qual consiste em enviar ao módulo do
display um grupo inicial de 4 instruções para configurar o modo de
operação. A figura 8 mostra a estrutura física do display.(Alfacom, 1987)

Figura 8: Estrutura física do display de cristal líquido

27
3.4.1 Observações

Sob o ponto de vista de apresentação da fonte e sua ergonomia, seria


uma boa possibilidade o uso de displays de sete segmentos ou um módulo de
cristal líquido de tamanho maior e alta luminosidade, facilitando assim a
visualização por parte do usuário.
Para utilização de displays de sete segmentos seria necessário um
aumento de hardwere e um tratamento especial de softwere, o que não traria
problemas,devido a facilidade de programação destes dispositivos, porém, o
aumento de hardware aumentaria o tamanho e o custo do projeto. Mesmo
assim não ofereceria todas as mensagens e caracteres presentes nos displays
de cristal líquido.
Para utilização de um módulo de display de cristal líquido de maior
tamanho e alta luminosidade, aumentaria o custo do projeto.

28
3.5 Microcontrolador

O microcontrolador escolhido foi o AT89S8252, derivado da família


80C51, fabricado pela Atmel, que possui um número de funções e hardware
aprimorados em relação ao 80C51. Possui as seguintes características:
 256 x 8 bits de RAM interna;
 Quatro portas I/O de 8 bits;
 Três temporizadores/contadores de 16 bits;
 Estrutura de interrupção com 9 fontes;
 Interface serial;
 Um temporizador com watchdog;
 Oscilador interno ao chip;
 Gerador de clock externo;
 Possui 8K bytes de memória flash interna;
 Possui 2K bytes de memória EEPROM interna;
 Flag de power-off;
 Dois modos de baixo consumo de energia.

Foi escolhido trabalhar com este microcontrolador porque ele atende


a todas as necessidades de hardware que o projeto demanda, pela facilidade de
sua utilização devido a sua memória flash interna, e também, devido a
literatura e material necessário para utilização do mesmo, que são de fácil
acesso.

29
3.6 Teclado

O teclado foi projetado para atender ao usuário com oito teclas para
executar várias funções que serão descritas a seguir. A figura 9 demonstra
como ficou o seu layout.

Figura 9: Layout do teclado.

Tecla R: Seleciona um caractere à direita.


Tecla L: Seleciona um caractere à esquerda.
Tecla U: Faz um incremento em um caractere previamente
selecionado no display.
Tecla D: Faz um decremento em um caractere previamente
selecionado no display.
Tecla E/L: Entra ou confirma a operação.
Tecla OFF: Desliga a fonte.
Tecla 5V: Preset de 5 volts.
Tecla 12V: Preset de 12 volts

30
3.6.1 Síntese de funcionamento do teclado:

O teclado somente estará habilitado para funcionar após a fonte ser


ligada através da tecla entra. Após a fonte estar ligada é que o usuário poderá
fazer os ajustes da tensão desejada.
A interface possui duas tensões previamente programadas que o
usuário poderá programar através das teclas “5V” e “12V” que são 5 volts e
12 volts respectivamente, após pressionar uma das teclas deverá pressionar a
tecla “E/L” para confirmar a operação.
Quando for necessário o ajuste de outras tensões que não as
previamente programadas, deverá selecionar o digito a ser alterado (décimos,
dezenas ou centena), através das teclas “L” se for para a esquerda ou “R” se
for para a direita. Uma vez selecionado o digito efetuará o ajuste através das
teclas “U” se for para aumentar ou “D” se for para diminuir e então pressionar
“E/L” para confirmar.
Para desligar a fonte ou cancelar a operação,deve precionar a tecla
“OFF”.

Observação:
Os possíveis ruídos gerados pelas teclas, são tratados, via software
através de um delay na rotina de leitura das teclas, desta forma, evitando que
uma tecla pressionada, não seja interpretada pelo microcontrolador, como se
fosse pressionada várias vezes.

31
3.7 Circuitos condicionadores de sinal

Os circuitos condicionadores serão responsáveis pela adequação dos


sinais de tensão lidos e fornecidos a fonte, para que estes possam ficar dentro
da faixa de operação dos conversores A/D e D/A. Para a realização do projeto
foram necessários três circuitos de adequação de sinal, que serão descritos a
seguir:

3.7.1 Circuito para adequação do sinal de tensão de saída da fonte

Para a leitura de tensão de saída da fonte será utilizado um divisor


resistivo calculado para que quando a fonte estiver com a maior tensão de
saída o sinal amostrado no divisor resistivo esteja dentro do máximo
admissível na entrada analógica do conversor A/D. Para facilitar o ajuste de
fundo de escala,foi utilizado um potenciômetro, conforme a Figura 10.

V SAIDA DA FONTE

A/D_IN0
C9 Trimpot
20K
1uF

Figura 10: Divisor resistivo para o ajuste de tensão na entrada do A/D

Para o cálculo deste divisor foi estipulado um consumo máximo de


corrente de 1mA, e considerada nula a corrente de entrada no A/D, por estar
na ordem de 1 uA.
Assim:
V max (2.0)
R
i

20Vcc
R R  20 K
1mA
Assim foi utilizado um trimpot de 20 K.

32
3.7.2 Circuito para adequação do sinal de corrente de saída da fonte
A leitura da corrente de saída será feita através de um resistor shunt
na saída da fonte e um amplificador operacional trabalhando de modo
diferencial, conforme a Figura 11.

R6
12k

9 VCC

U5A
R7
4

TL082 R-Shunt
- 2 1k5
1
A/D
+ 3
R8
R-Shunt
1k5
8

R5
-9 VCC

C3 C2 12k
100n 100n

Figura 11: Amplificador diferencial para a leitura da corrente de saída da


fonte.

Quando em plena carga a tensão sobre o resistor shunt deverá ser de


aproximadamente de 700mV, este sinal será amplificado para que fique na
faixa de operação do conversor A/D.
A leitura de corrente será feita na saída da fonte de alimentação,
quando em plena carga, estará fornecendo 30 A, e a queda de tensão sobre o
resistor shunt deve ser próxima aos 700mV, como precisamos uma variação de
tensão de 5V na entrada do A/D, a tensão de entrada deverá ser amplificada,
conforme descrito a seguir.

33
Vi max  700mV Vo max  5V

VI max
AV  (2.1)
Vo max

5V
AV  AV  7,14
700mV

Para o cálculo dos resistores do circuito, estipulou-se os valores dos


resistores das entradas do Ampop, no valor de 1,5k e com os dados de tensão
de entrada e de saída calculou-se os valores dos resistores de realimentação,
conforme demonstrado a seguir.

R1  1,5 K

R2
Vo    Vi max  (2.2)
R!

R2
5V    700mV  assim : R2  10,7 K
1,5 K
(Pertence, A. J.,1990)

Serão utilizados resistores de 12 k.


O ajuste da tensão diferencial será feito na fonte de alimentação,
através do resistor shunt, para que a leitura feita pela interface esteja correta.

34
3.7.3 Circuito para adequação do sinal de referência para controle da
tensão de saída da fonte
Este circuito foi implementado de forma que possa ser ajustado o seu
ganho, para que se adapte à tensão de referência necessária em cada circuito
que a interface microcontrolada possa ser utilizada.
Foi utilizado um amplificador operacional, funcionando como
amplificador inversor, de forma que o ganho possa ser ajustado, na Figura 12,
pode-se observar o diagrama elétrico do circuito.

R9
50K

R1 U6B
2k2 6
D/A
-
7
V. Referência
5 +

TL082

Figura 12: Esquema elétrico do amplificador inversor.

Para o projeto deste circuito foram realizados os seguintes cálculos.

Z i  R1 (2.3)

R2
AV   (2.4)
R1
Estipulando o valor de R1= 2,2K e para um ganho de até 10 vezes
tem-se:
R2
10   R2  22 K
2 .2 K 

Será utilizado um trimpot de 50k.


(Pertence, A. J.,1990)

35
3.7 Montagem do hardware da interface microcontrolada

O hardware foi montado baseado nas disponibilidades de portas


microcontrolador, da seguinte forma:
A porta P1 foi utilizada para o envio de dados para o display, portanto,
ligada diretamente aos pinos de dados do display, operando em 8 bits.
O teclado foi ligado à porta P3 utilizando 6 bits, os outros dois bits
foram utilizados para ligar um led e um transistor, que será utilizado para ligar
um relé para acionar a etapa de potência na saída da fonte.
A porta P1 foi utilizada bit a bit para controle dos sinais necessários
para o display, o A/D, o latch enable do CI 74HC 573 e como gerador de clock
para o A/D
A porta P0 foi utilizada como entrada e saída de dados, ligada aos pinos
de saída do A/D e aos pinos de entrada de um latch que é utilizado entre a
porta do micocontrolador e o D/A, que deve manter a tensão analógica na
saída, enquanto o microcontrolador realiza outras funções. Através da
utilização do latch é que foi possível compartilhar a porta P0, para fazer a
leitura e escrita de dados.
Os circuitos condicionadores de sinal estão ligados ao A/D e D/A de
forma a adequar os níveis de tensão lidos e fornecidos à fonte, com os níveis
de tensão de entrada e saída dos conversores.
Para a leitura de tensão foi utilizado simplesmente um divisor resistivo,
ajustado para que quando a tensão de saída da fonte estiver em seu nível
máximo, seja também correspondente ao nível máximo de tensão na entrada
do A/D.
Já para leitura de corrente foi utilizado um amplificador diferencial,
ajustado para que com 600 mv em sua entrada diferencial ele tenha a tensão
máxima na entrada do A/D que é 5 V.
Para a saída de tensão de referência foi utilizado um amplificador
inversor, adequando o sinal de saída do D/A que é de 0 a –5 VCC, o nível de
sinal de referência necessário para a fonte a ser ligada a saída da Interface
microcontrolada, que é de 0 a 5Vcc

36
Para um melhor entendimento, o hardware do projeto pode ser visto
conforme mostra o diagrama de blocos da figura 13.

Fonte de
Alimentação

Leitura
de
K Tensão
Display LCD
Conv.
A/D Leitura
de
K Corrente
.C.
89s8252

Conv. Tensão de
Teclado D/A
K Referência

Figura 13: Diagrama de blocos do hardware

37
O esquema elétrico do projeto é apresentado na figura 14, onde pode
ser observado todos os circuitos da interface interligados.
V SAIDA DA FONTE

SW5

UP J1 R17 20K
1k Trim pot
SW6 C11
SW7 Display-16x2 C

RIGHT
LEFT VCC D2
LED
10

12
13
14
15
16
11
1
2
3
4
5
6
7
8
9

SW8
C1
100n 1
SW1 SW2 DOWN SW3 SW4
C68
100uF R6
ON/ENTER 5V 13.8 V OFF POT 2
R1 U1 ADC0808
12k
17 26
14 D0 IN0 27 15 VCC
15 D1 IN1 28
8 D2 IN2 1
18 D3 IN3 2
D4 IN4 U5A
VCC 19 3 R7
20 D5 IN5 4 1k5

4
D6 IN6 TL082
21 5 2
PORTLEFT-L
-
D7 IN7 1
10 3
PORTLEFT-L
+
CLK
10K 25 R8
1 16 A0 24 1k5

8
2 15 VCC A1 23
3 14 A2 7
4 13 EOC 9
5 12 OE 22
6 11 ALE 6 R5
7 10 12 START C3 C2 12k
8 9 REF+ 16 1n 1n -15 VCC
REF-
11 13 -15 VCC
R-PACK VCC GND
C7 100n
15 VCC

VCC

C8 100n C67
DAC 0808 100n R17
U4 74HC573 1 16 5K R9
U11 AT89S8252 20 10 NC COM P 50K
21 39 2 VCC GND 19 12
22 P2.0/A8 P0.0/AD0 38 3 D0 Q0 18 11 A8 LSB C66
23 P2.1/A9 P0.1/AD1 37 4 D1 Q1 17 10 A7 13 100n
24 P2.2/A10 P0.2/AD2 36 5 D2 Q2 16 9 A6 VCC 2
25 P2.3/A11 P0.3/AD3 35 6 D3 Q3 15 8 A5 GND R1 U6B
26 P2.4/A12 P0.4/AD4 34 7 D4 Q4 14 7 A4 4 2k2 6 -
27 P2.5/A13 P0.5/AD5 33 8 D5 Q5 13 6 A3 I OUT 7
P2.6/A14 P0.6/AD6 D6 Q6 A2 V. Ref
28 32 9 12 5 R4 5 +
P2.7/A15 P0.7/AD7 11 D7 Q7 A1 MSB R16 2k2
10 1 1 LE 3 15 5K
11 P3.0/RXD P1.0/T2 2 OE VEE VREF- 14 TL082
12 P3.1/TXD P1.1/T2-EX 3 VREF+
13 P3.2/INT0 P1.2 4
14 P3.3/INT1 P1.3 5
15 P3.4/T0 P1.4/SS 6
16 P3.5/T1 P1.5/M OSI 7
17 P3.6/WR P1.6/M ISO 8
P3.7/RD P1.7/SCK
30 19 CRYSTAL VCC
29 ALE/PROG XTAL1 18 Y1 VCC
VCC PSEN XTAL2
31 C5
20 EA/VPP 9 33pF SW9
GND RST RESET
40 C6
VCC NA
R10 33pF R11
NF
1k 10k
C13 R3
10uF 22k D1
DIODE

C9
100n
R14 R15 R13 R12
10k 10k 10k 10k R2
10k Q1
Q2N6052

Figura 14: Esquema elétrico da interface microcontrolada.

38
CAPÍTULO 4 – IMPLEMENTAÇÃO DO SOFTWARE

O software foi desenvolvido primeiramente em linguagem ‘C’ e


posteriormente compilado para gerar o arquivo no formato “.hex” da Intel
para gravar o microcontrolador.
Síntese de funcionamento do software:
Ao inicializar o software, o microcontrolador é configurando e
preparado para que possa realizar todas as tarefas pretendidas. Como por
exemplo, são configurados os temporizadores/contadores que serão utilizados
nas rotinas de controle da escrita no display e como gerador de clock externo
para o A/D.
Após as rotinas de inicialização é escrita no display uma mensagem
ao usuário, solicitando que seja pressionada a tecla (ENTRA), para ligar a
fonte; quando pressionada esta tecla, o software deve mostrar uma mensagem
de inicialização da fonte no display; neste ponto fica esperando um ajuste de
tensão por parte do usuário; quando confirmado o ajuste através da tecla
(ENTRA), então, iniciam-se as rotinas de escrita no D/A e as rotinas de
leituras de tensão e corrente no A/D até que o usuário solicite um novo ajuste,
através do teclado.

39
4.1 Fluxograma:

O software é o responsável pelo funcionamento de todo o sistema,


controlando o teclado, display e conversores de sinal, O procedimento começa
com a inicialização do micocontrolador e display. À partir daí, faz o
interfaceamento com o usuário, através de mensagens de controle, no display,
que o usuário deverá obedecer. Uma vez feitos os devidos procedimentos, o
software deverá realizar, o ajuste de tensão de referência, as leituras de tensão
e corrente na saída da fonte e estar apto a aceitar novo ajuste por parte do
usuário ou o desligamento da fonte. Através do fluxograma da figura 15,
pretende-se elucidar a lógica de funcionamento do sistema, hardware e
software.

40
Fluxograma:

Início

Inicializa Microcontrolador
e display.

Mensagem de
inicialização

Lê teclado.
Tecla (ENTRA)
N
pressionada?
ão

Si
m

Mensagem no Display

Aguarda ajuste de tensão e


confirmação, através do teclado. N
Tecla (ENTRA) pressionada? ão

Tecla (DESLIGA)
Si pressionada? N
m ão

Si
m

Continua na próxima pagina.


Retorna ao inicio.

Figura 15: Fluxograma de funcionamento do software (início).

Continuação.

41
Escreve no display
e no D/A.

Lê A/D e escreve
no display

Lê teclado.
Tecla (ENTRA) N
pressionada? ão

Si
m

Aguarda ajuste de tensão e


confirmação, através do teclado. N
Tecla (ENTRA) pressionada? ão

Tecla (DESLIGA)
Si pressionada? N
m ão

Si
m

Retorna ao inicio.

Figura 15: Fluxograma de funcionamento do software(continuação).

42
CAPÍTULO 5 – TESTES E RESULTADOS

Neste capítulo serão apresentados os testes realizados com o circuito


implementado, os resultados obtidos e os cálculos realizados.
Uma vês montado o hardware e realizados os primeiros testes de
funcionamento, foram realizados os testes de conversão, analisando a
linearidade do circuitos, bem como o funcionamento correto do software,
tanto no interfaceamento com o usuário como nos cálculos e apresentação das
leituras no display.

Testes de software
Para os testes de software, primeiramente foram testadas todas as
funções associadas a cada uma das teclas, bem como, as leituras de tensões e
correntes através de amostras conhecidas.
O software funcionou corretamente, em todas as funções associadas
às teclas, as leituras de tensão e corrente também foram plenamente
satisfatórias.

Testes de conversão software e hardware


Os testes da interface foram feitos de forma a contemplar todas as
suas funções, primeiro foram realizados os testes da tensão de referência
fornecida pela interface, após, os testes de leitura de tensão e de corrente,
feitas pela interface.
Nos testes de tensão de referência, o circuito adequador de sinal de
saída foi ajustado para ter um ganho de –0,25, ou seja, quando ajustado na
interface uma tensão de 10 volts teremos na saída 2,5 volts.
Para o teste, foram ajustadas, na interface, tensões de referência, e
lidas em sua saída com um multímetro FLUKE, 867B. Os resultados pode ser
observados através da tabela da figura 16 e do gráfico da figura 17.

43
TENSÃO AJUSTADA EM VOLTS TENSÃO OBTIDA EM VOLTS
0 0,001
0,5 0,119
1 0,239
1,5 0,377
2 0,496
2,5 0,614
3 0,750
3,5 0,870
4 1,008
4,5 1,127
5 1,245
5,5 1,374
6 1,494
6,5 1,612
7 1,751
7,5 1,869
8 2,005
8,5 2,125
9 2,243
9,5 2,382
10 2,500
10,5 2,608
11 2,740
11,5 2,866
12 3,005
12,5 3,123
13 3,239
13,5 3,378
14 3,497
14,5 3,616
15 3,754
15,5 3,863
16 4,002
16,5 4,121
17 4,240
17,5 4,377
18 4,493
18,5 4,612
19 4,751
19,5 4,870
19,9 4,968

Figura 16: Tabela de tensões programadas e tensões lidas na saída da


interface.

44
TENSÃO AJUSTADA X TENSÃO
FORNECIDA

6,000
TENSÃO FORNECIDA EM (V)

5,000

4,000

3,000

2,000

1,000

-
0 5 10 15 20 25
TENSÃO AJUSTADA EM (V)

Figura 17: Gráfico: Tensão programada X Tensão lida

45
Para as leituras de tensão, foram utilizados, uma fonte ajustável da
Tektronix, CPS250 e um multímetro FLUKE, 867B. Foram ajustadas as
tensões na fonte e lidas com o multímetro e com a interface, os resultados
obtidos foram plenamente satisfatórios e podem ser observados na tabela da
figura 18 e no gráfico da figura 19.

Tensão lida pelo multimetro Tensão lida pela interface


em volts em volts
0,516 0,5
1,062 1
1,541 1,5
2,062 2
2,503 2,5
3,08 3
3,512 3,5
4,068 4
4,516 4,5
5,018 5
5,537 5,5
6,027 6
6,514 6,5
7,023 7
7,518 7,5
8,008 8
8,512 8,5
9,007 9
9,523 9,5
10,015 10
10,505 10,5
11,02 11
11,517 11,5
12,018 12
12,511 12,5
13,007 13
13,517 13,5
14,001 14
14,505 14,5
15,01 15
15,503 15,5
16,004 16

46
16,52 16,5
17,026 17
17,513 17,5
18,009 18
18,501 18,5
19,016 19
19,514 19,5
20,002 20

Figura 18: Tabela, Tensão lida pelo multímetro X Tensão lida pela interface.

Tensão Aplicada X Tensão Lida

25

20
Tensão Lida (V)

15

10

0
0 5 10 15 20 25
Tensão aplicada (V)

Figura 19: Gráfico: Tensão lida pelo multímetro X Tensão lida pela interface.

47
Para as leituras de corrente, foi utilizado, uma fonte ajustável da
Tektronix, CPS250, um multímetro FLUKE, 867B e um divisor resistivo, para
simular o resistor shunt da saída da fonte. Foram ajustadas as tensões na fonte
e lidas com o multímetro e com a interface a queda de tensão sobre o resistor,
conforme a figura 20. Os resultados obtidos foram plenamente satisfatórios e
podem ser observados na tabela da figura 21 e no gráfico da figura 22.

VCC_ARROW

R1
10K

Leitura de tensão

R2
1K

Leitura de tensão

R3
1K

Figura 20: Divisor resistivo para comparar a queda de tensão.

48
TENSÃO SOBRE O LEITURA DE
RESISTOR SHUNT CORRENTE
0,019 1
0,039 2
0,061 3
0,08 4
0,102 5
0,121 6
0,142 7
0,161 8
0,182 9
0,203 10
0,224 11
0,244 12
0,264 13
0,284 14
0,305 15
0,324 16
0,345 17
0,366 18
0,386 19
0,406 20
0,427 21
0,446 22
0,469 23
0,488 24
0,509 25
0,53 26
0,55 27
0,57 28
0,59 29
0,609 30

Figura 21: Tabela, Tensão lida pelo multímetro X Corrente mostrada pela
Interface.

49
GRAFICO TENSÃO DIFERENCIAL X CORRENTE

0,7

0,6
TENSÃO DIFERENCIAL

0,5

0,4

0,3

0,2

0,1

0
0 5 10 15 20 25 30 35
CORRENTE EM AMPERES

Figura 22: Gráfico: Tensão diferencial lida X Corrente amostrada

50
CAPÍTULO 6 - DISCUSSÃO E CONCLUSÕES

O desempenho da fonte é bom e garante-se uma excelente regulação


da alimentação dos circuitos.
Observou-se que os condicionadores de sinal obtiveram uma
linearidade plenamente satisfatória.
A precisão do circuito, que está dentro da faixa de tolerância para a
aplicação a que foi destinado.
O projeto desenvolvido cumpriu com os objetivos propostos, porém,
percebe-se a necessidade de testá-lo em condições reais de operação, e
aprimorar o software.
O desenvolvimento deste projeto foi de grande valia, pois possibilitou
um acréscimo nos conhecimentos obtidos até então.

51
BIBLIOGRAFIA

[1] SILVA, Vidal P. Aplicações Práticas do Microcontrolador 8051. São Paulo, SP.
Edgar Blücher. 1994.

[2] NATIONAL, Semiconductors. National Data Acquisition Databook. USA.


National Semiconductor. 1995.

[3] SCHILDT, Herbert. Linguagem “C”, Guia do Usuário. São Paulo, SP.
MC.Graw Hill. 1986

[4] PERTENCE, A. J. Amplificadores Operacionais e Filtros Ativos. 4ª ed. São


Paulo, SP. Mc Graw Hill. 1990.

[5] ATMEL, Corporation. 8 Bit Microcontroler with 8K Bytes Flash AT89S8252.


USA. Atmel Corporation. 2000.

[6] TOCCI, Ronald J., & WINDMER, Neal S. Digital Sistems Principles and
Aplications. 7ª ed. Columbus, Ohio, USA. Prentice-Hall. 1998.

[7] BOYLESTAD, Robert, & NASHELSKY, Louis. Dispositivos Eletrônicos e


Teoria de Circuitos. 5ª ed. Rio de Janeiro, RJ. Prentice-Hall. 1992.

[8] HORENSTEIN, Mark N. Microeletrônica Circuitos e Dispositivos.


Rio de Janeiro, RJ. Prentice-Hall. 1996.

[9] TEXAS, Instruments. Power Regulators Data Book. USA 1992.

[10] ALFACOM. Módulos Multi-Matrix Manual de Utilização. 1987.

[11] MELLO, Luiz F.P. Análise e Projeto de Fontes Chaveadas. São Paulo SP.
Érica. 1996.

52
Anexo 1

Software desenvolvido em linguagem C


/***************************************
DEFINIÇÕES E CABEÇALHOS UTILIZADOS
***************************************/
#include <reg52.h>
#define DADO P0
#define tensao P2
// Pinos de controle do teclado
#define coluna_a P3_0
#define coluna_b P3_1
// Pino de controle do relé de L/D
#define ligaled P3_6
#define ligafonte P3_7
// Pinos de controle do display
#define RS P1_1
#define E P1_2
// Pino de contole do latch para o D/A
#define LE P1_3
// Pinos de controle para o A/D
#define In_x P1_4
#define Start P1_5
#define OE P1_6
#define EOC P1_7

/***************************************
DECLARAÇÃO DAS FUNÇÕES UTILIZADAS
***************************************/
void delay (unsigned char);
void delay_s (void);
void disp (char *, unsigned char);
void inicio (void);
unsigned char teclado (void);
void preset_5 (void);
void preset_12 (void);
void AD (void);
unsigned char tecla=0;
char a=0, b=0, c=0, espera, posicao;

53
/***************************************
DECLARAÇÃO DAS VARIAVEIS GLOBAIS
***************************************/
code char linha1[]=" PARA LIGAR ";
code char linha2[]="PRESSIONE ENTRA";
code char linha3[]="AJUSTE A TENSAO ";
code char linha4[]=" DESEJADA ";
code char linha5[]=" 00,0 VOLTS ";
code char linha6[]="ENTRA P/ CONFIRM";
code char linha7[]="TENSAO V";
code char linha8[]="CORRENTE A";
code char linha9[]="PRESET 5,0 VOLT";
code char linha10[]="PRESET 13,8 VOLT";

void main (void)


{
char valor, algar, ajuste; // DECLARAÇÃO DAS VARIÁVEIS LOCAIS DO MAIN
unsigned int DA;
TMOD = 0x01;
T2MOD=0x02; //AJUSTE DO CONTADOR PARA GERAÇÃO DE
CLOCK EXTERNO
T2CON=0x00;
RCAP2H=0xFF;
RCAP2L=0xFB;
TR2=1;
EA = 0;
OE=0;
ligaled=1;
ligafonte=1;
inicio();
disp(linha1,0x80); //MENSAGENS NO DISPLAY
disp(linha2,0xC0);
while (tecla!='1') //AGUARDA TECLA "ENTRA"
{
teclado();
}
disp(linha3,0x80); //MENSAGEM DE INICIAL
disp(linha4,0xC0);
delay_s();
ligafonte=0; //ACIONAMENTO DE UM LED
ligaled=0; //ACIONAMENTO DE UM RELÉ

54
while(1) //LAÇO INFINITO
{
a=b=c=0; espera=0; ajuste=0; valor=0;
while (ajuste!=7)
{
disp(linha5,0x80); //MENSAGENS NO DISPLAY
disp(linha6,0xC0);
tecla=0;
posicao=0x83;
RS=0;
// POSICIONAMENTO DO DISPLAY
DADO = 0x0F; E=1; delay(5); E=0;
DADO=posicao; E=1; delay(5); E=0;
while (espera!=10)
{
tecla = 0;
teclado();// LEITURA DO TECLADO
algar=posicao;
switch (tecla)
{
case 'U': valor ++ ; break;
case 'D': valor -- ; break;
case 'R': posicao ++ ; break;
case 'L': posicao -- ; break;
case '1': espera =7 ; break;
case '2': preset_5() ; break;
case '3': preset_12() ; break;
case '4': return ;
}
switch (posicao)
{
case 0x83:
{ // POSICIONAMENTO DO DISPLAY
RS=0;
DADO=posicao; E=1; delay(5); E=0;
if (valor>=2)
{valor=0;}
if (valor<=(-1))
{valor=1;}
a=valor*100;
RS=1; DADO=(valor+48); E=1; delay(5); E=0;
RS=0; DADO=0x83; E=1; delay(5); E=0;
} break;

55
case 0x84:
{ // POSICIONAMENTO DO DISPLAY
RS=0;
DADO=posicao; E=1; delay(5); E=0;
if (valor<=(-1))
{valor=9;}
if (valor>=10)
{valor=0;}
b=valor*10;
// ESCRITA DO VALOR LIDO NO TECLADO
RS=1;
DADO=(valor+48); E=1; delay(5); E=0;
RS=0; DADO=0x84; E=1; delay(5); E=0;
} break;
case 0x86:
{ // POSICIONAMENTO DO DISPLAY
RS=0;
DADO=posicao; E=1; delay(5); E=0;
if (valor<=(-1))
{valor=9;}
if (valor>=10)
{valor=0;}
c=valor;
// ESCRITA DO VALOR LIDO NO TECLADO
RS=1;
DADO=(valor+48); E=1; delay(5); E=0;
RS=0; DADO=0x86; E=1; delay(5); E=0;
} break;
case 0x82:
{ // POSICIONAMENTO DO DISPLAY
posicao=0x86;
RS=0;
DADO=posicao; E=1; delay(5); E=0;
} break;
case 0x85:
{ POSICIONAMENTO DO DISPLAY
if (tecla == 'R') posicao=0x86;
if (tecla == 'L') posicao=0x84;
RS=0; DADO=posicao; E=1; delay(5); E=0;
} break;
case 0x87:
{ //POSICIONAMENTO DO DISPLAY
posicao=0x83;
RS=0;DADO=posicao; E=1; delay(5); E=0;
} break; }

56
if (algar!=posicao){valor=0;}
if (espera==7)
{
DA=255*(a+b+c); //CÁLCULO DA TENSÃO CORRESPONDENTE
DA = DA/200;
tensao=DA; //ESCRITA NO D/A
LE=1; delay(5); LE=0;
espera=0;
tensao=0;
tecla=0;
disp(linha7,0x80); //MENSAGENS NO DISPLAY
disp(linha8,0xC0);
while (tecla!='1')
{
teclado(); //AGUARDA TECLA "ENTRA"
AD(); //LEITURA NO D/A
}
espera=10;
ajuste=7;
}
}
}
}
}

/***************************************
INICIALIZAÇÃO DO DISPLAY
***************************************/
void inicio (void)
{
RS = 0;
DADO = 0x38; E=1; delay(5); E=0;
DADO = 0x38; E=1; delay(5); E=0;
DADO = 0x06; E=1; delay(5); E=0;
DADO = 0x0C; E=1; delay(5); E=0;
DADO = 0x01; E=1; delay(5); E=0;
}

57
/***************************************
ESCRITA DE STRINGS NO DISPLAY
***************************************/
void disp (char *txt, unsigned char pos)
{
unsigned char j;
RS = 0;
DADO = pos; E=1; delay(5); E=0;
RS = 1;
for (j=0; txt[j]; j++)
{
DADO = txt[j]; E=1; delay(5); E=0;
}
}

/***************************************
TEMPORIZADOR PROGRAMÁVEL (0-255ms)
***************************************/
void delay (unsigned char tempo)
{
unsigned char i;
for (i=0;i<tempo;i++)
{
TH0 = 0xFC;
TL0 = 0x66;
TR0=1;
while(!TF0);
TR0=0;
TF0=0;
}
}

58
/**************************************
Delay s
**************************************/

void delay_s (void)


{
char i;
TMOD=0x01;
TH0=0x00;
TL0=0x00;
for (i=0; i<30; i++)
{
TR0=1;
while(!TF0);
TF0=0;
}
}

/***************************************
LEITURA DO TECLADO
***************************************/
unsigned char teclado (void)
{ unsigned char aux=0;
coluna_b=1;
coluna_a=0;
delay(1);
aux=P3;
delay(90);
switch(aux)
{ case 0xFA: tecla='1'; delay(10); break;
case 0x7A: tecla='1'; delay(10); break;
case 0xBA: tecla='1'; delay(10); break;
case 0x3A: tecla='1'; delay(10); break;
case 0xF6: tecla='2'; delay(10); break;
case 0x76: tecla='2'; delay(10); break;
case 0xB6: tecla='2'; delay(10); break;
case 0x36: tecla='2'; delay(10); break;
case 0xEE: tecla='3'; delay(10); break;
case 0x6E: tecla='3'; delay(10); break;
case 0xAE: tecla='3'; delay(10); break;
case 0x2E: tecla='3'; delay(10); break;
case 0xDE: tecla='4'; delay(10); break;
case 0x4E: tecla='4'; delay(10); break;
case 0x9F: tecla='4'; delay(10); break;
case 0x1E: tecla='4'; delay(10); break;
}

59
coluna_a=1;
coluna_b=0;
aux=P3;
delay(90);
switch(aux)
{ case 0xF9: tecla='L'; delay(10); break;
case 0x79: tecla='L'; delay(10); break;
case 0xB9: tecla='L'; delay(10); break;
case 0x39: tecla='L'; delay(10); break;
case 0xF5: tecla='D'; delay(10); break;
case 0x75: tecla='D'; delay(10); break;
case 0xB5: tecla='D'; delay(10); break;
case 0x35: tecla='D'; delay(10); break;
case 0xED: tecla='U'; delay(10); break;
case 0x6D: tecla='U'; delay(10); break;
case 0xAD: tecla='U'; delay(10); break;
case 0x2D: tecla='U'; delay(10); break;
case 0xDD: tecla='R'; delay(10); break;
case 0x4D: tecla='R'; delay(10); break;
case 0x9D: tecla='R'; delay(10); break;
case 0x1D: tecla='R'; delay(10); break; }
coluna_b=1;
}

/*****************************************
Preset de 5 volts
*****************************************/
void preset_5 (void)
{
a=0; b=50; c=0;
posicao=0x8b;
RS=0;
DADO = 0x0C; E=1; delay(5); E=0; // DESLIGAR O CURSOR
DADO=posicao; E=1; delay(5); E=0;// POSICIONAMENTO DO DISPLAY
disp(linha9,0x80);
while (tecla!='1')
{
teclado();
}
espera=7;
}

60
/*****************************************
Preset de 12 volts
*****************************************/
void preset_12 (void)
{ a=100; b=30; c=8;
posicao=0x8b;
RS=0;
DADO = 0x0C; E=1; delay(5); E=0; // DESLIGAR O CURSOR
DADO=posicao; E=1; delay(5); E=0;// POSICIONAMENTO DO DISPLAY
disp(linha10,0x80);
while (tecla!='1')
{
teclado();
}
espera=7;}
/*******************************************
Rotina de leitura AD
*******************************************/
void AD (void)
{ unsigned char leitura=0, alg=0;
unsigned int val=0;
/* TENSÃO */
In_x=1;
Start =1; Start =0;
while(EOC); while(!EOC);
OE=1; leitura=tensao; OE=0;
// CÁLCULO E ESCRITA NO DISPLAY
val=((leitura*200)/255);
alg=(val/100)+48;
posicao=0x89;
RS=0; DADO = 0x0C; E=1; delay(5); E=0; // DESLIGAR O CURSOR
DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY
alg=((val%100)/10)+48;
posicao=0x8A;
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY
posicao=0x8B;
alg=',';
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY
alg=((val%100)%10)+48;
posicao=0x8C;
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY

61
/* CORRENTE */

tensao=0xff;
In_x=0;
Start = 1; Start = 0;
while(EOC); while(!EOC);
OE=1; leitura=tensao; OE=0;

// CÁLCULO E ESCRITA NO DISPLAY


val=(leitura*100)/85;
alg=(val/100)+48;
posicao=0xC9;
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY
alg=((val%100)/10)+48;
posicao=0xCA;
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY
posicao=0xCB;
alg=',';
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY
alg=((val%100)%10)+48;
posicao=0xCC;
RS=0; DADO=posicao; E=1; delay(5); E=0; // POSICIONAMENTO DO DISPLAY
RS=1; DADO=alg; E=1; delay(5); E=0; // ESCRITA DO VALOR NO DISPLAY */
}

62

Das könnte Ihnen auch gefallen