Upload
adriano-batista
View
4.537
Download
0
Embed Size (px)
Citation preview
___________________________________________________________________________
___________________________________________________________________________
Projeto e Implementação de
Protótipo de Aquisição de Dados
via USB de Baixo Custo
Adriano Batista da Conceição
Alex Anderson de Oliveira
1º Semestre/2010
___________________________________________________________________
Universidade Federal do Pará
Instituto de Tecnologia
Faculdade de Engenharia Elétrica
UFPA
II
UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE TECNOLOGIA
FACULDADE DE ENGENHARIA ELÉTRICA
ADRIANO BATISTA DA CONCEIÇÃO ALEX ANDERSON DE OLIVEIRA
PROJETO E IMPLEMENTAÇÃO DE PROTÓTIPO DE AQUISIÇÃO DE DADOS VIA USB DE BAIXO CUSTO
Belém – PA 2010
TRABALHO SUBMETIDO AO COLEGIADO DE
ENGENHARIA ELÉTRICA PARA OBTENÇÃO
DO GRAU DE ENGENHEIRO ELETRICISTA
III
PROJETO E IMPLEMENTAÇÃO DE PROTÓTIPO DE AQUISIÇÃO DE DADOS VIA USB DE BAIXO CUSTO
Em________de________________de 2010. Este trabalho foi julgado adequado para a
obtenção do grau de Engenheiro Eletricista, e aprovado na sua forma final pela banca
examinadora que atribuiu-lhe o conceito__________________________.
________________________________ Prof. Dr. Daniel C. de Souza
ORIENTADOR
________________________________ Prof. Dr. Guilherme A. L. Araújo
MEMBRO DA BANCA EXAMINADORA
_______________________________ Msc. Marcus Ciro M. Gomes
MEMBRO DA BANCA EXAMINADORA
______________________________ Prof. Msc. Ronaldo Nonato Silva Lima
COORDENADOR DO CURSO DE ENGENHARIA ELÉTRICA
IV
“Fazer tudo o mais simples possível, mas não simplificado.”
Albert Einstein
V
Agradecimentos Para aquelas pessoas que sempre estenderam a mão e acreditaram na certeza do
término vitorioso desta jornada: Rosivan, Gracy, Marilene, Alexandre, José, Alice e aos meus
tios. Obrigado pelo incentivo e força.
Adriano Batista
Para a realização dessa conquista, tive a ajuda de muitos, os quais sou grato por tudo,
começando pelo maior deles: Deus. Agradeço também aos meus familiares pelo apoio, em
especial minha mãe.
Aos meus companheiros de laboratório, aos meus professores que construíram a minha
formação, ao prof. Nick que não só abri as portas do laboratório do PET-EE para que eu
pudesse realizar esse trabalho como também me deu aquele suporte, dois lance companheiro!
E como esquecer os meus amigos Eliomar e Prof. Barreiros? Os caras que não só me
indicaram esse trabalho como deram aquelas dicas quando precisei, obrigado! E que a sua
jornada prof. Barreiros continue muito longa e saudável, tenha certeza que esse é o desejo de
todos.
Alex Oliveira.
Um agradecimento especial também ao nosso professor e orientador Daniel por
mostrar o caminho correto no desenvolvimento deste trabalho.
VI
Para maiores informações, ou receber o código fonte dos programas elaborados para
este trabalho, entre em contato:
Email:
VII
Sumário
LISTA DE ABREVIATURAS ............................................................................................... X
LISTA DE SÍMBOLOS ......................................................................................................XIII
LISTA DE FIGURAS .......................................................................................................... XIV
LISTA DE TABELAS ....................................................................................................... XVII
RESUMO ........................................................................................................................... XVIII
CAPÍTULO 1 – APRESENTAÇÃO ....................................................................................... 1
1.1 Descrição dos Capítulos ....................................................................................................... 1
CAPÍTULO 2 – APRESENTAÇÃO DA DAQUSB .............................................................. 3
2.1 Introdução ............................................................................................................................. 3
2.2 Especificações ...................................................................................................................... 3
2.3 Descrição das Conexões da DaqUSB ................................................................................... 4
2.3.1 Conexões de Entrada e Saída............................................................................................. 5
2.3.2 Conexões da Fonte e da Comunicação .............................................................................. 5
2.4 Modo de Uso da DaqUSB .................................................................................................... 6
2.4.1 Calibração do Canal de Saída ............................................................................................ 8
2.4.2 Calibração dos Canais de Entrada ..................................................................................... 9
CAPÍTULO 3 – COMUNICAÇÃO USB ............................................................................. 10
3.1 Introdução ........................................................................................................................... 10
3.2 O Sistema USB ................................................................................................................... 13
3.3 O PIC .................................................................................................................................. 18
3.3.1 Modos de Operação ......................................................................................................... 20
3.3.1.1 Modo Dispositivo de Interface Humana (HID) ............................................................ 20
3.3.1.2 Modo de Emulação RS-232 .......................................................................................... 20
3.3.1.3 Modo para Driver de Propósito Geral .......................................................................... 21
3.3.1.4 Modo para Dispositivo de Armazenamento de Massa ................................................. 22
3.3.2 Características USB Adicionais do PIC .......................................................................... 23
3.3.3 Taxas de Transferência Reais .......................................................................................... 24
3.3.4 Tipos de Osciladores ....................................................................................................... 25
3.3.5 Modos de alimentação do PIC via USB .......................................................................... 27
3.3.5.1 Dispositivo Alimentado pelo Barramento (BUS POWER ONLY) ............................... 28
3.3.5.2 Dispositivo Auto-Alimentado (SELF-POWER ONLY) ................................................ 28
3.3.5.3 Dispositivo Dual-Alimentado (DUAL POWER) .......................................................... 29
VIII
3.3.6 Lista de Descritores da Interface USB ............................................................................ 29
CAPÍTULO 4 – CONVERSORES E CIRCUITOS ANALÓGICOS ................................ 31
4.1 Introdução ........................................................................................................................... 31
4.2 Conversor Digital/Analógico .............................................................................................. 31
4.2.1 Primeira Etapa – Conversor D/A ..................................................................................... 32
4.2.1.1 Configuração do PWM ................................................................................................. 33
4.2.1.2 O Filtro Passa-Baixa ..................................................................................................... 34
4.2.1.2.1 Determinação das Características do Filtro Ativo Passa-Baixa de Butterworth ....... 35
4.2.1.2.3 Determinação do fator de qualidade Q ...................................................................... 38
4.2.1.2.4 Cálculo dos Resistores e Capacitores do Filtro ......................................................... 38
4.2.2 Segunda Etapa – Condicionamento do Sinal ................................................................... 41
4.2.2.1 Amplificador de Diferenças Simples Utilizando AmpOp ............................................ 41
4.2.2.2 Cálculo dos Resistores do Amplificador ...................................................................... 42
4.2.3 Terceira Etapa – Amplificador de Potência ..................................................................... 43
4.2.3.1 Estágio de Saída Classe B ............................................................................................ 44
4.2.3.2 Transistores Darlington ................................................................................................ 47
4.2.4 Circuito Completo do Conversor D/A ............................................................................. 47
4.3 Conversor Analógico/Digital .............................................................................................. 49
4.3.1 O Conversor A/D do PIC ................................................................................................ 49
4.3.2 Condicionamento do Sinal do Conversor A/D ................................................................ 51
4.3.3 Circuito Completo do Conversor A/D ............................................................................. 53
CAPÍTULO 5 – FONTE DE ALIMENTAÇÃO .................................................................. 55
5.1 Introdução ........................................................................................................................... 55
5.2 Proposta de Fonte de Alimentação cc ................................................................................ 55
5.2.1 Regulador de Tensão ....................................................................................................... 55
5.2.2 Transformador de Potência .............................................................................................. 56
5.2.3 Diodos Retificadores ....................................................................................................... 56
5.2.3.1 Tensão de pico inversa - PIV ........................................................................................ 57
5.2.4 Retificador com capacitor de filtro .................................................................................. 57
5.2.5 Corrente de pico do diodo ............................................................................................... 58
5.2.6 Circuito Completo da Fonte ............................................................................................ 59
CAPÍTULO 6 – IMPLEMENTAÇÃO DA PLACA DE CIRCUITO IMPRESSO .......... 60
6.1 Introdução ........................................................................................................................... 60
IX
6.2 Circuito Impresso da DaqUSB ........................................................................................... 60
6.3 – Implementação da Fonte .................................................................................................. 64
6.4 Custo das Placas ................................................................................................................. 66
6.5 Programação do PIC ........................................................................................................... 66
CAPÍTULO 7 – EXPERIMENTOS ...................................................................................... 68
7.1 Introdução ........................................................................................................................... 68
7.2 Experimento 1 – Avaliação de Desempenho da DaqUSB ................................................. 68
7.2.1 Resultados ........................................................................................................................ 72
7.2 Experimento 2 – Controlador PID Aplicado a um Sistema Térmico ................................. 75
7.2.1 – Sistema Térmico ........................................................................................................... 75
7.2.2 Projeto do Controlador Digital ........................................................................................ 76
7.2.3 Resultados ........................................................................................................................ 78
CAPÍTULO 8 – CONCLUSÕES .......................................................................................... 79
REFERÊNCIAS BIBLIOGRÁFICAS ................................................................................. 82
ANEXO A ................................................................................................................................ 84
A.1 – Descrição das Funções da Tabela A.1 ............................................................................ 85
ANEXO B ................................................................................................................................ 87
ANEXO C ................................................................................................................................ 89
X
Lista de Abreviaturas
A/D – Analógico/Digital
ACK – Acknowledgement – Pacote anterior recebido corretamente
ADC – Analog/Digital Converter – Conversor Analógico/Digital
AmpOp – Amplificador Operacional
API – Application Programming Interface – Interface de Programação de Aplicativos
APP – Application Software – Software de Aplicação ou “Aplicativo”
ca – Corrente Alternada
cc – Corrente Contínua
CCP – Capture/Compare/PWM – Módulo de Captura/Comparação/PWM
CD – Compact Disc – Disco Compacto
CDC – Communications Device Class – Classe de Dispositivos de Comunicação
CHOLD – Capacitor de Retenção
CI – Circuito Integrado
CMOS – Complementary Metal Oxide-Semiconductor – Metal Óxido-Semicondutor
Complementar
COM – Porta de Comunicação
CPU – Central Processing Unit – Unidade Central de Processamento
CRC – Cyclic Redundancy Check – Verificação de Redundância Cíclica
D/A – Digital/Analógico
DAC – Digital/Analog Converter – Conversor Digital/Analógico
DaqUSB – Dispositivo de Aquisição USB
DSL – Digital Subscriber Line – Linha de Assinante Digital
DTE – Data Terminal Equipment – Equipamento Terminal de Dados
DVD – Digital Video Disc – Disco de Vídeo Digital
EC – Clock Externo
ECIO – Clock Externo com Entrada/Saída
ECPIO – Clock Externo com PLL Habilitado e Entrada/Saída
ECPLL – Clock Externo com PLL Habilitado
FAT32 – File Allocation Table – Tabela de Alocação de Arquivos
– Frequência de Corte
FM – Frequency Modulation – Modulação em Frequência
Fosc – Frequência de Oscilação
XI
– Frequência do Sinal PWM
FSK – Frequency-Shift Keying – Modulação por Chaveamento de Frequência
HID – Human Interface Device – Dispositivo de Interface Humana
HS – Cristal / Ressonador de Alta Velocidade
HSPLL – Cristal / Ressonador de Alta Velocidade com PLL Habilitado
– Corrente de Carga
INF – Arquivo de Informação
INTCKO – Clock com Oscilador Interno
INTHS – Oscilador Interno do tipo Cristal / Ressonador de Alta Velocidade
INTIO – Oscilador Interno com Entrada/Saída
INTXT – Oscilador Interno do Tipo Cristal / Ressonador
ISDN – Integrated Services Digital Network – Rede Digital de Serviços Integrados
Leds – Light Emitting Diode – Diodo Emissor de Luz
NAK – Acknowledging Negatively – Pacote anterior recebido incorretamente
NPN – Transistor Bipolar Negativo-Positivo-Negativo
PET-EE – Programa de Educação Tutorial de Engenharia Elétrica
PI – Controlador Proporcional-Integral
PIC – Programmable Integrated Circuit – Circuito Integrado Programável
PID – Controlador Proporcional-Integral-Derivativo
PID – Packet Identifier – Identificador de Pacote
PID – Product ID – Identificação de Produto
PIV – Peak Inverse Voltage – Tensão de Pico Inversa
PLL – Phase-Locked Loop – Malha de Captura de Fase
PNP – Transistor Bipolar Positivo-Negativo-Positivo
PROM – Programmable Read-Only Memory – Memória Programável Apenas para Leitura
PWM – Pulse Width Modulation – Modulação por Largura de Pulso
Q – Fator de Qualidade
QAM – Quadrature Amplitude Modulation – Modulação de Amplitude em Quadratura
RAM – Random Access Memory – Memória de Acesso Aleatório
RS-232 – Recommended Standard 232 – Padrão de troca serial de dados binários
SOF – Start of Frame – Início de Quadro
STALL – All Set – Ativar Tudo
TACQ – Tempo de Aquisição
TAD – Tempo de Conversão Analógico/Digital
XII
TOSC – Período do Oscilador
USB – Universal Serial Bus – Barramento Universal Serial
VCO – Voltage Controlled Oscillator – Oscilador Controlado por Tensão
VI – Virtual Instrument – Instrumento Virtual
VID – Vendor ID – Identificação de Vendedor
Vr – Tensão de ripple
XT – Cristal / Ressonador
XTPLL – Cristal / Ressonador com PLL Habilitado
∆t – Intervalo de Tempo
– Período
- Eficiência
– Frequência Angular
– Frequência Angular de Corte
– Frequência Angular do Pólo
– Frequência Angular do Sinal
.HEX – Arquivo Hexadecimal
XIII
Lista de Símbolos
s – Segundo
ms – Mili segundo
µs – Microsegundo
ns – Nano segundo
Hz – Hertz
MHz – Mega Hertz
V – Volt
mV – Milivolt
Vrms – Root Mean Square Voltage – Tensão Eficaz
A – Ampére
mA – Miliampéres
Ω - Ohm
KΩ - kiloohms
uF – Microfarad
nF – Nanofarad
– Decibel
– Radianos por segundo
mm – Milímetro
°C – Grau Celsius
Bit – Binary Digit – Digito Binário
Byte – Valor equivalente a 8 bits
KB – Kilobytes
KB/s – Kilobytes por segundo
Kbps – Kilobits por segundo
Ksps – Kilo Samples per Second – Mil Amostras por Segundo
Mbps – Megabits por segundo – Um milhão de bits por segundo
XIV
Lista de Figuras
Figura 2. 1 - Vista em Perspectiva da DaqUSB ......................................................................... 5
Figura 2. 2 - Vista Frontal da DaqUSB ...................................................................................... 5
Figura 2. 3 - Vista Traseira da DaqUSB ..................................................................................... 6
Figura 2. 4 - Fluxograma da DaqUSB ........................................................................................ 7
Figura 2. 5 - Mudança de Escala de Tensão para Inteiro ........................................................... 8
Figura 3. 1 - Topologia USB .................................................................................................... 13
Figura 3. 2 - Esquema Elétrico USB ........................................................................................ 14
Figura 3. 3 - Conectores Padrões .............................................................................................. 15
Figura 3. 4 - Ramificação do Hub ............................................................................................ 16
Figura 3. 5 - Hub-raiz USB entrega quadros a cada 1 ms ........................................................ 16
Figura 3. 6 - Pinagem do PIC18F4550 de 40 pinos.................................................................. 19
Figura 3. 7 - Modo HID ............................................................................................................ 20
Figura 3. 8 - Modo de Emulação RS-232 ................................................................................. 21
Figura 3. 9 - Modo para Driver de Propósito Geral ................................................................. 22
Figura 3. 10 - Modo de Dispositivo de Armazenamento ......................................................... 22
Figura 3. 11 - Implementação dos ENDPOINTS ..................................................................... 23
Figura 3. 12 - Resistores de pull-up administrados por programação ...................................... 24
Figura 3. 13 – Taxa de Transferência por Tipo de Quadro ...................................................... 24
Figura 3. 14 - Módulo PLL ....................................................................................................... 25
Figura 3. 15 - Configuração do Módulo PLL ........................................................................... 27
Figura 3. 16 - Bus Power Only ................................................................................................. 28
Figura 3. 17 - Self-Power Only ................................................................................................. 28
Figura 3. 18 - Dual Power ........................................................................................................ 29
Figura 4. 1 - Sinal PWM ........................................................................................................... 32
Figura 4. 2 - Análise de Fourier de um sinal PWM .................................................................. 33
Figura 4. 3 - Filtro Passa-Baixa de Primeira Ordem ................................................................ 33
Figura 4. 4 - Comportamento de um Filtro Passa-Baixa .......................................................... 35
Figura 4. 5 - Circuito de Sallen-Key de Segunda Ordem ......................................................... 37
Figura 4. 6 - Filtro Passa-Baixa de Terceira Ordem ................................................................. 37
Figura 4. 7 - Circuito do Filtro Passa-Baixa de Terceira Ordem .............................................. 38
XV
Figura 4. 8 - Resposta de um Filtro Passa-Baixa de Terceira Ordem ...................................... 40
Figura 4. 9 - Mudança de Escala do Conversor D/A ................................................................ 41
Figura 4. 10 - Amplificador de Diferenças ............................................................................... 42
Figura 4. 11 - Primeiro Estágio de Amplificação ..................................................................... 42
Figura 4. 12 - Segundo Estágio de Amplificação ..................................................................... 43
Figura 4. 13 - Estágio de Saída Classe B .................................................................................. 44
Figura 4. 14 - Resposta de um Estágio de Saída Classe B ....................................................... 46
Figura 4. 15 - Darlington NPN ................................................................................................. 47
Figura 4. 16 - Composto PNP ................................................................................................... 47
Figura 4. 17 - Conversor D/A ................................................................................................... 48
Figura 4. 18 - Etapas de Conversão A/D .................................................................................. 50
Figura 4. 19 - Filtro do Conversor A/D .................................................................................... 51
Figura 4. 20 - Mudança de Escala do Conversor A/D .............................................................. 52
Figura 4. 21 - Somador Ponderado de Dois Estágios ............................................................... 53
Figura 4. 22 - Conversor A/D ................................................................................................... 54
Figura 5. 1 - Diagrama de Blocos de Fonte cc ......................................................................... 55
Figura 5. 2 - Retificador em Ponte ........................................................................................... 57
Figura 5. 3 - Circuito Completo da Fonte cc ............................................................................ 59
Figura 6. 1 - Diagrama Esquemático Completo da DaqUSB ................................................... 63
Figura 6. 2 - Diagrama do Circuito Impresso da DaqUSB ....................................................... 64
Figura 6. 3 - Diagrama Esquemático Completo da Fonte ........................................................ 65
Figura 6. 4 - Diagrama do Circuito Impresso da Fonte ............................................................ 66
Figura 7. 1 - Interface do Usuário do Experimento 1 ............................................................... 69
Figura 7. 2 - Tela de Lista de Dispositivos HID ....................................................................... 70
Figura 7. 3 - Diagrama de Blocos do Experimento 1 ............................................................... 71
Figura 7. 4 - Teste no USBTrace para o Experimento 1 .......................................................... 73
Figura 7. 5 - Taxa de Transmissão Recebida............................................................................ 73
Figura 7. 6 - Taxa de Transmissão Enviada ............................................................................. 74
Figura 7. 7 - Vista em Perspectiva do Sistema Térmico .......................................................... 75
Figura 7. 8 - Diagrama Esquemático do Sistema Térmico ....................................................... 76
Figura 7. 9 - Interface do Usuário do Experimento 2 ............................................................... 77
XVI
Figura 7. 10 - Interligação da DaqUSB com o Sistema Térmico ............................................. 78
Figura 8. 1 - PIC24FJ64GB002 ................................................................................................ 80
Figura 8. 2 - MCP4822 ............................................................................................................. 81
Figura B. 1 - Diagrama de Blocos do Controlador PID ........................................................... 87
XVII
Lista de Tabelas
Tabela 2. 1 - Especificações da DaqUSB ................................................................................... 4
Tabela 3. 1 - Versões USB ....................................................................................................... 12
Tabela 3. 2 - Modos de Clock do PIC18................................................................................... 26
Tabela 4. 1 - Valores de Capacitores do Filtro ......................................................................... 39
Tabela 4. 2 - Comparação dos Estágios de Saída ..................................................................... 43
Tabela 6. 1 - Lista de Componentes da DaqUSB ..................................................................... 61
Tabela 6. 2 – Lista de Componentes da Fonte .......................................................................... 65
Tabela 7. 1 - Taxas de Transmissão ......................................................................................... 74
Tabela A. 1 - Parâmetros de Entrada/Saída da DaqUSB .......................................................... 84
Tabela C. 1 - Pólos de Butterworth .......................................................................................... 89
XVIII
Resumo
Este trabalho tem como objetivo desenvolver uma placa de aquisição de dados com
comunicação USB, como uma proposta para uso nos laboratórios do curso de Engenharia
Elétrica. O protótipo de aquisição de dados desenvolvido possui várias funções, dois canais de
entrada analógica e um canal de saída analógica. A comunicação da placa com o
microcomputador é feita via porta Universal Serial Bus (USB), permitindo a conexão do
microcomputador com uma planta existente no laboratório. Foram desenvolvidas duas
aplicações no ambiente de programação Labview para demonstração da placa, com o
propósito de apresentar a sua capacidade e seu uso para controle de um processo real.
Todas as etapas de projeto são descritas neste trabalho, que incluem o emprego de
microcontrolador, amplificadores operacionais, filtros ativos, estágios de potência e o
processo de construção, entre outras.
Tanto os circuitos projetados quanto o processo de construção tiveram seu foco
voltado para obtenção de um dispositivo de baixo custo e fácil manutenção, onde o usuário
possa substituir quaisquer componentes sem necessitar refazer os cálculos do projeto.
1
Capítulo 1
Apresentação
Com os esforços em pesquisa cada vez mais voltados para o desenvolvimento de
aplicativos que operem em sistemas reais, a interface de aquisição de dados tem se tornado
cada vez mais necessária, importante e decisiva na elaboração de projetos [1], pois tanto em
projetos acadêmicos como industriais, a velocidade de aquisição limita o processamento,
sendo o acadêmico muitas vezes forçado a excluir a utilização do computador dos seus
projetos, reduzindo a interatividade e a versatilidade destes, ou até mesmo a projetar sistemas
lentos devido à baixa velocidade de aquisição.
Por outro lado, o tempo gasto nos projetos acadêmicos é empregado em boa parte na
elaboração da interface de aquisição de dados, pois adquirir placas de aquisição comerciais
ainda é inviável para a maioria dos estudantes. A utilização de padrões mais recentes de
comunicação também acaba implicando nesse tempo gasto, devido à necessidade de
adaptação a esses novos padrões, enquanto padrões de comunicação já há muito utilizados
têm se tornado cada vez mais obsoletos, tanto pela dificuldade de serem encontrados em
computadores mais recentes, quanto pela sua limitação de taxa de transferência. Sendo que
estas limitações foram superadas com o padrão de comunicação Universal Serial Bus (USB).
Com o foco voltado para a remoção desses entraves, este trabalho apresenta um
protótipo de aquisição de dados via USB com baixo custo de implementação, para uso no
ensino e pesquisa, permitindo que os alunos possam aprender na prática as técnicas de
construção de hardware e de software que envolvam a aquisição de dados e suas aplicações.
Portanto, serão apresentadas as etapas de projeto, implementação e aplicação de um
dispositivo de aquisição de dados em uma aplicação real. Utilizando um padrão de
comunicação que embora seja muito conhecido, ainda é pouco explorado por alunos e
professores nos laboratórios do curso de Engenharia Elétrica da UFPA, este trabalho busca
contribuir para o enriquecimento do conhecimento empregado no curso através do domínio da
tecnologia USB.
1.1 Descrição dos Capítulos
Após uma breve apresentação, cuja finalidade é propiciar uma melhor compreensão
dos motivos que levaram à elaboração deste trabalho e apresentar os objetivos do mesmo, os
capítulos posteriores estarão dispostos da seguinte forma:
2
Capítulo 2 – Apresentação da DaqUSB: Aborda as especificações, a descrição das
conexões do dispositivo e o seu funcionamento.
Capítulo 3 – Comunicação USB: Descreve o padrão USB de modo que se possa apresentar
as configurações estabelecidas para o dispositivo de comunicação de dados.
Capítulo 4 – Conversores e Circuitos Analógicos: Apresenta o projeto dos conversores
empregados no trabalho.
Capítulo 5 – Fonte de Alimentação: Apresenta o projeto da fonte de alimentação cc
simétrica utilizada pelo dispositivo.
Capítulo 6 – Implementação da Placa de Circuito Impresso: Detalha a metodologia
empregada para a construção do dispositivo, bem como a construção da fonte de alimentação.
Capítulo 7 – Experimentos: Realiza e descreve a aplicação de dois experimentos para
demonstração da capacidade do dispositivo e de seu uso para controle em malha fechada de
um processo real.
Capítulo 8 – Conclusões: Trata das considerações finais e das propostas de continuidade
deste trabalho.
3
Capítulo 2
Apresentação da DaqUSB
2.1 Introdução
Em processos que envolvem a aquisição de dados, existem alguns aspectos que são
fundamentais para definir o sistema de aquisição a ser utilizado [2]. Em geral a capacidade do
sistema deve abranger os diversos sinais provenientes dos mais variados sensores, e para tal, é
preciso conhecer as especificações e funcionamento do sistema de aquisição, tais como, taxa
de amostragem, nível de sinal, pré-processamento, capacidade de trabalhar com taxas de
aquisição simultâneas para cada tipo de entrada, tipos de entradas e saídas disponíveis, etc.
O sistema de aquisição deve ser de fácil utilização, a fim de reduzir o tempo de
aprendizado maximizando a produção. Isso pode ser obtido com um ambiente de
programação o mais flexível possível, isto é, o sistema de aquisição deverá operar
preferencialmente nas mais diversas plataformas de desenvolvimento, permitindo ao usuário a
livre escolha desta de acordo com sua maior afinidade. As dimensões e o modo de conexão
também são fatores importantes, pois implicam na portabilidade, fator este bastante desejado
atualmente, principalmente em aplicações em campo.
Dentro dessa visão, este capítulo tem a finalidade de apresentar a placa de aquisição de
dados denominada DaqUSB desenvolvida neste trabalho com uma proposta de englobar as
principais características aqui citadas.
2.2 Especificações
A tabela 2.1 apresenta as especificações da DaqUSB, juntamente com as
especificações de duas outras placas comerciais de desempenhos próximos. Ambas as placas
apresentadas possuem a mesma interface de comunicação para a transmissão de dados e são
muito utilizadas na indústria e, portanto são interessantes como referências para comparação
com o protótipo desenvolvido neste trabalho.
4
Especificação DaqUSB NI USB-6008 NI USB-6009
Código Aberto Sim Não Não E/S Digital Não Sim Sim
Temporizador 1 1 1 Resolução 16 bits 32 bits 32 bits
Freqüência 1,5 MHz 5 MHz 5 MHz Tempo Mínimo 666 ns 200 ns 200 ns Tempo Máximo 43,69 ms 858 s 858 s
Entrada Analógica 2 8 8 Faixa de Operação ±10 V ±10 V ±10 V
Resolução 10 bits 11 bits 13 bits Taxa de Amostragem 30 ksps 10 ksps 48ksps
Saída analógica 1 2 2 Faixa de Operação ±10 V 0-5 V 0-5 V
Resolução 10 bits 12 bits 12 bits Taxa de Atualização 1 ksps 0,15 ksps 0,15 ksps Corrente de Carga 3,33 A 5 mA 5 mA Compatibilidade Completa Limitada Limitada
Sistema Operacional Todos* Linux; Mac OS X;
Windows Linux; Mac OS X; Windows
Software Todos*
ANSI C/C++; LabVIEW; LabVIEW SignalExpress;
Measurement Studio; LabWindows/CVI
ANSI C/C++; LabVIEW; LabVIEW SignalExpress;
Measurement Studio; LabWindows/CVI
Driver – NI-DAQmx Base e
NI-DAQmx NI-DAQmx Base e
NI-DAQmx Dimensões
(CxLxA cm) 12x10x3,5 8,76x5,72x1,55 8,76x5,72x1,55
Custo R$ 56,40** R$ 741,06** R$ 1.108,17** Tabela 2. 1 - Especificações da DaqUSB
* Compatível com qualquer sistema operacional e software que tenha suporte direto ou
indireto a dispositivos USB HID.
** Cotação do dia 19/02/2010 para pessoa física.
2.3 Descrição das Conexões da DaqUSB
A figura 2.1 apresenta a DaqUSB em perspectiva. A placa foi desenvolvida para
ocupar o espaço de uma caixa comercial para circuitos, facilmente encontrada em lojas
especializadas. As conexões de sinais analógicos de entrada/saída localizam-se na parte
5
frontal do protótipo, enquanto as conexões da fonte e da comunicação com o computador
encontram-se na parte traseira da caixa.
Figura 2. 1 - Vista em Perspectiva da DaqUSB
2.3.1 Conexões de Entrada e Saída
Como já apresentado na Tabela 2.1, a DaqUSB possui dois canais de entrada
analógicos, canal 0 e canal 1,nas cores cinza e vermelha, respectivamente e um canal de saída
analógico, na cor branca. Conforme é exibido na figura 2.2, os canais possuem um conector
terra comum a todos, na cor preta. Os LED’s nas cores amarela e verde são para indicação
visual do estabelecimento da conexão da alimentação e do canal de comunicação,
respectivamente.
Figura 2. 2 - Vista Frontal da DaqUSB
2.3.2 Conexões da Fonte e da Comunicação
A DaqUSB é alimentada por uma fonte simétrica de no mínimo ±15V e no máximo de
±18V. A figura 2.3 apresenta o plug de conexão para a fonte de alimentação, o qual é o
padrão comum de fonte de alimentação de computador, sendo o pino 1 para conexão da linha
6
de +15V, o pino 2 para o terra da fonte e o pino 3 para a linha de -15V. Na mesma figura é
mostrada a conexão com o computador feita pela porta USB, através de conector USB do
Tipo A – fêmea, o qual utiliza um cabo do tipo A padrão.
Figura 2. 3 - Vista Traseira da DaqUSB
2.4 Modo de Uso da DaqUSB
A DaqUSB deve ser conectada tanto ao computador, através do cabo USB, quanto à
sua fonte de alimentação ligada à rede elétrica, para operar corretamente. Após estabelecida a
conexão com o computador, este reconhecerá automaticamente a DaqUSB, tornando-se
imediatamente habilitado para usá-la, sem a necessidade de instalação de driver por parte do
usuário. A desconexão da DaqUSB é feita sem a necessidade de comando de ejeção no
sistema operacional.
Depois que a DaqUSB é inicializada, ficará aguardando a chegada dos comandos pela
USB. Os dados são divididos em até 64 bytes de 8 bits cada, o 1° byte mais significativo é
denominado de Byte 0, este indica qual função deve ser executada, seguido pelos demais
bytes. Uma vez que os dados foram transferidos, a DaqUSB verifica qual função foi
requisitada e a executa de acordo com os parâmetros enviados, em seguida retornando pela
USB o resultado da função realizada, após isso ele fica aguardando o próximo comando,
conforme se pode verificar no fluxograma da figura 2.4.
7
Figura 2. 4 - Fluxograma da DaqUSB
Quanto ao formato dos dados, a DaqUSB transmite ou recebe os mesmos na
representação de números inteiros sem sinal (de 0 a 127 por byte), sendo os primeiros bytes de
configuração ou de informação, de acordo com o sentido da comunicação, isto é: bytes de
configuração do computador para a DaqUSB e bytes de informação da DaqUSB para o
computador. Os demais bytes são os de dados. Sendo que estes parâmetros de entrada e saída
de cada função implementada na DaqUSB possuem os bytes dispostos conforme mostrado no
anexo A, onde é exibida a lista de funções da DaqUSB, ao total são 13 funções, sendo elas:
• SetCanal: Seleciona o canal de entrada a ser aquisitado.
• LerADC: Realiza a leitura de um dos canais de entrada.
• Ler2ADC: Realiza a leitura dos 2 canais de entrada.
• LerADCnVezes: Realiza até 30 leituras de um dos canais de entrada.
• Ler2ADCnVezes: Realiza até 15 leituras dos 2 canais de entrada.
• LerADCnVezesUS: Realiza até 30 leituras de um dos canais de entrada, com um
intervalo entre cada leitura especificado em µs.
• LerADCnVezesMS: Realiza até 30 leituras de um dos canais de entrada, com um
intervalo entre cada leitura especificado em ms.
• EscreverDAC: Gera a tensão especificada no canal de saída.
• EscreverNVezes: Gera até 30 valores de tensões no canal de saída, com um intervalo
entre cada valor especificado em µs.
• LerEscrever: Gera a tensão especificada no canal de saída e realiza, após um intervalo
especificado em µs, a leitura de um dos canais de entrada.
8
• LerEscreverNVezes: Gera até 30 valores de tensões no canal de saída e realiza, com
um intervalo especificado em µs entre cada tensão gerada, a leitura de um dos canais
de entrada.
• Ler2Escrever: Gera a tensão especificada no canal de saída e realiza, após um
intervalo especificado em µs, a leitura dos 2 canais de entrada.
• Ler2EscreverNVezes: Gera até 15 valores de tensões no canal de saída e realiza, com
um intervalo especificado em µs entre cada tensão gerada, a leitura dos 2 canais de
entrada.
Os dados de leitura ou escrita de um canal são números inteiros de 0 a 1023, os quais
são diretamente proporcionais à tensão mínima e à tensão máxima de operação,
respectivamente, possibilitando a calibração do dispositivo.
2.4.1 Calibração do Canal de Saída
Para gerar uma tensão na saída é necessário realizar a conversão de tensão para
número inteiro, pois como já mencionado, a DaqUSB opera com números inteiros
correspondentes a tensões. Essa conversão é feita aplicando uma regra de mudança de escala
simples, como mostrado na figura 2.5, onde o número inteiro 0 corresponde à tensão mínima
(-10V) e o número inteiro 1023 corresponde à tensão máxima (+10V). A equação 2.1
corresponde à conversão de uma tensão para um número inteiro.
Figura 2. 5 - Mudança de Escala de Tensão para Inteiro
1023 · (Equação 2.1)
9
Todavia, para melhorar a precisão da tensão gerada no canal de saída, deve ser feita a
calibração do protótipo, através dos seguintes procedimentos:
1º. Utilizando uma função qualquer que gere uma tensão no canal de saída, deve-se enviar
o número inteiro 0 como valor de tensão para a DaqUSB.
2º. Realizar a leitura do canal de saída com o voltímetro de aferimento.
3º. Utilizando novamente uma função para gerar tensão, deve-se enviar o número inteiro
1023 como valor de tensão para a DaqUSB.
4º. Realizar a leitura do canal de saída com o voltímetro de aferimento.
5º. Aplicar a regra de mudança de escala com os valores de tensão obtidos.
2.4.2 Calibração dos Canais de Entrada
De igual modo, para realizar a leitura de tensão de um canal de entrada é necessário
realizar a conversão de número inteiro para tensão. Portanto, utilizando novamente a figura
2.5, pode-se determinar a equação 2.2 correspondente à conversão de número inteiro para
tensão.
20 · 10 (Equação 2.2)
Novamente, para melhorar a precisão da leitura de tensão em um canal de entrada,
deve ser feita a calibração deste canal, para tal pode-se proceder realizando um curto-circuito
entre o canal de saída e um dos canais de entrada, sendo que o canal de saída já deve estar
previamente calibrado. A partir daí deve-se realizar os seguintes passos:
1º. Utilizando uma função que gere tensão e leia a tensão na entrada em curto-circuito da
DaqUSB, deve-se diminuir a tensão aplicada até que a tensão lida seja o inteiro 0
correspondente.
2º. Anotar a tensão gerada para o correspondente 0 lido.
3º. De maneira análoga, deve-se elevar a tensão aplicada até que a tensão lida seja o
inteiro 1023 correspondente.
4º. Anotar a tensão gerada para o correspondente 1023 lido.
5º. Aplicar a regra de mudança de escala com os valores de tensão anotados.
10
Capítulo 3
Comunicação USB
3.1 Introdução
O padrão USB (Universal Serial Bus – Barramento Serial Universal) é um tipo de
conexão que entrou em desenvolvimento a partir do estudo de uma tecnologia chamada Plug
and Play (Ligar e Usar) [3], que utiliza um barramento com um tipo de conector que deve ser
comum a todos os aparelhos que a usarem. Essa tecnologia tem o objetivo de fazer com que o
computador reconheça e configure automaticamente qualquer dispositivo periférico instalado
no mesmo, facilitando a expansão segura de dispositivos sem a necessidade da instalação e
configuração manuais.
Antes do desenvolvimento da tecnologia USB, grande parte dos periféricos
necessitava de instalação manual [3], que era feita normalmente através de placas de expansão
específicas que necessitavam de um processo de instalação difícil e sujeito a erros para a
maioria dos usuários de computador. Esse processo normalmente consistia em desligar o
computador, abrir o gabinete, inserir cuidadosamente a placa do periférico em um Barramento
de Expansão da Motherboard (Placa Mãe), ligar o computador novamente e instalar o driver
(controlador software) da placa que foi instalada para que o sistema operacional a
reconhecesse e permitisse o seu funcionamento. Este processo também poderia gerar conflitos
de hardware ou de software com os outros dispositivos instalados no computador acarretando
grande perda de tempo para a solução do problema.
Para tratar desse problema, um consórcio liderado por sete empresas (Compaq, DEC,
IBM, Intel, Microsoft, NEC e Northem Telecom) reuniu-se em 1993 para buscar a melhor
maneira de anexar dispositivos periféricos E/S (Entrada/Saída) a um computador com a
proposta de substituir a infinidade de conectores (portas seriais, paralelas, saídas para teclado,
mouse, joystick, etc.) e placas de expansão diferentes empregados. Após várias versões, o
padrão evoluiu para a versão 1.1, passando a ser empregada em larga escala. Esse padrão
resultante foi lançado oficialmente em 1998, sendo denominado USB 1.1 e foi especificado
para ser um padrão industrial de extensão para a arquitetura dos computadores, focado
principalmente na CIT (Computer Telephony Integration – Integração entre Computadores e
Telefonia), nos consumidores e nas aplicações visando o aumento da produtividade.
Os objetivos das empresas que conceberam o USB original e iniciaram o projeto eram
os seguintes:
• Usuários não terão de configurar computadores, placas ou dispositivos.
11
• Usuários não terão de abrir o gabinete para instalar novos dispositivos E/S.
• Haverá apenas um tipo de cabo, que servirá para conectar todos os dispositivos.
• A energia para os dispositivos E/S deverá ser fornecida por esse cabo a uma distância
de até cinco metros, sem a necessidade de outro equipamento, caso este não disponha
de alimentação própria.
• Até 127 dispositivos poderão ser ligados a um único computador.
• O sistema deverá suportar dispositivos de tempo real (por exemplo: som, telefone).
• Flexibilidade de protocolo para transferências isossíncronas de dados e assíncronas de
mensagens.
• Os dispositivos poderão ser instalados com o computador em funcionamento.
• Não será preciso reiniciar o computador após a instalação do dispositivo.
• O custo de produção do novo barramento e de seus dispositivos de E/S não deverá ser
alto.
• Previsão de um padrão de interface capaz de espalhar-se rapidamente entre os novos
produtos.
• Possibilidade de criação de novas classes de dispositivos capazes de aumentar a
capacidade dos computadores pessoais.
Dados assíncronos são aqueles transferidos em intervalos irregulares de tempo, já os
dados isossíncronos, tem o seu sincronismo imposto pela sua taxa de distribuição.
Após a conclusão do padrão USB 1.1 em 1998, e visando a sua evolução, os projetistas
começaram a trabalhar em uma nova versão de alta velocidade do USB, denominada USB 2.0.
Esse padrão é semelhante ao antigo USB 1.1 e compatível com ele, exceto pela adição de uma
terceira velocidade, 480 Mbps, às duas velocidades existentes. Além disso, há algumas
pequenas diferenças, como a interface entre o hub-raiz e o controlador. O USB 1.1 tinha duas
interfaces disponíveis. A primeira, UHCI (Universal Host Controller Interface – Interface
universal de Controlador de Hospedeiro) foi projetada pela Intel e passava grande parte da
carga para os projetistas de software (leia-se Microsoft). A segunda, OHCI (Open Host
Controller Interface – Interface Aberta de Controlador de Hospedeiro) foi projetada pela
Microsoft e passava grande parte da carga para os projetistas de hardware (leia-se Intel). No
USB 2.0 todos concordaram com uma nova interface única denominada EHCI (Enhanced
Host Controller Interface – Interface Melhorada de Controlador Hospedeiro).
Agora que o USB funcionava a 480 Mbps, passou a competir com o barramento serial
IEEE 1394, mais conhecido como FireWire, que funciona a 400 Mbps. Embora praticamente
12
todo o novo sistema computacional venha com o USB 2.0, não é provável que o 1394
desapareça porque tem o apoio da indústria de eletrônicos de consumo. Filmadoras, aparelhos
de DVD e dispositivos similares continuarão a ser equipados com interfaces 1394 no futuro
próximo, porque os fabricantes desses aparelhos não querem arcar com os custos de mudar
para um padrão diferente que é pouco melhor que o disponível no momento.
A tabela 3.1 apresenta as versões USB existentes até a data do presente trabalho [4],
exibindo suas diferenças. A versão 3.0 é a mais recente (data de novembro de 2008) e pouco
divulgada ainda, denominada de super-speed. Atingindo velocidades de até 4 Gbps, a USB
3.0 é a mais nova proposta para uso na indústria.
Versão Desempenho Aplicações Atributos
USB 1.1
Baixa Velocidade
(Low-Speed) 10 – 100 Kbps
Teclado e mouse Periféricos para jogos
Periféricos para realidade virtual Configuração de
Monitores
Custo reduzido; Plug and Play;
Fácil utilização; Periféricos múltiplos.
Média Velocidade
(Full-Speed)
500 Kbps – 12 Mbps
Telefone, Áudio, vídeo compactado, ISDN, PBX,POTS
Custo Reduzido; Largura de banda
garantida; Fácil utilização;
Conexão e remoção dinâmicas;
Dispositivos múltiplos.
USB 2.0
Alta Velocidade (Hi-Speed)
12Mbps – 480 Mbps
HDTV, sistemas surround, Disco
Rírido Portátil, Placas de vídeo USB.
Compatibilidade com versões anteriores; Livre de Royalties;
Barramento independente.
USB 3.0
Super Velocidade
(Super-
Speed)
480 Mbps – 4 Gbps
Disco Rígido Portátil, HD webcam,
filmadoras HD, acionadores de Blue-
Ray
Cabeamento dobrado Capacidade de
transferência de dados em alta definição
Novo padrão de plug Tabela 3. 1 - Versões USB
Para este trabalho foi adotado o padrão USB 1.1, portanto este capítulo tratará de
descrever mais detalhadamente este padrão, a fim de que se possa melhor compreender as
configurações para comunicação da DaqUSB com o computador.
13
3.2 O Sistema USB
Um sistema USB consiste em um root hub (hub-raiz) que é ligado ao barramento
principal e permite a troca de dados entre um único computador, chamado de host, e um
grande número de periféricos acessados simultaneamente [3]. Esse hub tem soquetes para
cabos que podem ser conectados aos dispositivos de E/S, chamados nós (nodes), ou a
conexões de expansão, para fornecer mais soquetes, de modo que a topologia de um sistema
USB é uma árvore disposta em camadas chamadas Tiers, cujo centro está no hub, como
exemplificado na figura 3.1.
Figura 3. 1 - Topologia USB [3]
O host diferencia os dispositivos através de uma identificação específica, pertencente a
cada dispositivo e formada por palavras de 8 ou 16 bits, tais como:
• Versão da USB – 1.0 ou 2.0
• Código de classe
• Código de subclasse
• Código de protocolo
• Identificação de vendedor (VENDOR ID – VID)
• Identificação de produto (PRODUCT ID – PID)
• Número da versão ou revisão do dispositivo
• Identificação de fábrica (MANUFACTURE)
• Nome do produto
• Número de série
14
A interface física de um sistema USB é dotada de um cabo formado por quatro fios,
onde dois são para dados, um para energia (+5 volts) e um para terra [4], como exemplificado
na figura 3.2.
Figura 3. 2 - Esquema Elétrico USB
O padrão USB permite a utilização de segmentos de cabo de tamanhos variáveis até
alguns metros, escolhendo-se o padrão adequado de condutores. O sistema de sinalização
transmite um bit ‘0’ (zero) como uma transição de tensão e um bit ‘1’ (um) como a ausência
de uma transição de tensão, portanto longas carreiras de zeros geram uma corrente de pulsos
regulares.
Quando um novo dispositivo E/S é ligado, o hub-raiz detecta esse evento e interrompe
o sistema operacional, que então pesquisa para descobrir qual é o dispositivo e quanta largura
de banda USB ele precisa. Se o sistema operacional decidir que há largura de banda suficiente
para o dispositivo, designa um endereço exclusivo para ele (0 – 127) e descarrega esse
endereço e outras informações em registradores de configuração dentro do dispositivo. Desse
modo, novos dispositivos podem ser acrescentados com o computador em funcionamento,
sem exigir nenhuma configuração da parte do usuário. Placas não inicializadas começam com
endereço zero, por isso podem ser endereçadas. Para simplificar o cabeamento, muitos
dispositivos USB contêm conexões internas que aceitam dispositivos USB adicionais. Por
exemplo, um monitor poderia ter dois soquetes de conexão para acomodar alto-falantes
esquerdo e direito. Para a conexão de vários dispositivos ao padrão USB foram desenvolvidos
padrões de conectores [4] de tamanhos, capacidades de transmissão e combinações diferentes
como mostrado na figura 3.3.
15
Figura 3. 3 - Conectores Padrões
Por exemplo, em cabos de ligação de impressoras é normalmente encontrada a
interface USB utilizando conectores do Tipo A e do Tipo B nas suas extremidades. Outro
exemplo são os cabos de ligação utilizados por câmeras digitais e celulares, onde uma
extremidade é formada pelas interfaces do tipo Mini-A ou Mini-B, e a outra extremidade é
formada pela interface Tipo-A.
Em termos lógicos, o sistema USB pode ser visto como um conjunto de ramificações
que saem do hub-raiz para os dispositivos de E/S, como mostrado na figura 3.4. Cada
dispositivo pode subdividir sua própria ramificação em até dezesseis ramos secundários para
diferentes tipos de dados (por exemplo, áudio e vídeo). Dentro de cada ramo secundário os
dados fluem do hub-raiz até o dispositivo, ou ao contrário. Não há trafego entre dois
dispositivos de E/S.
16
Figura 3. 4 - Ramificação do Hub
Exatamente a cada 1,00 ± 0,05 ms, o hub-raiz transmite um novo quadro para manter
todos os dispositivos sincronizados em relação ao tempo [5]. Um quadro é associado a um
caminho de bit e consiste em pacotes, o primeiro dos quais vem do hub-raiz até o dispositivo.
Pacotes subseqüentes no quadro também podem ir nessa direção ou voltar do dispositivo até o
hub-raiz. A figura 3.5 mostra uma seqüência de quatro quadros.
Figura 3. 5 - Hub-raiz USB entrega quadros a cada 1 ms [3]
O protocolo USB é composto de quatro tipos de quadros [5] para transferência de
dados:
• Controle (Control): são quadros usados para configurar dispositivos, transmitir-
lhes comandos e inquirir seu estado, presente em todos os outros quadros.
17
• Isossíncrono (Isochronous): são quadros usados para dispositivos de tempo real,
como microfones, alto-falantes, e telefones que precisam enviar ou aceitar dados a
intervalos de tempo exatos, garantido a entrega dos dados, mas não a integridade
total destes.
• Volume (Bulk): permite que grandes quantidades de dados sejam transferidas com
segurança de integridade, porém sem garantia de tempo de entrega.
• Interrupção (Interrupt): são quadros que transportam uma quantidade limitada de
dados que em certos casos, podem ser apresentadas para transferência a uma taxa
que não ultrapasse o limite imposto pelo dispositivo.
Um quadro consiste em um ou mais pacotes, alguns possivelmente na mesma direção.
Existem quatro tipos de pacotes: permissão (token), dados, apresentação (handshake) e
especial. Pacotes de permissão vêm da raiz até um dispositivo e servem para controle do
sistema. Os pacotes SOF, IN e OUT na figura 3.5 são pacotes de permissão. O pacote SOF
(Start Of Frame – Início de Quadro) é o primeiro de cada quadro e marca o início deste. Se
não houver nenhum trabalho a realizar, o pacote SOF é o único no quadro. O pacote de
permissão IN é uma sondagem que pede ao dispositivo que retorne certos dados. Campos no
pacote IN informam qual caminho está sendo sondado de modo que o dispositivo saiba quais
dados retornar (se tiver múltiplas correntes). O pacote de permissão OUT anuncia ao
dispositivo que serão enviados dados a ele. Um quarto tipo de pacote de permissão, SETUP
(não mostrado na figura 3.5), é usado para configuração.
Além do pacote de permissão há três outros tipos de pacotes: DATA (usado para
transmitir os bytes de informação em qualquer direção), pacotes de apresentação e pacotes
especiais. O formato de um pacote de dados é mostrado na figura 3.5. Consiste em um campo
de sincronização de 8 bits, um pacote de tipo de 8 bits (PID), a carga útil e um CRC de 16 bits
(Cyclic Redundancy Check – verificação de redundância cíclica) para detectar erros. São
definidos três pacotes de apresentação: ACK (o pacote de dados anterior foi recebido
corretamente), NAK (foi detectado um erro CRC) e STALL (favor esperar – estou ocupado).
Examinando a figura 3.5 mais uma vez, a cada 1 ms um quadro deve ser enviado ao
hub-raiz, mesmo que não haja trabalho a realizar. Os quadros 0 e 2 consistem em apenas um
pacote SOF, indicando que não há trabalho a executar. O Quadro 1 é uma sondagem,
portanto, começa com pacotes SOF e IN do computador ao dispositivo de E/S, seguidos de
um pacote DATA do dispositivo para o computador. O pacote ACK informa ao dispositivo
18
que os dados foram recebidos corretamente. Caso ocorra um erro, um NAK é devolvido ao
dispositivo e o pacote é retransmitido quando o quadro for de volume, mas não quando os
dados forem isócronos. A estrutura do Quadro 3 da figura 3.5 é semelhante à do Quadro 1,
exceto que agora o fluxo de dados é do computador para o dispositivo.
Para a elaboração do projeto deste trabalho, optou-se por utilizar um dispositivo que
englobasse as características buscadas, ou seja, conversão A/D e D/A (Analógico – Digital e
Digital – Analógico) e comunicação USB em um mesmo dispositivo, diminuindo a
complexidade, o tamanho físico e principalmente os custos.
O dispositivo escolhido foi o microcontrolador PIC, pelo fato dele englobar os
requisitos necessários ao projeto além de outras características, como um processador interno,
pinos de E/S que podem ser controlados através de programação. A diferença entre os
diversos microcontroladores é ditada pela quantidade de memória interna (para o programa e
para os dados), velocidade de processamento, quantidade de portas de entrada/saída,
alimentação, periféricos, arquitetura e conjunto de instruções.
3.3 O PIC
O PIC é um circuito integrado produzido pela Microchip Technology Inc. [6], que
pertence à categoria dos microcontroladores, ou seja, um único dispositivo que contém todos
os recursos necessários para realizar um completo sistema digital programável. O PIC pode
ser visto externamente como um circuito integrado CMOS normal, porém internamente
dispõe de todos os dispositivos típicos de um sistema microprocessado, ou seja:
• Uma CPU (Central Processing Unit) com a finalidade de interpretar e executar as
instruções de programa;
• Uma memória não-volátil para armazenar as instruções do programa;
• Uma memória RAM para armazenar as variáveis utilizadas pelo programa;
• Uma série de linhas de Entrada/Saída (E/S) para controlar dispositivos externos ou
receber pulsos de sensores, chaves, etc.
• Uma série de dispositivos periféricos internos como gerador de relógio,
contadores, conversores A/D, etc.
A presença de todos estes dispositivos em um espaço extremamente pequeno dá ao
projetista ampla facilidade de trabalho, e enorme vantagem em usar um sistema
microcontrolado, onde em pouco tempo e com poucos componentes externos pode-se
19
construir um sistema completo e de baixo custo, que se tornaria oneroso se não fosse utilizado
o microcontrolador.
O PIC encontra-se disponível em uma ampla gama de modelos para melhor adaptar-se
às exigências de projetos específicos, começando pelos modelos pequenos identificados pela
sigla PIC12Fxx com 8 ou 14 pinos, até chegar a modelos maiores com sigla PIC24xxx,
dotados de 40 ou até 60 pinos.
Para uma descrição mais detalhada das famílias de PIC’s, seus modelos, configurações
de pinagem entre outros, recomenda-se consultar a Microchip (www.microchip.com).
O modelo de PIC escolhido para este trabalho foi o PIC18F4550, devido ao fato deste
possuir as características necessárias, tais como comunicação USB, e conversão digital-
analógica. Aliado a estes requisitos, leva-se em conta o fato de os laboratórios da FEE/UFPA
possuírem gravadoras para PIC’s de até 40 pinos, facilitando a construção do dispositivo e
facilitando também o processo de testes. A figura 3.6 mostra a pinagem do PIC18F4550.
Figura 3. 6 - Pinagem do PIC18F4550 de 40 pinos [7]
O PIC18F4550 é ideal para trabalhar em baixa potência (tecnologia nanoWatt),
apresenta os quatro tipos de quadro referentes à transferência de dados USB (Controle,
Interrupção, Volume e Isossíncrono), e apresenta também, aplicações de conectividade que se
beneficiam da disponibilidade de uma porta USB 2.0 nativa e quatro modos de operação:
Modo Dispositivo de Interface Humana (Human Interface Device - HID), Modo de Emulação
RS-232, Modo para Driver de Propósito Geral e Modo para Dispositivo de Armazenamento
de Massa.
20
3.3.1 Modos de Operação
3.3.1.1 Modo Dispositivo de Interface Humana (HID)
Neste modo utiliza-se um dispositivo computacional que interage diretamente com o
ser humano através de entrada e saída de dados. O termo HID é normalmente referido à
especificação USB (USB-HID).
A figura 3.7 exemplifica o funcionamento do modo USB-HID entre o microcontrolador PIC e um computador utilizando os drivers-padrão do Windows junto com a APP (aplicação de software) desenvolvida para ajudar o usuário em tarefas específicas.
Figura 3. 7 - Modo HID
Este modo apresenta as seguintes considerações de funcionamento:
• Transferência máxima de 64 KB/s
• Transferência do tipo interrupção
• Utiliza driver padrão do Windows
• Aplicação computacional customizada podendo acessar dados HID entre as APIs do Windows.
API (Interface de Programação de Aplicativos – Application Programming Interface) é um conjunto de rotinas e padrões estabelecidos por um software para a utilização das suas funcionalidades por programas aplicativos que não querem envolver-se em detalhes da implementação do software, mas apenas usar seus serviços. 3.3.1.2 Modo de Emulação RS-232
Este modo utiliza um emulador, ou seja, um software que reproduz as funções de um determinado ambiente, a fim de permitir a execução de outros programas sobre ele.
21
Figura 3. 8 - Modo de Emulação RS-232
A figura 3.8 exemplifica o funcionamento deste modo entre o microcontrolador PIC e
um computador. No computador, são utilizados os drivers-padrão do Windows junto com o
Hyper Terminal (programa que permite conectar o computador a outro dispositivo), sendo
necessário um arquivo do tipo INF (Arquivo de configuração – Setup Information) para a
instalação. A emulação RS-232 tem a função de realizar a troca serial de dados entre um
terminal de dados (Data Terminal Equipment – DTE) e um comunicador de dados (Data
Communication Equipment – DCE), comumente utilizado em portas seriais de computadores.
No PIC, o CDC (Classe de Dispositivos de Comunicação – Communications Device Class), é
quem ficará responsável por realizar a troca serial dos dados através da comunicação USB.
Este modo apresenta as seguintes considerações de funcionamento:
• Aproximadamente 80 KB/s de transferência máxima
• Possui ótimo desempenho quando usado pelo Windows XP, desempenho limitado no
Windows 2000 e não tem suporte para o Windows 98.
• Aplicações do computador podem acessar o dispositivo embora este esteja conectado a
uma porta serial do tipo COM.
3.3.1.3 Modo para Driver de Propósito Geral
Este modo requer o desenvolvimento e instalação de um driver específico para o
dispositivo que irá interagir com a API também específica desenvolvida para ele. Apesar da
complexidade do desenvolvimento deste modo, ele fornece uma grande flexibilidade, pois se
pode-se configurar o PIC para operar com quaisquer dos tipos de quadros disponíveis, com
velocidade de transmissão e quantidade de dados também configuráveis. A figura 3.9 mostra
um exemplo de um dispositivo com um driver de propósito geral, onde a APP projetada para
o usuário acessa as diretivas da API desenvolvida.
22
Figura 3. 9 - Modo para Driver de Propósito Geral
Este modo apresenta as seguintes considerações de funcionamento:
• 1088 KB/s de taxa máxima de transferência.
• Muito flexível.
• Não possui um driver padrão Windows.
• É necessário uma programação específica para o computador.
3.3.1.4 Modo para Dispositivo de Armazenamento de Massa
Neste modo, o PIC opera como um dispositivo de armazenamento (Pendrive, por
exemplo), sendo necessária a implementação de um sistema de arquivos compatível com o
sistema operacional, como o FAT32. A figura 3.10 exemplifica essa aplicação, onde as
diretivas do sistema operacional são utilizadas para executar a função de armazenamento de
dados.
Figura 3. 10 - Modo de Dispositivo de Armazenamento
Este modo apresenta as seguintes considerações de funcionamento:
• Faz o microcontrolador atuar como uma unidade de armazenamento.
• Rápida transferência de dados.
• A velocidade fica limitada a interface do dispositivo físico.
23
• Para utilização, um Sistema de Arquivos deve ser implementado.
3.3.2 Características USB Adicionais do PIC
Outras características que se levou em consideração na escolha deste PIC, como
mostrado na figura 3.11, foram:
• Possui 32 endpoints (buffers de transferência que auxiliam na comunicação entre o
host e o dispositivo) divididos em 16 endpoints para entrada (IN) e 16 endpoints para
saída (OUT), garantindo a flexibilidade de mudança do tipo de quadro no mesmo
pacote, e que podem ser implementados também no programa do PIC.
Figura 3. 11 - Implementação dos ENDPOINTS
• Possui internamente resistores de pull-up para identificação de modo de velocidade,
ou seja, alta velocidade (full-speed) ou baixa velocidade (low-speed) que podem ser
configuráveis através de programação, conectando-se ao regulador de tensão USB
interno o resistor correspondente ao modo de velocidade. Para o modo full-speed
conecta-se o resistor da linha D+, e para o modo low-speed conecta-se o resistor da
linha D-, como exemplificado na figura 3.12.
Figura 3. 12 - Resistores de
• Grandes quantidades de memória RAM,
Enhanced Flash tornam
acompanhamento, que requerem conexão contínua do computador (via USB
dados de upload/download
3.3.3 Taxas de Transferência Reais
Embora tenham sido apresentad
3.1), é importante salientar que as taxas
Portanto, para o caso do PIC18F4550
com o modo de velocidade, conforme mostrado na figura 3.13.
Figura 3. 13
0
200
400
600
800
1000
1200
1400
Controle
KB/s
Resistores de pull-up administrados por programação
quantidades de memória RAM, para buffer de memória de programa e
tornam este PIC ideal para aplicações de controle embarcado e de
que requerem conexão contínua do computador (via USB
download e/ou atualizações de firmware.
3.3.3 Taxas de Transferência Reais
Embora tenham sido apresentados os valores de desempenho do padrão USB (Tabela
3.1), é importante salientar que as taxas de transferência são limitadas pelo dispositivo.
para o caso do PIC18F4550, cada tipo de quadro possui sua taxa máxima de acordo
, conforme mostrado na figura 3.13.
13 – Taxa de Transferência por Tipo de Quadro
Controle Interrupção Volume Isossíncrono
24 0,8
832
64
1216
1023
24
administrados por programação
de memória de programa e do tipo
ideal para aplicações de controle embarcado e de
que requerem conexão contínua do computador (via USB) para
do padrão USB (Tabela
de transferência são limitadas pelo dispositivo.
cada tipo de quadro possui sua taxa máxima de acordo
por Tipo de Quadro
Low Speed
Full Speed
25
3.3.4 Tipos de Osciladores
Os dispositivos da família PIC18F trazem incorporados um oscilador e um sistema de
clock microcontrolado. Com a adição do módulo USB, para se ter um sistema de clock estável
é necessário haver outra fonte de clock separada para atender os requisitos de operação em
low-speed e full-speed, isto é, uma fonte de clock de 48 MHz. Para obter-se essa freqüência de
clock, é possível usar um módulo chamado PLL.
O PLL [8], ou Malha de Captura de Fase (Phase-Locked Loop) é um sistema de
realimentação, que foi proposto em sua primeira versão pelo cientista francês Henri de
Bellescizze em 1932, no qual um sinal de realimentação é usado para sincronizar a freqüência
instantânea do sinal de saída com a freqüência instantânea do sinal de entrada.
Como mostrado na figura 3.14, o PLL possui três principais componentes:
• Detector de Fase (PD – Phase Detector) – é um “misturador” de freqüências ou
multiplicador analógico, responsável por gerar um sinal de tensão que representa a
diferença em fase entre duas contribuições de sinal. São muito usados em aplicações
como controle de motor, radares, mecanismos de servo, demoduladores e sistemas de
telecomunicações.
• Oscilador Controlado por Tensão (VCO – Voltage Controlled Oscillator) – é um
oscilador eletrônico projetado para ter sua freqüência controlada por uma tensão de
entrada.
• Filtro Passa-baixa – é responsável por permitir a passagem de baixas freqüências,
atenuando a amplitude das freqüências maiores que as freqüências de corte.
Figura 3. 14 - Módulo PLL
O objetivo geral de uma malha de captura de fase é controlar a freqüência e a fase de
um oscilador inserido na malha de realimentação. Para isto, é utilizado um sinal de referência
26
que pode operar a uma freqüência submúltipla da frequência do oscilador. Quando houver
uma variação do sinal de entrada, o circuito gera um novo sinal de erro fazendo com que o
oscilador (VCO) procure corrigir sua freqüência de modo a obter um novo sincronismo.
O PLL é muito utilizado nos ramos de controle, telecomunicações e em outros campos
possuindo como principais aplicações:
• Gerador de sinais FM ou FSK
• Demodulação de sinais FM ou FSK
• Recuperação de portadora em PSK ou QAM
• Recuperação de relógio (sincronismo) em transmissões digitais
• Sintetizador de freqüência para geração de portadoras e sinais de sincronismo
A utilização do PLL traz as seguintes vantagens:
• Geração de uma réplica limpa e quase sem ruído, de um sinal misturado com ruídos,
interferências, tremores de fase e cortes de curta duração.
• Permite reconstituir ou recondicionar sinais deteriorados por ruído, ou ainda, separar
um determinado sinal do meio de outros.
A descrição do hardware do PIC18F4550 mostra que o mesmo pode ser operado em
doze modos distintos de oscilador, com ou sem o uso do módulo PLL. O usuário pode
programar a configuração de clock em um dos modos mostrados na tabela 3.2.
XT Cristal / Ressonador XTPLL Cristal / Ressonador com PLL habilitado
HS Cristal / Ressonador de alta velocidade
HSPLL Cristal / Ressonador de alta velocidade (> 4 MHz) com divisor de frequência PLL
habilitado EC Clock Externo com a freqüência do oscilador dividida por 4 (Fosc/4)
ECIO Clock Externo com Entrada/Saída (E/S) no pino RA6
ECPLL Clock Externo com PLL habilitado e freqüência de saída do oscilador dividida por 4
(Fosc/4) ECPIO Clock Externo com PLL habilitado e Entrada/Saída (E/S) no pino RA6
INTHS Oscilador Interno usado como fonte de clock para o PIC, Oscilador do tipo HS usado
como fonte de clock USB
INTXT Oscilador Interno usado como fonte de clock para o PIC, Oscilador do tipo XT usado
como fonte de clock USB.
INTIO Oscilador Interno usado como fonte de clock para o PIC, Oscilador do tipo EC usado
como fonte de clock USB, Entrada/Saída (E/S) digital no pino RA6
INTCKO Oscilador Interno usado como fonte de clock para o PIC, Oscilador do tipo EC usado como fonte de clock USB, freqüência de saída do oscilador dividida por 4 (Fosc/4)
Tabela 3. 2 - Modos de Clock do PIC18
27
Para que o funcionamento da porta USB se dê em modo full-speed [7] para o caso de
um cristal menor que 48 MHz, faz-se necessário configurá-la no PIC para que se obtenha 48
MHz de clock, a partir de um cristal ressonador ou um ressonador cerâmico múltiplo de 4
MHz, que poderão operar nos modos HSPLL e XTPLL respectivamente. Liga-se o cristal nos
pinos OSC1 e OSC2, para estabilizar a oscilação no oscilador primário.
Para atingir a freqüência requerida quando se utiliza um cristal menor que 48 MHz,
utiliza-se o modo PLL, ou seja, HSPLL ou XTPLL. Nestes modos, a freqüência do oscilador
é dividida por uma pré-escala (prescaler), pois o PLL somente aceita 4 MHz de entrada,
resultando em uma freqüência de 96 MHz na saída do circuito PLL, e em seguida esta
freqüência será dividida por 2 por uma pós-escala (postscaler) para gerar o sinal de clock de
48 MHz para a porta USB. A freqüência de saída do PLL também poderá ser utilizada pela
CPU uma vez que tenha passado por outro postscaler.
A figura 3.15 mostra as possibilidades de configuração do prescaler e postscaler, os
quais devem ser configurados de acordo com a freqüência do cristal de entrada e a freqüência
desejada para operação.
Figura 3. 15 - Configuração do Módulo PLL [7]
3.3.5 Modos de alimentação do PIC via USB
Dispositivos USB normalmente possuem vários requisitos de alimentação e
configuração. Os modos mais comuns encontrados são: Dispositivo Alimentado pelo
28
Barramento (Bus Power Only), Dispositivo Auto-Alimentado (Self-Power Only) e Dispositivo
Dual-Alimentado (Dual Power).
3.3.5.1 Dispositivo Alimentado pelo Barramento (BUS POWER ONLY)
Esta configuração dispensa a necessidade de fonte externa, pois o barramento USB
fornece toda a energia necessária. Entretanto, a porta USB fornece no máximo 500 mA, e a
USB.org recomenda que os dispositivos não ultrapassem os 100 mA para que o usuário possa
conectar mais de um dispositivo no computador (host). Afigura 3.16 mostra o esquema
elétrico deste tipo de ligação.
Figura 3. 16 - Bus Power Only [7]
3.3.5.2 Dispositivo Auto-Alimentado (SELF-POWER ONLY)
Esta configuração utiliza fonte externa, drenando desta forma pouquíssima energia do
barramento USB. Nesta configuração, pode-se utilizar um sensor de conexão, que indica ao
host quando a porta USB está conectada ao dispositivo, como mostrado na figura 3.17.
Figura 3. 17 - Self-Power Only [7]
29
3.3.5.3 Dispositivo Dual-Alimentado (DUAL POWER)
Esta configuração utiliza uma fonte externa, que entretanto só alimentará o dispositivo
quando o barramento USB não puder fornecer energia, como mostrado na figura 3.18. Pode-
se também utilizar um sensor de conexão.
Figura 3. 18 - Dual Power [7]
3.3.6 Lista de Descritores da Interface USB
Todos os modos e configurações da interface USB devem ser gravados no dispositivo
através de uma Lista de Descritores, de acordo com o desejado pelo projetista. Baseado no
que foi exposto neste capítulo, é possível criar essa lista, e para tal optou-se pelas seguintes
configurações e modos:
• Quanto ao tipo de transferência de dados, optou-se pelo tipo de quadro Interrupção
(Interrupt) configurado para a sua máxima transferência, isto é, máximo de 64 Bytes
em um tempo mínimo de 1 milissegundo, totalizando 64 KB/s.
• Quanto ao modo de dispositivo, optou-se pelo HID – Human Interface Device,
dispensando a instalação de driver por parte do usuário.
• Quanto à quantidade de endpoints, optou-se por somente um endpoint de entrada e
outro de saída, tendo em vista que não é realizada a mudança do tipo de quadro.
• Quanto ao modo de velocidade, utilizou-se o resistor de pull-up interno configurado
no modo full-speed.
• Quanto ao sistema de clock, utilizou-se um cristal ressonador de 20 MHz, desta forma
configurou-se o modo HSPLL com prescaler em 5 e postscaler em 2, tanto para o
dispositivo USB quanto para a CPU.
• Quanto ao modo de alimentação, optou-se pelo modo Bus Power Only, configurando-
se desta forma a corrente máxima do dispositivo em 100 mA.
30
• Quanto à identificação do dispositivo, essencialmente deve-se configurar VID, PID,
Manufacture e o nome do produto, aos quais foram atribuídos, respectivamente, os
valores 04D8, 000C, DAQ e DaqUSB. O restante configurou-se em nulo.
31
Capítulo 4
Conversores e Circuitos Analógicos
4.1 Introdução
No mundo real, os sinais naturais existentes são de origem analógica: som, luz,
velocidade dos ventos, movimento das marés entre outros. O desenvolvimento da ciência
permitiu que estes sinais pudessem ser medidos e convertidos em informação numérica, para
que posteriormente, pudessem ser interpretados e processados [2]. A utilização de meios
computacionais para o estudo de sinais analógicos tornou-se possível através do
desenvolvimento dos conversores de sinais, que neste caso, podem ser classificados como
Conversores Digital/Analógico (DAC – Digital/Analog Converter) e Conversores
Analógico/Digital (ADC – Analog/Digital Converter), os quais são utilizados na DaqUSB. O
entendimento do funcionamento destes dois tipos de conversores, bem como o seu projeto,
são os principais focos deste capítulo.
4.2 Conversor Digital/Analógico
O Conversor Digital/Analógico (conversor D/A) é utilizado quando um sinal digital,
formado por bits ou palavras binárias, é convertido em sinal analógico. Como exemplos dessa
conversão, tem-se:
• Ouvir um CD de música, onde o aparelho lê a informação digital armazenada no disco
e a converte em sinais sonoros emitidos pelos alto-falantes.
• Conversar ao telefone quando se está usando uma linha para transmissão de dados (do
tipo DSL ou ISDN), onde a central da operadora de telefonia converte os sinais
digitais representando a voz da outra pessoa que está na linha, para sinais analógicos
de som no fone.
Sendo o PIC um sistema digital, é necessário um meio para realizar a conversão de
sinais digitais em sinais analógicos, portanto tem-se uma aplicação típica de um conversor
D/A. O projeto de um conversor D/A parte da implementação de um sistema que atenda aos
requisitos de faixa de operação de tensão, tempo de resposta e potência fornecida. Dessa
forma, como apresentado nas especificações da DaqUSB no Capítulo 2, deve-se construir um
conversor D/A que opere na faixa de ±10V, com um tempo de resposta ≤1 ms para que este
não seja mais lento que o tempo de comunicação USB, e com correntes na ordem de ampères
para abranger uma ampla variedade de dispositivos.
32
A implementação da conversão D/A no caso da DaqUSB deu-se em 3 etapas as quais
realizam sucintamente:
• A conversão de um sinal digital em um sinal analógico com uma faixa de tensão da
ordem de 0V a 5V.
• O condicionamento do sinal para operar na faixa de ±10V
• O ganho de corrente do conversor D/A.
4.2.1 Primeira Etapa – Conversor D/A
O PIC18F4550 não possui um conversor D/A integrado, portanto optou-se por uma
solução alternativa sugerida pela Microchip (fabricante do microcontrolador), apresentada no
artigo AN538 [9], no qual é utilizado o módulo PWM presente no PIC para geração de sinais
analógicos dentro da faixa de 0V a 5V. Nesta solução, os módulos de largura de pulso
(PWM), que produzem uma saída digital, são usados como solução barata para
implementação de conversores D/A. Em um típico sinal PWM, a freqüência base é fixa,
porém a largura de pulso é variável e é diretamente proporcional à amplitude do sinal original
não modulado. Em outras palavras, em um sinal PWM, a freqüência da onda é constante,
enquanto o ciclo ativo é variável (de 0% a 100%) de acordo com a amplitude do sinal
original, que no caso do PIC18F4550 é 5V. Um sinal PWM típico é mostrado na figura 4.1.
Figura 4. 1 - Sinal PWM [9]
A análise de Fourier de um sinal PWM, como o mostrado na figura 4.2, mostra que
existe um forte pico de freqüência . Outros harmônicos fortes também existem em
, onde K é um inteiro. Eliminando-se essas componentes de ruído inerentes ao PWM, é
possível gerar um sinal analógico diretamente proporcional ao ciclo ativo do sinal PWM. Para
eliminar essas componentes de ruído, deve-se filtrar o sinal PWM com um filtro passa-baixa,
como mostrado na figura 4.3.
33
Figura 4. 2 - Análise de Fourier de um sinal PWM [9]
A frequência de corte do filtro deve ser menor ou igual à frequência do PWM ( ). Quanto mais rápida for a atenuação do filtro, mais a FC se aproxima da FPWM para
uma mesma magnitude de rejeição de ruído, diminuindo o tempo necessário para a conversão
D/A. Outra forma de diminuir o tempo de conversão é aumentar a FPWM.
Normalmente para este tipo de aplicação são implementados filtros RC simples, do
tipo passa-baixa de primeira ordem [9], como apresentado na figura 4.3. Entretanto, apesar da
facilidade de se projetar esse tipo de filtro, ele possui uma constante de tempo muito elevada
( 2 !") para uma conversão com pouco ruído, isto é, deve-se projetar uma FC muito
baixa a fim de atenuar satisfatoriamente o ruído. Por esse motivo, optou-se por implementar
um outro tipo de filtro, que possua uma constante de tempo menor com o mínimo de ruído,
como veremos adiante na seção 4.2.1.2.
Figura 4. 3 - Filtro Passa-Baixa de Primeira Ordem [9]
4.2.1.1 Configuração do PWM
O PIC 18F4550 possui dois módulos de Captura/Comparação/PWM (CCP) que podem
ser configurados para um destes modos de operação. O módulo CCP1, quando configurado
para o modo PWM, é capaz de fornecer uma resolução de 10 bits para o ciclo ativo do PWM.
Para cada modo de operação, o CCP utiliza um temporizador como base de tempo.
34
O módulo PWM tem sua freqüência ajustável através do temporizador, chamado
timer2. O princípio de funcionamento do timer2 é baseado num registrador–contador
chamado TMR2, que possui como fonte de clock a freqüência da CPU dividida por 4 e por
uma pré-escala definida pelo usuário. Quando a contagem atinge o valor armazenado no
registrador PR2, ela é reiniciada, sendo gerada uma sinalização de estouro de contagem.
Desta forma é necessário ajustar o valor da pré-escala do timer2 (TMR2) e armazenar o valor
de reinicialização do timer2 no registrador PR2.
Portanto, para configurar a freqüência do PWM no valor mais alto possível mantendo
uma resolução de 10 bits, com base nas equações 4.1, 4.2 e 4.3 fornecidas pela folha de dados
do PIC, deve-se ajustar TMR2 mínimo com um PR2 máximo com o período de clock da CPU
(TOSC) mínimo.
#$% (Equação 4.1)
& '()!2* + 1, · 4 · &./0 · &1!2 (Equação 4.2)
)21345678çã6(á<* =>?@ ABCDA#$%E=>?(* (GHI* (Equação 4.3)
Em suma, com os valores de PR2 = 255 e TMR2 = 1 obtêm-se as equações 4.4 e 4.5.
#$% 46.875 OP (Equação 4.4)
)21345678çã6 10 GHI (Equação 4.5)
Com essa resolução pode-se gerar valores de 0 a 1023 para o ciclo ativo do PWM.
Como a faixa de tensão vai de -10V a +10V, tem-se portanto uma resolução do conversor
D/A de 19,53 mV, conforme a equação 4.6.
Q 19,53T (Equação 4.6)
4.2.1.2 O Filtro Passa-Baixa
Baseado na freqüência de 1 kHz estipulada para o conversor D/A, deve-se projetar um
filtro passa-baixa com uma freqüência de corte (U) um pouco maior que a freqüência
35
estipulada e sem ruído, ou seja, com uma atenuação rápida e com uma banda de rejeição sem
ondulações, possibilitando uma conversão D/A em um tempo inferior ao tempo da
comunicação USB.
Quando se trata do projeto de filtros reais os grandes problemas encontrados são a
distorção, a oscilação e o defasamento do sinal [10]. Nesta aplicação o defasamento não é um
fator crítico, já a distorção e a oscilação não podem ser desconsideradas. Para evitar-se a
distorção e a oscilação, existem diversas técnicas de projeto de filtros, entre as quais
destacam-se os Filtros de Butterworth [11] por serem os únicos filtros que mantêm as mesmas
características para ordens mais elevadas, porém com uma inclinação mais acentuada na
banda atenuada.
4.2.1.2.1 Determinação das Características do Filtro Ativo Passa-Baixa de
Butterworth
Para implementar o filtro ativo de Butterworth é necessário determinar a sua ordem e a
sua freqüência de corte V , o que pode ser feito pela análise do comportamento do filtro
passa-baixa a ser construído.
O comportamento de um filtro passa-baixa é mostrado na figura 4.4, o qual apresenta
uma atenuação (α) elevada na banda de rejeição e uma atenuação baixa na banda passante.
Figura 4. 4 - Comportamento de um Filtro Passa-Baixa [11]
A equação 4.7 relaciona α com as freqüências (V e V ) e a ordem do filtro (n).
Através da equação 4.7 e pela análise da figura 4.4, pode-se chegar às equações 4.8 e 4.9, as
quais relacionam a freqüência de corte com a ordem do filtro. Dividindo-se a equação 4.8 pela
equação 4.9 e resolvendo em função de W, resultará na equação 4.10, a qual relaciona a ordem
36
do filtro com os seus parâmetros de atenuação e freqüências V5 e VX. Nota-se agora na
equação 4.10 que quanto mais a freqüência do pólo do filtro V se aproxima da freqüência do
sinal V/, maior será a ordem do filtro.
Y 10Z[\ ]1 + ^^_` ab (Equação 4.7)
V ^c
d efghi_ jkilh mna/I (Equação 4.8)
V ^p
@ efqri_ jEilh mna/I (Equação 4.9)
W 76std efghi_ jk/@ efqri_ jEu76s@vcvpE
ab (Equação 4.10)
Para que o sinal seja considerado “sem ruído”, é necessário que este ruído seja menor
do que a resolução do conversor, pois qualquer valor dentro da escala de resolução do
conversor é válido. Portanto, arbitrando um ruído inferior a 5 mV, o qual é menor que os
19,53 mV da resolução do PWM, o sinal pode ser considerado sem ruído.
Para simplificação dos cálculos, foi estimado o valor do ruído em dB através da
relação entre tensões 20Z[\ ww_ 20Z[\ x. yz 72.04 ab, onde se tem a escolha
dos seguintes valores para atender essa especificação:
Y|< 0,5ab Y 80ab
Convertendo a freqüência de corte de 1 kHz e a freqüência do PWM para rad/s, tem-se
respectivamente:
VX 2 . 1000 ~|5 V5 2 . 46875 ~|
5
37
Aplicando as especificações na equação 4.10 obtém-se n = 2,66723. Arredondando-se
para n=3 e em seguida aplicando os parâmetros na equação 4.8, obtém-se a freqüência de
corte ω0 = 13670,6 rad/s.
4.2.1.2.2 Implementação do Filtro Ativo de Butterworth – Circuito de Sallen-
Key
O circuito da figura 4.5 pertence a uma classe de circuitos que foram descritos em
1955 por Sallen e Key [11]. Trata-se de um circuito não-inversor de ganho unitário, cuja
principal característica é de ser a implementação de um filtro passa-baixa de segunda ordem
com fator de qualidade Q configurável. Portanto pode ser utilizado para implementar um filtro
de Butterworth. Os valores dos resistores e capacitores estão normalizados, dessa forma
C1=2Q e C2=1/(2Q).
Figura 4. 5 - Circuito de Sallen-Key de Segunda Ordem
Para se construir um filtro passa-baixa de terceira ordem, basta conectar em cascata
um filtro de primeira ordem com um filtro de segunda ordem, conforme a figura 4.6,
formando um filtro de dois estágios. Para tal deve-se encontrar o fator de qualidade Q
correspondente ao filtro passa-baixa de Butterworth.
Figura 4. 6 - Filtro Passa-Baixa de Terceira Ordem
38
4.2.1.2.3 Determinação do fator de qualidade Q
O filtro de Butterworth pode ser expresso em função do seu fator de qualidade, o qual
é determinado conhecendo-se a localização dos pólos do filtro. As localizações dos pólos são
conforme a equação 4.11 e o fator de qualidade Q é encontrado pela equação 4.12:
, [I IW (Equação 4.11)
65 (Equação 4.12)
Verificando na tabela de localização dos pólos para uma resposta de Butterworth, no
anexo C, para um n = 3, tem-se os seguintes pólos: -0,5; ±j0,866254 e -1.
Utilizando as equações 4.11 e 4.12, obtêm-se os dois fatores de qualidade Q
correspondentes: Q1=0,5 e Q2=1.
4.2.1.2.4 Cálculo dos Resistores e Capacitores do Filtro
O filtro passa-baixa de terceira ordem, implementado de acordo com as especificações,
é mostrado na figura 4.7. Normalizando a freqüência ω0=13670,6 rad/s encontrada na seção
4.2.1.2.1, tem-se 13670,6 e arbitrando todos os resistores iguais a 8,2 kΩ, tem-se um
8200.
Figura 4. 7 - Circuito do Filtro Passa-Baixa de Terceira Ordem
39
Os valores dos capacitores podem ser determinados pela equação 4.13 de
normalização.
"66 f "|s6 , (Equação 4.13)
onde
f 8,92069 . 10j
A tabela 4.1 mostra os valores dos capacitores calculados, para cada estágio.
Cantigo
Cnovo
Estágio 1 Estágio 2 Q = 0,5 Q = 1
1 8,92 nF _ 2Q _ 17,84 nF
1/2Q _ 4,46 nF Tabela 4. 1 - Valores de Capacitores do Filtro
Aproximando para valores comerciais, têm-se C1 = 18 nF, C2 = 4,7 nF e C3 = 10 nF. O
circuito da figura 4.7 foi simulado no PSpice [12], tendo como sinal de entrada um PWM com
a mesma freqüência estabelecida no projeto e ciclo ativo de 50%. O resultado é mostrado na
figura 4.8. Para se eliminar o sobre-sinal, um ajuste foi realizado no capacitor C2, o qual foi
estabelecido em C2 = 10 nF.
40
Time
0s
0.2ms
0.4ms
0.6ms
0.8ms
1.0ms
1.2ms
1.4ms
1.6ms
1.8ms
2.0ms
2.2ms
2.4ms
2.6ms
2.8ms
3.0ms
3.2ms
3.4ms
3.6ms
3.8ms
4.0ms
V(U9:OUT,0)
-1.0V
0V
1.0V
2.0V
3.0V
Fig
ura
4. 8
- R
esp
osta
de
um
Filt
ro P
assa
-Ba
ixa
de T
erc
eira
Ord
em
41
4.2.2 Segunda Etapa – Condicionamento do Sinal
Uma vez implementado o conversor D/A a partir do sinal PWM filtrado, é necessário
amplificar o sinal para que este opere na faixa de ±10V, pois como já discutido o uso do sinal
PWM filtrado gera tensões na faixa de 0V a 5V. Usando uma regra simples de mudança de
escala pode-se determinar a equação 4.14 do amplificador a ser construído, conforme
mostrado na figura 4.9.
Figura 4. 9 - Mudança de Escala do Conversor D/A
5 . + 1020
. 4 10
. 4( 2,5* (Equação 4.14)
Utilizando uma porta de saída do PIC para fornecer 5V, bastará implementar um
amplificador de diferenças simples de dois estágios, utilizando Amplificadores Operacionais
(AmpOp), para realizar a equação 4.14. No primeiro estágio do AmpOp obtém-se a tensão de
2,5V a partir dos 5V da porta do PIC. Isto é feito com o propósito de que o último estágio de
amplificação tenha o maior ganho possível, o que será útil para a etapa de ganho de corrente,
como será apresentado na seção 4.2.3.1.
4.2.2.1 Amplificador de Diferenças Simples Utilizando AmpOp
Um amplificador de diferenças [13] relaciona dois sinais aplicados às suas entradas de
modo que a sua saída seja a diferença destes, ou seja, idealmente este amplificador rejeita
sinais que são comuns às duas entradas. O diagrama esquemático de um amplificador de
diferenças é mostrado na figura 4.10. Satisfazendo a condição de casamento de impedância
(equação 4.15), pode-se deduzir a equação 4.16 do amplificador de diferenças.
42
Figura 4. 10 - Amplificador de Diferenças
! ! e !Q ! (Equação 4.15)
. 3l3i ( * (Equação 4.16)
4.2.2.2 Cálculo dos Resistores do Amplificador
No primeiro estágio do AmpOp deve-se obter a tensão de 2,5 V a partir dos 5 V
fornecidos pela porta do PIC. De maneira simples, basta conectá-la na entrada positiva do
AmpOp e aterrar a entrada negativa, e com um ganho de 0,5 obtém-se os 2,5 V na saída do
primeiro estágio. Dessa forma arbitrando R 10 Ω, pela equação 4.16 obtém-se ! 20Ω para satisfazer a condição, desde que ! ! e !Q !. A figura 4.11 mostra o
diagrama esquemático desse primeiro estágio de amplificação.
Figura 4. 11 - Primeiro Estágio de Amplificação
43
De maneira análoga, para implementar-se a equação 4.14 deve-se projetar um
amplificador de diferenças de ganho 4, com a entrada negativa conectada à saída do primeiro
estágio e a entrada positiva conectada ao sinal do PWM filtrado. Isto implica na escolha de
! 10Ω para um ! arbitrado em 40 kΩ e conseqüentemente ! ! e !Q !. O
diagrama esquemático do segundo estágio é mostrado na figura 4.12.
Figura 4. 12 - Segundo Estágio de Amplificação
4.2.3 Terceira Etapa – Amplificador de Potência
Um conversor D/A idealmente deve ser capaz de gerar um sinal sem distorção,
independente da carga, ou seja, a saída do amplificador associado ao conversor D/A deve
realizar o acoplamento com uma resistência de saída baixa. Todavia, os amplificadores
projetados são válidos para sinais de baixas potências. Em altas potências ocorrerá a distorção
do sinal de saída. Para contornar este problema, pode-se utilizar o artifício de inserir um
estágio de potência na saída do amplificador. Entretanto, o maior desafio nos projetos de
estágios de saída de potência é fornecer a quantidade de potência para a carga de modo
eficiente, ou seja, reduzir o máximo possível a potência dissipada no próprio estágio de saída
[13].
Existem várias configurações de estágios de saída [13], entre elas os estágios classe A,
classe B e classe AB, cada qual com sua vantagem e desvantagem em relação aos outros,
como mostrado na tabela 4.2.
Estágios de saída Classe A Classe B Classe AB Rendimento Baixo Alto Alto
Distorção do Sinal Baixo Alto Baixo
Complexidade Baixo Baixo Alto
Tabela 4. 2 - Comparação dos Estágios de Saída
44
Embora o estágio classe A não tenha distorção do sinal, o seu rendimento deixa a
desejar (máximo de 25%), isto é, a razão entre a potência utilizada e a potência da fonte.
Além disso, a dissipação de potência é máxima para uma saída 0, situação esta que
ocorre freqüentemente. Em contrapartida, o projeto de um amplificador classe AB é muito
complexo devido à necessidade de projetar uma fonte de corrente para polarização do
circuito. Seria suficiente para este projeto contornar o problema da distorção do sinal do
estágio de saída sem deixá-lo complexo.
4.2.3.1 Estágio de Saída Classe B
A figura 4.13 mostra um estágio de saída classe B, o qual é formado por um par
complementar de transistores, ou seja, um NPN e outro PNP, conectados de tal maneira que
não haja condução simultânea.
Figura 4. 13 - Estágio de Saída Classe B
Para se evitar a saturação dos transistores, e portanto a distorção não-linear associada,
e permitir a inclusão de proteção contra curto-circuito, recomenda-se um Vcc no mínimo 5V
acima da tensão máxima da saída. Para o caso da DaqUSB, isso implica em valores de Vcc a
partir de 15V. Entretanto, quanto maior for o Vcc menor será o rendimento, fazendo com que
15 seja a melhor escolha. Nesse caso, pela equação 4.17 determina-se o rendimento
máximo de 52,36%, isto é, para a tensão de saída 10 ocorre o máximo rendimento.
45
_Q (Equação 4.17)
O estágio de saída classe B apresenta distorção de sinal nas proximidades de 0V,
quando os dois transistores estão em corte. Esta zona morta resulta na distorção de
cruzamento (crossover) de ±0,7V, que pode ser reduzida substancialmente pelo uso de um
AmpOp de alto ganho e realimentação negativa global [13] (realimentação conectada à saída),
passando a ser de ,w_ , onde é o ganho do amplificador.
Portanto, conectando o último estágio do amplificador do conversor D/A, pode-se
reduzir a distorção de crossover para ,Q 175T.
A resposta de um estágio de saída classe B é mostrada na figura 4.14, a qual foi
simulada no PSpice para uma entrada senoidal de 1kHz com 10V de pico. Em azul é exibida a
resposta do estágio classe B com realimentação negativa de ganho 4, e em vermelho é exibida
a resposta do classe B sem o amplificador de realimentação negativa. Fica evidente uma
queda de tensão no estágio classe B sem o amplificador, o que não ocorre ao utilizar-se a
realimentação negativa, a qual reduz consideravelmente a distorção da banda de cruzamento.
46
Time
0s
0.1ms
0.2ms
0.3ms
0.4ms
0.5ms
0.6ms
0.7ms
0.8ms
0.9ms
1.0ms
1.1ms
1.2ms
1.3ms
1.4ms
1.5ms
1.6ms
1.7ms
1.8ms
1.9ms
2.0ms
V(R1:2,0)
V(R2:2,0)
-10V
-5V
0V
5V
10V
Fig
ura
4. 1
4 -
Re
sp
osta
de u
m E
stá
gio
de
Saíd
a C
lasse
B
47
4.2.3.2 Transistores Darlington
Os transistores utilizados no estágio de saída classe B devem suportar correntes
elevadas (na ordem de ampères). Uma forma de atender esse requisito é a utilização de uma
configuração Darlington [13], isto é, a combinação de dois transistores para que estes sejam
capazes de proporcionar um elevado ganho de corrente. As figuras 4.15 e 4.16 mostram a
configuração Darlington, sendo estes transistores equivalentes a um transistor simples.
Figura 4. 15 - Darlington NPN
Figura 4. 16 - Composto PNP
4.2.4 Circuito Completo do Conversor D/A
Os transistores utilizados no projeto foram o TIP122 e o TIP127, que trabalham com
correntes de 5A contínua e de até 8A de pico. O diagrama esquemático completo do
conversor D/A é mostrado na figura 4.17, onde a resistência de 47 Ω entre a base e o emissor
dos transistores é para proteção contra curto-circuito. Para uma resistência de carga menor
que 3 Ω, operando com tensão máxima (+10V e -10V), o sinal é saturado. Portanto, o
conversor D/A trabalha com resistências de carga ≥ 3 Ω. Outro efeito da presença do resistor
de 47 Ω é o acréscimo, aproximadamente, de mais 10% no rendimento do circuito, que passa
a operar com um rendimento máximo de 62%. Isso ocorre porque o amplificador passa a
fornecer uma pequena corrente que se soma à saída. A saturação do sinal ocorre justamente
quando o amplificador está fornecendo a máxima corrente, uma vez que ele faz o equilíbrio
entre a tensão e a corrente, de modo que a tensão esteja num valor correspondente à máxima
corrente que o amplificador é capaz de fornecer.
48
Fig
ura
4. 1
7 -
Co
nve
rso
r D
/A
49
Os diodos presentes no circuito formam um limitador duplo [14] ou ceifador, um
circuito que atua sobre os picos positivo e negativo do sinal, saturando qualquer sinal que
ultrapasse os limiares positivo e negativo do limitador, onde o limiar é a tensão da fonte
menos a queda no diodo. Isto é feito no intuito de proteger o circuito de uma eventual tensão
de retorno que pode ser gerada, por exemplo, por um motor conectado à saída do conversor
D/A.
4.3 Conversor Analógico/Digital
O Conversor Analógico/Digital (conversor A/D) é muito utilizado em aplicações
cotidianas tais como:
• A digitalização de imagens através de scanner
• A conversação por meio de computador e Internet
• A fotografia por meio de câmeras digitais
O processo de conversão de um sinal analógico em um sinal digital consiste da
conversão de uma grandeza física para um código, representado por uma seqüência discreta
de elementos, ou seja, a discretização de um processo contínuo. Essa discretização consiste de
uma amostragem periódica de um sinal e da representação dos valores por meio de um certo
número de níveis de quantização. Em outras palavras, o sinal é convertido a uma certa taxa de
amostragem e com uma determinada resolução.
Um sinal analógico pode ser apropriadamente amostrado somente se ele não contiver
componentes em freqüência acima da metade da freqüência de amostragem. Uma maneira de
garantir a eliminação dessas componentes de freqüência do sinal amostrado é a utilização de
filtros passa-baixa. Portanto, o projeto do conversor D/A consistirá em condicionar o sinal em
termos de faixas de tensão e freqüência, seguida pela conversão propriamente dita.
4.3.1 O Conversor A/D do PIC
O PIC18F4550 possui internamente 13 conversores A/D de até 10 bits de resolução
[7]. O processo de conversão dá-se através de um capacitor de retenção (CHOLD), o qual deve
se carregar até o nível de tensão do sinal de entrada. A impedância do canal de entrada,
juntamente com a impedância interna de amostragem do conversor, afetam diretamente o
tempo de carregamento do capacitor CHOLD. A máxima impedância de entrada recomendada é
de 2,5kΩ, a qual resulta num tempo de carregamento de aproximadamente 2,45µs, conforme
50
a folha de dados do PIC. Portanto, quanto menor a impedância de entrada, menor será o
tempo de carregamento.
Uma vez que o capacitor CHOLD tenha alcançado o nível de tensão do canal de entrada,
ele é desconectado e a conversão é iniciada, sendo necessário um tempo TAD para a conversão
de cada bit representativo do valor digital de tensão. Ao final da conversão, o capacitor CHOLD
necessita de mais um TAD para se descarregar por completo. Logo, o tempo TAD de conversão
não deve ser curto demais a ponto de que não haja tempo suficiente para a conversão, e nem
longo demais a ponto de que o capacitor CHOLD se descarregue. Dessa forma, como mostrado
na figura 4.18, o tempo total para uma conversão de 10 bits será de 11 TAD acrescido do
tempo de carregamento do capacitor CHOLD - TACQ.
Figura 4. 18 - Etapas de Conversão A/D [7]
Resumidamente, a conversão A/D é realizada nas seguintes etapas:
• Configurar os pinos escolhidos para a entrada do sinal como entradas analógicas. Para
o caso da DaqUSB são os dois canais de entrada (AN0 e AN1).
• Escolher a tensão de referência, ou seja, a faixa de operação do conversor A/D. Para
simplificar o hardware utiliza-se a própria alimentação do PIC (0V a 5V).
• Selecionar um dos canais de entrada A/D para a realização da conversão, que no caso
da DaqUSB fica a critério do usuário.
• Selecionar o tempo de aquisição A/D, isto é, a resolução (quantidade de intervalos de
tempo TAD) e o valor do tempo TAD. Estando já determinada a resolução de 10 bits,
resta selecionar o TAD.
51
Para o PIC18F4550 existem 7 opções de seleção do TAD tendo como base o tempo da
CPU (TOSC), as quais são: 2 TOSC; 4 TOSC; 8 TOSC; 16 TOSC; 32 TOSC; 64 TOSC e RC (oscilador
RC interno), e como já mencionado o tempo TAD deve estar o mais próximo possível do
tempo mínimo de conversão. Conforme a folha de dados do PIC18F4550, tem-se 0,7I &w 25I.
Com base no clock do PIC, o menor tempo será alcançado em 64 TOSC, conforme se
verifica na equação 4.18. Caso a freqüência do PIC fosse configurada em 32 MHz, poderia ser
atingido um tempo TAD de 1µs, todavia tal alteração no clock diminuiria a freqüência do
PWM e portanto prejudicaria a conversão D/A.
64&65 Qc Q
Q 1,333…I (Equação 4.18)
Desse modo, o tempo total para aquisição será de 14,6666 µs, acrescido do tempo de
carregamento do capacitor CHOLD. Portanto, considerando uma resistência de entrada muito
baixa pode-se aproximar o valor do tempo total de aquisição para 16 µs, e conseqüentemente
tem-se uma freqüência de amostragem de 62,5 kHz.
4.3.2 Condicionamento do Sinal do Conversor A/D
Agora que a freqüência de amostragem do conversor A/D já foi determinada, pode-se
projetar o filtro passa-baixa para a eliminação das componentes de freqüência acima da
metade da freqüência de amostragem, garantindo assim uma conversão A/D ausente de
ruídos.
Dessa forma, com base no projeto do filtro do conversor D/A exposto na seção 4.2.1.2,
bastará implementar um filtro semelhante àquele, porém com resistores 30 vezes menores,
resultando numa freqüência de corte 30 vezes maior, conforme observa-se na equação 4.13,
com as demais características mantidas iguais, propiciando assim, um filtro passa-baixa de
freqüência de corte de 30 kHz, a qual é menor que a metade da freqüência de amostragem do
conversor A/D. A figura 4.19 mostra o diagrama esquemático do filtro do conversor A/D.
52
Figura 4. 19 - Filtro do Conversor A/D
Satisfazendo a condição de baixa impedância da entrada do conversor, através do filtro
empregado, resta realizar o condicionamento da tensão de entrada. Sendo assim, é necessário
realizar a mudança de escala da faixa da tensão de entrada de ±10V para a faixa de 0V a 5V,
conforme mostrado na figura 4.20, resultando na equação 4.19.
Figura 4. 20 - Mudança de Escala do Conversor A/D
_
x
Q ( + 10*
Q +
5 (Equação 4.19)
A equação 4.19 pode ser implementada por uma amplificação de dois estágios, como
mostrado na figura 4.21, formada por um somador ponderado seguido de um amplificador
inversor. O somador ponderado [13] é um circuito de configuração inversora, cuja saída é
formada pela soma dos sinais de entrada com diferentes pesos, onde os pesos são
determinados pela razão de uma resistência (!) posicionada no caminho da realimentação
negativa, com a resistência de admissão de cada sinal. Como o somador ponderado é um
53
circuito inversor, para se obter uma saída não-invertida é necessário fazer uso de um
amplificador inversor.
Figura 4. 21 - Somador Ponderado de Dois Estágios
Nota-se pela figura 4.21 e pela equação 4.20 do somador ponderado seguido de um
amplificador inversor, que as resistências ! e ! têm efeito desprezível para o sinal de saída,
todavia ambas têm o papel de minimizar o efeito das correntes de polarização de entrada, isto
é, reduzir a tensão cc (Corrente Contínua) de saída que surge devido às correntes de
polarização de entrada. A escolha dessas resistências é baseada no tipo de acoplamento do
amplificador, isto é, se o sinal de entrada é do tipo cc ou ca (Corrente Alternada). Caso o
acoplamento seja cc, têm-se ! ! ! ! e ! !| ! , e caso seja ca, têm-se
! ! e ! !|.
33l 3q3 + 5 33i 3q3 (Equação 4.20)
De forma semelhante ao caso do conversor D/A, para a implementação do
amplificador é necessário utilizar um pino do PIC para fornecer 5V, para o circuito da figura
4.21. Logo, comparando as equações 4.19 e 4.20, têm-se 3q3 1, ! 2! e ! 4!.
Arbitrando !| ! 10 ¡Ω, obtêm-se ! 10 ¡Ω, ! 20 ¡Ω e ! 40 ¡Ω. E
adicionalmente, optando por minimizar o efeito do acoplamento ca, deve-se escolher ! ! 10 ¡Ω.
4.3.3 Circuito Completo do Conversor A/D
O circuito completo do conversor A/D é mostrado na figura 4.22, onde para se
construir os dois canais de entrada da DaqUSB bastará duplicar o circuito.
54
Fig
ura
4. 2
2 -
Co
nve
rso
r A
/D
55
Capítulo 5
Fonte de Alimentação
5.1 Introdução
Como exposto na seção 4.2.3.1 a DaqUSB necessita de uma fonte de alimentação cc
simétrica de no mínimo 15V para uma boa operação. Em virtude disso este capítulo trata do
projeto de uma fonte simétrica de 15V de até 1A de corrente de saída, implementada
utilizando reguladores de tensão. Para correntes acima de 1A, outro projeto de fonte faz-se
necessário, entretanto a fonte construída supre as necessidades deste trabalho, já que este não
requer corrente acima de 1ª.
5.2 Proposta de Fonte de Alimentação cc
A figura 5.1 mostra o diagrama de blocos da fonte de alimentação cc construída [13].
Conforme indicado, a fonte é alimentada pela rede elétrica ca de 60Hz com 127 Vrms, e
entrega tensões cc de 15V e -15V. Essas tensões cc devem ser as mais constantes possíveis
mesmo com as variações na tensão da rede e na corrente drenada pela DaqUSB. O objetivo é
determinar os parâmetros de cada bloco de modo que a tensão fornecida para o bloco
regulador de tensão esteja dentro da faixa recomendada pelo fabricante. Sendo assim,
verificaram-se os parâmetros estabelecidos pelo fabricante do regulador de tensão.
Figura 5. 1 - Diagrama de Blocos de Fonte cc [13]
5.2.1 Regulador de Tensão
O bloco regulador de tensão é formado basicamente por dois circuitos integrados
(CI’s) reguladores, os CI’s LM7815 e LM7915 [15], que fornecem corrente de até 1A e
tensões de saída cc de +15V e -15V, respectivamente. De acordo com a folha de dados do
fabricante, National Semiconductor, para uma boa regulação, isto é, a mais constante possível,
recomenda-se uma tensão de entrada de 8V acima da tensão de saída com uma variação
máxima de 3,5Vrms (Vs=Vout+8V+3,5Vrms), sendo que a tensão de entrada não pode ser
superior a 30 V (Vs ≤ 30 V). Todavia essas especificações são válidas para CI’s de outros
56
fabricantes dessa mesma linha. Uma vez estabelecido os parâmetros de regulação, pode-se
projetar cada bloco, iniciando pelo bloco do transformador de potência.
5.2.2 Transformador de Potência
O transformador de potência é constituído por duas bobinas enroladas separadamente
em um núcleo de ferro que acopla magneticamente os dois enrolamentos. Isso proporciona
um isolamento elétrico entre o equipamento e o circuito de potência da linha, diminuindo o
risco de choque elétrico para o usuário do equipamento. A razão entre os número de espiras
N2 do enrolamento secundário, o qual é conectado ao circuito da fonte, e o número de espiras
N1 do enrolamento primário, o qual é conectado á rede, eleva ou reduz a tensão ca entre os
terminais do enrolamento secundário (Vs) a partir da tensão do enrolamento primário(Vrede),
ou seja, 5 ~44 li. Pelas especificações dos reguladores de tensão, é necessária uma tensão de entrada
entre 19,5V ≤ Vs ≤ 26,5V. Como a tensão da rede é especificada em valores RMS,
convertendo a tensão de entrada dos reguladores (c√*, tem-se 13,78V ≤ VsRMS ≤ 18,73V.
Um transformador que baixe a tensão para 18Vrms é uma boa escolha, pois é
encontrado facilmente. Após estabelecido o transformador, segue-se agora para o bloco dos
diodos retificadores.
5.2.3 Diodos Retificadores
Os diodos retificadores [14] têm a função de converter a senóide de entrada Vs em
uma saída unipolar, a qual tem uma forma pulsante. Embora essa forma de onda tenha um
componente cc, sua natureza pulsante a torna imprópria para uso no regulador de tensão, daí a
necessidade de um filtro. Existem vários tipos de circuitos retificadores, cada um com sua
vantagem e desvantagem em relação ao outro [14]. A escolha do tipo de retificador foi
baseada na necessidade de construir uma fonte simétrica a partir de um único transformador
com tomada central. Uma implementação que atende esse requisito é o retificador em ponte,
como o mostrado na figura 5.2.
57
Figura 5. 2 - Retificador em Ponte
A escolha dos diodos é baseada em dois parâmetros importantes [13]: a capacidade de
condução de corrente exigida do diodo, determinada pelo maior valor de corrente que o diodo
pode conduzir, e a máxima tensão de pico inversa (Peak Inverse Voltage – PIV) que o diodo
pode suportar.
5.2.3.1 Tensão de pico inversa - PIV
A tensão de pico inversa ou tensão de pico reversa (PIV) é a máxima tensão nominal
suportável pelo diodo quando em polarização reversa, ou seja, aplicada quando o diodo do
circuito retificador não estiver conduzindo. Uma das vantagens do retificador em ponte é a
sua baixa PIV quando comparado a outros retificadores, a qual é encontrada pela equação 5.1.
)£ 5 ; (Equação 5.1)
onde VD é a tensão no diodo
Como o transformador tem uma tensão 5 18√2 25,455, a tensão de pico
inversa é aproximadamente PIV = 24,755 V.
5.2.4 Retificador com capacitor de filtro
O bloco do filtro é formado por um capacitor em paralelo com a carga. A presença
desse capacitor reduz substancialmente as variações na tensão de saída, denominada de tensão
de ondulação (ripple) Vr. O capacitor trabalha da seguinte forma: quando a tensão senoidal de
entrada Vs se torna positiva o diodo conduz e o capacitor é carregado até o valor de pico de
Vs, mas a partir do instante em que Vs começa diminuir o diodo fica inversamente polarizado
e o capacitor passa a se descarregar através da carga. A descarga do capacitor persistirá até o
momento que Vs superar o valor da tensão no capacitor. A tensão V0 de saída cai
exponencialmente durante o intervalo de descarga com uma constante de tempo CR, onde C é
o valor do capacitor e R é a resistência de carga. Ao final do intervalo de descarga, que dura
58
aproximadamente o período T/2, tem-se V0 = Vp – Vr. Por essa análise, pode-se aproximar o
valor de V0 durante o intervalo de descarga pela equação 5.2 e, portanto, no final desse
intervalo tem-se a equação 5.3.
Xj ¤D¥ (Equação 5.2)
X ~ Xj¦lD¥ (Equação 5.3)
Como "! § & pode-se usar a aproximação j¦lD¥ ¨ 1
03 para obter a equação 5.4.
~ ¨ X 03 (Equação 5.4)
Escrevendo a equação 5.4 em termos da freqüência (U ) e da corrente de carga IL
(£© p3 ) encontra-se a equação 5.5.
~ ª0 (Equação 5.5)
Devido aos requerimentos do regulador de tensão, faz-se necessário gerar uma tensão
de entrada Ve≥19,5V com uma ondulação Vr de no máximo 3,5V. Substituindo na equação
5.5 o caso mais extremo (IL=1A), obtém-se o valor apropriado para o capacitor: C ≥ 2380 uF.
Aproximando para um valor comercial C = 2700 uF, propiciando um Vr = 3,08 V.
5.2.5 Corrente de pico do diodo
Analisando o comportamento da condução dos diodos, é possível determinar o
intervalo de condução ∆t de cada diodo pela equação 5.6. Como a carga que os diodos
conduzem para o capacitor, expressa pela equação 5.7, é igual à carga que o capacitor perde
durante o intervalo de descarga, expressa pela equação 5.8, é possível determinar a corrente
média nos diodos (equação 5.9) utilizando as equações 5.5 e 5.6.
(2 U*∆ ¨ ¬p (Equação 5.6)
6~4| (£é £©*∆ (Equação 5.7)
59
X4~| "~ (Equação 5.8)
£é £© @1 + ¬ pE (Equação 5.9)
Pela equação 5.10 da corrente nos diodos, considerando a condução dos mesmos, isto
é, t = - ∆t (em que t = 0 é o pico), pode-se encontrar a equação 5.11 que determina o valor de
pico de corrente no diodo. Substituindo os valores de Vp (tensão de pico do transformador) Vp
= 25,455 V, Vr = 3,08 V e IL máximo (IL = 1 A) na equação 5.11, determina-se a corrente de
pico no diodo IDmax=13,77A.
£ " + £© (Equação 5.10)
£|< £© @1 + 2 ¬ pE (Equação 5.11)
5.2.6 Circuito Completo da Fonte
A figura 5.3 mostra o esquemático do circuito completo da fonte, que possui dois
reguladores de tensão para fornecer as tensões de +15V e -15V. Para tal é necessário apenas
duplicar os blocos do filtro e do regulador já projetados neste capítulo. Os capacitores
cerâmicos de 1nF próximos dos reguladores são utilizados por recomendação do fabricante
dos reguladores.
Figura 5. 3 - Circuito Completo da Fonte cc
60
Capítulo 6
Implementação da Placa de Circuito Impresso
6.1 Introdução
Tipicamente, a construção de placas de circuito impresso é feita através de ferramentas
computacionais para a elaboração do leiaute do circuito [16], o qual é transferido para uma
placa de cobre para posterior corrosão por agente químico específico. Este é um método
simples de construção de placas de circuito eletrônico, pois facilita e minimiza o tempo de
projeto.
A escolha dos componentes que farão parte do circuito é vital para o processo de
construção da placa. Para tal é necessário recorrer a um banco de pesquisa confiável e
diversificado, usando como critério de seleção a escolha de componentes que atendam às
especificações do projeto, tais como freqüência de operação, máximas tensões e correntes que
os componentes deverão suportar, rejeição a ruído, entre outras. Além disso, deve-se levar
também em consideração o custo e as dimensões físicas dos componentes.
Partindo da escolha dos componentes, o processo de construção da DaqUSB utilizou o
método exposto, sendo o foco deste capítulo a apresentação dos componentes empregados,
assim como da ferramenta computacional utilizada, e por fim descrever o método de gravação
do PIC bem como as funções implementadas.
6.2 Circuito Impresso da DaqUSB
Usando como referência para pesquisa o banco de dados do fabricante National
Semiconductor, foi realizada a busca por componentes que operam dentro da faixa de tensão e
corrente da DaqUSB, optando-se pelos que apresentassem o menor custo, tais como resistores
de baixa potência, capacitores cerâmicos, diodos retificadores padrão entre outros. Os
destaques são os circuitos integrados LM348, TIP122 e TIP127, os quais apresentam em seus
encapsulamentos, respectivamente, quatro AmpOps da série 741, transistores em
configuração Darlington NPN e PNP. A lista completa dos componentes utilizados para a
construção da DaqUSB é mostrada na tabela 6.1.
61
42 Resistores
Quantidade Referência Valor
24 R1,R2,R6-R13, R21-
R27, R33-R39 10 kΩ
3 R3-R5 8,2 kΩ
4 R14, R16, R20, R32 39 kΩ
4 R15, R17, R19, R31 1 kΩ
1 R18 47 Ω
6 R28- R30, R40- R42 820 Ω
11
Capacitores
Quantidade Referência Valor
2 C1, C2 220 nF
1 C3 10 nF
5 C4, C6, C7, C9, C10 10 nF
3 C5, C8, C11 18 nF
4 Circuitos
Integrados
Quantidade Referência Valor
1 U1 LM741
1 U2 PIC18F4550
2 U3, U4 LM348
2
Transistores
Quantidade Referência Valor
1 Q1 TIP122
1 Q2 TIP127
2 Diodos Quantidade Referência Valor
2 D1, D2 1N4007
7 Diversos
Quantidade Referência Valor
1 J1 Conector-3
1 J2 Conector USB Tipo A Fêmea
2 J3,J4 Conector-2
2 L1, L2 Led
1 X1 Cristal Ressonador de 20 Mhz
Total de Componentes: 68
Tabela 6. 1 - Lista de Componentes da DaqUSB
No projeto foram adicionados 2 LED’s, L1 e L2, para indicação visual para o usuário,
informando a conexão da fonte de alimentação e a conexão USB, respectivamente. A figura
6.1 mostra o diagrama esquemático completo da DaqUSB construído no software PROTEUS
versão 7.1 [17]. O diagrama do circuito impresso correspondente é mostrado na figura 6.2, o
62
qual foi construído para uma placa de dimensões 100 x 98 mm, preservando algumas áreas
que são utilizadas pela caixa plástica em que foi inserida a placa. A vantagem de se utilizar o
PROTEUS é que, além de gerar o leiaute da placa de circuito impresso a partir do
esquemático, ele também gera a lista de componentes.
63
Fig
ura
6. 1
- D
iag
ram
a E
sq
ue
má
tico
Co
mp
leto
da D
aq
US
B
64
Figura 6. 2 - Diagrama do Circuito Impresso da DaqUSB
6.3 – Implementação da Fonte
Por sua vez, também foi construída a fonte para a DaqUSB. Para implementar a fonte
deve-se, obedecendo ao projeto apresentado no capítulo 5, escolher diodos que contemplem
os requisitos operacionais e sejam de baixo custo. Numa breve pesquisa, conclui-se que os
diodos da linha 1N400X atendem às especificações do projeto. No mais, vale citar o fato de
os capacitores de 1 µF ou superiores serem encontrados comumente no tipo eletrolítico e
portanto são mais baratos que os capacitores de outros tipos. A lista completa de componentes
da fonte é mostrada na tabela 6.2.
65
6 Capacitores
Quantidade Referência Valor
2 C1, C2 2700 µF
4 C3, C4 1 nF
2 Circuitos
Integrados
Quantidade Referência Valor
1 U1 LM7815
1 U2 LM7915
4 Diodos Quantidade Referência Valor
4 D1-D4 1N4007
1
Transformador
Quantidade Referência Valor
1 J1 Transformador
1 Diversos Quantidade Referência Valor
1 J2 Conector-3
Total de Componentes: 14
Tabela 6. 2 – Lista de Componentes da Fonte
Para a construção do diagrama esquemático da fonte da figura 6.3, utilizou-se
novamente o software PROTEUS, sendo o leiaute do circuito impresso correspondente
mostrado na figura 6.4, feito para ocupar uma placa de dimensões 50 x 45 mm.
Figura 6. 3 - Diagrama Esquemático Completo da Fonte
66
Figura 6. 4 - Diagrama do Circuito Impresso da Fonte
6.4 Custo das Placas
Todos os componentes incluindo as placas de cobre e exceto o PIC18F4550, foram
comprados em lojas de eletrônica situadas no comércio de Belém, enquanto o PIC18F4550 foi
adquirido em uma loja virtual pelo valor de R$25,00. O custo da DaqUSB é de R$56,40
incluindo o PIC e opcionalmente a caixa plástica tem um custo de R$10,00. Já a fonte, tem
um custo de R$35,30 e opcionalmente a caixa plástica desta tem um custo de R$2,00.
6.5 Programação do PIC
Uma vez que o circuito da DaqUSB foi implementado, resta realizar a programação do
PIC para que este execute as tarefas designadas a ele, estabelecidas nos capítulos 2, 3 e 4
referentes às funções da DaqUSB, dà comunicação USB e às conversões D/A e A/D,
respectivamente.
A programação dos microcontroladores da família PIC é feita através de um programa
que transfere por intermédio de uma gravadora, o código de máquina (.HEX) para o PIC.
Existem diversas gravadoras no mercado, cada qual sendo operada por seus respectivos
programas. Para o caso da DaqUSB, utilizou-se uma gravadora com comunicação serial RS-
232 de fácil implementação, construída pelo laboratório do Programa de Educação Tutorial de
Engenharia Elétrica – PET-EE e, com o auxílio do programa WinPic800 [18] versão 3.6.1 foi
67
realizada a programação do PIC. Este programa é capaz de realizar a gravação do código em
.HEX no PIC da DaqUSB.
Utilizou-se o compilador CCS [19] versão 4.057 para gerar o código a partir da
compilação do programa em linguagem C feito para o PIC.
68
Capítulo 7
Experimentos
7.1 Introdução
Foram realizados dois experimentos para demonstração da DaqUSB. O primeiro
experimento teve o objetivo de avaliar o desempenho da DaqUSB no que se refere a sua
velocidade e precisão. O segundo experimento é uma demonstração de um controlador PID
digital aplicado em malha fechada a um sistema térmico usando a DaqUSB. Estes
experimentos são descritos neste capítulo, bem como a análise de seus resultados.
O computador utilizado nos experimentos foi um notebook com processador Intel
T3400 de 2,16 GHz; 2 GB de memória DDR2-667 MHz; vídeo compartilhado; porta USB
2.0; sistema operacional Windows 7 de 32 bits, com ambiente de programação LabVIEW ver.
8.2.
O LabVIEW [20][21] (Laboratory Virtual Instrument Engineering Workbench) é um
ambiente de programação gráfica em linguagem G, desenvolvido pela National Instruments,
atualmente produzido para os sistemas operacionais Windows, Linux e Mac OS.
Apresentando uma programação baseada no fluxo de dados, o seu uso se torna vantajoso para
o campo da automação. Os programas desenvolvidos no LabVIEW são denominados de
instrumentos virtuais, ou popularmente, VI’s. Estes são compostos pelo painel frontal, que
contém a interface do usuário, e pelo diagrama de blocos referente à programação gráfica.
O LabVIEW não possui suporte para comunicação USB com dispositivos HID [22], o
que torna necessária a implementação de um meio indireto para a realização desse tipo de
comunicação. Uma solução é a utilização de controle ActiveX, que o LabVIEW suporta. A
Microchip fornece um controle ActiveX para dispositivos HID denominado HIDComm [6].
Com o ActiveX HIDComm instalado, o Labview é capaz de executar os comandos ActiveX
de comunicação USB para dispositivos HID.
7.2 Experimento 1 – Avaliação de Desempenho da DaqUSB
Foi implementado um VI para executar a função LerEscrever da DaqUSB para avaliar
o seu desempenho. O painel frontal é mostrado na figura 7.1 e o diagrama de blocos é
mostrado na figura 7.3. O método consiste em curto-circuitar o canal de saída da DaqUSB
com um dos canais de entrada, gerar uma tensão cc e em seguida fazer a leitura do canal de
entrada através do VI implementado. Dessa forma, é possível avaliar a precisão da tensão
gerada e lida pela DaqUSB, e comparar a tensão lida por um voltímetro com a tensão exibida
69
pela DaqUSB. Já para avaliar a velocidade da DaqUSB, utiliza-se um programa de análise da
comunicação USB executado em paralelo com o VI.
Este programa de análise é o USBTrace [23] versão 2.4.3, uma ferramenta capaz de
analisar todas as interações pela porta USB entre o computador e o dispositivo. A versão de
avaliação deste programa tem a limitação de analisar apenas 256KB de dados contínuos.
Figura 7. 1 - Interface do Usuário do Experimento 1
Os itens numerados na figura 7.1 são descritos como:
1. Led sinalizando o estabelecimento da conexão USB com a DaqUSB.
2. Botão de busca do dispositivo USB a ser conectado.
3. Chave de seleção do canal de entrada a ser adquirido.
4. Botão que habilita e desabilita o envio e o recebimento de dados para o dispositivo
USB.
5. Valor de tensão a ser gerado no canal de saída.
6. Gráfico de leitura do canal de entrada.
7. Botão que finaliza a conexão com o dispositivo USB e fecha o programa.
70
Ao clicar no botão “BUSCAR”, uma janela é aberta listando todos os dispositivos
USB HID conectados no computador, como é mostrado na figura 7.2. Selecionando a
DaqUSB, e clicando no botão OK a conexão é iniciada.
Figura 7. 2 - Tela de Lista de Dispositivos HID
71
Fig
ura
7. 3
- D
iag
ram
a d
e B
loco
s d
o E
xp
erim
en
to 1
72
Os itens numerados na figura 7.3 possuem as seguintes funções:
1. Realiza uma busca, retornando os parâmetros VID e PID do dispositivo selecionado;
verifica se a conexão com o dispositivo USB está aberta, e caso não esteja, abre-a.
2. Habilita/Desabilita o envio e o recebimento dos dados para o dispositivo USB.
3. Realiza a conversão de tensão para o devido valor entre 0 e 1023. A equação é
determinada seguindo o procedimento mostrado na seção 2.4.1.
4. Organiza o vetor de dados de acordo com os parâmetros de entrada da função a ser
executada pela DaqUSB.
5. Envia os dados para a DaqUSB, informando a quantidade de bytes a ser enviada.
6. Recebe os dados enviados pela DaqUSB, informando a quantidade de bytes a ser
recebida.
7. Separa do vetor de dados recebido o valor da leitura do canal de entrada, e realiza a
conversão para tensão. A equação é determinada seguindo o procedimento mostrado
na seção 2.4.2.
8. Exibe o gráfico da tensão lida no canal de entrada.
9. Encerra a conexão com a DaqUSB e fecha o programa.
7.2.1 Resultados
Tanto nos testes com o canal de entrada 0 quanto nos testes com o canal de entrada 1,
os resultados foram semelhantes, apresentando erro de leitura nulo. Isto pode ser visualizado
na figura 7.1. As tensões geradas apresentaram em alguns casos um erro um pouco inferior a
10mV, o que corresponde à 0,05% de erro, totalmente aceitável tendo em vista que a
resolução da DaqUSB é de 19,53mV. Não houve variação na tensão gerada, ou seja, ruído
nulo.
O teste de velocidade executado em paralelo pelo USBTrace apresentou os resultados
mostrados na figura 7.4, onde o tempo está em segundos. Pelos testes observou-se (figura 7.4
– Destaque 1) que a DaqUSB recebe, executa e responde para o computador num tempo de
aproximadamente 2,3 ms.
73
Figura 7. 4 - Teste no USBTrace para o Experimento 1
Constatou-se ainda a presença de um atraso na execução do VI (figura 7.4 – Destaque
2), o qual não é constante, porém é pequeno. Este atraso é inerente ao LabVIEW, e seu efeito
é mais visível na análise de uma maior quantidade de transmissões, como pode-se observar na
figura 7.5 e na figura 7.6 obtidas no USBTrace, onde são mostrados os gráficos da taxa de
transmissão recebida e da taxa de transmissão enviada, respectivamente.
Figura 7. 5 - Taxa de Transmissão Recebida
74
Figura 7. 6 - Taxa de Transmissão Enviada
Existem outros fatores que influenciam no atraso da transmissão, tais como: a
concorrência no barramento USB e o próprio programa de análise da USB, o USBTrace,
porém estes fatores são ínfimos quando comparados ao tempo de execução do VI. Todavia,
como se pode ver na tabela 7.1 de valores médios e máximos de transmissão, de modo geral,
o desempenho da comunicação USB na DaqUSB é excelente quando comparado ao de uma
transmissão serial RS-232 [5], que é em teoria de 19,2 Kbps no máximo. Lembrando que para
este teste foram utilizados apenas 6 bytes do pacote de dados, apesar da transmissão ser de 64
bytes por pacote, ou seja, numa aplicação que utilize os 64 bytes o aproveitamento será
melhor.
Tipo Para o
Dispositivo Do
Dispositivo Passou Falhou
Velocidade Média de Escrita
Velocidade Média de Leitura
Velocidade Máxima de
Escrita
Velocidade Máxima de
Leitura
Controle 0 pacotes,
0 bytes 8 pacotes, 60 bytes
8 0 0.000 Kbps 67.770 Kbps 0.000 Kbps 171.703 Kbps
Volume ou Interrução
110 pacotes, 7040 bytes
108 pacotes, 6912 bytes
218 0 315.817 Kbps 43.236 Kbps 455.789 Kbps 95.969 Kbps
Isossíncrono 0 pacotes,
0 bytes 0 pacotes,
0 bytes 0 0 0.000 Kbps 0.000 Kbps 0.000 Kbps 0.000 Kbps
-- -- -- -- -- -- -- -- --
Total 110 pacotes, 7040 bytes
116 pacotes, 6972 bytes
226 0 315.817 Kbps 44.928 Kbps 455.789 Kbps 171.703 Kbps
Tabela 7. 1 - Taxas de Transmissão
75
7.2 Experimento 2 – Controlador PID Aplicado a um Sistema Térmico
Este experimento apresenta uma aplicação da DaqUSB em um sistema real.
7.2.1 – Sistema Térmico
A figura 7.7 apresenta o equipamento em perspectiva. O sistema para controle de
temperatura de placa de alumínio, vulgo sistema térmico [24], foi desenvolvido por alunos do
PET-EE com o propósito de oferecer aos alunos do curso de Engenharia Elétrica a
oportunidade de aplicar as técnicas de controle estudadas em um sistema real.
Figura 7. 7 - Vista em Perspectiva do Sistema Térmico [24]
O processo de controle da temperatura da placa de alumínio, mostrado na figura 7.8, é
realizado basicamente com a aplicação do sinal de controle na base de um transistor (TBJ –
BC548) operando como chave eletrônica de dois transistores de potência (TIP50), que geram
o calor para aquecer a placa de alumínio. Um sensor de temperatura (LM35) é colocado junto
à placa de alumínio, e o sinal deste sensor é amplificado para ser utilizado como resposta do
sistema térmico.
76
Figura 7. 8 - Diagrama Esquemático do Sistema Térmico [24]
O sinal de controle e o sinal de saída do sistema térmico operam numa faixa de 0V a
5V. A equação 7.1 de transformação de tensão (V) para temperatura em °C (T) foi estimada
pelos desenvolvedores do sistema.
& 11 25 (Equação 7.1)
Um ponto importante em sistemas de controle é a modelagem matemática de sistemas
reais. O sistema térmico descrito foi modelado parametricamente através de um método
determinístico: a resposta ao degrau [25]. Por este método, o projetista do sistema térmico
estimou a equação 7.2. Através da equação 7.2, e por meio dela estimou o modelo
discretizado do sistema térmico mostrado na equação 7.3, utilizando o método do Hold
Equivalente [25].
®X ,4yi_c 5 (Equação 7.2)
¯(°*±(°* , Q
°iij ,°i_ (Equação 7.3)
7.2.2 Projeto do Controlador Digital
Utilizando o Método do Lugar das Raízes (LGR) [26] para determinar os ganhos KP e
KI de um controlador PI para o sistema térmico, o projetista determinou os valores para que o
sistema tenha uma resposta com no máximo 10% de sobresinal e um tempo de assentamento
menor que 350 segundos com erro de regime nulo, obtendo-se KP = 0,75 e KI = 0,01.
Entretanto, o sistema térmico não possui uma interface de comunicação com o computador
77
para validar o controlador projetado, portanto sendo necessário um sistema de aquisição de
dados para a validação do controlador.
Um controlador PID genérico foi projetado em LabVIEW para operar com a DaqUSB,
e com uma pequena modificação no código para converter os valores de tensão em
temperatura, é possível utilizá-lo para validar o controlador PI projetado para o sistema
térmico.
A interface do usuário é mostrada na figura 7.9, onde o usuário especifica a
temperatura desejada, chamada de referência, e com ganhos KP, KI e KD de sintonia do
controlador. A modificação do código do VI pode ser visualizada no anexo B, destaques 3 e
12.
Figura 7. 9 - Interface do Usuário do Experimento 2
Os itens numerados na figura 7.9 são descritos como:
1. LED sinalizando o estabelecimento da conexão USB com a DaqUSB.
2. Botão de busca do dispositivo USB a ser conectado.
3. Chave de seleção do canal de entrada a ser adquirido.
4. Botão que habilita e desabilita o envio e o recebimento de dados para o dispositivo
USB.
5. Temperatura desejada.
6. Tensão gerada no canal de saída (sinal de controle).
7. Tempo de amostragem.
78
8. Ganhos KP, KI e KD.
9. Gráfico de temperatura da placa de alumínio ao longo do tempo (em segundos).
10. Leitura da temperatura instantânea.
11. Botão que finaliza a conexão com o dispositivo USB e fecha o programa.
7.2.3 Resultados
A demonstração foi realizada para especificação de uma temperatura de 40°C, com
uma amostragem de 1 segundo, recomendada pelo projetista. O ganho KD é nulo para que o
controlador opere como controlador do tipo PI. O canal de saída da DaqUSB foi conectado na
entrada do sistema térmico (figura 7.10 – fio preto), o canal 0 de entrada da DaqUSB foi
conectado na saída do sistema térmico (figura 7.10 – fio vermelho), e os terras de ambos os
dispositivos foram conectados entre si (figura 7.10 – fio verde).
Pelo gráfico da figura 7.9 – destaque 9, nota-se que o sobresinal foi inferior a 44°C e o
tempo de assentamento foi próximo dos 350 segundos, com um erro de regime virtualmente
nulo. O erro não é constantemente nulo devido ao ruído presente comum em sistemas
térmicos, todavia percebe-se que o controlador PI projetado atende as especificações.
Figura 7. 10 - Interligação da DaqUSB com o Sistema Térmico
79
Capítulo 8
Conclusões
A concretização de um projeto real é a complementação dos conhecimentos adquiridos
durante o curso de graduação, permitindo ao aluno aplicar na prática a teoria adquirida e
necessária para o projeto, tornando-o capaz de enxergar soluções para os problemas que irão
surgindo durante a implementação e que não aparecem durante a elaboração do mesmo, pois a
situação ideal poderá no máximo aproximar-se da situação real, citando por exemplo, a não
uniformidade entre os valores de componentes reais e ideais.
Outra vantagem na construção de um projeto encontra-se no fato de um aluno, assim
como um projetista, necessitar operar as ferramentas de software para o rápido
desenvolvimento e simulações de suas pesquisas acadêmicas, sem a necessidade de riscos ou
custos adicionais, permitindo a visualização de resultados aproximados da situação real.
O projeto da DaqUSB surgiu da necessidade de atualização de técnicas de construção
e projeto envolvendo a tecnologia USB, pois esta tecnologia tornou-se padrão de uso comum
para as mais diversas aplicações devido a sua flexibilidade e facilidade de uso, permitindo que
a DaqUSB possa ser utilizada na maioria dos computadores e sistemas operacionais.
Os resultados obtidos nos testes e na utilização real da DaqUSB mostraram-se
condizentes e satisfatórios com o que fora estipulado na fase de projeto, o que propiciou não
apenas a satisfação de se obter na prática o que fora projetado como também a possibilidade
de realização de pesquisas envolvendo sistemas que necessitem de respostas mais rápidas do
que permitem os sistemas normalmente empregados pelos alunos do curso.
Embora todas as especificações estabelecidas para o projeto tenham sido alcançadas,
ainda é possível realizar melhorias no hardware, que serão propostas para trabalhos futuros.
Existem diversos microcontroladores da família PIC com hardware USB embutido,
cada qual mais indicado para um tipo de aplicação. No que se refere à aquisição de dados,
destaca-se o PIC 24FJ64GB002 [27], que apresenta um conversor A/D de 500 ksps, o qual é
10 vezes mais rápido do que o conversor do PIC utilizado neste trabalho e, além disso, possui
um encapsulamento de 28 pinos, como se pode observar na figura 8.1, o que diminui
consideravelmente o espaço utilizado. Sendo este modelo de PIC compatível com o software
de programação CCS, ele se torna de fácil adaptação ao código implementado neste trabalho.
Outro ponto interessante é que esse PIC possui um hardware USB com suporte On-
The-Go (USB OTG) [4]. A idéia do USB OTG é simples: o dispositivo pode agir como
periférico ou como host USB, dando uma enorme flexibilidade aos dispositivos; ainda não é
80
utilizado em larga escala, mas já é possível encontrá-lo em aparelhos de última geração, por
exemplo, uma aplicação pode ler e/ou gravar dados em um pendrive, como no caso de um
aparelho de som automotivo que é capaz de executar músicas de um pendrive e até mesmo
transferir músicas de um CD para o pendrive.
Com um custo de R$18,00, inferior ao do PIC 18F4550, o PIC 24FJ64GB002 mostra-
se como uma melhoria muito interessante para a DaqUSB.
Figura 8. 1 - PIC24FJ64GB002 [6]
Por outro lado, um ponto crítico na DaqUSB é o conversor D/A: com uma taxa de 1
ksps, sua limitação, fica evidente quando comparado ao conversor A/D. Para contornar essa
situação, faz-se necessário o uso de conversores D/A externos. Apesar de impactar no custo
do projeto, o uso de um conversor D/A externo pode apresentar uma relação custo/beneficio
muito atraente. Nesse sentido a Microchip fornece uma solução barata de um conversor D/A
em circuito integrado, o MCP4822 [28].
O MCP4822, mostrado na figura 8.2, possui dois conversores D/A de 12 bits com
interface de comunicação SPI num encapsulamento de 8 pinos. Esse tipo de comunicação é
ótimo para aplicações de tamanho reduzido, pois trata-se de uma interface de comunicação
serial entre periféricos, ou seja, os dados digitais referentes à tensão a ser gerada são
transmitidos por apenas uma linha de conexão, tendo um clock base para a transmissão. Com
o MCP4822, é possível gerar tensões de 0V a 4,096V com ruído virtualmente nulo num
tempo de 4,5 µs a contar da chegada do último bit de dados. No caso desse CI, são
necessários 16 bits para realização da conversão D/A, sendo 4 bits de configuração e 12 bits
de dados.
81
Figura 8. 2 - MCP4822 [6]
Portanto, considerando o PIC 24FJ64GB002 proposto, que possui duas interfaces SPI
com freqüência base de até 8 MHz, e sabendo-se que são necessários 16 pulsos de clock para
transmitir os dados, a conversão D/A ocorrerá num tempo de
² + 4,5. 10j 6,5 I,
implicando numa taxa de aproximadamente 154 ksps.
A possibilidade de implementar dois conversores D/A de 12 bits de resolução com
uma taxa de 154 ksps a um custo adicional de R$10,00 representa uma ótima relação
custo/beneficio para o projeto da DaqUSB.
Ainda como proposta de trabalho, sugere-se a elaboração de um conjunto de softwares
operando com a DaqUSB para auxílio ao estudo de sistemas de controle, como por exemplo,
programas de identificação e controle de sistemas, aplicando as mais diversas técnicas
estudadas nas disciplinas do curso de Engenharia Elétrica em sistemas reais, e fornecendo aos
estudantes um meio para um maior entendimento dessas disciplinas.
82
Referências Bibliográficas
[1]. Regazzi, Rogério Dias; Pereira, Paulo Sérgio. Soluções práticas de instrumentação e
automação. 1ª ed. Rio de Janeiro: 3R.kWG, 2005.
[2]. Haykin, Simon; Van Veen, Barry. Sinais e Sistemas. 1ª ed. Porto Alegre: Bookman, 2001.
[3]. Tanenbaum, Andrew S. Organização Estruturada de Computadores. 5ª ed. Rio de Janeiro:
Pearson Prentice Hall, 2006.
[4]. Site Oficial do Consórcio USB. Disponível em: < http://www.usb.org/home/>
Acessado em: 10 jun. 2010.
[5]. Monteiro, Mário A. Introdução a organização de computadores. 5ª ed. Rio de Janeiro:
LTC, 2007.
[6]. Site Oficial da Microchip Technology Inc. Disponível em < http://www.microchip.com>
Acessado em: 10 jun. 2010.
[7]. Microchip Technology Inc (2010). PIC18F4550 Datasheet.
http://ww1.microchip.com/downloads/en/DeviceDoc/39632e.pdf. Acessado em: 10 jan. 2010.
[8]. Banerjee, Dean. PLL Performance, Simulation and Design Handbook. 4ª ed. National
Semiconductor, 2006.
[9]. Microchip Technology Inc (2010). AN538 – Application Note.
http://ww1.microchip.com/downloads/en/AppNotes/00538c.pdf. Acessado em: 10 jan. 2010.
[10]. Pertence Júnior, Antônio. Amplificadores Operacionais e Filtros Ativos. 6ª ed. Porto
Alegre: Bookman, 2003.
[11]. Van Valkenburg, M. E. Analog Filter Design. 1ª ed. New York: CBS College
Publishing, 1982.
[12]. Manual Cadence Orcad. Disponível em:
<http://support.cadence.com/public/docs/gettingstarted.pdf>. Acessado em: 10 jan. 2010.
[13]. Sedra, Adel S.; Smith, Kenneth C. Microeletrônica. 5ª ed. São Paulo: Pearson Prentice
Hall, 2007.
[14]. Boylestad, Robert L.; Nashelsky, Lois. Dispositivos Eletrônicos e Teoria de Circuitos. 8ª
ed. Pearson Prentice Hall, 2003.
[15]. National Instruments (2010). LM7815/ 7915 –15 Volt Regulator.
http://www.national.com/profile/snip.cgi/openDS=LM7815C. Acessado em: 10 jan. 2010.
[16]. Circuito Impresso. Disponível em http://pt.wikipedia.org/wiki/Circuito_impresso .
Acessado em: 10 jun. 2010.
[17]. Proteus 7.1 SP2. Labcenter Electronics, 2007.
83
[18]. Winpic800. Software for PIC Programming, 2007.
[19]. Manual do Compilador CCS. Disponível em:
<http://www.ccsinfo.com/downloads.php#manuals> Acessado em: 10 jun. 2010.
[20]. LabView Basic I: Development Course Manual.
[21]. LabView Basic II: Development Course Manual.
[22]. Sokollof, Leonard. Applications in LabView. 1ª ed. USA: Pearson Prentice Hall, 2003.
[23]. USBTrace – Software-only USB Protocol Analyser, 2010.
[24]. Meneses, Alex Vilarindo. Desenvolvimento de Protótipo Didático para Ensino e
Pesquisa: Sistema de Controle de Temperatura de Placa Metálica – Sistema Térmico.
Trabalho de Conclusão de Curso. Universidade Federal do Pará, Belém – PA, 2009.
[25]. Ogata, Katsuhiko. Engenharia de Controle Moderno. 4ª ed. São Paulo: Pearson Prentice
Hall, 2003.
[26]. Nise, Norman S.. Engenharia de Sistemas de Controle. 3ª ed. Rio de Janeiro: LTC, 2002.
[27]. Microchip Technology Inc (2010). PIC24FJ64GB002 Datasheet.
http://ww1.microchip.com/downloads/en/DeviceDoc/39940c.pdf. Acessado em: 10 jun.
[28]. Microchip Technology Inc (2010). MCP4822 - Dual Voltage Output DAC w/ Internal
VREF and SPI,2010. http://ww1.microchip.com/downloads/en/DeviceDoc/22249A.pdf.
84
Anexo A
Lista de Funções da DaqUSB
Ta
be
la A
. 1
- P
arâ
metr
os d
e E
ntr
ad
a/S
aíd
a d
a D
aq
US
B
85
A.1 – Descrição das Funções da Tabela A.1
Erro – Retorna 255 caso os parâmetros de entrada estejam errados, caso contrario retorna 0.
Canal – 0 para configurar o canal de entrada 0 como primário e 1 para configurar o canal de
entrada 1 como primário.
Função – Retorna o valor referente à função executada.
Valor (MSB) – Parte mais significativa da leitura realizada do canal primário.
Valor (LSB) – Parte menos significativa da leitura realizada do canal primário.
Canal Prim – Retorna o canal primário de aquisição.
Canal Sec – Retorna o canal secundário de aquisição.
Valor canal Prim (MSB) – Parte mais significativa da leitura do canal primário.
Valor canal Prim (LSB) – Parte menos significativa da leitura do canal primário.
Valor canal Sec (MSB) – Parte mais significativa da leitura do canal secundário.
Valor canal Sec (LSB) – Parte menos significativa da leitura do canal secundário.
N amostras – Número de amostras a serem aquisitadas.
Período – Tempo total das aquisições, necessário dividir por 1500 para obter em ms.
Período (MSB) – Parte mais significativa do tempo total das aquisições.
Período (LSB) – Parte menos significativa do tempo total das aquisições.
Valor 1 (MSB)...Valor N (MSB) – Partes mais significativas de cada leitura realizada do canal
primário.
Valor 1 (LSB)...Valor N (LSB) – Partes menos significativas de cada leitura realizada do
canal primário.
Valor 1 canal Prim (MSB)...Valor N canal Prim (MSB) – Partes mais significativas de cada
leitura realizada do canal primário.
Valor 1 canal Prim (LSB)...Valor N canal Prim (LSB) – Partes menos significativas de cada
leitura realizada do canal primário.
Valor 1 canal Sec (MSB)...Valor N canal Sec (MSB) – Partes mais significativas de cada
leitura realizada do canal secundário.
Valor 1 canal Sec (LSB)...Valor N canal Sec (LSB) – Partes menos significativas de cada
leitura realizada do canal secundário.
Tempo (MSB) – Parte mais significativa do intervalo entre cada leitura/escrita de um canal.
Tempo (LSB) – Parte menos significativa do intervalo entre cada leitura/escrita de um canal.
Valor PWM (MSB) – Parte mais significativa da escrita no canal de saída.
Valor PWM (LSB) – Parte menos significativa da escrita no canal de saída.
86
Valor 1 PWM (MSB) ... Valor N PWM (MSB)– Partes mais significativa das escritas no
canal de saída.
Valor 1 PWM (LSB) ... Valor N PWM (LSB)– Partes menos significativa das escritas no
canal de saída.
87
Anexo B
Diagrama de blocos do Experimento II
Fig
ura
B. 1
- D
iag
ram
a d
e B
loco
s d
o C
on
tro
lad
or
PID
88
B.1 – Os itens numerados na figura B.1 são descritos como:
1. Condições inicias nulas.
2. Realiza a busca, retornando os parâmetros VID e PID do dispositivo selecionado;
verifica se a conexão está aberta, caso não esteja abre a conexão com o dispositivo
USB.
3. Conversão de temperatura em °C para tensão.
4. Tempo de amostragem.
5. Habilita/Desabilita o envio e o recebimento dos dados para o dispositivo USB.
6. Cálculo do sinal de controle do controlador PID digital.
7. Realiza a conversão de tensão para o devido valor entre 0 e 1023.
8. Inicia o comando de encerrar o programa.
9. Salva os dados armazenados durante a aplicação do controlador em um arquivo com
extensão .DAT; configura o canal de saída da DaqUSB em 0V; fecha a conexão USB
e finaliza o programa.
10. Organiza e envia o vetor de dados de acordo com os parâmetros de entrada da função
a ser executada pela DaqUSB.
11. Recebe e separa do vetor de dados enviado pela DaqUSB, o valor da leitura do canal
de entrada, e realiza a conversão para tensão.
12. Converte a tensão lida no canal de entrada em temperatura, e exibe no gráfico.
89
Anexo C
Localização do Pólos para Resposta de Butterworth
n=
10
-0,1
5643
45
±j0,
9876
883
-0,4
5399
05
±j0,
8910
065
-0,7
0710
68
±j0,
7071
068
-0,8
9100
65
±j0,
4539
905
-0,9
8768
83
±j0,
1564
345
n=
9
-0,9
3969
26
±j0,
3420
201
-0,1
7364
82
±j0,
9848
078
-0,5
±j0,
8660
254
-0,7
6604
44
±j0,
6427
876
-1
n=
8
-0,1
9509
03
±j0,
9807
853
0,55
5570
2
±j0,
8314
696
-0,8
3146
96
±j0,
5555
702
-0,9
8078
53
±j0,
1950
903
n=
7
-0,9
0096
89
±j0,
4338
837
0,22
2520
9
±j0,
9749
279
0,62
3489
8
±j0,
7818
315
-1
n=
6
-0,2
5881
90
±j0,
9659
258
-0,7
0710
68
±j0,
7071
068
-0,9
6592
58
±j0,
2588
190
n=
5
-0,8
0901
70
±j0,
5877
852
-0,3
0901
70
±j0,
9510
565
-1
n=
4
-0,3
8268
34
±j0,
9238
795
-0,9
2387
95
n=
3
-0,5
±j0,
8660
254
-1
n=
2
-0,7
0710
68
±j0,
7071
068
Ta
be
la C
. 1
- P
ólo
s d
e B
utt
erw
ort
h