Você está na página 1de 308

srie AUTOMAO INDUSTRIAL

Processamento
de Sinais
srie AUTOMAO INDUSTRIAL

Processamento
de sinais
CONFEDERAO NACIONAL DA INDSTRIA CNI

Robson Braga de Andrade


Presidente

Diretoria de Educao e Tecnologia

Rafael Esmeraldo Lucchesi Ramacciotti


Diretor de Educao e Tecnologia

SENAI-DN SERVIO NACIONAL DE APRENDIZAGEM INDUSTRIAL

Conselho Nacional

Robson Braga de Andrade


Presidente

SENAI Departamento Nacional

Rafael Esmeraldo Lucchesi Ramacciotti


Diretor-Geral

Gustavo Leal Sales Filho


Diretor de Operaes
Srie AUTOMAO INDUSTRIAL

processamento
de sinais
2012. SENAI Departamento Nacional

2012. SENAI Departamento Regional do Rio Grande do Sul

A reproduo total ou parcial desta publicao por quaisquer meios, seja eletrnico,
mecnico, fotocpia, de gravao ou outros, somente ser permitida com prvia autorizao,
por escrito, do SENAI Departamento Regional do Rio Grande do Sul.

Esta publicao foi elaborada pela equipe da Unidade Estratgica de Desenvolvimento


Educacional UEDE/Ncleo de Educao a Distncia NEAD, do SENAI do Rio Grande do
Sul, com a coordenao do SENAI Departamento Nacional, para ser utilizada por todos os
Departamentos Regionais do SENAI nos cursos presenciais e a distncia.

SENAI Departamento Nacional


Unidade de Educao Profissional e Tecnolgica UNIEP

SENAI Departamento Regional do Rio Grande do Sul


Unidade Estratgica de Desenvolvimento Educacional UEDE/Ncleo de Educao a
Distncia NEAD

FICHA CATALOGRFICA
S491p

Servio Nacional de Aprendizagem Industrial. Departamento Nacional


Processamento de sinais / Servio Nacional de Aprendizagem Industrial.
Departamento Nacional, Servio Nacional de Aprendizagem Industrial.
Departamento Regional do Rio Grande do Sul. Braslia : SENAI/DN, 2012.
295 p. : il. (Srie Automao Industrial).

ISBN 978-85-7519-531-4

1. Dispositivos eletrnicos. I. Servio Nacional de Aprendizagem Industrial.


Departamento Regional do Rio Grande do Sul. II. Ttulo. III. Srie.

CDU 621.38
Bibliotecrio Responsvel: Enilda Hack- CRB 599/10

SENAI Sede
Servio Nacional de Setor Bancrio Norte . Quadra 1 . Bloco C . Edifcio Roberto
Aprendizagem Industrial Simonsen . 70040-903 . Braslia DF . Tel.: (0xx61)3317-9190
Departamento Nacional http://www.senai.br
Lista de ilustraes
Figura 1 - Circuito...............................................................................................................................................................22
Figura 2 - Raio - Tenso...................................................................................................................................................22
Figura 3 - Corrente contnua.........................................................................................................................................23
Figura 4 - Corrente alternada........................................................................................................................................24
Figura 5 - Smbolo do diodo.........................................................................................................................................24
Figura 6 - LED (diodo emissor de luz)........................................................................................................................24
Figura 7 - Diodo retificador...........................................................................................................................................25
Figura 8 - Diodo em srie na alimentao de um circuito eletrnico............................................................25
Figura 9 - Diodo de proteo contra transientes de tenso..............................................................................26
Figura 10 - Interior de um diodo, a juno PN (anodo e catodo)....................................................................27
Figura 11 - Inversamente Polarizado.........................................................................................................................28
Figura 12 - Diretamente Polarizado............................................................................................................................28
Figura 13 - Cargas iguais se repelindo, e as cargas opostas se atraindo, criando uma rea de fluxo
de eltrons............................................................................................................................................................................28
Figura 14 - Cargas iguais se repelindo, e as cargas opostas se atraindo, criando uma rea de re-
pulso na juno, interrompendo o fluxo de eltrons.........................................................................................29
Figura 15 - Smbolo do diodo retificador, segundo norma IEEE 315..............................................................30
Figura 16 - Conversor de corrente alternada para corrente contnua, com retificador de onda completa..30
Figura 17 - Ponte retificadora e seus diodos convertendo corrente contnua em corrente alternada......30
Figura 18 - Smbolo de diodo zener, segundo norma IEEE315, e diodo zener...........................................32
Figura 19 - Circuito...........................................................................................................................................................32
Figura 20 - Diodo 1N746 ...............................................................................................................................................33
Figura 21 - Smbolo de LED e um LED ......................................................................................................................35
Figura 22 - Imagem interna de um diodo ...............................................................................................................36
Figura 23 - Sinaleiros LEDs usados em quadros de comando eltricos e em sistemas de automao
industrial................................................................................................................................................................................36
Figura 24 - Mquina utilizando os sinaleiros de LED............................................................................................37
Figura 25 - LEDs junto a resistores em um circuito srie....................................................................................37
Figura 26 - Dgito de 7 segmentos, composto por 7 leds para mostar o nmero, mais um para o ponto ..38
Figura 27 - Fotodiodo .....................................................................................................................................................39
Figura 28 - Cortina tica de segurana com LED ..................................................................................................40
Figura 29 - Smbolo do varicap segundo norma IEEE315..................................................................................40
Figura 30 - Diodo schottky............................................................................................................................................41
Figura 31 - Diodo tnel...................................................................................................................................................41
Figura 32 - Multimetro....................................................................................................................................................41
Figura 33 - Diodo diretamente polarizado..............................................................................................................42
Figura 34 - Diodo inversamente polarizado............................................................................................................42
Figura 35 - Optoacopladores........................................................................................................................................43
Figura 36 - Circuito divisor de tenso .......................................................................................................................43
Figura 37 - Optoacoplador ...........................................................................................................................................44
Figura 38 - Diagrama de um sistema automatizado............................................................................................44
Figura 39 - Circuito integrado.......................................................................................................................................45
Figura 40 - Transmissores NPN e PNP........................................................................................................................47
Figura 41 - Smbolo de um transistor bipolar NPN e diagrama da juno NPN.........................................48
Figura 42 - Transistor NPN polarizado. Carga representa um circuito ou componente que est
sendo energizado..............................................................................................................................................................48
Figura 43 - Smbolo de um transistor bipolar PNP e diagrama da juno PNP..........................................49
Figura 44 - Transistor NPN polarizado. Carga representa um circuito ou componente que est
sendo energizado..............................................................................................................................................................49
Figura 45 - Circuito de acionamento de rel utilizando transistor NPN........................................................50
Figura 46 - Circuito de acionamento de rel utilizando transistor PNP........................................................53
Figura 47 - Encapsulamento: principais encapsulamentos de transistores e suas potncias...............54
Figura 48 - Tela de busca do Google..........................................................................................................................56
Figura 49 - Datasheet do transistor pesquisado....................................................................................................56
Figura 50 - Detalhe do multmetro, marcado para teste de diodo.................................................................56
Figura 51 - Teste transistor NPN...................................................................................................................................57
Figura 52 - Teste transistor PNP....................................................................................................................................57
Figura 53 - Transistor Darlington.................................................................................................................................58
Figura 54 - Smbolo de JFET e representao da estrutura construtiva........................................................59
Figura 55 - Estrutura construtiva de um transistor MOS canal N de um transistor MOS canal P tipo
enriquecimento e seus respectivos smbolos..........................................................................................................60
Figura 56 - Estrutura construtiva de um transistor MOS canal N de um transistor MOS canal P tipo
depleo e seus respectivos smbolos.......................................................................................................................61
Figura 57 - Motor de corrente contnua convencional .......................................................................................62
Figura 58 - Motor de corrente contnua convencional 1....................................................................................62
Figura 59 - Motor DC........................................................................................................................................................62
Figura 60 - Ponte H para controle da rotao de um motor utilizando transistores MOS......................63
Figura 61 - Detalhamento..............................................................................................................................................63
Figura 62 - Terminal de controle de um transistor ...............................................................................................64
Figura 63 - Terminal de controle de um transistor 1............................................................................................65
Figura 64 - Conexo da carga a um transistor NPN usado como chave.......................................................65
Figura 65 - Circuito CMOS ou MOS.............................................................................................................................66
Figura 66 - Smbolos CMOS ..........................................................................................................................................66
Figura 67 - Tipos de tiristores .......................................................................................................................................67
Figura 68 - Smbolo do SCR...........................................................................................................................................69
Figura 69 - Analogia entre um SCR e um circuito com dois transistores......................................................69
Figura 70 - Representao da Curva V x A de um SCR.........................................................................................69
Figura 71 - Smbolo de DIAC.........................................................................................................................................70
Figura 72 - Circuito de um dimmer.............................................................................................................................71
Figura 73 - Voltmetro para milivolts conectado a um sensor de temperatura tipo termopar.............72
Figura 74 - Da direita para esquerda: Sensor de presso que envia sinal analgico atravs de vari-
ao de corrente (4 a 20 mA); Sensor tubular indutivo analgico, que envia sinal de 0 a 10V con-
forme proximidade; sensores analgicos por ultrasom, que envia sinal de 0 a 10V.................................73
Figura 75 - Amplificador operacional. CI LM741....................................................................................................75
Figura 76 - Amplificador inversor. No grfico em vermelho, o sinal de entrada (Vi), e em azul o sinal
de sada, j amplificado e invertido (Vo).....................................................................................................................76
Figura 77 - Amplificador. No grfico em vermelho, o sinal de entrada (Vi), e em azul o sinal de sada,
j amplificado (Vo)..............................................................................................................................................................76
Figura 78 - Tanque de fluido.........................................................................................................................................77
Figura 79 - Tanque de fluido 1......................................................................................................................................77
Figura 80 - Divisor de tenso........................................................................................................................................78
Figura 81 - Circuito...........................................................................................................................................................79
Figura 82 - Circuito 1........................................................................................................................................................79
Figura 83 - Circuito somador inversor.......................................................................................................................81
Figura 84 - Amplificador operacional como subtrator........................................................................................82
Figura 85 - Amplificador operacional como subtrator 1.....................................................................................82
Figura 86 - Representao do sinal de entrada (Vin) e sada (Vo) de um oscilador astvel...................83
Figura 87 - Circuito integrado 555 e grfico de sada..........................................................................................83
Figura 88 - Grfico de PWM a 1kHz.............................................................................................................................84
Figura 89 - Oscilador Monoestvel.............................................................................................................................85
Figura 90 - Filtro com capacitor, aplicado e fontes para diminuio do ripple........................................86
Figura 91 - Grfico da Intensidade de sinal x Frequncia...................................................................................87
Figura 92 - Filtro passa baixa.........................................................................................................................................87
Figura 93 - Filtro passa alta............................................................................................................................................88
Figura 94 - Filtro passa-faixa, usando capacitor, indutor e resistor.................................................................88
Figura 95 - Filtro rejeita-faixa, tambm conhecido como rejeita-banda......................................................89
Figura 96 - Filtro passa-baixa .......................................................................................................................................90
Figura 97 - Filtro passa-alta ...........................................................................................................................................90
Figura 98 - Filtro ativo passa-banda...........................................................................................................................90
Figura 99 - Fonte de bancada.......................................................................................................................................91
Figura 100 - Fonte de microcomputador.................................................................................................................91
Figura 101 - Fonte chaveada 2A..................................................................................................................................91
Figura 102 - Grfico da tenso aps retificao, sem aplicao de filtros....................................................92
Figura 103 - Transformador utilizado em uma fonte linear...............................................................................93
Figura 104 - Fonte simtrica..........................................................................................................................................93
Figura 105 - Esquema de fonte simtrica.................................................................................................................93
Figura 106 - Esquema de fonte simtrica.................................................................................................................94
Figura 107 - Fases de uma fonte chaveada..............................................................................................................95
Figura 108 - Reservatrios dgua...............................................................................................................................99
Figura 109 - Reservatrios dgua com sensor potenciomtrico................................................................. 100
Figura 110 - Reservatrios dgua com sensor de ultrassom......................................................................... 100
Figura 111 - Reservatrios dgua medido atravs do ngulo e refrao................................................. 100
Figura 112 - Reservatrios dgua sensor de nvel............................................................................................. 101
Figura 113 - Reservatrios dgua de clula de carga...................................................................................... 101
Figura 114 - Reservatrios dgua com terminais condutivos...................................................................... 101
Figura 115 - Sensor de nvel digital e um sensor de nvel analgico.......................................................... 102
Figura 116 - Chave de contato normalmente aberto com princpio de acionamento magntico.. 103
Figura 117 - Boto de emergncia com contato normalmente fechado.................................................. 104
Figura 118 - Sensor NPN e PNP, forma de ligao e tipo de sinal de retorno........................................... 105
Figura 119 - Sensores NPN e PNP com resistor de definio de sinal para alta impedncia.............. 105
Figura 120 - Sensores NPN e PNP............................................................................................................................. 106
Figura 121 - Dispositivos de acoplamento eletromecnicos (a rel).......................................................... 107
Figura 122 - Sistema de sinaleiro e botoeiras cuja alimentao e comunicao realizada por um
nico cabo de dois fios condutores, usando comunicao digital serial em rede padro AS-I......... 107
Figura 123 - Sensor analgico................................................................................................................................... 108
Figura 124 - Sensor eletrnico de temperatura.................................................................................................. 109
Figura 125 - Princpio fsico........................................................................................................................................ 110
Figura 126 - Chaves mecnicas ................................................................................................................................ 111
Figura 127 - Sensor ptico de reflexo, e suas partes emissora/receptora .............................................. 112
Figura 128 - Sensor ptico por retrorreflexo com espelho refletor especial, usado como barreira
ptica para a deteo de objetos ............................................................................................................................ 114
Figura 129 - Sensor ptico por reflexo difusa .................................................................................................. 114
Figura 130 - Sensores pticos por transmisso .................................................................................................. 115
Figura 131 - Sistema de sensor ptico por transmisso usando fibra ptica .......................................... 115
Figura 132 - Sensor de barreira ptica .................................................................................................................. 116
Figura 133 - Scanner a laser ...................................................................................................................................... 117
Figura 134 - Sensor infravermelho........................................................................................................................... 118
Figura 135 - Rels fotoeltricos e um resistor dependente de luz............................................................... 119
Figura 136 - Sensor de viso...................................................................................................................................... 119
Figura 137 - Sensor com ultrasom........................................................................................................................... 120
Figura 138 - Equipamento aplicado anlise por ultrassom, permitindo identificar fissuras internas
no material atravs da anlise da propagao do som atravs do material.............................................. 120
Figura 139 - Sensores indutivos................................................................................................................................ 121
Figura 140 - Aplicao de sensores indutivos................................................................................................... 122
Figura 141 - Sensores capacitivos............................................................................................................................ 123
Figura 142 - Sensores magnticos........................................................................................................................... 124
Figura 143 - Cilindro pneumtico com mbolo magntico........................................................................... 124
Figura 144 - Circuito integrado sensor de efeito HALL A1101, da Allegro MicroSystems Inc........... 124
Figura 145 - Sensor de presso microcontrolado, de seu componente interno (sensor de presso) e
do piezorresistor utilizado nesta ltima como elemento detector de presso........................................ 126
Figura 146 - Sensor de presso do tipo pressostato de membrana............................................................ 126
Figura 147 - Circuitos integrados acelermetros................................................................................................ 127
Figura 148 - Sensor industrial.................................................................................................................................... 127
Figura 149 - Equipamentos que utilizam acelermetros................................................................................. 127
Figura 150 - Sensor strain-gage acoplado clula de carga.......................................................................... 127
Figura 151 - Modelo de posicionamento.............................................................................................................. 127
Figura 152 - Strain-gage.............................................................................................................................................. 127
Figura 153 - Sensores de turbinas............................................................................................................................ 128
Figura 154 - Tubulao com ponto de estrangulamento................................................................................ 129
Figura 155 - Representao de um sensor tipo pitot........................................................................................ 129
Figura 156 - Rotmetro................................................................................................................................................ 129
Figura 157 - Grfico da curva de sensores NTC e PTC genricos.................................................................. 131
Figura 158 - Voltmetro................................................................................................................................................ 132
Figura 159 - Sonda com termopar........................................................................................................................... 134
Figura 160 - Grfico das curvas de termopares, entre temperatura e tenso gerada em milivolts.134
Figura 161 - Imagem trmica de um motor eltrico em funcionamento................................................. 135
Figura 162 - Sensor infravermelho para a medio de temperaturas........................................................ 135
Figura 163 - Brao robtico........................................................................................................................................ 137
Figura 164 - Encoders pticos usados em suas articulaes e seu princpio de funcionamento..... 137
Figura 165 - Sensor de posio linear..................................................................................................................... 138
Figura 166 - Encoders analgico potenciomtrico............................................................................................ 138
Figura 167 - Encoders absolutos ptico................................................................................................................ 139
Figura 168 - Encoders incrementais ou relativos ptico.................................................................................. 140
Figura 169 - Encoders incrementais........................................................................................................................ 140
Figura 170 - Diagrama de funcionamento de um transdutor........................................................................ 142
Figura 171 - Transdutor de corrente, usado para medir a corrente atravs do campo eltrico gerado
pelo condutor................................................................................................................................................................... 144
Figura 172 - Esquema de um transdutor industrial de corrente................................................................ 144
Figura 173 - Transdutores de posio tipo LVDT................................................................................................ 144
Figura 174 - Transdutores de presso..................................................................................................................... 144
Figura 175 - Transdutor de fora clula de carga............................................................................................ 145
Figura 176 - Conversor de 4 a 20mA para sinal de radiofrequncia............................................................ 145
Figura 177 - Comparao analgica e digital...................................................................................................... 149
Figura 178 - Manmetro analgico (ponteiro).................................................................................................... 150
Figura 179 - Manmetro digital................................................................................................................................ 150
Figura 180 - Sistemas numricos.............................................................................................................................. 151
Figura 181 - Exemplo tabela verdade..................................................................................................................... 157
Figura 182 - Portas Lgicas......................................................................................................................................... 160
Figura 183 - Operadores da lgebra booleana.................................................................................................... 161
Figura 184 - Mapas de Karnaugh para 5 e para 6 variveis............................................................................. 168
Figura 185 - Diagrama de um multiplexador....................................................................................................... 169
Figura 186 - Multiplexador de 2 canais ................................................................................................................. 170
Figura 187 - Multiplexador de quatro entradas - a) Tabela verdade - b) Circuito implementado.... 170
Figura 188 - Multiplexador de 8 entradas - a) Tabela verdade - b) Smbolo lgico - c) Diagrama lgico... 171
Figura 189 - Portas lgicas utilizadas como circuitos de habilitao.......................................................... 172
Figura 190 - Multiplexador qudruplo de 2 entradas 74xx157 - a) Tabela verdade - b) Smbolo
lgico - c) Diagrama lgico.......................................................................................................................................... 172
Figura 191 - Diagrama de um demultiplexador ................................................................................................ 173
Figura 192 - Demultiplexador de 2 canais............................................................................................................ 174
Figura 193 - Projeto de um demultiplexador 1:4 - a) Tabela verdade - b) Expresses para as sadas -
c) Circuito implementado............................................................................................................................................ 174
Figura 194 - Demultiplexador 1:8 - a) Tabela verdade - b) Expresses para as sadas - c) Diagrama
lgico................................................................................................................................................................................... 175
Figura 195 - Circuito 74xx138, Decodificador/Demultiplexador configurado como demultiplexador
com a entrada de habilitao funcionando como entrada de dados.......................................................... 176
Figura 196 - Circuito 74xx154 configurado como demultiplexador 1:16 - a) e b) Configuraes para
funcionamento como demultiplexador 1:16 - c) Diagrama lgico............................................................... 176
Figura 197 - Decodificador/Demultiplexador 74xx155: a) Tabela verdade; b) Diagrama de conexes;
c) Diagrama lgico.......................................................................................................................................................... 177
Figura 198 - Conversores DA e AD........................................................................................................................... 178
Figura 199 - Converso de um sinal analgico para digital............................................................................ 179
Figura 200 - Conversor AD muito utilizado, o ADC0808.................................................................................. 180
Figura 201 - Conversor D/A de 4 bits...................................................................................................................... 182
Figura 202 - Diagrama esquemtico de uma calculadora.............................................................................. 183
Figura 203 - Cdigo BCD (Binary Coded Decimal)............................................................................................. 185
Figura 204 - Display de 7 segmentos...................................................................................................................... 186
Figura 205 - Circuitos decodificadores................................................................................................................... 186
Figura 206 - Decodificador 74xx138, diagrama lgico e tabela verdade em relao s entradas de
habilitao (enable)........................................................................................................................................................ 187
Figura 207 - Esquema de ligao de um decodificador de 2 bits para controlar at 4 sadas, usadas
em um motor de passo de 4 bobinas...................................................................................................................... 187
Figura 208 - Diagrama geral de um codificador................................................................................................. 188
Figura 209 - Painel de equipamento com chave seletora de 8 posies................................................... 188
Figura 210 - CLP usando 3 entradas digitais para ler sinal de 8 diferentes combinaes possveis.188
Figura 211 - Codificador de 8 para 3 linhas.......................................................................................................... 189
Figura 212 - Flip-flop RS - a) implementao do circuito com portas NOR - b) smbolo lgico........ 190
Figura 213 - Flip-flop RS - a) implementao do circuito com portas NAND - b) smbolo lgico..... 191
Figura 214 - Flip-flop RS sncrono - a) implementao do circuito com portas lgicas - b) smbolo
lgico................................................................................................................................................................................... 191
Figura 215 - Implementao do circuito de um flip-flop JK com portas lgicas.................................... 192
Figura 216 - Implementao do circuito de um flip-flop JK mestre-escravo........................................... 193
Figura 217 - Smbolo lgico de um flip-flop JK mestre-escravo................................................................... 194
Figura 218 - Flip-flop sensvel borda................................................................................................................... 194
Figura 219 - Flip-flop JK mestre-escavo com entradas Preset e Clear - a) implementao do circuito
com portas lgicas - b) smbolo lgico................................................................................................................... 195
Figura 220 - Flip-flop tipo D - a) implementao do circuito a partir de um flip-flop JK - b)
smbolo lgico................................................................................................................................................................ 196
Figura 221 - Flip-flop tipo T - a) implementao do circuito a partir de um flip-flop JK - b) sm-
bolo lgico....................................................................................................................................................................... 196
Figura 222 - Circuito com Flip-Flop J-K aplicado configurao de Toggle. CI utilizado: 74xx73.... 196
Figura 223 - Grfico de Aplicaes de microcontroladores PIC por famlia.............................................. 207
Figura 224 - Encapsulamentos do microcontrolador PIC16F877A.............................................................. 210
Figura 225 - Microcontrolador PIC16F877A I/P e seus principais pinos de alimentao, conexo e I/O... 210
Figura 226 - Microcontrolador PIC16f877A e alguns dos terminais de funes especiais.................. 212
Figura 227 - Diagrama que demonstra o caminho percorrido por um programa, desde sua criao
at a gravao no microcontrolador de destino, e seu uso no equipamento.......................................... 214
Figura 228 - Controlador multifuno.................................................................................................................... 214
Figura 229 - DB25 femea porta paralela fsica..................................................................................................... 216
Figura 230 - Fluxograma.............................................................................................................................................. 220
Figura 231 - Janela de novo aquivo......................................................................................................................... 226
Figura 232 - Tela Salvar Como, que aparece ao se iniciar um novo programa...................................... 226
Figura 233 - Demonstrando a opo para compilao (pode ser obtida pela tecla de atalho F9).. 228
Figura 234 - Demonstrando a compilao em processo................................................................................. 228
Figura 235 - Hardware criado em um simulador de circuitos eletrnicos................................................. 230
Figura 236 - Esquema Eltrico................................................................................................................................... 232
Figura 237 - Comandos para acionamento das sadas digitais..................................................................... 237
Figura 238 - Controle de motor de passo unipolar............................................................................................ 239
Figura 239 - Comandos para leitura das sadas digitais 1............................................................................... 244
Figura 240 - Tipos de dados complexos................................................................................................................. 248
Figura 241 - Mquina de clculo inadequada..................................................................................................... 256
Figura 242 - Mquina de clculo inadequada 1.................................................................................................. 256
Figura 243 - Fluxograma.............................................................................................................................................. 258
Figura 244 - Hardware.................................................................................................................................................. 263
Figura 245 - Fluxo de execuo em um programa com estruturas de repetio while....................... 265
Figura 246 - Chamadas a funes/sub-rotinas.................................................................................................... 269
Figura 247 - Esquema de ligao de um microcontrolador PIC16F877A.................................................. 272
Figura 248 - Display alfanumrico........................................................................................................................... 277
Figura 249 - LCD............................................................................................................................................................. 278
Figura 250 - Uso com o LCD....................................................................................................................................... 279
Figura 251 - Uso com o LCD 1.................................................................................................................................... 280
Figura 252 - Uso com o LCD 2.................................................................................................................................... 282
Figura 253 - Comunicao serial.............................................................................................................................. 283
Figura 254 - Esquema de ligao de um MAX232 a um microcontrolador e uma porta serial
padro DB9...................................................................................................................................................................... 283
Figura 255 - Pinos do PIC16F877A que podem ser configurados para converso analgica/digital..... 286
Figura 256 - Potencimetro de 10K conectado a um microcontrolador. Para facilitar entendimento,
demais ligaes de alimentao e clock do microcontrolador foram suprimidas.................................. 287
Figura 257 - Sensor de temperatura LM35DZ, de caracterstica linear, conectado diretamente ao
canal AN0 de um microcontrolador......................................................................................................................... 288
Figura 258 - Ligao de um LDR em um microcontrolador usando o canal AN1................................... 290
Figura 259 - Ligao de um transistor a um motor............................................................................................ 291

Tabela 1: Tcnico em Automao Industrial.............................................................................................................19


Tabela 2: Diodos retificadores e suas principais caractersticas........................................................................31
Tabela 3: Principais modelos e valores comerciais.................................................................................................34
Tabela 4: Principais modelos de transistores NPN e PNP disponveis.............................................................54
Tabela 5: Circuito A e B.................................................................................................................................................. 157
Tabela 6: Circuito A e B.................................................................................................................................................. 158
Tabela 7: Principais portas lgicas............................................................................................................................. 159
Tabela 8: Equivalencias das portas lgicas............................................................................................................. 160
Tabela 9: Verdade para as expresses equivalentes: a) XY e b) X + Y ....................................................... 164
Tabela 10: Verdade para as expresses complementares a) XY e b) XY ..................................................... 164
Tabela 11: Universalidade das portas NAND e NOR........................................................................................... 164
Tabela 12: Verdade considerando condies irrelevantes............................................................................... 168
Tabela 13: Tabela verdade para o circuito.............................................................................................................. 174
Tabela 14: Cdigo binrio natural de 4 bits........................................................................................................... 184
Tabela 15: Verdade de um codificador com entradas negadas...................................................................... 189
Tabela 16: Verdade para o flip-flop RS implementado com portas NOR.................................................... 190
Tabela 17: Verdade para o flip-flop RS implementado com portas NAND................................................. 191
Tabela 18: Verdade para o flip-flop RS sncrono................................................................................................... 192
Tabela 19: Verdade para o flip-flop RS sncrono................................................................................................... 193
Tabela 20: Verdade para o flip-flop RS sncrono................................................................................................... 194
Tabela 21: Verdade para o flip-flop JK mestre-escravo com preset e clear ............................................... 195
Tabela 22: Verdade para o flip-flop tipo D ............................................................................................................. 196
Tabela 23: Verdade para o flip-flop tipo T .............................................................................................................. 197
Tabela 24: Modelos comerciais de flip-flop .......................................................................................................... 197
Tabela 25: Execuo de uma algoritmo ................................................................................................................. 218
Tabela 26: Programa escrito em assembly, e a representao de instrues em linguagem binria.
Cdigo binrio tem carter ilustrativo, podendo haver variaes................................................................ 222
Tabela 27: Comando executado em linguagem C, e a produo (em cdigo executvel) gerada pela
instruo............................................................................................................................................................................. 223
Tabela 28: Tipos de dados para armazenar valores............................................................................................. 244
Tabela 29: Prefixo de declarao das variveis..................................................................................................... 245
Tabela 30: Operadores................................................................................................................................................... 251
Tabela 31: Operadores avanados............................................................................................................................ 253
Tabela 32: Especificadores de formato.................................................................................................................... 281
Sumrio

1 Introduo.......................................................................................................................................................................19

2 Eletrnica Analgica.....................................................................................................................................................21
2.1 Diodos .............................................................................................................................................................24
2.1.1 Diodo retificador / diodo de sinal .......................................................................................30
2.1.2 Diodo zener..................................................................................................................................32
2.1.3 Diodo emissor de luz................................................................................................................35
2.1.4 Fotodiodo.....................................................................................................................................39
2.1.5 Varicap...........................................................................................................................................40
2.1.6 Diodo schottky............................................................................................................................41
2.1.7 Diodo tnel..................................................................................................................................41
2.1.8 Como testar um diodo.............................................................................................................41
2.1.9 Optoacopladores.......................................................................................................................42
2.2 Acionamentos a transistor........................................................................................................................44
2.2.1 Caractersticas e aplicaes....................................................................................................46
2.2.2 Transistor bipolar ......................................................................................................................47
2.2.3 Transistor darlington.................................................................................................................58
2.2.4 Transistores de efeito de campo...........................................................................................58
2.2.5 Transistores CMOS.....................................................................................................................65
2.3 Tiristores..........................................................................................................................................................66
2.3.1 SCR..................................................................................................................................................68
2.3.2 DIAC................................................................................................................................................70
2.3.3 TRIAC...............................................................................................................................................70
2.4 Condicionamento de sinal........................................................................................................................71
2.4.1 Amplificador operacional ......................................................................................................74
2.4.2 Amplificador operacional como comparador.................................................................78
2.4.3 Amplificador operacional como somador........................................................................81
2.4.4 Amplificador operacional como subtrator.......................................................................81
2.5 Osciladores ....................................................................................................................................................83
2.5.1 Oscilador astvel........................................................................................................................83
2.5.2 Oscilador monoestvel............................................................................................................85
2.6 Filtros................................................................................................................................................................86
2.6.1 Filtro passivo................................................................................................................................86
2.6.2 Filtro ativo.....................................................................................................................................89
2.7 Fontes de alimentao...............................................................................................................................90
2.7.1 Fonte linear..................................................................................................................................92
2.7.2 Fonte simtrica...........................................................................................................................93
2.7.3 Fonte chaveada..........................................................................................................................94
3 Sensores............................................................................................................................................................................99
3.1 Sensores digitais........................................................................................................................................ 103
3.2 Sensores analgicos................................................................................................................................. 107
3.3 Princpio fsico............................................................................................................................................ 110
3.4 Sensores eletromecnicos..................................................................................................................... 111
3.5 Sensores pticos....................................................................................................................................... 111
3.5.1 Sensor ptico por retrorreflexo....................................................................................... 114
3.5.2 Sensor ptico por reflexo difusa..................................................................................... 114
3.5.3 Sensores pticos por transmisso.................................................................................... 115
3.5.4 Sensores pticos atravs de cabos de fibra ptica..................................................... 115
3.5.5 Sensor de barreira ptica de segurana......................................................................... 116
3.5.6 Sensores a laser....................................................................................................................... 117
3.5.7 Sensor infravermelho............................................................................................................ 118
3.5.8 Rels fotoeltricos.................................................................................................................. 118
3.5.9 Viso artificial............................................................................................................................ 119
3.6 Sensor de ultrassom................................................................................................................................. 119
3.7 Sensores indutivos................................................................................................................................... 121
3.8 Sensores capacitivos................................................................................................................................ 122
3.9 Sensores magnticos............................................................................................................................... 124
3.10 Sensor de presso.................................................................................................................................. 125
3.11 Sensores de acelerao........................................................................................................................ 126
3.12 Extensmetros e clulas de carga................................................................................................... 127
3.13 Sensores de vazo.................................................................................................................................. 128
3.14 Sensores de temperatura.................................................................................................................... 130
3.14.1 Tipos de termopares............................................................................................................ 132
3.14.2 Sensor infravemelho aplicado medio de temperatura................................... 135
3.14.3 Termodinmica aplicada leitura de temperatura.................................................. 135
3.15 Sensores de posicionamento............................................................................................................. 136
3.15.1 Sensores de posio linear................................................................................................ 137
3.15.2 Encoders absolutos.............................................................................................................. 138
3.15.3 Encoders incrementais ou relativos............................................................................... 139
3.16 Transdutores / Conversores................................................................................................................ 142
3.16.1 Transdutores passivos......................................................................................................... 143
3.16.2 Transdutores ativos.............................................................................................................. 143
3.16.3 Transdutores industriais..................................................................................................... 144
3.16.4 Conversores de sinal............................................................................................................ 145

4 Sistemas Digitais......................................................................................................................................................... 149


4.1 Vantagens das tcnicas digitais........................................................................................................... 153
4.1.1 Limitaes das tcnicas digitais......................................................................................... 154
4.2 Circuitos combinacionais e sequenciais........................................................................................... 156
4.3 Circuitos lgicos........................................................................................................................................ 156
4.3.1 Noes de lgebra booleana.............................................................................................. 156
4.3.2 Tabela verdade......................................................................................................................... 157
4.3.3 Portas lgicas........................................................................................................................... 158
4.3.4 Operadores da lgebra booleana..................................................................................... 160
4.3.5 Teoremas e leis da lgebra booleana............................................................................... 161
4.3.6 Expresses equivalentes e complementares................................................................ 163
4.3.7 Universalidade das portas NAND e NOR........................................................................ 164
4.3.8. Simplificao de circuitos lgicos.................................................................................... 165
4.4 Circuitos multiplexadores e demultiplexadores............................................................................ 169
4.4.1 Circuitos multiplexadores.................................................................................................... 169
4.4.2 Circuitos demultiplexadores............................................................................................... 173
4.5 Conversores D/A e A/D........................................................................................................................... 177
4.5.1 Conversor A/D.......................................................................................................................... 180
4.5.2 Conversor D/A.......................................................................................................................... 181
4.6 Circuitos codificadores e decodificadores....................................................................................... 183
4.6.1 Cdigos numricos e alfanumricos............................................................................... 183
4.6.2 Cdigo BCD (Binary Coded Decimal)............................................................................... 184
4.6.3 Circuitos decodificadores..................................................................................................... 186
4.6.4 Circuitos codificadores.......................................................................................................... 188
4.7 Flip-flop (multivibrador biestvel)...................................................................................................... 189
4.7.1 Flip-flop RS (reset-set)........................................................................................................ 190
4.7.2 Flip-flop RS sncrono.............................................................................................................. 191
4.7.3 Flip-flop JK................................................................................................................................. 192
4.7.4 Flip-flop JK mestre-escravo (master-slave).................................................................... 193
4.7.5 Flip-flop JK mestre-escravo com preset e clear........................................................... 195
4.7.6 Flip-flop D.................................................................................................................................. 195
4.7.7 Flip-flop Tipo T......................................................................................................................... 196
4.7.8 Modelos comerciais de flip-flop........................................................................................ 197

5 Microcontroladores................................................................................................................................................... 201
5.1 Sistemas embarcados na automao industrial............................................................................ 201
5.1.1 Microprocessadores na Automao Industrial............................................................. 202
5.2 Microcontrolador...................................................................................................................................... 204
5.3 Microcontrolador MICROCHIP PIC...................................................................................................... 206
5.3.1 Recursos de um microcontrolador PIC............................................................................ 208
5.4 Arquivos executveis para microcontrolador................................................................................. 213
5.5 Transferindo o programa........................................................................................................................ 214
5.5.1 BOOTLOADER Tcnica para autoprogramao......................................................... 216
5.6 Algoritmos................................................................................................................................................... 217
5.7 Fluxograma................................................................................................................................................. 220
5.8 Compilador................................................................................................................................................. 221
5.8.1 Erros de compilao............................................................................................................... 224
5.9 Linguagem C.............................................................................................................................................. 224
5.9.1 Criao de um programa..................................................................................................... 225
5.9.2 Como compilar........................................................................................................................ 227
5.9.3 Transferindo o programa HEX............................................................................................ 230
5.9.4 Lao infinito.............................................................................................................................. 231
5.9.5 Cuidados com pontuao e alinhamento...................................................................... 233
5.9.6 Comandos para acionamento das sadas digitais....................................................... 236
5.9.7 Comandos para leitura das Entradas digitais............................................................... 239
5.9.8 Tipos de dados......................................................................................................................... 241
5.9.9 Nome das variveis................................................................................................................ 246
5.9.10 Local da declarao de variveis..................................................................................... 246
5.9.11 Tipos de dados complexos................................................................................................ 248
5.9.12 Operadores............................................................................................................................. 250
5.9.13 Paradigmas de programao........................................................................................... 257
5.9.14 Estruturas de controle de fluxo....................................................................................... 258
5.9.15 GOTO (v para...)................................................................................................................... 259
5.9.16 IF (condio se...)................................................................................................................... 260
5.9.17 SWITCH / CASE (escolha).................................................................................................... 262
5.9.18 WHILE Estrutura de repetio....................................................................................... 265
5.9.19 DO WHILE (faa/enquanto)........................................................................................... 267
5.9.20 FOR (para)................................................................................................................................ 267
5.9.21 Chamadas a funes / sub-rotinas................................................................................. 269
5.9.22 Passagem de parmetros.................................................................................................. 271
5.9.23 Passagem de parmetros por referncia..................................................................... 275
5.9.24 Retorno de dados................................................................................................................. 276
5.9.25 Uso de display alfanumrico............................................................................................ 276
5.9.26 PRINTF...................................................................................................................................... 279
5.9.27 Comunicao serial.............................................................................................................. 282
5.9.28 ADC Converso analgica/digital............................................................................... 285
5.9.29 PWM.......................................................................................................................................... 290

Referncias......................................................................................................................................................................... 295

Minicurrculo do Autor.................................................................................................................................................. 298

ndice................................................................................................................................................................................... 299
Introduo

1
Nesta unidade curricular Processamento de Sinais comearemos na rea especfica de
formao, familiarizando-o com o processamento de sinais eletrnicos em sistemas de controle
e automao. Consideraremos conhecimentos relativos Eletrnica Analgica, Eletrnica Digital,
Microcontroladores e Sensores(DCN-DN).
No primeiro captulo, que Eletrnica Analgica, identificaremos a aplicabilidade dos
fundamentos de eletrnica analgica relativos aos sistemas de controle e automao. No segundo
captulo, Sensores, analisaremos o funcionamento de dispositivos sensores aplicveis em sistemas
de controle e automao. No terceiro captulo, Sistemas Digitais, identificaremos a aplicabilidade
dos fundamentos de eletrnica digital relativos aos sistemas de controle e automao. No ltimo
captulo, que o de Microcontroladores, identificaremos a aplicabilidade dos fundamentos de
programao de microcontroladores relativos aos sistemas de controle e automao.
A seguir so descritos na matriz curricular dos mdulos as unidades curriculares previstas e as
respectivas cargas horrias. (Tabela 1)
Tabela 1: Tcnico em Automao Industrial
Mdulos Denominao Unidades Curriculares Carga Carga Horria
Horria Mdulo
Mdulo Bsico Fundamentos tcnicos e Fundamentos da Comunicao 100h 340h
cientficos Fundamentos da Eletrotcnica 140h
Fundamentos da Mecnica 100h
Mdulo Fundamentos tcnicos e Acionamento de Dispositivos 160 h 340h
Introdutrio cientficos Atuadores
Processamento de Sinais 180 h
Especfico I Manuteno e Implemen- Gesto da Manuteno 34h 340 h
tao de equipamentos e Implementao de Equipamentos 136h
dispositivos Dispositivos
Instrumentao e Controle
Manuteno de Equipamentos e 102h
Dispositivos 68h
Especfico II Desenvolvimento de Desenvolvimento de Sistemas de 100h 340h
sistemas de controle e Controle
Automao Sistemas Lgicos Programveis 160h
Tcnicas de Controle 80h
Fonte: SENAI
Eletrnica Analgica

Eletricidade o fenmeno fsico que tem origem na movimentao dos eltrons. Estudar
eletricidade significa estudar as grandezas relacionadas a esta movimentao, como corrente,
tenso e resistncia eltrica.
Eletrnica, por sua vez, a cincia que estuda a forma de controlar a energia eltrica, ou
seja, de que forma podemos condicionar a movimentao dos eltrons em um circuito para
obter o efeito desejado.
Por vrias dcadas, o homem tem usado a energia eltrica com o objetivo de transform-
la em outras formas de energia, a fim de produzir um efeito especfico, como, por exemplo,
produzir luz, movimentar um motor eltrico, aquecer ou resfriar algo, gerar vibrao e
transformaes fsicas e qumicas. A energia eltrica deve ser controlada para que sua
transformao seja possvel.
Controlar esta energia o objetivo da cincia conhecida como ELETRNICA.
Na ELETRNICA ANALGICA estudamos as formas mais abrangentes de controle
da energia eltrica. Dedicamo-nos ao estudo de comportamentos de campos eltricos,
materiais condutores e semicondutores e sua aplicao no controle do fluxo de eltrons,
para obter o resultado esperado da forma mais eficiente possvel. Embora o conceito de
ELETRNICA ANALGICA seja bastante abrangente, neste material vamos utilizar uma viso
mais voltada ao seu uso na Automao Industrial, estudando os principais componentes
utilizados em circuitos eletrnicos bsicos presentes na rea. Tais componentes so
utilizados em mquinas e equipamentos para realizar o controle dos eltrons e obter o
efeito desejado, geralmente relacionado transformao da energia eltrica em outros
tipos de energia (trmica, cintica, magntica etc.). Alm dos j estudados resistores e
capacitores, existem indutores, transformadores, rels, e ainda diversos componentes
semicondutores, como diodos, transistores e circuitos integrados, entre outros.
AUTOMAO INDUSTRIAL
22

Chave

Transistor
Capacitor
Capacitor
Rels
Circuitos integrados
Resistores
Chave tctil
Conectores
Diodos emissores de luz (LED)

Figura 1 - Circuito
Fonte: Autor

Durante este curso, vamos procurar estudar os principais componentes utilizados


em circuitos eletrnicos (Figura 1) relacionados rea de Automao Industrial.
Para isso precisamos rever os conceitos j estudados sobre ELETRICIDADE. Sendo
assim, vamos fazer uma breve recapitulao destes contedos:

REVISANDO ELETRICIDADE

TENSO ELTRICA: Grandeza representada pelas letras E, U ou V, tem como unidade


de medida o volt (V). Ela representa a diferena de potencial eltrico entre dois pontos.
Por exemplo, para medir a tenso de uma bateria, precisamos medir a tenso entre
os dois polos da mesma bateria. Tenso define a fora capaz de movimentar cargas
eltricas de um ponto a outro. Para ficar mais claro, podemos imaginar a tenso como
a presso que os eltrons exercem para ir de um ponto a outro. (Figura 2)

Em condies normais de temperatura e presso uma


VOC tenso de 1000V pode romper a rigidez dieltrica de 1 mm
SABIA? de ar, criando uma fasca entre dois pontos? Chamamos
esta fasca de arco eltrico ou arco voltico.

Figura 2 - Raio - Tenso


Fonte: Autor
2 Eletrnica Analgica
23

RESISTNCIA ELTRICA: Grandeza representada pela letra R, tem como unidade de


medida o ohm (). a capacidade dos materiais em se opor passagem de corrente
eltrica. Quanto maior a resistncia, mais difcil para as cargas se deslocarem pelo
corpo. Alm de oferecerem diferentes resistncias entre si, alguns materiais ainda
variam a resistncia quando submetidos a variaes de temperatura e presso. A
adio de alguns elementos em uma soluo ou na composio de um determinado
material tambm pode alterar significativamente sua capacidade condutiva. Graas
a esta diversidade de comportamentos que os materiais apresentam ao serem
submetidos a uma tenso eltrica, a eletrnica evoluiu.
CORRENTE ELTRICA: Grandeza representada pela letra I, tem como unidade
de medida o Ampre (A). Ela define o movimento ordenado de cargas eltricas em
uma determinada direo em um determinado perodo de tempo. Quanto mais
eltrons se deslocarem de um ponto a outro em um determinado perodo, maior
a corrente. Segundo a lei de Ohm, existe uma relao diretamente proporcional
entre corrente e tenso, e inversamente proporcional entre corrente e resistncia,
que dada pela frmula: I = U / R. Quanto maior a tenso, maior a corrente, e
quanto maior a resistncia por onde a eletricidade passa, menor a corrente.

Uma das grandes variantes que determina a fatalidade


de um choque eltrico no dada pela TENSO, mas
pela CORRENTE. Como a corrente determinada pela
FIQUE resistncia do corpo em um choque eltrico, uma pessoa
ALERTA desprotegida, sem luvas isolantes e usando ferramentas
inadequadas, pode ser submetida a uma corrente
muito mais elevada do que um trabalhador usando EPIs
adequados em uma linha de alta-tenso energizada.

CORRENTE CONTNUA: Refere-se a uma corrente que tem sempre o mesmo


sentido. Nos acumuladores de energia (como baterias e capacitores) temos dois
polos que sempre possuem a mesma polaridade (+ e -) e oferecem uma diferena
de potencial especfica. Se ligarmos esta fonte de energia em uma carga, teremos
a energia sempre fluindo em uma mesma direo.
Imagem de uma bateria e de um grfico mostrando que a corrente se mantm
constante durante o tempo. (Figura 3)

Corrente tem um nico sentido


Corrente eltrica(A)

+
Carga

Tempo
-
Figura 3 - Corrente contnua
Fonte: Autor
AUTOMAO INDUSTRIAL
24

CORRENTE ALTERNADA: Como o nome j diz, neste tipo de corrente o sentido


da carga varia, alternando vrias vezes por segundo. Esta quantidade de variaes
(frequncia) medida em ciclos por segundo, usando-se a unidade de medida
Hz (Hertz). No Brasil, a rede eltrica disponibilizada em 60Hz (proveniente de
sistemas de gerao e transmisso), enquanto em alguns outros pases, como o
Paraguai, a rede eltrica 50Hz. (Figura 4)

Corrente mude de
sentido periodicamente
eltrica (A)
Corrente

F +/-

Carga
Tempo N

Figura 4 - Corrente alternada


Fonte: Autor

O Paraguai vende ao Brasil a energia eltrica excedente


gerada por sua parte da hidroeltrica de Itaip, onde
VOC a corrente alternada de 50Hz proveniente das turbinas
SABIA? geradoras paraguaias convertida para corrente contnua,
e posteriormente volta a ser transformada em corrente
alternada de 60Hz.

Em um sistema de corrente alternada monofsico (maioria das tomadas


eltricas residenciais) sempre h ao menos um condutor que possui tenso
positiva e negativa (oscilando vrias vezes por segundo), e um sistema condutor
de referncia, chamado de NEUTRO. Em alguns casos, deve haver ainda um
terminal de equipotencializao, que conhecemos como terra.

2.1 Diodos

Os diodos so componentes geralmente usados com o intuito de definir a


movimentao dos eltrons em um circuito. Em alguns casos tambm so usados
com o objetivo de transformar energia eltrica em ondas eletromagnticas. So
produzidos atravs de semicondutores, que so materiais que reagem de forma
diferente e controlada passagem da corrente eltrica. (Figura 5 e Figura 6)

(A) (K)

Figura 5 - Smbolo do diodo Figura 6 - LED (diodo emissor de luz)


Fonte: Autor Fonte: Autor
2 Eletrnica Analgica
25

Para que servem os diodos?

Em alguns circuitos, so usados para fazer com que a corrente tenha um


sentido nico, funcionando como uma vlvula unidirecional, deixando os
eltrons passarem somente em um sentido. Neste caso, imagine a vlvula
de enchimento do pneu de um automvel, tambm conhecida como vlvula
Schrader. Quando em perfeito funcionamento, ela permite que o ar entre no
pneu, mas no permite que saia, seno o pneu perderia presso. Da mesma
forma, o diodo pode ser utilizado para criar um caminho de mo nica aos
eltrons, impedindo que voltem pelo circuito. Isso pode ser observado em
circuitos retificadores, que so circuitos utilizados para converter a corrente
alternada em corrente contnua. (Figura 7)

- +

+ -

Figura 7 - Diodo retificador


Fonte: Autor

O diodo tambm pode ser utilizado para proteger circuitos contra sobretenso
ou, ainda, contra a polarizao invertida de circuitos e componentes. Na imagem
abaixo, um circuito protegido por um diodo em srie com a alimentao,
impedindo que haja corrente se o sistema for polarizado incorretamente. Isso
muito til em equipamentos eletrnicos onde uma bateria ou o conector de
alimentao DC possa ser instalado acidentalmente de forma invertida. Neste
caso, sem a proteo oferecida por um diodo, o circuito energizado poderia fazer
com que alguns componentes fossem incorretamente polarizados, o que leva o
danos permanentes e inutilizao do circuito. (Figura 8)

+
+ - ? CIRCUITO
- +? -
BATERIA

Figura 8 - Diodo em srie na alimentao de um circuito eletrnico


Fonte: Autor

Outra aplicao bastante comum de diodos em circuitos para proteger contra


transientes de tenso (tambm conhecidos como picos de tenso ou surtos de
tenso). Estes transientes ocorrem quando uma corrente eltrica bruscamente
interrompida, causando grande elevao de tenso (em um curto espao de
tempo). Diodos supressores de tenso so ligados em um circuito comumente
conhecido pelos termos de FREEWHEELING ou, ainda, RODA-LIVRE, eliminando
ou minimizando os efeitos deste pico de tenso. (Figura 9)
AUTOMAO INDUSTRIAL
26

V+

DIODO

REL
TRANSISTOR
RESISTOR

GND

Figura 9 - Diodo de proteo contra transientes de tenso


Fonte: Autor

Na imagem acima, quando o TRANSISTOR (que ser estudado em breve)


comutado para estado de conduo, a corrente eltrica passa por ele, energizando
a bobina do rel. Quando o transistor desligado o fluxo de eltrons bruscamente
interrompido. A bobina do rel, devido a suas caractersticas construtivas, possui
uma acentuada propriedade de INDUTNCIA, que faz com que o componente
tente manter o fluxo eletromagntico, elevando a tenso vrias vezes. Isso pode
danificar componentes se no houver uma regio de escape para esta energia. A
funo do DIODO neste circuito fazer com que estes eltrons fiquem circulando
pelo componente, dissipando a energia de forma graduada e controlada, sem
haver o surto de tenso no transistor, protegendo-o e aumentando sua vida til.
Outra aplicao dos diodos no controle de tenso, pois, devido a caractersticas
relativas aos materiais e forma da construo, diodos podem ser utilizados para
realizar uma queda controlada de tenso, e so teis em circuitos reguladores por
apresentarem um comportamento bastante estvel e previsvel. Veremos mais sobre
isso ao falar sobre DIFERENA DE POTENCIAL DE JUNO e sobre EFEITO ZENER.
Alguns tipos de diodos so construdos de forma a gerarem LUZ em suas
junes, algumas vezes de forma bastante intensa, como nos DIODOS LASER, e
em outros casos em luz visvel ou invisvel, com excelente eficincia. Este o caso
dos diodos emissores de luz, tambm conhecidos por LEDs.

Em uma TV ou monitor de vdeo de tecnologia LED a luz


tem origem em uma grande matriz de LEDs, dispostos em
VOC linhas e colunas, que iluminam o fundo de acordo com a
imagem? Uma tela de cristal lquido posicionada entre o
SABIA? espectador e os LEDs determina, atravs de milhes de
pequenos pontos, por onde a luz deve passar, compondo,
assim, a imagem que vemos.

Existem ainda aplicaes relacionadas velocidade de alguns tipos de diodos


especiais, que faz com que o componente seja ideal para os ciclos bastante rpidos, tpico
de circuitos utilizados em telecomunicaes, como nos aplicados em radiofrequncia.
2 Eletrnica Analgica
27

Podemos afirmar que os diodos so componentes constitudos de


semicondutores bastante utilizados em circuitos eletrnicos, e que podem
auxiliar no controle de tenso, no sentido da corrente, na proteo de circuitos, e
at mesmo na gerao e deteco de luz.
Mas, como o diodo construdo? De que eles so feitos?
Todo DIODO constitudo de uma JUNO envolvendo dois tipos de MATERIAL
SEMICONDUTOR. (Figura 10)

ANODO CATODO
+ -
P N
+ -

Figura 10 - Interior de um diodo, a juno PN (anodo e catodo)


Fonte: Autor

Material SEMICONDUTOR, como o nome j sugere, um material que possui


propriedades de condutividade intermedirias, no sendo nem CONDUTOR e
nem ISOLANTE. Um material semicondutor composto de estruturas cristalinas
com adio de elementos especficos e devido a composies diferentes, pode
apresentar reaes diferentes. O processo de adio de elementos para criar
estes compostos envolvendo material semicondutor chamado de dopagem.
Genericamente, os semicondutores podem ser divididos em TIPO P e TIPO N.
Um DIODO justamente a juno de um condutor de tipo P e outro de tipo
N, conhecida como JUNO PN. Devido a variaes realizadas no processo de
dopagem, a juno pode apresentar variaes de comportamento.

VOC O nome DIODO vem das palavras DI (duplo) com ELETRODO.


SABIA?

Portanto, um DIODO possui suas caractersticas definidas pelo tipo dos


SEMICONDUTORES usados na JUNO PN e a forma com que so propositadamente
contaminados com outros elementos no processo de dopagem. O nome JUNO
PN se deve ao fato de a juno ser feita usando dois materiais, sendo um com
lacunas eltricas (P - positivo) e outro com eltrons que sobram (N - negativo).
Explicando melhor, nos semicondutores tipo P e tipo N existem desequilbrios
relativos quantidade de eltrons em suas ligaes qumicas. No caso do
semicondutor tipo N existem eltrons sobrando, e no do semicondutor tipo P
existem eltrons faltando. Nestas vagas para eltrons nas ligaes qumicas do
semicondutor P chamamos de lacunas.
AUTOMAO INDUSTRIAL
28

Quando submetemos o terminal de tipo P de um diodo (ANODO) a uma tenso


POSITIVA, e ou terminal tipo N (CATODO) a uma tenso NEGATIVA, temos a chamada
POLARIZAO DIRETA. Como cargas iguais se repelem e cargas opostas se atraem,
a juno faz com que os eltrons fluam no circuito, havendo corrente eltrica.
J quando submetemos o terminal de tipo P de um diodo (ANODO) a uma
tenso NEGATIVA, e o terminal do tipo N (CATODO) a uma tenso POSITIVA,
temos a polarizao REVERSA, e neste caso, as cargas iguais criam uma rea de
repulso na juno, o que faz com que o material se comporte como ISOLANTE,
em decorrncia, no h corrente significativa no circuito.
Portanto, em um sentido da corrente o diodo convencional se comporta como
condutor, e em outro, se comporta como isolante. (Figura 11 e Figura 12)

CATODO ANODO ANODO CATODO


+ -
- +
N P P N
- + + -

+
+

CARGA
CARGA

alcalina
DC DC

1,5V - AA
1,5V - AA
alcalina

A A

, ,
POWER PK HOLD B/L DC / AC
POWER PK HOLD B/L DC / AC

AUTO POWER OFF


AUTO POWER OFF

-
-
+
+
-
-
CAT ll
CAT ll

20A mA COM VHz


20A mA COM VHz

INVERSAMENTE POLARIZADO DIRETAMENTE POLARIZADO

Figura 11 - Inversamente Polarizado Figura 12 - Diretamente Polarizado


Fonte: Autor Fonte: Autor

Na figura acima observa-se um diodo DIRETAMENTE polarizado em um circuito


alimentado por uma bateria. Neste caso, as cargas positivas (LACUNAS) no material
P so repelidas para prximo do material N da juno, e os eltrons do material N
tambm so repelidos pela tenso negativa proveniente da bateria para contra o
material P. Com as lacunas e eltrons sendo repelidos uma de encontro a outra, os
eltrons preenchem as lacunas, havendo passagem de corrente eltrica. (Figura 13)

ANODO CATODO

+ + + + + + + +++- --- - - - - - - - -
-
+
++P+ -N -
+ + -- -

Figura 13 - Cargas iguais se repelindo, e as cargas opostas se atraindo, criando uma rea de fluxo de eltrons
Fonte: Autor

Neste caso, devido s caractersticas da juno, uma pequena queda de tenso


observada, podendo variar conforme as caractersticas do semicondutor. Em
diodos convencionais de silcio, a queda de tenso de aproximadamente 0,7V, e
em diodos de germnio de 0,3V. Chamamos esta queda de tenso de DIFERENA
DE POTENCIAL DE JUNO.
2 Eletrnica Analgica
29

Quando o diodo INVERSAMENTE POLARIZADO, os eltrons do polo negativo


da bateria atraem as lacunas da juno, e o circuito proveniente do polo positivo
da bateria atrai os eltrons da juno, criando uma zona de afastamento entre
as cargas eltricas positivas e negativas (eltrons e lacunas). Isso faz com que a
corrente eltrica encontre dificuldades em passar pela juno, assumindo um
comportamento isolante. (Figura 14)

ANODO CATODO

- - - - - - - -++ -- + + + + + + + + +
+P N-
+ --
+ +
Figura 14 - Cargas iguais se repelindo, e as cargas opostas se atraindo, criando uma rea de repulso na juno,
interrompendo o fluxo de eltrons
Fonte: Autor

Embora um diodo convencional se comporte como um material no condutor


quando inversamente polarizado, propriedades da juno podem permitir uma
pequena passagem de corrente eltrica. Dependendo da forma com que a
juno foi construda, esta corrente pode ser proposital (caso do diodo zener, por
exemplo) ou pode ser indesejada (corrente de fuga em um diodo retificador).

O diodo 1N4007 um diodo retificador bastante comum,


utilizado em diversas aplicaes. Pesquise na internet pelo
SAIBA termo datasheet 1n4007 e tente encontrar o material de
MAIS alguns fabricantes deste diodo, descobrindo qual corrente e
tenso reversa mximas so suportadas.

Algumas caractersticas podem variar de diodo para diodo, mudando tambm


seu comportamento e sua aplicao. Conforme esta relao de aplicao e
comportamento, podemos enumerar os diodos conforme a lista que segue.
Diodo retificador ou diodo de sinal
Diodo zener
Diodo emissor de luz (led)
Fotodiodo
Varicap
Diodo schottky
Diodo tnel
Vamos discorrer um pouco sobre os diodos mais utilizados e suas
principais aplicaes.
AUTOMAO INDUSTRIAL
30

2.1.1 Diodo retificador / diodo de sinal

o diodo com o objetivo de permitir a passagem da corrente eltrica somente


em um sentido. (Figura 15)

(A) (K)

Figura 15 - Smbolo do diodo retificador, segundo norma IEEE 315


Fonte: Autor

Os diodos retificadores so comumente empregados em circuitos que


convertem a Corrente Alternada em Corrente Contnua. Dado o fato de possuir
como principal funcionalidade impedir que haja corrente em um dos sentidos
do circuito, o diodo retificador pode ser utilizado sozinho ou combinado a outros
diodos em circuitos conhecidos como pontes retificadoras, para limitar o vai
e volta de eltrons existentes na rede de corrente alternada. Nestes circuitos,
a corrente alternada (hora positiva, hora negativa) transformada em corrente
contnua (pulsos somente positivos). (Figura 16)
DIODOS
~ ~ RETIFICADORES
Corrente - + +
alternada Corrente
~
~ FILTRO contnua
-
Figura 16 - Conversor de corrente alternada para corrente contnua, com retificador de onda completa
Fonte: Autor

Na Figura 16, notamos a presena de quatro diodos retificadores ligados


em uma espcie de losngulo, sendo que dois vrtices possuem um anodo e
um catodo cada, e dois vrtices possuem somente anodo ou somente catodo.
Nos vrtices que possuem anodo e catodo, ligada a entrada de CA (Corrente
Alternada), lembrando que em CA existe a variao da tenso de positiva para
negativa vrias vezes por segundo. Quando a tenso for positiva, ela escolhe
a passagem pelo diodo cujo anodo esteja conectado, e quando for negativa,
a corrente passar pelo diodo cujo catodo esteja conectado. Desta forma, nos
vrtices que possuem os dois anodos haver sempre tenso positiva, e nos
vrtices com catodos haver sempre tenso negativa. (Figura 17)
V DIODOS
+ ~ ~ RETIFICADORES V
Corrente - +
+
corrente

+
sentido

- alternada Corrente
~
~ contnua -
-
V DIODOS
+ ~ ~ RETIFICADORES V
Corrente - +
corrente

+ +
sentido

- alternada Corrente
~
~ contnua -
-
Figura 17 - Ponte retificadora e seus diodos convertendo corrente contnua em corrente alternada
Fonte: Autor
2 Eletrnica Analgica
31

Devemos observar que, na sada deste tipo de circuito retificador, a tenso na


sada tem sempre o mesmo sentido, porm ainda est pulsando em ondas que
refletem a variao de tenso da entrada CA. Para evitar estes pulsos e estabilizar
a tenso, utilizamos outros tipos de circuito como filtros e estabilizadores de
tenso. Devido a caractersticas estveis em relao queda de tenso de alguns
diodos, muitos circuitos para estabilizar a tenso so construdos com diodos
especiais, conhecidos como diodos zener.
Alguns diodos possuem uma resposta mais rpida e menor custo, porm
trabalham com correntes menores. Estes diodos so aplicados em circuitos de
baixa potncia e geralmente em condicionamento de sinal eltrico proveniente de
sensores. Neste caso, chamamos de diodo de sinal, embora seu comportamento
seja similar ao dos diodos retificadores.
Na Tabela 2 apresentamos alguns diodos retificadores e suas principais caractersticas.
Tabela 2: Diodos retificadores e suas principais caractersticas

Diferencial
Encapsu- Nome(cdigo) Tenso COrrente Corrente
de Potencial
lamento do DIODO reversa (V) direta de Pico
de Juno

1N4001 50 1A 50A < 1.1V


1N4002 100
1N4003 200
SOD - 18 1N4004 400
1N4005 600
1N4006 800
1N4007 1000
1N5400 50 3A 200A < 1.2V
1N5401 100
1N5402 200
1N5403 300
1N5404 400
1N5405 500
DO-04 1N5406 600
1N5407 800
1N5408 1000
1N3879 50 6A 75A < 1.4V
1N3881 200
1N3882 300
1N3883 400
BY126 650 1,75A 50A < 1.5V
SOD-18
BY127 1250
Fonte: Autor, baseado em ESQUEMAS, 2012.
AUTOMAO INDUSTRIAL
32

Na tabela de diodos retificadores comerciais observamos as informaes de


ENCAPSULAMENTO (forma com que o componente fisicamente disponibilizado),
Nome/cdigo do componente, tenso reversa mxima suportada pelo
componente, corrente direta mxima, corrente de pico (suportada por um curto
espao de tempo) e queda de tenso mxima efetuada pelo diodo.

2.1.2 Diodo zener

um diodo que apresenta um comportamento similar a um diodo convencional


quando diretamente polarizado, mas que, ao ser inversamente polarizado,
demonstra um comportamento particular. Aps uma determinada tenso limite
na polarizao reversa, o diodo zener permite a passagem de corrente devido a
uma propriedade conhecida como EFEITO ZENER. (Figura 18)

Figura 18 - Smbolo de diodo zener, segundo norma IEEE315, e diodo zener


Fonte: Autor

Em um diodo convencional, ao ultrapassamos a tenso reversa limite, a juno


danificada; j em um diodo zener podemos obter o chamado efeito avalanche,
sem causar dano ao componente.

VOC o diodo zener tem este nome devido a Clarence Zener, que
SABIA? descobriu esta propriedade eltrica

Quando um diodo zener reversamente polarizado at uma tenso especfica


(Vz), a corrente praticamente nula, mas ao atingir esta tenso o diodo passa a
permitir passagem de corrente. (Figura 19)
(+) 3V (+) 6V (+) 12V
_ _ _
0.00 +8.77 +65.4
+

+
+

Amps Amps Amps

+ + +

+3.00 D1 +5.12 D1 +5.46 D1


Volts Volts
1N5231B Volts
1N5231B 1N5231B
- - -

+ + +

0.00
R1 R1 +6.54
R1
+0.88
Volts 100 Volts 100 Volts 100
- - -

Figura 19 - Circuito
Fonte: Autor
2 Eletrnica Analgica
33

No circuito representado na Figura 19, esto ligados em srie um diodo


zener reversamente polarizado, e uma carga representada pelo resistor de
100 . Este circuito foi conectado a dois voltmetros: um mede a queda de
tenso sobre o diodo, e outro sobre a carga, alm de um ampermetro que
mede a corrente do circuito em mA (miliampres).
O diodo escolhido de tenso zener (Vz) com valor 5.1V.
Com a resistncia do circuito constante, e a tenso de alimentao variando
de 6V para 12V, observa-se uma grande mudana na corrente do circuito, porm
uma pequena mudana na queda de tenso realizada pelo diodo zener.
Abaixo da tenso Vz do diodo (5.1V), o diodo no permite a passagem
de corrente.
Simplificando: um diodo de tenso Vz 5.1V, quando polarizado
inversamente, s permite que haja corrente no circuito se a tenso aplicada
for igual ou superior a 5.1V.
Devido a esta caracterstica, o DIODO ZENER acaba tendo sua principal
aplicao em circuitos de controle de tenso, tambm conhecidos como
estabilizadores de tenso.
muito comum circuitos que precisam garantir uma tenso especfica utilizarem
este tipo de diodo para criar um referencial de tenso estvel. (Figura 20)

v+
Ressistor
limitador de
corrente
3,3V
(1N746)
diodo zener
Vz = 3,3V
0V 0V

Figura 20 - Diodo 1N746


Fonte: Autor

Na figura acima observamos o diodo 1N746 (com Vz 3,3V) sendo utilizado para
estabilizar uma sada de tenso em 3,3V para uso em um circuito.
Existem vrios tipos de DIODO ZENER disponveis comercialmente, e na
maioria dos casos so categorizados em relao corrente e tenso Vz. Segue
na Tabela 3 os principais modelos e valores comerciais.
AUTOMAO INDUSTRIAL
34

Tabela 3: Principais modelos e valores comerciais


Cd. Tenso Watts Cd. Tenso Watts Cd. Tenso Watts
1N746 3,3 0,4 1N5227 3,6 0,5 1N4751 30 1W
1N747 3,6 0,4 1N5228 3,9 0,5 1N4752 33 1W
1N748 3,9 0,4 1N5229 4,3 0,5 1N4753 36 1W
1N749 4,3 0,4 1N5230 4,7 0,5 1N4754 39 1W
1N750 4,7 0,4 1N5231 5,1 0,5 1N4755 43 1W
1N751 5,1 0,4 1N5232 5,6 0,5 1N4756 47 1W
1N752 5,6 0,4 1N5234 6,2 0,5 1N4757 51 1W
1N753 6,2 0,4 1N5235 6,8 0,5 1N4758 56 1W
1N754 6,8 0,4 1N5236 7,5 0,5 1N4759 62 1W
1N755 7,5 0,4 1N5237 8,2 0,5 1N4760 68 1W
1N756 8,2 0,4 1N5239 9,1 0,5 1N4761 75 1W
1N757 9,1 0,4 1N5240 10 0,5 1N4762 82 1W
1N758 10 0,4 1N5242 12 0,5 1N4763 91 1W
1N759 12 0,4 1N5245 15 0,5 1N4764 100 1W
1N957 6,8 0,4 1N5246 16 0,5 1N5333 3,3 5W
1N958 7,5 0,4 1N5248 18 0,5 1N5334 3,6 5W
1N959 8,2 0,4 1N5250 20 0,5 1N5335 3,9 5W
1N960 9,1 0,4 1N5251 22 0,5 1N5336 4,3 5W
1N961 10 0,4 1N5252 24 0,5 1N5337 4,7 5W
1N962 11 0,4 1N5254 27 0,5 1N5338 5,1 5W
1N963 12 0,4 1N5256 30 0,5 1N5339 5,6 5W
1N964 13 0,4 1N5257 33 0,5 1N5340 6,0 5W
1N965 15 0,4 1N5258 36 0,5 1N5341 6,2 5W
1N966 16 0,4 1N5259 39 0,5 1N5342 6,8 5W
1N967 18 0,4 1N5260 43 0,5 1N5343 7,5 5W
1N968 20 0,4 1N5261 47 0,5 1N5344 8,2 5W
1N969 22 0,4 1N5262 51 0,5 1N5345 8,7 5W
1N970 24 0,4 1N5263 56 0,5 1N5346 9,1 5W
1N971 27 0,4 1N5265 62 0,5 1N5347 10 5W
1N972 30 0,4 1N5266 68 0,5 1N5348 11 5W
1N973 33 0,4 1N5267 75 0,5 1N5349 12 5W
1N974 36 0,4 1N5268 82 0,5 1N5350 13 5W
1N975 39 0,4 1N5270 91 0,5 1N5351 14 5W
1N976 43 0,4 1N5271 100 0,5 1N5352 15 5W
1N977 47 0,4 1N4728 3,3 1W 1N5353 16 5W
1N978 51 0,4 1N4729 3,6 1W 1N5354 17 5W
1N979 56 0,4 1N4730 3,9 1W 1N5355 18 5W
1N980 62 0,4 1N4731 4,3 1W 1N5356 19 5W
1N981 68 0,4 1N4732 4,7 1W 1N5357 20 5W
1N982 75 0,4 1N4733 5,1 1W 1N5358 22 5W
1N983 82 0,4 1N4734 5,6 1W 1N5359 24 5W
1N984 91 0,4 1N4735 6,2 1W 1N5361 27 5W
1N985 100 0,4 1N4736 6,8 1W 1N5362 28 5W
Continua
2 Eletrnica Analgica
35

Continuao - Tabela 3: Principais modelos e valores comerciais


Cd. Tenso Watts Cd. Tenso Watts Cd. Tenso Watts
1N986 110 0,4 1N4737 7,5 1W 1N5363 30 5W
1N987 120 0,4 1N4738 8,2 1W 1N5364 33 5W
1N988 130 0,4 1N4739 9,1 1W 1N5365 36 5W
1N989 150 0,4 1N4740 10 1W 1N5366 39 5W
1N990 160 0,4 1N4742 12 1W 1N5367 43 5W
1N991 180 0,4 1N4743 13 1W 1N5368 47 5W
1N992 200 0,4 1N4744 15 1W 1N5369 51 5W
1N5221 2,4 0,5 1N4745 16 1W 1N5370 56 5W
1N5222 2,5 0,5 1N4746 18 1W 1N5371 60 5W
1N5223 2,7 0,5 1N4747 20 1W 1N5372 62 5W
1N5224 2,8 0,5 1N4748 22 1W 1N5373 68 5W
1N5225 3,0 0,5 1N4749 24 1W 1N5374 75 5W
1N5226 3,3 0,5 1N4750 27 1W
Fonte: elbest, 2011

2.1.3 Diodo emissor de luz

um dos tipos mais conhecidos de diodo, embora seja costumeiramente


conhecido pelo termo LED, que significa Light Emitting Diode diodo emissor
de luz. Dependendo do tipo de dopagem e do material utilizado na juno,
possvel obter luz de diferentes cores. (Figura 21)

Figura 21 - Smbolo de LED e um LED


Fonte: Autor

Por muito tempo, os LEDs foram utilizados como indicadores luminosos


em painis de operao e equipamentos eletrnicos, como, por exemplo, para
indicar se um aparelho de TV estava ou no ligado em uma tomada. O domnio
de tcnicas e processos de fabricao e a globalizao e o acesso a jazidas de
materiais semicondutores tm baixado significativamente o custo destes diodos,
e modelos cada vez mais poderosos tm sido utilizados, sendo hoje empregados
tambm em iluminao predial e automotiva.
A juno de um DIODO sempre tende a emitir algum tipo de energia, resultando
em leve queda de tenso no circuito. Na maioria dos diodos retificadores e zener
j estudados, esta energia transformada em calor. No caso dos LEDs, a liberao
de energia se d pela emisso de ondas eletromagnticas (luz) em cores definidas
pela juno e a dopagem do semicondutor.
AUTOMAO INDUSTRIAL
36

Geralmente, os LEDs operam com tenses entre 1,5V e 3,5V, sendo que
este valor pode variar conforme a cor da luz emitida. LEDs INFRAVERMELHOS
(luz invisvel) funcionam geralmente com menos de 1,5V; os vermelhos, 1,6V;
os amarelos, com 1,7V; os verdes 2V, e os azuis, brancos, violeta, rosa, ultra-
violeta e similares, mais de 3V.
importante observar a corrente do circuito onde o LED est ligado, que deve
ser limitada ao indicado pelo fabricante do componente. Geralmente, em um LED
convencional de 5 mm essa corrente no ultrapassa os 30mA. (Figura 22)

Matrizes de LEDs orgnicos miniaturizados j so utilizadas


tambm para construir telas mais finas e menos caras, e, ao
VOC contrrio dos displays de cristal lquido, os displays OLED
SABIA? (Organic LED) no precisam de luz de fundo, pois cada
ponto emite sua prpria luz.

Emisso de Luz

Diodo

Plastico transparente
Terminais
Figura 22 - Imagem interna de um diodo
Fonte: Autor

Muitos dispositivos eletrnicos utilizam LEDs como sinalizadores


SAIBA visuais, porm s recentemente os LEDs comearam a ser
MAIS aplicados em iluminao. Pesquise sobre as vantagens e
desvantagens da iluminao a LED residencial e automotiva.

Na automao industrial, LEDs so utilizados para sinalizar avisos luminosos


em painis de mquinas, como em sinaleiros, indicadores de funcionamento e
displays de dgitos numricos. (Figura 23 e Figura 24)

Figura 23 - Sinaleiros LEDs usados em quadros de comando eltricos e em sistemas de automao industrial
Fonte: Autor
2 Eletrnica Analgica
37

Figura 24 - Mquina utilizando os sinaleiros de LED


Fonte: Autor

Como na maior parte dos atuadores industriais, um sinaleiro LED alimentado com
tenso de 24V, o que faz necessrio um circuito para a limitao de corrente em um
circuito com LEDs. Dentro de um simples indicador lumioso LED de 24V, to comum em
quadros de comando e painis de mquinas automatizadas, encontraremos ento um
ou mais LEDs junto a resistores em um circuito srie, conforme a Figura 25:

24V C. C.
+ Resistor
24V
-

LED

Figura 25 - LEDs junto a resistores em um circuito srie


Fonte: Autor

O valor da resistncia deve ser dimensionado levando-se em considerao a


queda de tenso dos LEDs do circuito e a corrente desejada.
Neste caso, temos um LED de 1,7V e recomendado para corrente de 30mA. Como
a alimentao de 24V, vamos dimensionar um resistor que realize a queda de
tenso de 22,3V (a diferena entre 24V e 1,7V) em uma corrente de 0,030A (30mA).
Usando a lei de Ohm, temos:
I = V / R => 0,030A = 22,3V / R => R = 22,3V / 0,030A => R = 743,34 ohms
Com o valor comercial de resistor mais prximo (para cima) de 820 Ohms, teremos o
LED funcionando a pouco mais de 27mA, sem grandes variaes na luminosidade gerada.
importante lembrar que um LED , antes de tudo, um DIODO, e, portanto,
deve ser corretamente polarizado para obter o resultado esperado.
Em alguns tipos de mostradores para exibir informaes numricas, diodos
emissores de luz (LEDs) so agrupados em 7 ou mais segmentos de reta. Os
LEDs so confeccionados e encapsulados com o intuito de gerar visualmente
a representao de um pequeno trao que, combinado com outros, pode
representar nmeros de zero a nove.
AUTOMAO INDUSTRIAL
38

Chamamos estes tipos de mostradores de displays de 7 segmentos. (Figura 26)

Figura 26 - Dgito de 7 segmentos, composto por 7 leds para mostar o nmero, mais um para o ponto
Fonte: Autor

Pesquisando sobre a diferena entre displays LED de 7


SAIBA segmentos dos tipos anodo comum e catodo comum, e sobre o
MAIS custo mdio de um dgito numrico com 10 a 20 mm de altura.

CASOS E RELATOS

Uso de LEDs no lugar de lmpadas de filamento incandescentes


O Sr. Raul um pequeno empreendedor, dono e nico funcionrio de uma
empresa que produz embalagens de alumnio descartveis para restaurantes. Ele
fundou a empresa aps comprar uma mquina usada de produzir embalagens.
Apesar de bastante simples, a mquina possua um painel com indicadores luminosos
que informavam o estado dos processos, indicando se havia falta de matria-prima,
falta de ar comprimido, paradas de emergncia, necessidade de lubrificao e final de
ciclo de produo. Estes sinaleiros eram constitudos de lmpadas incandescentes de
24V CC com cores diferentes. Aps algum tempo, as lmpadas comearam a queimar.
No encontrando mais opes no mercado, pois estava difcil achar lmpadas do
tamanho adequado, Sr. Raul resolveu aplicar a ideia de um amigo e instalar LEDs no lugar
das lmpadas. Leigo em eletrnica, Sr. Raul substituiu cada lmpada incandescente
dos sinaleiros diretamente por LEDs, sem a aplicao de uma resistncia ao circuito.
Ao testar, os sinaleiros no funcionaram e alguns LEDs queimaram. Achando se tratar
de LEDs com defeito, Sr. Raul resolveu investir em sinaleiros LEDs completos (que j
possuem resistores dimensionados para serem alimentados em 24V), e no mais
substituir somente a lmpada. Pensando se tratar de uma simples substituio, o Sr.
Raul simplesmente removeu cada sinaleiro antigo de seus dois fios de alimentao,
substituindo cada um por um sinaleiro LED 24V. Embora os sinaleiros novos tivessem
a mesma especificao de tenso que os antigos, ao reenergizar a mquina percebeu
que alguns sinaleiros ainda no funcionavam. Aps uma ligao feita ao vendedor
dos sinaleiros, recebeu orientao para inverter os fios onde estavam ligados os
sinaleiros que no estavam funcionando. Feito este procedimento, todos os sinaleiros
voltaram a funcionar. J se passaram mais de trs anos, e at ento nenhum dano foi
observado nos novos sinaleiros LED.
2 Eletrnica Analgica
39

2.1.4 Fotodiodo

Neste caso, o componente utilizado como sensor para detectar luz. Um


fotodiodo pode gerar uma pequena corrente eltrica (efeito fotoeltrico) e, se
reversamente polarizado, apresenta resistncia maior ou menor, dependendo da
frequncia e da intensidade da luz que brilha sobre a juno.
bastante comum sua aplicao em circuitos receptores de controle remoto
ou em sensores pticos. (Figura 27)

simbologia

Led emitindo
pulsos de luz
infravermelha
Sensor
fotodiodo

Figura 27 - Fotodiodo
Fonte: Autor

A comunicao do controle remoto com o aparelho de TV


realizada atravs de pulsos de luz infravermelha longos
e curtos, cada um com durao menor que um milsimo
VOC de segundo? Ao se pressionar uma tecla do controle,
SABIA? so enviados pulsos longos e curtos (zeros e uns) que,
combinados, geram a sequncia binria que identifica a
funo desejada.

Em um equipamento com controle remoto IR (infra-red = infravermelho), o


equipamento possui um sensor capaz de captar os pulsos de luz gerados pelo
controle remoto. Este sensor geralmente construdo utilizando-se um fotodiodo,
devido a sua sensibilidade e velocidade de resposta.
Em equipamentos de segurana usados em processos de Automao
Industrial, como cortinas ticas de segurana ou sensores pticos, utilizam os
LEDs e FOTODIODOS em um processo onde a luz enviada de um para outro
componente monitorada. Em uma cortina tica de segurana (Figura 28), o
sistema s liberado se a luz produzida por cada LED em um dos lados captada
em um FOTODIODO no outro lado da abertura.
AUTOMAO INDUSTRIAL
40

Figura 28 - Cortina tica de segurana com LED


Fonte: Autor

Para evitar interferncia de outras fontes de luz, geralmente ocorre a


modulao do sinal luminoso, gerando uma frequncia especfica que avaliada
pelos circuitos de processamento ligados ao fotodiodo, permitindo que seja
possvel separar o sinal real do sinal de interferncia.
Em algumas aplicaes que exigem mais corrente costumamos utilizar
um FOTOTRANSISTOR no lugar do FOTODIODO. Neste caso, o princpio de
funcionamento semelhante, porm a corrente de trabalho do componente
maior e sua velocidade de acionamento pode ser significativamente menor.

2.1.5 Varicap

Embora quase todos os componentes baseados em semicondutores


apresentem uma capacitncia devido a suas junes, o VARICAP possui esta
caracterstica mais intensa que os outros diodos. (Figura 29)

Figura 29 - Smbolo do varicap segundo norma IEEE315


Fonte: Autor

Em outras palavras, o VARICAP um diodo que tambm tem a propriedade


de capacitor. Ele possui CAPACITNCIA variada conforme a tenso reversa. Sua
principal aplicao na rea de Telecomunicaes, principalmente em circuitos
de radiofreqncia, como alternativa de capacitores variveis.
2 Eletrnica Analgica
41

2.1.6 Diodo schottky

um diodo que apresenta uma resposta bem mais veloz do que o diodo retificador
convencional, pois construdo com materiais semicondutores alternativos, e
geralmente utilizado em aplicaes que exigem velocidades de resposta muito
rpida, como na rea de Telecomunicaes, onde a quantidade de ciclos por segundo
(frequncia) das aplicaes pode ser superior a 1.000.000 (1 GHz). (Figura 30)

Anodo Catodo

Figura 30 - Diodo schottky


Fonte: Autor

2.1.7 Diodo tnel

Tambm conhecido como Diodo Esaki em homenagem a Leo Esaki, que


descobriu o efeito tnel. Este diodo possui caractersticas relativas a rpidas
respostas e geralmente utilizado na construo de circuitos de radiofrequncia.

A K

Figura 31 - Diodo tnel


Fonte: Autor

2.1.8 Como testar um diodo

Visto que um diodo convencional apresenta alta resistncia ao ser inversamente


polarizado, e baixa resistncia ao ser diretamente polarizado, podemos usar um
multmetro analgico em escala de resistncia para test-lo. Multmetros digitais,
no entanto, podem oferecer um problema para este tipo de teste devido s
caractersticas de tenso aplicadas carga para o teste.
Neste caso, observe que no multmetro deve haver a indicao para teste de diodo.

DC

POWER PK HOLD B/L DC / AC

AUTO POWER OFF

+
-
CAT ll

20A mA COM VHz

Figura 32 - Multimetro
Fonte: Autor
AUTOMAO INDUSTRIAL
42

Com uma ponteira do multmetro em cada terminal do diodo, teste-o


diretamente polarizado, e depois inversamente polarizado, observando os valores
lidos pelo instrumento de medio. Geralmente, em multmetros digitais, o valor
exibido corresponde queda de tenso realizada pelo diodo. (Figura 33 e Figura 34)

DC
DC DC
DC

AA AA

POWER
POWER PKPK
HOLD
HOLD BB
/ L/ L DCDC
/ AC
/ AC POWER
POWERPKPK
HOLD
HOLD B /BL/ L DCDC
/ AC
/ AC

AUTO
AUTOPOWER
POWEROFF
OFF AUTO POWER
AUTO OFF
POWER OFF

++ ++
-- --
CAT
CATll ll CAT ll ll
CAT

20A
20A mA
mA COM
COM VHz
VHz 20A
20A mAmA COM
COM VHz
VHz

Figura 33 - Diodo diretamente polarizado Figura 34 - Diodo inversamente polarizado


Fonte: Autor Fonte: Autor

Se o diodo conduzir quando diretamente polarizado (na imagem, mostrando


o valor da queda de tenso realizada pela juno) e no conduzir quando
inversamente polarizado (mostrando representao de leitura infinita no display),
ento provavelmente ele estar bom.
Se o DIODO conduzir em ambas as direes, conclumos que est em curto e,
consequentemente, inutilizvel.
Se o DIODO no conduzir em nenhuma das direes, conclumos que est
aberto e, portanto, danificado.
Dica: Faa o teste em diodos emissores de luz (LEDs), de preferncia da cor
vermelha, que apresentam uma menor tenso de trabalho. Observe o que ocorre
com o LED durante os testes.

2.1.9 Optoacopladores

Optoacopladores, tambm chamados de fotoacopladores, so componentes


que utilizam semicondutores para realizar acoplamento atravs de LUZ,
permitindo que o sinal seja enviado de um sistema para outro sem o uso de
ligaes eltricas entre estes.
Basicamente, um optoacoplador um componente composto de um
LED e um FOTODIODO ou FOTOTRANSISTOR, encapsulados em um nico
componente. (Figura 35)
2 Eletrnica Analgica
43

Encapsulamento
Fotoacoplador Fotoacoplador para montagem
de 4 terminais de 6 terminas em superfcie - 6 terminais
6 5 4
1 3
Smbolos
2 4

1 2 3

Figura 35 - Optoacopladores
Fonte: Autor

Acima, a imagem de um sistema com fotoacoplador de 4 terminais (usando LED


e FOTODIODO) e um fotoacoplador de 6 terminais (utilizando FOTOTRANSISTOR).
Em ambos os casos, a aplicao recomendada para casos em que devemos
enviar o sinal a sistemas com fontes de alimentao distintas, ou que possam
enfrentar problemas relativos a rudos eletromagnticos.
O LED interno do fotoacoplador deve ser diretamente polarizado dentro dos
limites de corrente e tenso recomendados pelo fabricante do componente. J
no caso do fotodiodo ou fototransistor interno, estudaremos mais adiante as
formas de integr-los ao circuito. Como a nica conexo entre o LED interno e o
fotodiodo ou fototransistor um feixe de luz, no existe conexo eltrica entre as
partes. Da o nome ACOPLADOR.
Sem o uso de um fotoacoplador entre alguns sistemas, os nveis de tenso
existentes entre as fontes distintas poderiam gerar problemas de instabilidade e
at de queima de componentes.
Por exemplo: ao ligar um sensor que gera um sinal de 24V a um microcontrolador
que opera a 5V, podemos:
1) Criar um circuito divisor de tenso com resistores e baixar a tenso de 24V para 5V.

24V
24V + (GND) 5V
ligao entre (GND) 5V +
as fontes

4K7

uC
1k2
SENSOR

Figura 36 - Circuito divisor de tenso


Fonte: Autor
AUTOMAO INDUSTRIAL
44

No caso do divisor de tenso, o custo menor, porm a fonte de alimentao do


sensor dever ter a mesma referncia da fonte que alimenta o microcontrolador.
2) Usar um OPTOACOPLADOR, dimensionando um resistor em srie com o LED
interno do componente para atingir a corrente ideal ao ser polarizado com 24V.

24V
24V + (GND) 5V
(GND) 5V +

10K
1K2 uC

SENSOR

Figura 37 - Optoacoplador
Fonte: Autor

No caso do optoacoplador, podemos usar fontes distintas, uma para o sensor


e outra para o microcontrolador, sem precisar interlig-las.
Outra vantagem do uso de optoacoplador que a isolao eltrica impede
que rudos eletromagnticos de tenso elevada danifiquem o microcontrolador,
aumentando a robustez do sistema.
Portanto, usamos optoacopladores com o intuito de conectar sistemas com
diferentes nveis de tenso e fontes de alimentao, e tambm com o objetivo de
proteger o sistema de problemas gerados por rudos eletromagnticos.

2.2 Acionamentos a transistor

Em um sistema automatizado, os SENSORES tm o objetivo de sentir


as caractersticas de funcionamento de um equipamento, e os ATUADORES
so responsveis por atuar, gerando um efeito especfico. Alguns exemplos
de atuadores so os motores eltricos, cilindros pneumticos e hidrulicos,
eletrovlvulas, sinalizadores, rels e contactoras. (Figura 38)

Processamento
Sensores
Equipamento
Controlador
+
ambiente Atuadores

Figura 38 - Diagrama de um sistema automatizado


Fonte: Autor
2 Eletrnica Analgica
45

Entre o sinal capturado pelos sensores e o controle dos atuadores existe a


necessidade de circuitos fsicos (hardware) ou lgicos (software) que definiro
como o equipamento deve funcionar.
Para a construo do CONTROLADOR de um sistema automatizado existem
diversas estratgias, que vo desde estratgias mais simples, como dispositivos
eletromecnicos (lgica de rels), at mais complexas, como sistemas
computacionais com vrios processadores interligados.
Em casos que envolvem circuitos de controle mais complexos, os dispositivos
eletrnicos compostos basicamente de semicondutores trabalham utilizando
limites de tenso e corrente que os impedem de acionar diretamente um atuador.
Por exemplo, um microcontrolador tem sadas digitais limitadas a poucas dezenas
de miliampres, geralmente, com nveis de tenso que no ultrapassam 5 volts.
Isso se deve ao fato de, internamente, o microcontrolador ser composto de
uma quantidade enorme de transistores com alguns nanmetros (bilionsimos
de metro), onde complexas e numerosas redes de circuitos so construdas em
pastilhas minsculas.
Com a reduo do tamanho dos transistores, houveram redues de custo,
aumento de velocidade, reduo do tamanho do hardware final e reduo
significativa no consumo de energia. O problema que estes semicondutores,
como no caso do microcontrolador, ficam impedidos de controlar diretamente
cargas utilizadas em sistemas automatizados, como motores eltricos ou mesmo
a simples bobina de um rel convencional.
Segue na Figura 39 o interior de um circuito integrado, onde a
nanotecnologia permitiu a integrao de milhares de transistores em uma
nica pastilha de alguns milmetros.

Figura 39 - Circuito integrado


Fonte: Autor

Portanto, devido a suas caractersticas construtivas, um circuito integrado


no permite acionamentos diretos de dispositivos atravs de correntes e tenses
significativas. Uma tenso elevada (acima de 5V) poderia romper a isolao
minscula entre as trilhas, e correntes elevadas poderiam facilmente romper os
minsculos filamentos e ligaes internas do C.I.
AUTOMAO INDUSTRIAL
46

Na automao, costumamos utilizar circuitos eltricos combinados com


circuitos pneumticos (eletropneumtica), porm, para realizar o acionamento de
uma eletrovlvula pneumtica industrial, faz-se necessrio um sinal geralmente
com tenso de 24V e mnimo de 0,2A. A princpio, estes valores podem parecer
baixos, mas so valores considerados elevados para grande parte dos circuitos
integrados, incluindo-se os j citados microcontroladores. Devido principalmente
a esse motivo, faz-se necessria a utilizao de uma interface que permita que um
circuito integrado acione um circuito eletropneumtico.
Os transistores, alm de constiturem a essncia dos circuitos integrados,
tambm so utilizados externamente a eles em verses maiores com o intuito
de amplificar os sinais eltricos, aumentando a tenso e a corrente para uso no
controle de atuadores.
Outra aplicao bastante comum de transistores no controle de tenso e
corrente em fontes de alimentao. Em sistemas digitais, geralmente utilizamos
o transistor como uma chave eletrnica, fazendo com que tenha dois
comportamentos distintos: conduzir ou no conduzir eltrons. Porm, o transistor
bastante verstil e pode ser usado tambm com o objetivo de controlar a
corrente, permitindo que mais ou menos eltrons passem pelo condutor atravs
do controle realizado por um sinal eltrico.
Considerando uma fonte de alimentao estabilizada, por exemplo, com sada
de 24V, se a tenso limite for ultrapassada os componentes ligados a esta fonte
podem queimar devido sobretenso. Por outro lado, se a tenso ficar muito abaixo
da desejada podemos ter variaes indesejadas no funcionamento do circuito que
ser alimentado. Em casos como estes, as fontes possuem estratgias de regulao
de tenso, fazendo com que ela se adapte ao circuito alimentado dentro de faixas
predeterminadas e mantendo a tenso desejada na sada, no importando se a
corrente aumenta ou diminui em um determinado espao de tempo.

2.2.1 Caractersticas e aplicaes

Como j citado anteriormente, as duas principais aplicaes de transistores so


seu uso como CHAVE (ligando e desligando um circuito) ou como estratgia de
CONTROLE DE CORRENTE (dosando a passagem da corrente eltrica em um circuito).
No uso como chave eletrnica, o transistor oferece uma resposta muito rpida e
de baixo custo se comparado estratgias eletromecnicas como rels; alm isso,
o acionamento da carga pode ser feito com um sinal mnimo de corrente e tenso.
No uso como controle de corrente, o transistor substituiu as antigas vlvulas
termoinicas por ter um consumo de energia muito menor e tamanho e custo
bastante reduzidos.
2 Eletrnica Analgica
47

Assim como os diodos, os transistores tambm so construdos com base


em junes de semicondutores. A principal diferena est no fato de haver
mais de uma juno.

A inveno do transistor ocorreu aps a Segunda Guerra


VOC Mundial, e que foi influenciada pelas pesquisas realizadas
SABIA? durante a Guerra, onde se estudou o uso de cristais de
germnio e silcio para a construo de detectores de radar.

Anteriormente afirmamos que a eletrnica a cincia que estuda a forma de


controlar a energia eltrica. Neste caso, o transistor , sem sombra de dvidas, um
dos principais instrumentos de controle utilizados.

2.2.2 Transistor bipolar

Os transistores bipolares de juno, tambm conhecidos pelo acrnimo TBJ,


ou BJT (ingls), podem variar bastante conforme suas caractersticas construtivas,
mas de forma geral so compostos por duas junes formadas pela intercalao de
material semicondutor do tipo P e do tipo N, adquirindo, assim, duas polaridades,
podendo ser NPN ou PNP. (Figura 40)

N P N P N P
Coletor
Emissor

Emissor
Base

Base

Coletor

Figura 40 - Transmissores NPN e PNP


Fonte: Autor

Nos transistores, as camadas de semicondutor com diferentes dopagens so


denominadas de EMISSOR, BASE e COLETOR.
O EMISSOR uma camada fortemente dopada e, como o nome sugere, sua
funo EMITIR as cargas eltricas.
A BASE uma fina camada com uma dopagem mdia; atravs dela
POLARIZAMOS o transistor, permitindo que as cargas eltricas fluam. Entendemos
por cargas eltricas as cargas positivas (lacunas) ou negativas (eltrons),
dependendo do tipo do transistor (NPN ou PNP).
O COLETOR uma camada levemente dopada e tem a funo de coletar as
cargas eltricas.

O transistor foi inventado em 1947 pelos pesquisadores


VOC da Bell Telephones, nos EUA, para substituir as vlvulas
SABIA? eletrnicas nas aplicaes de telefonia.
AUTOMAO INDUSTRIAL
48

Podemos dividir os transistores bipolares em duas categorias, de acordo com


o arranjo entre seus tipos de material semicondutor: NPN e PNP.
Transistores NPN: (Figura 41)
coletor
N P N
base
NPN

emissor

coletor
base
emissor

Figura 41 - Smbolo de um transistor bipolar NPN e diagrama da juno NPN


Fonte: Autor

Em um transistor NPN, trs cristais semicondutores diferentemente


dopados criam duas junes eltricas dispostas em camadas. A camada
do meio do tipo P (+), composta de material semicondutor com lacunas
eltricas disponveis (cargas positivas).
Inicialmente, podemos imaginar o TRANSISTOR NPN como um DIODO,
onde a BASE faz papel de ANODO e o EMISSOR faz o papel de CATODO.
Chamamos de POLARIZAO DIRETA de um transistor NPN quando temos
uma corrente entre a base e o emissor, causada pela tenso entre estes dois
terminais (V BE), o que permite a passagem de uma corrente maior entre o
coletor e o emissor.
Em resumo, para ligar um transistor NPN como uma chave eletrnica,
aplicamos tenso positiva na base e negativa no emissor. Para desligar,
devemos remover esta tenso positiva da base para interromper a corrente
entre a base e o emissor. (Figura 42)

NPN
carga

coletor corrente
maior
base

corrente
menor emissor

Figura 42 - Transistor NPN polarizado. Carga representa um circuito ou componente que est sendo energizado
Fonte: Autor

Observe que a conveno do sentido de corrente do polo positivo para o


negativo e ocorre no sentido inverso do movimento de eltrons.
2 Eletrnica Analgica
49

Transistores PNP: (Figura 43)

emissor
P N P
base
PNP

emissor

coletor
base
coletor

Figura 43 - Smbolo de um transistor bipolar PNP e diagrama da juno PNP


Fonte: Autor

Em um transistor PNP, trs cristais semicondutores diferentemente


dopados criam duas junes eltricas dispostas em camadas. A camada
do meio do tipo N (-), composta de material semicondutor com eltrons
disponveis (cargas negativas).
Inicialmente, podemos imaginar o transistor PNP como um diodo, onde o
emissor faz o papel de anodo e a base faz o papel de catodo.
Um transistor PNP est POLARIZADO quando temos uma corrente entre
o emissor e a base que, por sua vez, causada pela tenso entre estes dois
terminais (V EB), permitindo a passagem de uma corrente maior entre o
emissor e o coletor.
A corrente entre emissor e coletor muitas vezes maior do que a corrente
entre emissor e base. Em um transistor, esta propriedade denominada
GANHO e representada por h fe ou (beta). Se um transistor oferece um
ganho de 100, significa que ele pode permitir uma corrente 100 vezes maior
entre o emissor e o coletor do que entre o emissor e a base.
Resumindo, em um transistor PNP, para ligar a chave eletrnica,
aplicamos uma tenso negativa na base. Para desligar, basta retirar essa
tenso negativa da base. A carga deve ser ligada no COLETOR e a tenso de
alimentao positiva no EMISSOR. (Figura 44)

PNP

corrente emissor
menor
corrente
base maior

coletor
carga

Figura 44 - Transistor NPN polarizado. Carga representa um circuito ou componente que est sendo energizado
Fonte: Autor
AUTOMAO INDUSTRIAL
50

Embora possamos controlar a corrente que passa por um transistor atravs


da variao da corrente em sua base, nosso objetivo agora utilizar o transistor
como uma CHAVE ELETRNICA, onde iremos utilizar transistores em duas estados
possveis: SATURADO (como uma chave fechada, operando na corrente mxima
para o circuito) ou EM CORTE (como uma chave aberta).
De forma simplificada, podemos pensar que j bastariam um transistor e o
componente a ser acionado conectados em uma fonte de alimentao. Porm,
sero necessrios alguns outros elementos para limitar a corrente na base do
transistor (resistor de base) e tambm para estabilizar o nvel de tenso da base
(resistor de pull-up ou pull-down).
Para os circuitos que seguem, vamos supor que o sinal proveniente de um
circuito de controle tem as seguintes caractersticas :
1) Fornece tenso de 0V ou de 5V (sinal digital).
2) A corrente mxima para o sinal fornecido pelo circuito de 0,02A (20mA). No caso
de corrente acima deste valor, haver danos permanentes no circuito de controle.

atuador atuador
(desligado) (ligado)

5V + 0.00
RL1 5V + +70.2
Amps
RL1
Amps
5V D1 5V
D1

C C
R2 B TRANSISTOR SINAL 5V + R2 B TRANSISTOR
0V + 0.00 +3.28
Amps
1K2 NPN (MAX 0,02A) Amps
1K2 PNP
E E
R3 R3
20K 20K

Figura 45 - Circuito de acionamento de rel utilizando transistor NPN


Fonte: Autor

No circuito acima, o objetivo ligar ou desligar um rel com bobina de 5V.


Ao liga-lo, a corrente do circuito da bobina ultrapassa 70mA, vrias vezes maior
do que o limite de corrente do circuito de controle informado, que de 20mA.
Ento um transistor NPN ser usado para amplificar a corrente de 20mA
para uma corrente superior, necessria para que a bobina do rel funcione.
O sinal de 5V proveniente do circuito de controle utilizado para polarizar
o transistor, sendo conectado a sua base aps passar pelo resistor R2 para
limitar a corrente a nveis seguros e no danificar o circuito de controle.
Sem o resistor R2, a corrente seria ainda mais elevada, pois seria como termos
um diodo em srie entre o sinal do circuito de controle e a referncia (GND). Por
isso o resistor R2 muito importante, e deve ser corretamente dimensionado.
2 Eletrnica Analgica
51

Sabendo que o transistor do circuito oferece um ganho de 100 vezes (


=100), vamos dimensionar o circuito para que a base do transistor seja
polarizada com uma corrente prxima a 4mA, obtendo uma corrente coletor
-> emissor mxima de 400mA, mais do que suficiente para o acionamento
proposto.
O transistor ento conectado de forma a interligar o terminal do rel ao GND.
Como o R2 foi calculado? Inicialmente, temos que lembrar que a corrente
usada para polarizar o transistor NPN percorre o caminho BASE -> EMISSOR.
Assim como na juno de um diodo, esperamos que haja uma queda de
tenso na juno do transistor. Estimamos esta queda em 0,7V para
transistores de silcio, porm cada transistor pode apresentar caractersticas
diferentes neste aspecto. Em caso de dvida, pesquise pela folha de dados
(ou datasheet) do componente.
Como o sinal que chega a base de 5V, sobram 5V 0,7V = 4,3V para o
restante do circuito.
Sendo que este transistor suporta at 500 mA, e sabendo que uma corrente
de 400mA mais do que suficiente para acionar a carga, para o ganho de 100
vezes, vamos polarizar o transistor com uma corrente de aproximadamente
4mA (4mA * 100 = 400mA). Conhecendo a queda de tenso desejada (4,3V),
resta calcular o valor da resistncia a ser aplicada no circuito.
Usando a frmula I = V / R, temos:
4 mA = 4,3V / R
0,004 A . R = 4,3V
R = 4,3V / 0,004 A
R = 1075 Ohms.
Valores comerciais mais prximo so 1000 e 1200 Ohms
Escolheremos o valor mais elevado, baixando um pouco a corrente do
circuito da base para aproximadamente. 3,6mA.
E por que o resistor R3? Este resistor utilizado para estabilizar e ajudar a
definir o nvel de tenso de 0V na base, quando o sinal estiver em nvel baixo. Sem
ele, pequenas oscilaes de corrente, fugas na juno do transistor e at mesmo
rudos eletromagnticos gerariam pequenas correntes eltricas que poderiam
acionar indevidamente o transistor, mesmo em curtos espaos de tempo. Para
evitar problemas com rudos, este resistor (R3) possibilita um caminho alternativo
para os eltrons a fim de estabilizar sua base. Como este resistor interfere na
corrente aplicada na base, seu valor no pode ser muito baixo.
AUTOMAO INDUSTRIAL
52

Este resistor pode ser suprimido se o sinal proveniente do circuito de


controle for bem definido (nvel de tenso alto: 5V ou baixo: 0V). O resistor
R3 interliga a base do transistor ao nvel de tenso baixo (0V ou GND), e neste
caso chamado de RESISTOR DE PULL-DOWN. Em outros casos, veremos que
necessrio estabilizar a base em nvel alto, e ai usaremos um RESISTOR DE
PULL-UP, interligando-a ao nvel alto de tenso.
importante tambm observar que no circuito h um DIODO (D1)
inversamente polarizado e em paralelo com a carga, no caso, representada
pela bobina do rel RL1. Ele tem a funo de supressor de picos de
tenso. Devido a caractersticas da carga acionada, ao interrompermos
(despolarizarmos) o transistor h uma momentnea, porm grande elevao
de tenso entre as partes do circuito. Podemos fazer a comparao deste
circuito eltrico com um circuito hidrulico: se houver uma sbita interrupo
da passagem do fludo, como, por exemplo, o fechamento brusco de uma
torneira, a inrcia (tendncia do fludo em manter o movimento) causar um
brusco e momentneo aumento na presso. No caso do circuito eltrico, esta
tenso pode ser elevada a algumas centenas ou at milhares de volts durante
alguns microsegundos, dependendo da corrente que interrompida.
O diodo age, ento, por este curto perodo de tempo, permitindo que os
eltrons encontrem um caminho alternativo, dissipando a energia resultante
na carga e preservando a delicada juno do transistor do brusco aumento
de tenso, aumentando sua vida til.
No circuito anterior, o transistor NPN pode ser posto entre o rel e a
alimentao de 5V com a carga ligada ao emissor? Isso no recomendado,
uma vez que, para polarizar o transistor, importante que dimensionemos
a corrente entre a base e o emissor. Com o emissor ligado referncia
(GND), o circuito fica simples e bem definido. Se o emissor estivesse ligado
em srie com a carga, o comportamento da carga deveria ser considerado
na corrente do circuito e, devido a caractersticas inerentes dinmica do
circuito, haveria problemas, pois a diferena de potencial entre a base e o
emissor mudar durante o funcionamento do circuito e criando uma cadeia
de realimentao negativa que pode gerar efeitos indesejados. Portanto,
isso no recomendado.
Para todos os efeitos, recomendado ligar o EMISSOR de um transistor
NPN na referncia de tenso (GND ou V-), e o EMISSOR de um transistor PNP
na alimentao positiva (V+). Ou seja, a carga deve estar sempre conectada
ao coletor do transistor em qualquer circuito de acionamento.
2 Eletrnica Analgica
53

Um transistor pode ser acionado por uma tenso de 5V na base, mas ser
conectado a uma carga com uma tenso mais elevada, como, por exemplo,
12V? No caso dos transistores NPN, sim. Lembramos que o que define o
funcionamento do transistor bipolar a corrente e, se houver corrente entre
a base e o emissor, haver muito mais corrente entre o coletor e o emissor.
Lembre-se, no entanto, de limitar a corrente da base do transistor NPN
usando um resistor.
Segue, Figura 46, um circuito similar ao anterior, porm usando um TRANSISTOR PNP.

5V 5V
R3 R3
20K 20K
CONTROLE
CONTROLE

R2 Q2 R2 Q2
BC557 BC557
1K2 1K2 PNP
PNP
RL1 RL1
5V
D1 5V D1
1N4007 1N4007

Figura 46 - Circuito de acionamento de rel utilizando transistor PNP


Fonte: Autor

Observe que a diferena est no transistor utilizado (PNP), na forma


em que o circuito interligado (a carga fica entre o coletor e o GND) e,
principalmente, no sinal utilizado para polarizar o transistor (0V para ativar
o rel, e 5V para desativar).
O resistor R2, como anteriormente descrito, continua com o objetivo de
limitar a corrente da base e segue as mesmas regras de clculo antes citadas,
variando somente em relao ao sentido da corrente.
O resistor R3 agora apresenta o comportamento de PULL-UP, mantendo o
sinal da base em nvel alto de tenso (5V) para evitar acionamentos indevidos
causados por rudos.
O diodo D1 continua reversamente polarizado, atuando como supressor
de picos de tenso por uma frao de segundos quando o transistor passa
do estado de conduo para o estado de corte, interrompendo o circuito.

ENCAPSULAMENTO DE TRANSISTORES

Embora os transistores em geral tenham um funcionamento bastante similar,


possuindo junes PNP ou NPN, variaes de corrente, tenso, potncia e
montagem em circuitos, exigem encapsulamentos diferentes. (Figura 47)
AUTOMAO INDUSTRIAL
54

TO92/TO237
TO 1 T05/T018 TO 7 2
TO39/TO205 2
E-Line 2 2
1 3
1 3 1 3
1 2 3 4 1 2 3

TO 3 / TO 2 0 4 S OT 1 0 3 T0250
4 T0218/T0220 T02205
1 2 3 1 3 SOT93/TAB
1 4
2 4 (TAB) 3
3
(CASA) 2
TO 3 ( 4 P I N ) 12345
1 2 3

4 3 4
123

SOTB2 TO247/5
TO246 4 3
T03P/T0247 4 (TAB) ( TAB)
4
( TAB) ( TAB)

1 2 3 1 2 3 1 2 34 5

TO 262/TO 251 SOT199


TO126/SOT32 ISO TOP / SOT227B
4 4 3
4
(TAB)

1 2

1 2 3 1 2 3
1 2 3

ISO 218/220 SOT186 ISO 221 ISO126

1 2 3 1 2 3 1 2 3 1 2 3

Figura 47 - Encapsulamento: principais encapsulamentos de transistores e suas potncias


Fonte: Autor

Segue na Tabela 4 com os principais modelos de transistores NPN e PNP disponveis.


Tabela 4: Principais modelos de transistores NPN e PNP disponveis
NPN PNP Corrente Encapsulamento Tenso
Ganho ( )
mxima mxima
COLETOR- COLETOR-
EMISSOR (A) EMISSOR (V)
BC546 BC556 0.1 to-92 65
BC547 BC557 0.1 to-92 45
BC548 BC558 0.1 to-92 30
BC549 BC559 0.1 to-92 30
BC550 BC560 0.1 to-92 45
BC846B BC856B 0.1 sot-23 80 450
BC847C BC857C 0.1 sot-23 50 800
BC848B BC858B 0.1 sot-23 30 450
BC817-16 BC807-16 0.5 sot-23 50 160
BC817-25 BC807-25 0.5 sot-23 50 250
BC817-40 BC807-40 0.5 sot-23 50 350
2 Eletrnica Analgica
55

Continuao Tabela 4: Principais modelos de transistores NPN e PNP disponveis


NPN PNP Corrente Encapsulamento Tenso
Ganho ( )
mxima mxima
COLETOR- COLETOR-
EMISSOR (A) EMISSOR (V)
BC818-16 BC808-16 0.5 sot-23 30 160
BC818-25 BC808-25 0.5 sot-23 30 250
BC818-40 BC808-40 0.5 sot-23 30 350
2N2219 2N2905 0.6 to-39 40 300
2N2222 2N2907 0.6 to-18 40 300
PN2222A 1 to-92 40 300
MMB- 1 sot-23 40 300
T2222A
PZT2222A 1 sot-223 40 300
2N3019 1 to-39 80 300
BC141-16 BC161-16 1 to-39 60 250
TIP31 TIP32 3 to-220 40 50
TIP31A TIP32A 3 to-220 60 50
TIP31B TIP32B 3 to-220 80 50
TIP31C TIP32C 3 to-220 100 50
TIP120 TIP125 5 to-220 60 1000
TIP121 TIP126 5 to-220 80 1000
TIP122 TIP127 5 to-220 100 1000
TIP140 TIP145 5 60 1000
TIP141 TIP146 5 80 1000
TIP142 TIP147 5 100 1000
TIP41 TIP42 6 to-220 40 75
TIP41A TIP42A 6 to-220 60 75
TIP41B TIP42B 6 to-220 80 75
TIP41C TIP42C 6 to-220 100 75
2N3055 MJ2955 15 to-3 60
Fonte: Autor

A Tabela 4 deve ser utilizada como uma referncia rpida e superficial.


Consulte a documentao (folha de dados, ou datasheet) do componente para
informaes atualizadas.

COMO TESTAR TRANSISTORES BIPOLARES

1 passo: identificar os pinos e o tipo do transistor.


Embora haja certa padronizao em relao ao encapsulamento, importante
identificar no transistor os PINOS relativos o emissor, base e ao coletor. Em caso
de dvida, pesquise na internet pelo DATASHEET do componente em sites de
busca, como na Figura 48:
AUTOMAO INDUSTRIAL
56

Figura 48 - Tela de busca do Google


Fonte: Autor, captura de tela

Provavelmente, a maior parte das pginas encontradas remetero s folhas de


dados (datasheet) de diversos fabricantes do componente. Embora para o mesmo
cdigo o componente possa no apresentar variaes significativas, pode haver
variaes de um para outro fabricante. :
Por hora, vamos nos ater no fato de o transistor a ser testado ser PNP ou NPN,
e quais so os pinos de emissor, base e coletor. (Figura 49)

NPN

Figura 49 - Datasheet do transistor pesquisado


Fonte: Autor

2 passo: ferramenta
Para verificar o transistor bipolar, podemos usar um multmetro digital na
posio de teste de diodo. (Figura 50)


mV mA
A
V

V
A
OFF

Figura 50 - Detalhe do multmetro, marcado para teste de diodo


Fonte: Autor
2 Eletrnica Analgica
57

3 passo:
Se for um transistor NPN, siga os testes conforme Figura 51.

infinito infinito infinito


DC DC DC

C C
A A A

POWER PK HOLD B/L DC / AC


C POWER PK HOLD B/L DC / AC POWER PK HOLD B/L DC / AC

AUTO POWER OFF


E AUTO POWER OFF
E AUTO POWER OFF
B E
B B
+ + +
- - -
CAT ll CAT ll CAT ll

20A mA COM VHz 20A mA COM VHz 20A mA COM VHz

tenso juno PN tenso juno PN infinito


DC DC DC

C C
A A A

POWER PK HOLD B/L DC / AC POWER PK HOLD B/L DC / AC POWER PK HOLD B/L DC / AC


C
AUTO POWER OFF
B E AUTO POWER OFF
E AUTO POWER OFF
E
B B
+ + +
- - -
CAT ll CAT ll CAT ll

20A mA COM VHz 20A mA COM VHz 20A mA COM VHz

Figura 51 - Teste transistor NPN


Fonte: Autor

Se o transistor for PNP, faa os testes conforme Figura 52.

tenso juno PN tenso juno PN infinito


DC DC DC

POWER PK HOLD B/L DC / AC


C POWER PK HOLD B/L DC / AC
C POWER PK HOLD B/L DC / AC
C
AUTO POWER OFF
E AUTO POWER OFF
E AUTO POWER OFF
B E
B B
+ + +
- - -
CAT ll CAT ll CAT ll

20A mA COM VHz 20A mA COM VHz 20A mA COM VHz

infinito infinito infinito


DC DC DC

POWER PK HOLD B/L DC / AC


C POWER PK HOLD B/L DC / AC
C POWER PK HOLD B/L DC / AC
C
AUTO POWER OFF
B E AUTO POWER OFF
E AUTO POWER OFF
E
B B
+ + +
- - -
CAT ll CAT ll CAT ll

20A mA COM VHz 20A mA COM VHz 20A mA COM VHz

Figura 52 - Teste transistor PNP


Fonte: Autor

Caso alguma medio que deva resultar em INFINITO demonstre algum valor,
h indcios de que este transistor se encontra em curto. Para o valor de tenso de
juno esperado um valor prximo a 700 mV (0,7V) para transistores de silcio e
a 300 mV (0,3V) para transistores de germnio.
AUTOMAO INDUSTRIAL
58

Caso um transistor esteja em curto, a provvel causa dada


FIQUE ao excesso de corrente coletor - emissor ou base emissor.
ALERTA Se o transistor apresentar junes abertas, a provvel causa
ser dada a uma tenso reversa acima do limite suportado.

2.2.3 Transistor darlington

Quando nos referimos ao transistor darlington, estamos falando em um


agrupamento de dois transistores bipolares em um mesmo encapsulamento,
com intuito de aumentar o ganho do circuito, conforme a Figura 53:
(NPN) C (PNP) E
Q2

B Q1
Q1 B

Q2
E C

Figura 53 - Transistor Darlington


Fonte: Autor

importante observar que a tenso mnima de polarizao mais elevada (aprox.


1,2V), pois so duas junes, como se houvesse dois diodos em srie no circuito.
Este tipo de configurao de transistores pode apresentar instabilidade em altas
frequncias (faixa dos MHz), mas uma excelente alternativa para acionamentos de
atuadores devido ao ganho elevado (geralmente superior a 1000).

2.2.4 Transistores de efeito de campo

Nos transistores bipolares anteriormente estudados, o fator que controla


a passagem da corrente dado pela prpria corrente eltrica entre a base e o
emissor e chamado de transistor bipolar devido s caractersticas de suas
junes sobrepostas (NPN ou PNP).
Porm, outra forma de transistor que no utiliza corrente para polarizao, e
sim tenso, vem sendo largamente empregada em circuitos de acionamento, pois
atuam com cargas mais elevadas tanto em corrente como em tenso, sem haver
a necessidade de uma corrente, mesmo que pequena, diminuindo o consumo de
energia e aumentando a eficincia do circuito.
Os transistores de efeito de campo, tambm conhecidos como transistores
unipolares, utilizam um campo eltrico proporcionado por um sinal de tenso, sem
necessidade de correntes significativas para seu controle. So assim chamados,
porque a corrente eltrica determinada por um nico tipo de portador, podendo
ser ELTRONS (N-Channel) ou LACUNAS (P-Channel).
2 Eletrnica Analgica
59

No lugar da BASE presente nos transistores bipolares, nos transistores de


efeito de campo usamos a PORTA (ou GATE) como elemento de controle. Como
vantagens podemos citar a impedncia de entrada elevada (sendo bastante
sensvel nos elementos de controle) e baixas perdas relativas a fugas.
Basicamente, existem dois tipos distintos de transistores de efeito de campo,
o JFET Junction Field Effect Transistor (transistor de efeito de campo de juno)
e o MOSFET - Metal Oxide Semiconductor Field Effect Transistor (Transistor de
efeito de campo de xido de metal). Este ltimo ainda dividido em outras duas
subcategorias, conhecidas como MOSFET tipo crescimento ou intensificao e
MOSFET tipo depleo.
Segue o smbolo e a representao da juno de um transistor tipo JFET.
Nos transistores JFET existem duas regies constitudas de um mesmo tipo de
semicondutor (ou tipo N ou tipo P) eletricamente interligadas, chamadas de
PORTA (GATE). A regio de material semicondutor de tipo inverso entre as duas
regies de GATE chamada de canal e em seus extremos so conectados dois
terminais: o DRENO (DRAIN) e a FONTE (SOURCE). (Figura 54)
dreno(D) dreno(D)
canal N

canal P

porta(G) porta(G)

fonte(S) fonte(S)
D D

N P
G P P G N N

S S
Figura 54 - Smbolo de JFET e representao da estrutura construtiva
Fonte: Autor

Em um JFET canal N, o elemento de controle so os eltrons. Neste caso, DRAIN


(ou dreno) o terminal que drenar os eltrons, GATE (ou porta) controlar o fluxo
de eltrons, e SOURCE (fonte) fornece os eltrons.
Alguns autores associam o comportamento dos JFET a resistores controlveis,
pois, atravs da tenso aplicada ao GATE, podemos abrir um canal maior ou menor
para a passagem da corrente eltrica, simulando o efeito de um resistor varivel.
Em um JFET canal P, os elementos controlados so as lacunas. Neste caso, DRAIN
drena as lacunas, SOURCE fornece lacunas e GATE controla a passagem de lacunas.
Podemos fazer a comparao entre os transistores bipolares e os JFET da
seguinte forma: COLETOR = DRAIN, BASE = GATE e EMISSOR = SOURCE.
AUTOMAO INDUSTRIAL
60

Pesquise sobre o uso de transistores JFET em


VOC amplificadores, fontes de corrente, circuitos recortadores
SABIA? (ou chopper) e chaves analgicas.

O JFET empregado em aplicaes de pequenos sinais, no sendo o transistor


de efeito de campo mais indicado para acionamentos de dispositivos. Para estas
aplicaes, recomendado o uso dos MOSFETs.

MOS Metal-xido-Semicondutor

Outro transistor de efeito de campo do tipo Metal-xido-Semicondutor


(MOS). Ele atualmente um dos dispositivos eletrnicos mais importantes. Graas
ao desenvolvimento da tecnologia MOS, possvel obter a miniaturizao dos
circuitos, ampliando a capacidade de processamento de informaes.
Os transistores MOS podem ser divididos de acordo com o tipo de portador
de carga predominante (eltrons ou lacunas) ou pelo modo de funcionamento
(crescimento ou depleo) dado por sua construo fsica. Assim, temos:
Transistor MOS canal N (ou NMOS) tipo crescimento ou enriquecimento;
Transistor MOS canal N tipo depleo;
Transistor MOS canal P (ou PMOS) tipo crescimento ou enriquecimento;
Transistor MOS canal P tipo depleo.
A Figura 55 mostra a estrutura construtiva de um transistor MOS canal N de um
transistor MOS canal P tipo enriquecimento e seus respectivos smbolos:

Dreno Dreno
N+ P+
(drain) (drain)
Substrato Porta Substrato Porta
P N
(body) (gate) (body) (gate)

N+ Fonte P+ Fonte
(source) (source)

N-MOS ou MOSFET canal N P-MOS ou MOSFET canal P

D D

SUB SUB

G G

S S

CANAL N CANAL P

Figura 55 - Estrutura construtiva de um transistor MOS canal N de um transistor MOS canal P


tipo enriquecimento e seus respectivos smbolos
Fonte: Autor
2 Eletrnica Analgica
61

Observamos que na estrutura deste tipo de transistor surge um quarto


terminal, chamado de substrato ou bulk. Esse terminal conectado no bloco de
semicondutor (silcio ou germnio) a partir do qual so construdas as demais
estruturas que do origem aos terminais do transistor. Em geral, para as estruturas
MOS o terminal do substrato conectado ao terminal de fonte e, por essa razo,
em muitas montagens ele ignorado.
O funcionamento de um transistor NMOS tipo enriquecimento pode ser
resumido como segue: aplicando-se uma tenso entre o dreno e a fonte (VDS), a
conduo de corrente entre esses terminais depender da tenso aplicada na porta
(VGS). Se a tenso aplicada ao terminal de porta for positiva e grande o suficiente,
atrair cargas negativas para a superfcie do semicondutor tipo P (substrato) abaixo
dele. Aumentando ainda mais a tenso aplicada na porta, haver uma camada de
eltrons formando um canal ligando os semicondutores tipo N do dreno e da fonte,
possibilitando a conduo de corrente entre esses terminais.
Analogamente, nos transistores PMOS deve ser aplicada uma tenso negativa no
terminal de porta, a qual atrair cargas positivas para a superfcie do semicondutor
tipo N, induzindo a formao de uma camada de lacunas (canal) entre o dreno e a
fonte, que permitir a conduo de corrente entre eles.
Os transistores MOS tipo depleo diferenciam-se construtivamente dos
anteriores pelo fato de j possurem uma camada de mesmo tipo de material
que o dreno e a fonte, embora com uma dopagem mais fraca (menor nmero de
portadores) que a regio dos terminais.
A Figura 56 mostra a estrutura construtiva de um transistor MOS canal N e um
transistor MOS canal P tipo depleo e seus respectivos smbolos:

N+ Dreno P+ Dreno
(drain) (drain)
Substrato Porta Substrato Porta
P N N P
(body) (gate) (body) (gate)

N+ Fonte P+ Fonte
(source) (source)

MOSFET canal N MOSFET canal P

D D

SUB SUB

G G

S S

CANAL N CANAL P

Figura 56 - Estrutura construtiva de um transistor MOS canal N de um transistor MOS canal P


tipo depleo e seus respectivos smbolos
Fonte: Autor
AUTOMAO INDUSTRIAL
62

Os transistores MOS tipo depleo foram muito importantes para os primeiros


circuitos integrados. Esse transistor pouco usado nas tecnologias atuais, cujos
circuitos se baseiam quase exclusivamente em transistores MOS tipo enriquecimento.
Ele bastante similar ao JFET, podendo ser empregado nos mesmos circuitos.
Uma aplicao de circuito que utiliza transistores MOS na Automao Industrial
a chamada ponte H. Este circuito utilizado em situaes onde, alm de controlar os
acionamentos, desejamos controlar a tenso de uma determinada sada de potncia
de forma rpida. Este tipo de circuito utilizado essencialmente em equipamentos
que produzem diferentes efeitos, dependendo da forma de polarizao.
Por exemplo, um motor de corrente contnua convencional pode girar no
sentido horrio ou anti-horrio, dependendo da forma como conectado
fonte de alimentao. (Figura 57)
horrio anti-horrio _
+
+
_

Figura 57 - Motor de corrente contnua convencional


Fonte: Autor

Atravs de um circuito com quatro chaves podemos definir o sentido de


rotao do motor. (Figura 58)
Chave 2 Chave 1
Chave 2 Chave1

Chave 4 Chave 3

Chave 4 Chave 3
+ +
_ _
Chave 2 Chave 1

Chave 4 Chave 3

+
_

Figura 58 - Motor de corrente contnua convencional 1


Fonte: Autor

Porm, desejamos realizar o controle eletrnico das chaves. Uma alternativa usar
rels. Segue um esquema de ligao vlido de um motor DC usando rels NA/NF.

na
bobina

nf

C
+
_
na
bobina

nf

Figura 59 - Motor DC
Fonte: Autor
2 Eletrnica Analgica
63

Apesar de o circuito acima funcionar, existem limitaes quanto ao tamanho (o


circuito usando rels tende a ser maior do que usando semicondutores), lentido
(o uso de dispositivos eletromecnicos, como os rels, muitas vezes mais lento
do que os que usam semicondutores como transistores) e necessidade de um
sinal de controle amplificado o suficiente para poder acionar os rels.
Usando transistores no lugar das chaves, podemos ter um circuito mais
leve, de menor custo e que permite acionamentos atravs de sinais de
baixa corrente. Utilizando transistores MOS, existe ainda a vantagem de ter
acionamento feito por tenso, minimizando problemas relativos ao controle
de corrente no acionamento da carga.
Na Figura 60 apresentado o esquema de uma ponte H controlando um
motor DC.

+V

Q1 Q3
D1 D3
Q2 M Q4
Controle
D2 D4

Figura 60 - Ponte H para controle da rotao de um motor utilizando transistores MOS


Fonte: Autor

Uma caracterstica da ponte H que os transistores, ou chaves, esto


diagonalmente interligados. Assim, quando Q1 for acionado, Q4 tambm
ser acionado. Analogamente, quando Q2 for acionado, Q3 tambm ser
acionado. Desta forma, cada vez que o circuito de controle (microcontrolador)
acionar um dos pares de transistores, o caminho que a corrente eltrica
percorrer no circuito da ponte far com que o motor gire em um sentido
diferente, conforme mostrado na Figura 61.
V+ V+ V+ V+

Figura 61 - Detalhamento
Fonte: Autor
AUTOMAO INDUSTRIAL
64

importante lembrar que a construo de uma ponte H pode ser realizada


utilizando qualquer tipo de transistores (MOS, bipolares ou JFET), bem como rels.

Em uma PONTE H, importante avaliar a implementao


de um circuito de controle robusto e proteo em caso de
FIQUE acionamento indevido, pois caso haja acionamento em
ALERTA ambas as direes, ocorrer um curto circuito, elevando
drasticamente a corrente e podendo causar danos
irreversveis aos componentes.

Pesquise pelo termo HALF BRIDGE e sua aplicao no


SAIBA controle de motores de corrente contnua. Verifique se existe
MAIS algum circuito integrado que possa substituir quatro ou mais
transistores para acionamentos em ponte H.

OBSERVAES SOBRE A UTILIZAO DE TRANSISTORES BIPOLARES E


MOSFETS

1) Nem o transistor bipolar, nem o MOSFET servem para controlar correntes


alternadas.
2) Os MOSFETS so mais caros que os transistores bipolares, mas funcionam
melhor como chaves em altas frequncias.
3) O terminal de controle de um transistor (base ou gate) tem sua tenso
comparada com a tenso no emissor ou na fonte. Portanto, no uma boa ideia
colocar a carga em srie com estes terminais. (Figura 62)

C D

B
G

E
S
carga NO! carga

Figura 62 - Terminal de controle de um transistor


Fonte: Autor

Costumeiramente, a carga, quando em srie com um terminal, colocada


junto ao coletor ou ao dreno.
4) preciso ainda lembrar que, entre o emissor e a base, o transistor se
comporta como um diodo e, portanto, no boa ideia acionar os transistores
bipolares ligando sua base diretamente tenso de alimentao ou ao terra. Isto
equivale a um curto-circuito. (Figura 63)
2 Eletrnica Analgica
65

+V

+V
carga
E
C
B
NO!
B

carga E

Figura 63 - Terminal de controle de um transistor 1


Fonte: Autor

Para evitar o problema, um simples resistor em srie com a base evitar esse
curto, alm de limitar a corrente de base.
5) Sempre devemos colocar um diodo em paralelo com uma carga indutiva,
como mostra a Figura 64. Quando a corrente flui normalmente, o diodo no conduz,
mas quando o fluxo de corrente cortado, o indutor gera uma tenso inversa muito
alta que seria capaz de destruir o transistor se no fosse dissipada pelo diodo.
+V

Carga indutiva
Diodo ( indutor, rel,
transformador etc.)

Chave eletrnica
(transistor bipolar,
MOSFET, SCR etc.)

Figura 64 - Conexo da carga a um transistor NPN usado como chave


Fonte: Autor

2.2.5 Transistores CMOS

A grande maioria dos MOSFETs fabricados atualmente encontram-se na forma


de circuito integrado. O tipo de circuito integrado construdo tem ambos os
dispositivos PMOS e NMOS embutidos em um mesmo substrato, como mostrado
na Figura 65. Esses circuitos so chamados de CMOS ou MOS complementar
(Complementary Metal-Oxide Semiconductor).
AUTOMAO INDUSTRIAL
66

NMOS PMOS

S G G D
B D S B

p+ n+ n+ p+ p+ n+
n-well
P= substrate

Figura 65 - Circuito CMOS ou MOS


Fonte: Autor

As principais vantagens apresentadas pela tecnologia CMOS so o baixo


consumo de potncia, alta imunidade a rudo, alto nvel de integrao,
simplicidade de projeto e operao confivel em ampla faixa de valores
de tenso e tambm para altas frequncias. Por essas razes, esses
dispositivos so largamente utilizados para a implementao de circuitos
digitais, como portas lgicas.
Alm de suas aplicaes na Eletrnica Digital, a tecnologia CMOS tambm
utilizada em aplicaes analgicas, em especial para a construo de
amplificadores operacionais ou em radiofrequncia, neste ltimo caso sendo
usada em frequncias superiores a GHz.
Para o projeto de circuitos com transistores CMOS utilizamos os seguintes
smbolos para representar os transistores PMOS e NMOS: (Figura 66)
D D

G G

S S

D D

G G

S S
CMOS canal P CMOS canal N

Figura 66 - Smbolos CMOS


Fonte: Autor

2.3 Tiristores

A caracterstica mais relevante destes semicondutores atuar como uma


chave biestvel e de ao rpida, sendo construdos atravs de quatro ou mais
camadas P e N.
2 Eletrnica Analgica
67

O efeito biestvel se d pelo fato de haver uma condio definida para


mudar do estado de BLOQUEIO para o estado CONDUTIVO, e vice-versa. De
forma geral, um TIRISTOR pode ser colocado em modo CONDUTIVO atravs de
um terminal de disparo (GATE), ou atravs de uma tenso limite atingida. Uma
vez no estado CONDUTIVO, o componente assim se mantm enquanto houver
uma corrente principal fluindo pelo componente superior a um limite mnimo
pr-determinado (IH).
So componentes construdos por um mnimo de trs junes e de quatro
elementos semicondutores (PNPN) de forma a PERMITIR ou BLOQUEAR a
passagem da corrente eltrica.
Devido a caractersticas apropriadas para o chaveamento (LIGA e DESLIGA), e sua
caracterstica biestvel, aliados possibilidade de uso em grandes nveis de tenso
e corrente, os tiristores so comumente utilizados em circuitos de chaveamento
para controle de potncia, em fontes e equipamento de controle de motores e
aquecimento. Podemos encontrar tiristores em sistemas controlados de retificao
de corrente alternada, em sistemas de controle de iluminao (dimmer), inversores
de frequncia e rels de estado slido. Devido sua simples e rpida ao biestvel,
os tiristores tambm so empregados em aplicaes de segurana.
Conforme a construo e a forma de disparo, os tiristores so classificados
conforme a Figura 67:
SCR TRIAC SUS ASBS
(Silicon Controlled Rectifier) (Triode AC Switch) (Silicon Unilateral Switch) (Assymmetrical Silicon Bilateral
A M1 A Switch) M1

G G

G G

K M2 K M2

PUT LASCAR SCS GTO


(Programmable Unijunction (Light Activated SCR) (Silicon Controlled Switch) (Gate Turn-Off Switch)
Transistor) A A
A1

G2
G

G G G

K K K
K

SBS DIAC LAPUT LASCS


(Silicon Bilateral Switch) (Bidirectional Diode (Light Activated PUT) (Light Activated SCS)
M1 Thyristor) M1

G
G2

G1

M2 A2 K
K

Figura 67 - Tipos de tiristores


Fonte: Autor
AUTOMAO INDUSTRIAL
68

MODOS DE DISPARO:

Os tiristores so controlados por uma ao especfica que faz com que mudem
de ESTADO DE BLOQUEIO para ESTADO CONDUTIVO. Esta ao chamada de
disparo e pode ser realizada por processos diferentes, que seguem.
INJEO DE CORRENTE DE GATE: Usado nos SCR, SCS e TRIAC, o processo mais
conhecido de disparo, que ocorre aps a aplicao de uma pequena corrente no
terminal de GATE, iniciando o processo de reao em cadeia (efeito avalanche).
TENSO ENTRE ANODO E CATODO: Neste caso, o efeito avalanche
determinado pelo aumento da tenso entre anodo e catodo acima de um limite
especfico, sem a necessidade de um terceiro terminal. Este procedimento usado
para o tiristor do tipo DIAC.
TAXA DE SUBIDA DA TENSO ANODO CATODO: Quando o disparo realizado
por uma rpida variao na tenso entre anodo e catodo.
TEMPERATURA: Alguns tipos de tiristores so bastante sensveis temperatura. Com
a elevao da temperatura, h um aumento na corrente de fuga das junes. Quando o
nvel de corrente suficiente atingido, ocorre a mudana de estado (disparo).
ONDAS ELETROMAGNTICAS (LUZ): A incidncia de radiao eletromagntica
com comprimento de onda adequado (LUZ) age aumentando as lacunas no
material semicondutor, provocando o disparo.

Um rel de estado slido uma alternativa a rels


eletromecnicos devido a maior vida til, ausncia de arco
VOC eltrico durante comutaes, e velocidade muito mais
SABIA? elevada? Este componente, bastante utilizado em sistemas
de automao, utiliza tiristores como componente de
comutao da parte de potncia.

SAIBA Pesquisando por rels de estado slido e optoacopladores


MAIS baseados em tiristores.

2.3.1 SCR

SCR significa SILICON CONTROLLED RECTIFIER Retificador Controlado de


Silcio. Assim como a maioria dos tiristores, um SCR possui dois terminais nominados
ANODO e CATODO, que podem ser direta ou inversamente polarizados.
Para permitir a passagem de corrente, um SCR deve estar diretamente
polarizado, e receber um pulso atravs de seu pino GATE, que alguns autores
acabam associando ao termo gatilho devido caracterstica do DISPARO, embora
a traduo literal seja comporta.
2 Eletrnica Analgica
69

ANODO CATODO

PORTA
Figura 68 - Smbolo do SCR
Fonte: Autor

Smbolo de um SCR. A semelhana com um diodo no mero acaso. Alguns


consideram o SCR um tipo de diodo, j que possui ANODO e CATODO. O SCR
tem o comportamento de um diodo com controle, permitindo que definamos o
momento que ele deve passar a conduzir quando diretamente polarizado.
De forma genrica, podemos associar um SCR ligao de dois transistores
bipolares, segundo a Figura 69:
ANODO
ANODO
PNP

PORTA NPN
PORTA

CATODO
CATODO

Figura 69 - Analogia entre um SCR e um circuito com dois transistores


Fonte: Autor

Apresentamos agora um grfico que representa a curva caracterstica VxA de


um SCR, que demonstra a relao da tenso de polarizao direta com a corrente.
Corrente direta
Caracterstica
(A) de conduo direta
Intensidade da corrente
de disparo
Ig2 > Ig1

Intensidade da corrente
Ig1>0

Ig= 0

de manuteno
(IH)

Tenso Inversa Tenso direta


VT Corrente de fuga VRO (V)

Corrente de fuga

Zona de ruptura inversa


(dano no componente) Corrente inversa

Figura 70 - Representao da Curva V x A de um SCR


Fonte: Autor

Tomando por anlise o valor da corrente quando diretamente polarizado,


observe, na Figura 70, que, aps a corrente de disparo ser atingida, a tenso
necessria para manter o estado condutivo cai repentinamente.
AUTOMAO INDUSTRIAL
70

2.3.2 DIAC

ANODO 1 ANODO 2

Figura 71 - Smbolo de DIAC


Fonte: Autor

O nome DIAC vem de Diode for Alternating Current e significa DIODO para
CORRENTE ALTERNADA.
Em relao a outros tiristores, importante observar que os terminais no so
nominados ANODO e CATODO, mas ANODO1 e ANODO2, ou, ainda, M1 e M2,
variando conforme o fabricante e a literatura.
O DIAC tambm tem seu funcionamento determinado pelo conjunto de trs
junes, com materiais P e N dispostos em camadas. A diferena est em caminhos
alternativos e em materiais semicondutores que permitem a passagem de corrente
eltrica em ambas as formas de polarizao. Geralmente, um DIAC passa a conduzir
quando uma tenso mnima atingida (normalmente de 20V a 30V) e entra em
estado de bloqueio quando a corrente fica abaixo de um nvel mnimo.
O efeito biestvel do DIAC em relao tenso similar a algumas lmpadas
NEON, e utilizado em circuitos geralmente com o intuito de implementar
mecanismos analgicos de disparo de baixo custo.
No prximo tpico h um exemplo de circuito de um DIMMER (para controle
de luminosidade em lmpadas incandescentes) onde um DIAC usado para
promover o disparo controlado de outro tiristor (TRIAC) a cada semiciclo da rede
de corrente alternada.

2.3.3 TRIAC

O nome TRIAC vem de Triode for Alternating Current e significa TRIODO para
CORRENTE ALTERNADA.
De forma geral, o TRIAC um DIAC com terminal para disparo (GATE). Enquanto
em um DIAC o que determina o momento de disparo a tenso entre os terminais,
em um TRIAC isso determinado principalmente pela corrente do terminal GATE,
que chamaremos de corrente de gatilho.
O TRIAC constitudo de dois SCRs em uma configurao antiparalela (paralelo,
mas em sentidos opostos).
Uma aplicao interessante de um TRIAC em circuitos detectores de zero
para acionamento de rels ou contactoras que comutam cargas elevadas em
corrente alternada.
2 Eletrnica Analgica
71

Quando um rel ou contactora convencional utilizado para acionar uma carga,


pode haver eroso e carbonizao nos contatos devido excessiva corrente de
partida do circuito acionado no momento que o contato do rel fechado. Com
corrente alternada, isso pode ser minimizado se o contato do rel for acionado ou
desativado no momento em que a tenso estiver cruzando o nvel zero, pois sem
tenso no h corrente e, consequentemente, no haver dano.
O TRIAC aplicado quase exclusivamente em circuitos de corrente alternada,
sendo o principal componente de sistemas de controle de potncia em
equipamentos AC, largamente utilizado em aplicaes de iluminao, temperatura
e controle de velocidade de motores.
Segue o circuito de um DIMMER, que pode ser aplicado nestes tipos de
controle, onde a onda senoidal proveniente da rede eltrica AC controlada pelo
TRIAC, sendo que o disparo do TRIAC realizado por um circuito que utiliza um
DIAC a fim de realizar um disparo controlado em determinado momento da onda
senoidal AC, ajustado por um potencimetro.
O DIMMER pode ser utilizado em sistemas de aquecimento (chuveiros,
aquecedores e sistemas que utilizam resistncias eltricas), lmpadas eltricas
incandescentes e motores eltricos (eletrodomsticos, furadeira, parafusadeira etc.)
R1= R2 = 10K V+
F
220K (p/110V) V- t(ms)
R1 RV1= 470K (p/220V)
CARGA
RV1 V+
DIAC
C1 = C2 = 100nF / 400V
220V TRIAC R2 V- t(ms)
TRIAC = TIC226D
V+
N C1 C2
V- t(ms)
chave Efeito do triac
ceifando a curva
da corrente alternada

Figura 72 - Circuito de um dimmer


Fonte: Autor

TRIACs e DIACs so tipicamente utilizados em circuitos de


FIQUE corrente alternada, em tenses de 110V ou superiores. Sempre
ALERTA observe as prticas de segurana para implementar circuitos
deste tipo, utilizando EPIs e procedimentos adequados.

2.4 Condicionamento de sinal

Na automao industrial, um SINAL uma informao enviada ou recebida


atravs de um meio fsico. Os SINAIS podem ser digitais ou analgicos.
Em um sinal DIGITAL, a informao representada por estados finitos e
definidos, e geralmente representada atravs de contrastes binrios, como 0 e
1, ligado e desligado, tenso positiva ou negativa, com corrente ou sem corrente,
pulso breve ou pulso longo, entre outros.
AUTOMAO INDUSTRIAL
72

Em SINAIS analgicos, a limitao dada pelos valores mximo e mnimo de


uma informao, porm pode variar dentro desta faixa, onde existem infinitas
representaes possveis. Um sinal ANALGICO pode representar uma informao
atravs de uma variao em uma grandeza. Em sistemas eltricos, geralmente
isso representado atravs da variao de tenso, de corrente ou de frequncia.
Um exemplo de sinal analgico o gerado por um sensor de temperatura
do tipo termopar. O sistema analgico do ponto de vista da representao da
informao porque, apesar de haver um limite mximo e mnimo de temperaturas
suportadas, podem ser representadas todas as possveis e infinitas informaes
dentro deste limite. (Figura 73)

INFINITOS VALORES

DC

V
,
POWER PK HOLD B/L DC / AC

AUTO POWER OFF

(mV)

+
-
CAT ll

20A mA COM VHz

- + 0C
termopar

Figura 73 - Voltmetro para milivolts conectado a um sensor de temperatura tipo termopar


Fonte: Autor

Os termopares so agrupamentos de dois metais que geram


SAIBA uma pequena tenso (geralmente em milsimos de volts)
MAIS que varia proporcionalmente temperatura.

A informao analgica constituda de infinitos valores possveis em um


determinado intervalo. Um sinal analgico a representao desta informao
atravs de um meio fsico (eletricidade, luz, presso, som, radiofrequncia etc.)
Do ponto de vista eletrnico, necessrio controlar a informao analgica
representada eletricamente atravs de variaes na resistncia, corrente, tenso
ou frequncia, grandezas estas que sofrem alteraes devido interferncias dos
mais diversos tipos, como caractersticas dos condutores, rudos eletromagnticos
e imprecises inerentes a partes do circuito.
2 Eletrnica Analgica
73

Em um sistema eltrico, podemos enviar um SINAL de corrente a um transistor


bipolar, ou um sinal de tenso a um MOSFET, conforme estudado anteriormente.
Em um sistema de comunicao tico, enviamos pulsos de luz atravs de LEDs
e os capturamos com fotodiodos ou fototransistores. Na automao industrial,
sensores padronizados enviam sinais de temperatura, presso, vazo e outras
grandezas atravs de variaes de tenso ou de corrente eltricas.
No caso dos SINAIS ELTRICOS ANALGICOS, enviar a informao em nveis de
tenso e corrente elevados pode gerar problemas, pois o custo dos condutores
seria muito elevado, e sinais eltricos em correntes elevadas poderiam limitar
velocidades e, consequentemente, a troca de informaes mais complexas. Por
este motivo, os SINAIS ELTRICOS geralmente so sinais de baixa tenso e com
correntes bastante reduzidas, menores do que a necessria para acionamentos da
maioria dos atuadores. (Figura 74)

Figura 74 - Da direita para esquerda: Sensor de presso que envia sinal analgico atravs de variao de corrente (4 a 20 mA);
Sensor tubular indutivo analgico, que envia sinal de 0 a 10V conforme proximidade;
sensores analgicos por ultrasom, que envia sinal de 0 a 10V
Fonte: Autor

Cabe salientar que ELETRICIDADE somente um dos tipos de energia que


utilizamos. Existem outras formas, como ondas eletromagnticas, energia
trmica, energia cintica, entre outros. A ENERGIA pode ser transformada de uma
forma para outra. o que ocorre, por exemplo, em um transformador, onde a
energia eltrica gera um campo eltrico atravs do enrolamento de fios chamado
de primrio, e este campo eltrico, por sua vez, transformado novamente em
energia eltrica no enrolamento secundrio.
Da mesma forma, fios condutores de sinal que passam prximos a campos eltricos
acabam sofrendo interferncias que podem ser prejudiciais informao representada.

Uma das primeiras pessoas que transformou sinais eltricos


em ondas eletromagnticas para uso em comunicaes
VOC de rdio foi o Padre Roberto Landell de Moura, um padre
SABIA? brasileiro de Porto Alegre que, na dcada de 1890, realizava
experincias de comunicao atravs de ondas de rdio.

Muitos equipamentos eletrnicos tm seu princpio de funcionamento


relacionado ao envio de ondas eletromagnticas, como equipamentos de
radiocomunicao, iluminao e aquecimento. Existem outros que geram ondas
eletromagnticas como subproduto indesejvel devido ao seu princpio de
funcionamento, como reatores de luminrias, transformadores, motores eltricos
AUTOMAO INDUSTRIAL
74

e condutores de alta tenso. Estes dispositivos acabam gerando interferncias


eletromagnticas indesejveis que podem interferir nos sinais de transmisso.
Fios condutores em circuitos de alta impedncia (altssima resistncia) podem
funcionar como antenas, captando rudos eletromagnticos e transformando-os
em sinais eltricos que podem interferir na informao representada.
A prpria linha de transmisso de energia pode propagar interferncias atravs
de oscilaes indesejadas causadas por equipamentos a ela conectados.
Portanto, independente da forma de propagao do sinal analgico, existem
inmeros fatores que interferem de forma indesejvel na produo e transmisso
da informao. Costumamos chamar esta interferncia de RUDO.
Atualmente, a quantidade de informaes geradas e transferidas entre os
dispositivos enorme, exigindo maior velocidade de troca de informaese utilizao
de um mesmo condutor eltrico para transferir vrias informaes simultaneamente.

Algumas redes industriais, como a AS-i, permite utilizar


um nico par de fios para disponibilizar alimentao e um
VOC canal de troca de dados entre vrios sensores e atuadores,
SABIA? diminuindo o custo e facilitando a implantao de sistemas
de automao.

Portanto, ao utilizar SINAIS digitais e analgicos na automao, enfrentaremos


problemas relativos a:
rudos: interferncia indesejada nos sinais eltricos,
nveis de tenso e corrente limitados que precisam ser amplificados e
sobreposio de sinais onde precisamos enviar mais do que uma informao
no mesmo condutor eltrico.
Os AMPLIFICADORES OPERACIONAIS so componentes que nos ajudam
a CONDICIONAR um sinal eltrico, removendo rudos, amplificando nveis de
tenso, comparando sinais, somando ou subtraindo tais sinais eltricos, alm de
gerar e filtrar sinais de frequncia.

2.4.1 Amplificador operacional

O amplificador operacional, tambm conhecido como OPAMP ou AMPOP, um


componente eletrnico com velocidade de resposta bastante elevada que pode ser
facilmente adaptado a diversas aplicaes na eletrnica, geralmente relacionadas
ao condicionamento de sinais. Atravs de alguns poucos componentes externos,
possvel aplicar um amplificador operacional em um circuito com comportamento
de filtro, de amplificador, de comparador, de somador, de subtrator ou em outras
funes, variando conforme caractersticas do componente e, principalmente, em
funo das caractersticas do circuito de realimentao.
2 Eletrnica Analgica
75

A realimentao (tambm chamada de retroalimentao ou feedback) ocorre


quando a sada de um processo utilizada como parte de sua entrada, com um
objetivo especfico. No caso dos amplificadores operacionais, a forma como a
realimentao ligada determina a funo do componente no circuito.
Abaixo, a Figura 75 representa um amplificador operacional e um circuito
integrado LM741 no encapsulamento DIP.
V+

+ 1 8
Vo - 2 7 V+
+ 3 6 VO
V- 4 5
V- LM741
Figura 75 - Amplificador operacional. CI LM741
Fonte: Autor

Pesquise sobre os encapsulamentos possveis para os


SAIBA amplificadores operacionais, observando quanto
MAIS tecnologia de montagem e quantidade de amplificadores
em um mesmo CI.

Muitos autores iniciam o contedo de amplificadores operacionais propondo o


modelo de um OPAMP IDEAL, tendo este componente as caractersticas que seguem:
1) Possui ganho de tenso infinito.
2) A impedncia de entrada infinita, no havendo corrente.
3) Sada com impedncia zero, sem promover perda alguma no sinal gerado.
4) No h retardo algum no tempo de resposta.
5) Apresenta a mesma eficincia para qualquer frequncia.
Porm, devido a fatores construtivos, os amplificadores operacionais
apresentam um comportamento diferente do ideal, havendo vrios modelos no
mercado que podem ser selecionados tendo em vista a aplicao desejada.
Para a maioria das aplicaes h um modelo de amplificador operacional
que se comporta prximo ao OPAMP ideal, sendo importante pesquisar sobre as
diferentes caractersticas de amplificadores operacionais existentes no mercado.

Pesquisando sobre caractersticas de diferentes modelos


SAIBA de amplificadores operacionais, como frequncia mxima
MAIS suportada, ganho mximo, corrente ou impedncia de
entrada e tenso mxima.

Em uma primeira configurao, vamos aplicar um OPAMP genrico para AMPLIFICAR


um sinal de baixo nvel de tenso para posterior uso em um sistema de controle.
AUTOMAO INDUSTRIAL
76

A configurao que segue conhecida como AMPLIFICADOR INVERSOR, utilizada


como uma configurao bastante comum para amplificador de ganho constante.
Este circuito no recomendado para amplificar sinais limitados em corrente
devido baixa impedncia do circuito causado, principalmente pelo resistor Rf.

VO
Vi
Ri
Vi VO
Rf

ganho = VO =
Rf
Vi Ri
Figura 76 - Amplificador inversor. No grfico em vermelho, o sinal de entrada (Vi),
e em azul o sinal de sada, j amplificado e invertido (Vo).
Fonte: Autor

Para sinais de entrada dbeis (de baixssima corrente) recomendada a configurao


de AMPLIFICADOR OPERACIONAL NO-INVERSOR, onde a impedncia de entrada
apenas a do componente, variando conforme a qualidade e o modelo do componente.
A seguir, figura de um amplificador no inversor. Observe a mudana na frmula
para clculo do ganho para esta configurao, que dada por Av = 1 + (Rf / Ri).
Aplicao: Aumentar a amplitude de um sinal eltrico para um ganho definido.
Exemplo: Um termopar conectado a um sistema de controle.
Vi

VO
Vi
Ri
VO
Rf

Rf
ganho = 1+
Ri
Figura 77 - Amplificador. No grfico em vermelho, o sinal de entrada (Vi),
e em azul o sinal de sada, j amplificado (Vo).
Fonte: Autor

Dado o exemplo de ligao de um termopar em um sistema de controle,


vamos a algumas consideraes importantes sobre este sensor:
Termopares so dispositivos muito utilizados em medio de temperatura,
visto sua eficincia e, principalmente, seu custo.
Seu funcionamento baseado no fato de uma juno de dois metais poder
gerar tenso de acordo com a temperatura qual ele submetido.
Dependendo da faixa de temperatura e da preciso, utilizamos uma
combinao de par metlico especfica. No momento, no nos aprofundaremos
neste assunto, deixando para explicar melhor no captulo de sensores.
O importante observar que em funo do tipo e das dimenses da juno,
um termopar gera um sinal com tenso e corrente bastante baixas e que devem
ser amplificados para o aumento da robustez do sinal, pois caso contrrio o sinal
poderia ser facilmente alterado por fatores externos indesejveis, como rudo
eletromagntico, resistncia de condutores etc.
2 Eletrnica Analgica
77

Para facilitar o entendimento sobre o uso de amplificadores operacionais na


automao, vamos estudar o equipamento abaixo, propondo algumas estratgias
de controle utilizando eletrnica analgica atravs de amplificadores operacionais.

aquecedor
sinal 0...48,8 mV

CONTROLE
220V rel

0V ou 24V, 120 mA

Figura 78 - Tanque de fluido


Fonte: Autor

Um tanque de fludo, em uma indstria de alimentos, deve ser mantido a uma


temperatura relativamente estvel, prxima a 60C. Para a leitura da temperatura
utilizado um termopar tipo K que pode gerar at 48,838 mV quando submetido
temperatura de 1200C, em uma corrente praticamente nula, de alguns
microampr ou nanoampr. Aps calcular a relao entre tenso e temperatura,
levando em considerao a curva do sensor utilizado, informado que aos 60C
obtida uma tenso de 2,5 mV (0,0025V).
Como desejamos manter a temperatura do sistema acima deste limite, um
circuito de controle implementado de forma a acionar o REL que ativa o
aquecimento sempre que a temperatura for inferior a 60C, ou seja, sempre que a
tenso gerada pelo termopar for inferior a 2,5mV.
Sendo a tenso muito baixa para aplicar diretamente em um circuito de controle,
agravado pelo fato de a corrente disponibilizada por este sinal ser extremamente
baixa, vamos usar um amplificador operacional segundo o esquema que segue:

5V
VO
aquecedor Ri

220V rel
1K 5V
Rf

1M
OPAMP no inversor

ganho = 1+ Rf / Ri = 1 + 1000000 / 1000 = 1001

Figura 79 - Tanque de fluido 1


Fonte: Autor
AUTOMAO INDUSTRIAL
78

Devida configurao de ganho 1001, a tenso de 2,5 mV (limite para o controle


do aquecedor) ser amplificada pelo OPAMP, gerando uma tenso 1001 vezes maior.
Aps passar pelo OPAMP, o sinal amplificado 1001 vezes. Desta forma, o sinal
de alguns milivolts passa a ser bem maior, facilitando o uso da informao por ele
representada no restante do circuito de controle.
Embora nosso circuito tenha amplificado o sinal de alguns milivolts para uma
tenso mais significativa, ainda h um problema: como fazer com que um sinal
deste circuito acione o aquecedor se e, somente se, este sinal for inferior a 2,5025 V?
Para provar a versatilidade dos amplificadores operacionais, no prximo
tpico estudaremos como utilizar outro OPAMP neste circuito como um
circuito de comparao, obtendo uma sada que indique se o sinal ultrapassou
ou no o limite definido.

2.4.2 Amplificador operacional como comparador

Em um circuito comparador, o objetivo realizar a comparao entre dois


sinais distintos, obtendo uma sada que indica se o primeiro sinal maior ou
menor que o segundo.
No exemplo anterior havia um sinal que deveria ser comparado com o valor
da tenso limite de 2,5025V para obtermos a informao necessria relativa ao
controle do aquecedor.
Neste caso, dado que j temos o sinal a ser comparado, precisamos gerar um
sinal fixo o mais prximo possvel desta tenso.
Usando um divisor de tenso, podemos obter, atravs da mesma fonte de
alimentao do circuito, uma tenso prxima a 2,5V. O divisor de tenso pode ser obtido
atravs da ligao em srie de dois resistores entre a alimentao de 5V e a referncia
(GND). Recomendamos resistores de preciso (1%) para obter melhor resultado.
Vin 5V C.C.
R1

1k2

Vout
2,5V

1k2
R2

Figura 80 - Divisor de tenso


Fonte: Autor
2 Eletrnica Analgica
79

Neste tipo de circuito, Vout pode ser determinado pela frmula que segue:
Vout = Vin . R2
(R1 + R2)
Tendo a referncia de 2,5V, bastante aproximada do valor desejado para a aplicao,
precisamos agora COMPARAR o sinal proveniente do circuito de amplificao com
esta referncia. importante lembrar que o divisor de tenso acima gera uma tenso
muito prxima, com uma variao inerente preciso dos componentes utilizados.
Podemos montar o circuito que segue: (Figura 81)
amplificador Vin5V

5V 1K2

R1
5V
aquecedor Ri 2,5V
VO
1K2
R2

220V rel
1K 5V
Vi
Rf
VO = 5V quando Vi < 2,5V
1M 0V quando Vi > 2,5V
Figura 81 - Circuito
Fonte: Autor

Embora este sistema seja til, na prtica poder haver alguns problemas.
Observe que a sada ter tenso prxima a 0V quando a tenso da entrada
inversora do OPAMP usado como comparador estiver acima de 2,5V, e esta mesma
sada ser prxima a 5V quando a entrada for inferior a 2,5V. Mas, e quando o sinal
estiver exatamente em 2,5V? Neste caso, devido ao alto ganho do componente
e instabilidade tpica dos sinais eltricos em circuitos reais, podemos esperar
pequenas oscilaes em frequncias aleatrias, que faro com que a sada oscile,
variando bruscamente entre 0V e 5V, podendo danificar componentes ou partes
do circuito devido ao excessivo LIGA e DESLIGA intermitente. Em outras palavras, a
sada do circuito comparador ficar muito instvel quando as entradas do OPAMP
comparador estiverem com valores muito prximos.
Neste caso, podemos configurar o circuito comparador na forma de um circuito
Schmitt trigger, ou em portugus, um disparador Schmitt, adicionando um
comportamento que ir gerar estabilidade ao sistema.
Esquema de um disparador Schmitt junto ao grfico que demonstra o
comportamento da sada em funo do sinal de entrada. (Figura 82)
Vref
R3
Vc
R1 Vc Vi
Vsup:V +
(s)
Vc
V+
V0
V0
R2 Vi
V0 = 0 V0 = V +
quando sinal de quando sinal de
entrada ficar acima entrada ficar
Vinf: V - de Vc abaixo de Vc.

Figura 82 - Circuito 1
Fonte: Autor
AUTOMAO INDUSTRIAL
80

No circuito acima h uma faixa de deslocamento gerada pela realimentao.


Quando a sada estiver em nvel baixo, a realimentao realizada pelo circuito
limitado por R3 baixa o nvel de tenso Vc gerado pelo divisor de tenso na
entrada no inversora para o nvel Vc. Quando Vi for inferior a Vc, Vo elevado
para o nvel alto de tenso, realimentando o circuito e elevando a tenso da
entrada no-inversora novamente para Vc. Portanto, com este circuito acabam
sendo criadas duas tenses de referncia diferentes para o comparador, uma para
quando ele est com a sada em nvel alto de tenso e outra para quando ele est
em nvel baixo de tenso. A diferena entre duas sadas chamamos de HISTERESE.
Ela consiste em uma zona de transio sem efeitos, pois as variaes ocorridas
neste intervalo no geram mudanas no estado da sada do comparador.
De forma mais especfica, HISTERESE significa RETARDO, mas a utilizao deste
termo na automao industrial referente a uma rea neutra, onde um estmulo
externo no causa efeito na sada.
Como R1, R2 e R3 so dimensionados?
Primeiro precisamos calcular a resistncia RTOT, dada pelo clculo:
RTOT = 1 / (1/R1 + 1/R2 + 1/R3)
Posteriormente, podemos calcular A e B, dados pela frmula:
A = VREF . RTOT / R1
B = VSUP . RTOT / R3
Finalmente, obtemos os limites dos nveis de tenso desejados:
Vc = A + B
Vc = A B

Voc pode criar uma planilha eletrnica com as frmulas para


SAIBA ajudar calcular, utilizando dos valores de VSUP, R1, R2 e R3, o
MAIS valor para Vc e Vc.

Embora a frmula para calcular estes componentes no seja muito complexa,


trata-se de um sistema com vrias solues possveis. Alguns softwares e
calculadoras foram criados e disponibilizados com o objetivo de auxiliar nestes
clculos, permitindo encontrar valores muito prximos ao desejvel utilizando
resistores comerciais simples.
Observe que o circuito proposto ainda bastante inflexvel, pois a tenso de
Vc fixa, proporcionada pelo divisor de tenso criado pelos dois resistores R1 e
R2. Porm, se no lugar dos resistores ligarmos um POTENCIMETRO, ou seja, um
RESISTOR VARIVEL, teremos um circuito similar, porm com a tenso de referncia
do comparador variando conforme a posio do cursor do potencimetro.
2 Eletrnica Analgica
81

2.4.3 Amplificador operacional como somador

Se o sistema anteriormente proposto estivesse monitorando a temperatura


de um ambiente muito grande, em um equipamento de grandes dimenses,
haveria um problema: a velocidade com que o calor dissipado em um corpo
depende de fatores como condutividade trmica do material, massa e densidade.
Em alguns sistemas, h necessidade de mais de um sensor, espalhados em pontos
afastados, onde o controle realizado atravs da mdia de temperatura lida por
estes sensores.
Nestas situaes, utilizamos a configurao de AMPLIFICADOR OPERACIONAL
COMO SOMADOR.
Segue, na Figura 83, o esquema de um circuito somador inversor.

Vin1 Vout
R1

Vin2
R2

Vinn Rf
Rn

Figura 83 - Circuito somador inversor


Fonte: Autor

Vin1 + Vin2 + Vinn)


A tenso de sada ser dada pela frmula (V0ut = -Rf ( ).
R1 R2 Rn
Se todos os resistores utilizados forem de mesmo valor, teremos como sada
do amplificador a mdia aritmtica das entradas, amplificada pelo ganho definido
por Rf, e invertida. Podemos, ento, aplicar este circuito para juntar os sinais de
diversos sensores em nosso circuito de controle e obter um sinal proporcional e
amplificado relativo mdia deles.

2.4.4 Amplificador operacional como subtrator

Tambm conhecido como amplificador de diferena por alguns autores,


caracterizado pela disposio do circuito onde se obtm a diferena entre os
sinais multiplicado por um ganho que pode ser configurado.
Uma aplicao bastante interessante na eliminao de rudos em cabos
de comunicao. Em sistemas mais tradicionais de envio de informao, cabos
blindados so utilizados para evitar que seu ncleo seja submetido a rudos
eletromagnticos e o sinal seja alterado. Estes cabos so relativamente caros, mas
impedem que a informao seja degradada ou alterada.

Um cabo blindado utiliza o princpio de gaiola de Faraday


VOC para, atravs de sua malha, eliminar a interferncia de um
SABIA? campo eltrico externo em seu ncleo.
AUTOMAO INDUSTRIAL
82

Em tecnologias mais recentes na transmisso de sinais analgicos e digitais,


altas velocidades e reduo de custo levaram a outras formas de lidar com rudos
eletromagnticos em condutores eltricos, principalmente atravs da tcnica de
cancelamento em par tranado.
Cabos de telefonia e de rede de computadores utilizam esta tcnica, onde os
dados so enviados em um par de cabos tranados. Cada condutor submetido
praticamente as mesmas condies de rudo e o equipamento receptor deve
analisar a diferena de rudo entre os diferentes condutores do par.
Amplificadores operacionais so comumente utilizados na comparao destes
sinais, podendo atuar como filtros de rudo. (Figura 84)
Amplificador
de diferenas
Vt
+
-

Transdutor
Vs

Vt V interf Vs t
Sinal filtrado
e amplificado
t t t
Sinal do Sinais de Sinal recebido
transdutor interferncias (transdutor + interferncias)
(sinal enviado)
Figura 84 - Amplificador operacional como subtrator
Fonte: Autor

Segue, na Figura 85, uma configurao bastante comum para amplificador


subtrator:

R3
Vin1
R4
Vout
Vin2
R1
R2
R1 = R3
R2 = R4

Figura 85 - Amplificador operacional como subtrator 1


Fonte: Autor

Observando que R1 = R3, e R2 = R4, teremos:


Vout = ( Vin1 - Vin2) . R2
R1
2 Eletrnica Analgica
83

2.5 Osciladores

Osciladores so circuitos multivibradores que apresentam dois estados


possveis na sada, variando de um para outro aps um tempo ou evento.

2.5.1 Oscilador astvel

No caso de osciladores astveis, o tempo de transio entre os estados


configurvel atravs de uma malha de componentes externos. (Figura 86)

Vin

Vo

Figura 86 - Representao do sinal de entrada (Vin) e sada (Vo) de um oscilador astvel


Fonte: Autor

Em termos de circuitos eletrnicos, so vrias as possibilidades de construo


para circuitos multivibradores astveis, que podem ser construdos utilizando
amplificadores operacionais, transistores ou portas lgicas.
Um dos componentes mais utilizados para a construo de circuitos com este
comportamento o temporizador (timer) 555 (LM555, NE555, SE555).
O circuito integrado 555 pode ser configurado atravs da adio de
componentes externos para operar como um multivibrador em qualquer uma
de suas funes (astvel, monoestvel ou biestvel). A vantagem de utilizar esse
componente em lugar de circuitos com amplificadores, transistores e portas
lgicas encontra-se em sua flexibilidade, seu baixo custo e sua confiabilidade.

+Vcc

R1+R2
R1 4 8 R2
Sada Capacitor 2/3 Vcc
7 3 (V6= V2)
1/3 Vcc
0V
R2
Sada + Vcc
6 (V3) 0V
2 5 10n
C1 1 1 2

Figura 87 - Circuito integrado 555 e grfico de sada


Fonte: Autor

Observando o grfico, da Figura 87, podemos perceber que a durao dos


pulsos t1 (em estado alto) e t2 (em estado baixo) no a mesma, e pode ser
configurada pelos resistores R1, R2 e C1.
A definio dos valores de t1 e t2 dado por:
AUTOMAO INDUSTRIAL
84

t1 = 0,7 . (R1 + R2 ) C1 e t2 = 0.7 . R2C1


Para calcular a frequncia do sinal gerado pelo 555 usamos:

f = (R1 1,44
+ 2R2) C1
No circuito apresentado anteriormente, a presena opcional do diodo permite
que a carga do capacitor C1 ocorra apenas atravs de R1 e que a descarga ocorra
somente por R2. Dessa forma, t1 = 0,7 . R1 . C1 e t2 = 0.7 . R2C1.
O capacitor de 10nF conectado entre os pinos 1 e 5 sugesto do fabricante.
Com o diodo, a relao entre t1 e t2 fica respectivamente vinculada a R1 e R2,
facilitando a implementao de circuitos que utilizam resistncias variveis para
mudar a largura e o tempo do pulso. O uso de variaes na largura do pulso sem
alteraes na frequncia bastante til no uso de PWM.
PWM: Pulse Wide Modulation, ou modulao por largura de pulso, consiste
na gerao de pulsos (geralmente onda quadrada) com frequncia fixa e largura
varivel, como ilustrado na Figura 88.
5V
tenso

tempo (ms)

5V
tenso
mdia

tempo (ms)
Figura 88 - Grfico de PWM a 1kHz
Fonte: Autor

A taxa de trabalho (Duty Cycle) definida proporcionalmente de 0% a 100%,


dependendo do tempo em que a sada permanece em nvel alto em cada ciclo. Em
circuitos simples usando o circuito integrado 555 sem o diodo, como a durao do pulso
(sinal em nvel alto) maior que a durao do sinal em nvel baixo, a taxa de trabalho
sempre igual ou superior a 50%. Para a obteno de uma taxa menor que 50%, um
diodo deve ser conectado (como no exemplo anterior) em paralelo com R2, fazendo
com que a durao do pulso dependa apenas de R1 e C1. Desta forma, temos:
Sem o diodo:
R1 +R2
DH =
R1 + 2R2
DH = 0.5 (mn)
R2 DH = 1 (mx)
DL =
R1+2R2

Com o diodo:
R1
DH =
R1+R2 DH = 0 (mn)
R2 DH = 1 (mx)
DL = DL DH
R1+R2
2 Eletrnica Analgica
85

O limite de sada de um CI 555 de 10mA. Portanto, se for


FIQUE necessrio amplifique este sinal conectando o pino 3 a um
ALERTA resistor em srie com a base de um transistor, dimensione
o resistor para uma corrente no superior a 10mA usando a
frmula R = V / I.

Consultando a folha de dados (datasheet) do circuito


SAIBA integrado 555. Pesquise tambm sobre aplicaes deste
MAIS circuito integrado relacionadas a timers e frequncia.

2.5.2 Oscilador monoestvel

Trata-se de um oscilador onde a transio para um estado se d por um evento


externo (disparo) e o retorno para o estado de origem ocorre pela passagem de
um tempo determinado pelo capacitor C1 e resistor R1. (Figura 89)
+Vcc

R1 4 8
Sada Disparo
Disparo 7 3 (V2)
6
C1 Sada + Vcc
(V3) 0V
2 5 10n t t t
1

Figura 89 - Oscilador Monoestvel


Fonte: Autor

A frmula do tempo do pulso gerado (t) dada por:


t = R1 . C1 . 1,1
Observe que, para o circuito comercial 555, o disparo ocorre quando um pulso
negativo percebido pelo pino 2 do componente. A aplicao deste circuito na
automao industrial dada essencialmente em circuitos simples de temporizao.
Essencialmente, o 555 configurado como oscilador monoestvel age como
um temporizador. No exemplo anterior, quando houver um pulso na chave de
disparo, a sada ser ativada, permanecendo assim por um tempo determinado
(t) que configurado pelos valores de R1 e C1.
Em alguns casos, utiliza-se resistore variveis (potencimetros) no lugar de R1,
criando-se um temporizador ajustvel.

Pesquise sobre a configurao de um circuito biestvel


SAIBA utilizando o CI 555. Descubra as diferenas de funcionamento
MAIS em relao aos circuitos osciladores j estudados.
AUTOMAO INDUSTRIAL
86

2.6 Filtros

Filtros so limitadores que permitem a passagem de alguns elementos


desejveis, retendo elementos indesejveis. Quando usamos um FILTRO para
filtrar gua, deixamos passar a gua, procurando reter as impurezas.
Na eletrnica, os FILTROS so basicamente aplicados aos sinais eltricos
representados pelas grandezas de tenso, corrente e frequncia, permitindo que
sinais sejam bloqueados ou separados.

2.6.1 Filtro passivo

Um FILTRO PASSIVO um tipo de filtro construdo com resistores, capacitores e


indutores, e geralmente so elementos de baixo custo e com resultados satisfatrios.
Filtros passivos so aplicados em sistemas de udio para separar os sinais
de alta frequncia (mais agudos) dos de baixa frequncia (mais graves). Filtros
tambm so usados em linhas de alimentao, na rede de corrente alternada,
para evitar que rudos eltricos interfiram no funcionamento dos equipamentos.
Um exemplo de filtro passivo o utilizado em uma fonte de alimentao com
transformador, onde a corrente alternada reduzida a um nvel de tenso menor, e
posteriormente retificada, porm ainda com um ripple (ondulao). Este ripple
precisa ser filtrado, para que o resduo da frequncia de entrada desaparea.
aplicado, ento, um filtro capacitivo, reduzindo a ondulao significativamente.
DIODOS
RETIFICADORES
Corrente
V+
alternada
Corrente
contnua CAPACITOR

GND

V V V V
+ + + +
t t t t
- - - -

Figura 90 - Filtro com capacitor, aplicado e fontes para diminuio do ripple


Fonte: Autor

Nos sistemas de comunicao, com correntes e tenses menores, filtros


passivos podem ser uma soluo simples e de baixo custo para eliminar
sinais indesejados.
Como a maioria dos filtros so aplicados no domnio da frequncia, nos
ateremos a estes tipos.
Podemos categorizar os FILTROS passivos de frequncia como:
PASSA BAIXA: Somente deixa passar frequncias abaixo de um valor.
2 Eletrnica Analgica
87

PASSA ALTA: Somente deixa passar frequncia acima de um valor.


PASSA FAIXA: Somente deixa passar frequncias em uma determinada faixa.
REJEITA FAIXA: Bloqueia a passagem de frequncias especficas.
importante observar que, nos filtros supracitados, o funcionamento real no
igual ao funcionamento ideal, pois os filtros atenuam as frequncias indesejadas,
mas no as eliminam por completo.
A resposta de um filtro geralmente representada por um grfico, conforme
a Figura 91:
frequncia de corte

70,7%
intensidade

sinal
indesejado
do sinal

sinal desejado
frequncia

Figura 91 - Grfico da Intensidade de sinal x Frequncia


Fonte: Autor

A eficincia do filtro pode variar devido a seus aspectos construtivos. Os filtros


passivos tendem a ser menos eficientes que os filtros ativos, mas seu custo e
simplicidade justifica a aplicao na maioria das situaes.
Melhores respostas em filtros passivos tambm podem ser obtidas com a
realizao de combinaes entre mais de um filtro simples. Quando dois filtros so
combinados, obtemos uma curva mais ngreme aps o valor de corte. Chamamos
a combinao destes dois filtros de filtro de segunda ordem. Aplicando um
terceiro filtro, a curva apresenta uma queda ainda mais acentuada e o chamamos
de filtro de terceira ordem. No entanto, a cada camada adicionada ao filtro h
uma perda considervel na intensidade do sinal para filtros passivos. Cabe a quem
projeta o circuito dimensionar o filtro mais adequado para a aplicao.
Vamos agora estudar a aplicao de um filtro utilizado para eliminar rudos
de alta frequncia em um sensor digital de velocidade. Embora haja mais de
uma configurao de circuito possvel para um filtro passivo, nos ateremos a
configuraes mais comuns para este primeiro nvel de estudo.
Segue a implementao de um filtro PASSA BAIXA de primeira ordem, utilizado
para eliminar rudos de alta frequncia em um sinal de um sensor que conta pulsos
gerados pela polia de um motor. A frequncia mxima destes pulsos de 200 Hz, e
este circuito foi dimensionado para eliminar sinais com frequncias superiores a esta.
R
1
Vout

Frequncia de corte =
Vin

C 2. . R . C

Figura 92 - Filtro passa baixa


Fonte: Autor
AUTOMAO INDUSTRIAL
88

Portanto, para 200Hz, temos:


Fc = 1 / (2 . . R . C)

200 = 1 / (2 . 3,1416 . R . C)
R . C = 1 / (2 . 3,1416 . 200)
R . C = 0,000796
Temos ento que, para obter a frequncia de corte de 200 Hz, o resistor dado
por 0,000796 / C.
Por exemplo, com um capacitor de 33uF, temos um resistor de 0,000796 /
0,000033F = 24,12 W. Usando valor comercial de 22 W, a frequncia de corte pode
ser recalculada para o valor pouco superior a 219 Hz. Acima desta frequncia,
os sinais sero atenuados, e quanto maior a frequncia do sinal, mais ele ser
atenuado.
Em situaes de sinais de alta velocidade, em frequncias mais elevadas, podemos
ter problemas devido a rudos gerados principalmente pela rede de corrente alternada
(no Brasil, 60Hz), que pode causar alteraes nas informaes enviadas.
Nestas situaes, a aplicao de filtros PASSA ALTA permite eliminar rudos
abaixo de uma frequncia especfica. (Figura 93)
Vin Vout

Figura 93 - Filtro passa alta


Fonte: Autor

Neste tipo de ligao, os sinais de baixa frequncia (abaixo da frequncia de


corte: fc) so atenuados.
A frequncia de corte definida por: Fc = 1 / (2 . . R . C) .
Para situaes em que necessrio filtrar sinais acima e abaixo de uma
determinada frequncia, pode ser implementado um circuito de passa-faixa, que
atenua sinais acima e abaixo de um determinado nvel de frequncia. (Figura 94)

Vin C L Vout

Figura 94 - Filtro passa-faixa, usando capacitor, indutor e resistor


Fonte: Autor
2 Eletrnica Analgica
89

Neste tipo de filtro no buscamos a frequncia de corte, e, sim, a frequncia


de ressonncia, onde o sinal no ser atenuado. Ela pode ser calculada segundo
a frmula que segue :

1
fR =
2 . . LC
Onde L o valor do indutor, em henry.
Em um filtro rejeita-faixa, o objetivo atenuar o sinal justamente em uma frequncia
especfica, deixando passar sinais acima e abaixo da faixa definida. (Figura 95)
Vin C Vout

L
R

Figura 95 - Filtro rejeita-faixa, tambm conhecido como rejeita-banda


Fonte: Autor

Devemos observar que os filtros passivos acabam por atenuar o sinal, no s do


sinal que desejamos filtrar, mas tambm do sinal que deve passar, necessitando
de uma etapa de amplificao em casos de sinais mais dbeis. Outro fator
importante a condio de atenuao para frequncias prximas zona de corte,
que ainda permite uma significativa passagem de sinais em casos de filtros de
primeira ordem.
sugere, portanto, a implementao destes filtros somente em situaes
menos crticas, com o intuito de melhorar o sinal e reduzir interferncias.
Em situaes mais crticas, em filtros aplicados a sinais de baixa corrente e
tenso, recomendado o uso de amplificadores operacionais para a construo
dos filtros, a que chamamos de FILTROS ATIVOS.

2.6.2 Filtro ativo

Seguimos agora com configuraes mais utilizadas de amplificadores


operacionais para filtros de frequncia.
Para os filtros que seguem, o ganho pode ser configurado pela frmula:
Av = 1 + Rf / Rg
No caso do filtro passa-baixa, sero atenuados sinais acima da frequncia
de corte. (Figura 96)
No caso do filtro passa-alta, sero atenuados sinais abaixo da frequncia
de corte. (Figura 97)
AUTOMAO INDUSTRIAL
90

Rg Rf

V+

R1 Amp- op Sada
+ (Vo)
V1 C1
V-

Figura 96 - Filtro passa-baixa


Fonte: Autor

Rg Rf

C1 Amp- op (Vo)
V1 +

R1

Figura 97 - Filtro passa-alta


Fonte: Autor

Atravs da ligao de dois filtros, sendo um passa alta e outro passa baixa,
possvel criar um filtro passa-banda. (Figura 98)
Rg Rf
Rg Rf

R2 Amp- op (Vo)
C1 Amp- op +
V1 +
C2
R1

Seo passa-altas Seo passa-baixas

Figura 98 - Filtro ativo passa-banda


Fonte: Autor

Neste caso, a frequncia que passar pelo filtro limitada abaixo pela
frequncia de corte da parte passa-baixa, e acima pela frequncia de corte da
parte passa-alta.

2.7 Fontes de alimentao

De forma abrangente, uma fonte de alimentao responsvel pelo


fornecimento de energia. No caso das fontes de alimentao eltricas utilizadas na
automao industrial, trata-se do equipamento responsvel pela transformao
da corrente alternada em corrente contnua, com diminuio da tenso.
2 Eletrnica Analgica
91

o
1
**********
**********

*** ***
*** ***

Fonte de bancada, Fonte de um microcomputador Fonte chaveada 2A


entrada AC 110V/ DESKTOP 250W. Entrada Entrada 100-240V
220V c/ chave seletora, 110V/220V (c/ chave seletora) AC Sada 24V DC (estabilizada)
sada ajustvel DC de 0 a 30V e sadas DC5V 20A, -5V 1A,12V
5A, -12V 1A, 3.3V 1A

Figura 99 - Fonte de bancada Figura 100 - Fonte de Figura 101 - Fonte chaveada 2A
Fonte: Autor microcomputador Fonte: Autor
Fonte: Autor

Quase todos os equipamentos eletrnicos que utilizamos e que so


conectados a uma tomada convencional possuem fontes de alimentao.
Nos eletrodomsticos e dispositivos eletrnicos de uso residencial, a fonte
responsvel por transformar a corrente alternada da tomada em corrente
contnua, reduzindo tambm o nvel de tenso de entrada, que geralmente
110V ou 220V, para tenses mais baixas, como 3V, 5V, 12V, 24V, variando
conforme caractersticas e aplicaes dos circuitos alimentados.
Algumas fontes de alimentao so construdas de forma a funcionar com
um nvel de tenso de entrada fixa. Outras possuem uma chave seletora onde o
usurio pode definir qual o nvel de tenso de entrada (110V / 220V). Fontes mais
recentes podem apresentar um recurso de ajuste automtico em relao tenso
de entrada, funcionando dentro de uma faixa especfica, por exemplo de 100V a
250V. Em ambos os casos, importante observar a tenso de entrada antes de
conectar a fonte rede eltrica.

FIQUE Alimentar uma fonte com tenso superior indicada pode


causar superaquecimento, causando danos permanentes
ALERTA ao equipamento e aos circuitos por ela alimentados.

Algumas fontes podem ser construdas a fim de fornecer nveis de tenso


diferentes, geralmente utilizados para alimentar partes diferentes do circuito.
Por exemplo, em um microcomputador so comuns fontes de alimentao com
entrada 110V ou 220V C.A. e sadas de alimentao de 5V, -5V, 12V e -12VCC,
podendo ainda haver outros nveis de tenso, dependendo do equipamento.
Em certas aplicaes existe ainda a necessidade de um ajuste manual da
tenso de sada. Neste caso, utilizamos fontes ajustveis onde, atravs de uma
chave seletora ou potencimetro, podemos definir a tenso desejada na sada.
Fontes estabilizadas so as fontes que possuem a sada de tenso estabilizada
por um circuito de controle em malha fechada, impedindo que a tenso na sada
fique acima do valor limite. Em fontes no estabilizadas, a tenso da sada pode
variar conforme a carga, influenciada pelos filtros nela utilizados.
AUTOMAO INDUSTRIAL
92

Fontes no estabilizadas, quando no submetidas a carga, tendem a uma


tenso de sada prxima ao valor de pico (PMPO). Quando uma carga submetida
obtemos a tenso mdia (RMS), geralmente sendo esta a tenso para a qual a
fonte foi dimensionada. (Figura 102)
PMPO
V+ RMS
t(ms)

Figura 102 - Grfico da tenso aps retificao, sem aplicao de filtros


Fonte: Autor

O circuito estabilizador evita que a tenso de sada varie conforme a carga,


mantendo sempre o mesmo nvel de tenso na sada. Para alguns tipos de circuitos,
este recurso muito importante, pois o efeito da tenso variando conforme a
carga pode fazer com que o circuito alimentado atue de forma indesejada.
Uma fonte de alimentao geralmente composta das seguintes partes:
1) Circuito de proteo de entrada, interruptor e seletor de tenso:
caracterizado por fusveis, chaves de alimentao e circuitos de seleo de tenso
para sistemas no automticos. Algumas fontes utilizam circuitos para proteo
contra sobrecorrente (fusveis) e contra sobretenso (varistores).
2) Circuito de transformao: responsvel pela diminuio ou elevao da
tenso. Em algumas fontes, constitudo de um transformador, e em outros utiliza
semicondutores especficos, como tiristores e transistores.
3) Circuito de retificao: responsvel por transformar a corrente alternada
em corrente contnua atravs de circuitos com semicondutores (diodos), como j
estudado anteriormente.
4) Filtros: responsveis por eliminar ou atenuar as oscilaes no nvel de tenso
aps a retificao.
5) Regulador de tenso: responsvel por estabilizar o nvel de tenso de sada.
Em algumas fontes, podem ainda existir circuitos de proteo de sobrecorrente
na sada, evitando que o circuito seja alimentado se a corrente mxima for excedida.

2.7.1 Fonte linear

Consiste no projeto mais clssico de fontes, baseada em transformadores e


filtros passivos.
Como vantagem deste tipo de fonte temos o baixo rudo e a simplicidade do circuito.
Como desvantagens, o peso inerente aos transformadores, tamanho, custo
mais elevado e baixa eficincia devido ao aquecimento indesejado.
2 Eletrnica Analgica
93

Este tipo de fonte geralmente empregado em circuitos de udio tradicionais


e tem sido cada vez menos utilizado em equipamentos modernos. (Figura 103)

Figura 103 - Transformador utilizado em uma fonte linear


Fonte: Autor

FIQUE Na maioria das fontes lineares devemos observar a chave


ALERTA seletora de tenso de entrada. Uso da fonte em tenso
inadequada pode causar danos permanentes.

2.7.2 Fonte simtrica

Caracterizada por uma fonte que possui sada de tenso positiva e negativa de
caractersticas similares. (Figura 104)

+9V
fonte
0V
simtica
-9V

Figura 104 - Fonte simtrica


Fonte: Autor

Este tipo de fonte geralmente aplicado em circuitos que precisam de nveis


de tenso positivas e negativas, como amplificadores operacionais e alguns tipos
de sensores de temperatura.
A seguir, na Figura 105, apresentado o esquema de uma fonte simtrica, que
utiliza reguladores de tenso 7812 e 7912. Regulador
positivo

7812
SELETOR DE
TENSO
Ponte retificadora
1 3
CHAVE T 12V (4 diodos) 1 3 2
220V
Sada 12V
Entrada

7812
Gnd

ON/OFF
center ~ 100nF + 2
+ 220uF 0,25W +12V

120V
tape
- + 50V 16V 470 ohms
LED 0V Regulador
~ 100nF + + 220uF 0,25W
negativo

fusvel 0V -12V 50V 1 16V 470 ohms


LED -12V
2 3 7912
7912

1 3
2
Gnd

Transformador
Sada -12V
Entrada

110 / 220v <--> 12+12V, 1A

Figura 105 - Esquema de fonte simtrica


Fonte: Autor
AUTOMAO INDUSTRIAL
94

Utilizando alguns reguladores ajustveis, como o LM317 / LM337, podemos


criar uma fonte simtrica com sada de tenso ajustvel por potencimetros. Este
tipo de fonte ajustvel pode ser bastante til em experimentos, e uma sugesto
de montagem de uma fonte de bancada bastante verstil. (Figura 106)
1N4004

LM317
3 2 1N4004
I O
A + VE
123 100n 220R OUT
1

1N4004 X 4
2k
+ 10uF 1k
2200uF
+ 35V
VAC 1k5 LED

(CT)
OV
+ 1k5
VAC LED
2200uF + 10uF
35V
2k 1k

220R
1 - VE
2 A OUT
3
I O
1N4004
100n LM337

1N4004

Figura 106 - Esquema de fonte simtrica


Fonte: Autor

SAIBA Pesquise sobre fontes simtricas utilizando os reguladores de


MAIS tenso 78XX e 79XX (7805, 7905, 7812, 7912 etc.).

2.7.3 Fonte chaveada

As fontes chaveadas so largamente utilizadas devido a seu tamanho reduzido,


menor custo de fabricao e melhor eficincia se comparadas s antigas e
tradicionais fontes com transformadores.
Uma fonte chaveada completa tambm utiliza um transformador para elevar
ou reduzir a tenso, porm com menor tamanho. Como isso possvel?
Um transformador um equipamento eletromecnico que apresenta uma
resposta de eficincia relativa frequncia da corrente alternada aplicada, porm a
maior parte dos pequenos transformadores s obtm um rendimento satisfatrio
se operarem em frequncias elevadas, prximas dos 200kHz, bem superiores
frequncia de 60Hz da rede de corrente alternada convencional.
O circuito de retificao, em fontes chaveadas, realiza a converso da corrente
alternada para corrente contnua antes da elevao ou da reduo da tenso.
Isso no muito difcil neste tipo de circuito, pois os semicondutores (diodos)
utilizados suportam bem nveis de tenso da rede C.A. (Figura 107)
2 Eletrnica Analgica
95

Sada do Sada do Sada do


Entrada
retificador filtro chaveador
V V V V

t t t t
110V CA 110V CA Onda quadrada
retificada retificada pulsante com alta
110V CA e filtrada tenso e alta
frequncia

Sada do Sada do Sada do Sada do


transformador retificador filtro regulador
V V V V

t t t t
12V CA 12V CC 10V CC
alta frequncia filtrado regulado
12V CA
e retificada
alta frequncia

Figura 107 - Fases de uma fonte chaveada


Fonte: Autor

Aps a retificao, um transistor gera pulsos rpidos, em uma frequncia


geralmente entre 50 e 200 mil ciclos por segundo, gerando uma onda quadrada
com tenso mxima prxima tenso da rede eltrica de entrada. At este
momento, no houve redues ou aumentos nos nveis de tenso.
Esta sada pulsada passa, ento, por um transformador para modificar a
amplitude (tenso) geralmente para nveis inferiores da tenso de entrada,
obtendo-se ainda uma corrente alternada em alta frequncia, que precisa ser
novamente retificada e filtrada.
Devido alta frequncia, os capacitores usados como filtro desta segunda
parte do circuito podem ser bem menores do que em uma fonte convencional,
reduzindo muito o tamanho do circuito, mesmo para correntes bem mais elevadas.
Fontes chaveadas apresentam um menor aquecimento e melhor eficincia,
e devido ao reduzido tamanho dos componentes (transformador e capacitores),
possuem tamanho bastante reduzido. Este tipo de fonte o mais empregado em
equipamentos modernos, e tambm j vem sendo largamente empregado em
produtos de automao industrial.
Como desvantagem deste tipo de fonte, temos a gerao de rudo, que em
fontes menos completas pode ser propagado pela rede de corrente alternada, ou
ainda podem ser propagado na forma de rdiofrequncia, gerando interferncia
em sistemas de telecomunicaes.

FIQUE Ao interligar eletricamente sistemas alimentados por fontes de


ALERTA alimentao distintas, realize primeiro sua equipotencializao,
interligando circuitos de terra e de referncia.
AUTOMAO INDUSTRIAL
96

Sugesto para experimento: Usando um multmetro e duas fontes de


alimentao distintas, mea a tenso de sada de cada fonte, e posteriormente
mea a tenso entre a referncia de ambas as fontes. Tome cuidado para no
tocar na fonte de alimentao e seus terminais sem o uso de EPI adequado, ou
com a rede energizada.

A reduo no tamanho das fontes chaveadas tambm pode


VOC acarretar um isolamento mais frgil entre a rede de alta
SABIA? tenso e a de baixa tenso, aumentando o risco de choque
eltrico, mesmo na sada de baixa tenso.

Recapitulando

Neste captulo, abordamos alguns conceitos bsicos da Eletrnica Analgica


para automao industrial, com um enfoque nos principais componentes
semicondutores e componentes bsicos no tratamento de sinais analgicos.
Vimos que os diodos so componentes baseados em semicondutores, onde
uma juno de dois tipos de material semicondutor interfere na passagem
de corrente eltrica de forma diferente, dependendo de seu sentido. Vimos,
tambm, que eles podem ser apresentados na forma de diodos retificadores,
zener, emisores de luz, que so os LEDs e fotodiodos, entre outros.
importante salientar que os transistores e os tiristores so utilizados para
amplificar sinais, permitindo o acionamento de cargas maiores.
Vimos, ainda, que os amplificadores operacionais so componentes que,
de forma genrica, podem amplificar, comparar, somar, multiplicar ou subtrair
sinais analgicos. Eles podem ser utilizados para compor filtros ativos. Filtros
so circuitos responsveis pela eliminao de sinais indesejveis.
Os circuitos osciladores so circuitos que possuem uma sada que varia de um
estado para outro periodicamente, o que pode ocorrer devido a um estmulo externo.
As fontes de alimentao so dispositivos que convertem corrente alternada
em corrente contnua, geralmente reduzindo o nvel de tenso da rede e
oferecendo tenso estabilizada.
Na automao industrial, estes componentes estudados podem ser utilizados
individualmente ou de forma combinada, condicionando e amplificando sinais
eltricos para a produo de um efeito desejado.
2 Eletrnica Analgica
97

Anotaes:
Sensores

Na automao industrial, sensores so dispositivos transdutores capazes de responder a


um estmulo de maneira determinada, previsvel e mensurvel. Os sensores so utilizados para
coletar informaes relevantes durante um processo, enviando-as para o sistema de controle
para que seu funcionamento ocorra adequadamente. So utilizados largamente, nos mais
diferentes tipos de equipamentos.

Enquanto o ouvido humano no pode perceber sons acima dos 20kHz,


VOC o morcego, que possui audio bastante apurada, capaz de ouvir
SABIA? sons com frequncia de at 160kHz.

Alguns seres vivos evoluram com capacidades sensitivas, como viso, tato, olfato, audio.
Alguns rpteis percebem o calor e alguns pssaros conseguem perceber cores que so invisveis
para o ser humano. Grande parte dos animais podem perceber frequncias sonoras que o ser
humano no percebe. A comparao anterior deixa claro que a diferena na percepo do ser
humano e dos outros seres vivos depende da capacidade e do alcance de seus sensores e do
processamento da informao coletada.
Na automao industrial no diferente, pois existem diferentes tipos de sensores que
funcionam atravs de alguns princpios fsicos, gerando informaes importantes para os
sistemas de controle automatizados.
Para entender mais sobre sensores de forma bastante prtica, vamos imaginar um
reservatrio de gua. (Figura 108)

Figura 108 - Reservatrios dgua


Fonte: Autor
AUTOMAO INDUSTRIAL
100

De quantos modos diferentes podemos medir o nvel de gua no reservatrio?


Abaixo listamos algumas formas de medio de nvel:
Inicialmente, poderia ser utilizado um sensor potenciomtrico, onde ocorre
variao de resistncia conforme o movimento angular de uma bia, similar ao
processo utilizado em um tanque de combustvel de um automvel. (Figura 109)

Variao de resistncia
Nvel

Figura 109 - Reservatrios dgua com sensor potenciomtrico


Fonte: Autor

Com um sensor de ultrassom posicionado na parte superior do reservatrio


possvel medir o nvel do reservatrio atravs do tempo em que uma onda sonora
de alta frequncia demora para bater na superfcie da gua e retornar ao sensor.
Graas velocidade da onda sonora e do tempo que demorou para retornar ao
sensor, possvel medir a distncia em que a gua encontra-se da parte superior.

Variao de tempo
entre emitir e receber
o reflexo sonoro
Nvel

Figura 110 - Reservatrios dgua com sensor de ultrassom


Fonte: Autor

Poderia ser medido atravs do ngulo de reflexo ou de refrao da luz no


lquido, obtendo-se, desta forma, a altura da lmina dgua. (Figura 111)

Variao de
Nvel

destino de um feixe
de laser (luz) devido
a refrao ar - gua

SENSOR TICO

Figura 111 - Reservatrios dgua medido atravs do ngulo e refrao


Fonte: Autor
3 Sensores
101

Poderia ainda ser utilizado um sensor de nvel, tipo magntico, que pode
acionar chaves sensveis a campos magnticos atravs de um m conectado em
um dispositivo flutuador. (Figura 112)

Sensores captam o campo


magntico do im do
Nvel

flutuador,
revelando o nvel

Figura 112 - Reservatrios dgua sensor de nvel


Fonte: Autor

Um sensor tipo clula de carga poderia tambm medir a deformao dos


pontos de fixao do tanque, informando o peso e estimando o volume e o
nvel de gua. (Figura 113)

Sensores de fora
medem o peso
Nvel

do recipiente

Clulas de carga

Figura 113 - Reservatrios dgua de clula de carga


Fonte: Autor

Terminais condutivos poderiam ser mergulhados em alturas diferentes,


informando o nvel de gua atravs da medio de sua condutividade. (Figura 114)

Fludo levemente
condutivo muda
Nvel

resistncia entre
os terminais

Figura 114 - Reservatrios dgua com terminais condutivos


Fonte: Autor

Como voc viu, so inmeras as estratgias de medio e os sensores que


podem ser utilizados para a medio do nvel de um tanque.
AUTOMAO INDUSTRIAL
102

A escolha do sensor para realizar uma determinada medio deve levar em


considerao alguns fatores: o tipo de grandeza a ser medida, o local da medio e
algumas informaes sobre o sensor, tais como: robustez, tempo de resposta, tipo
de informao gerada, sensibilidade, resoluo, preciso e custo, dentre outros.
Para escolher o melhor sensor a ser utilizado em uma medio, veremos neste
captulo algumas caractersticas relevantes.
Um sensor definido atravs do tipo da informao gerada, podendo ser um
sensor digital ou analgico. Quando um sensor utilizado para a deteco de
um estado especfico, gerando uma informao contida em um nmero finito e
limitado de possibilidades, o chamamos de SENSOR DIGITAL.
Exemplo: Um sensor utilizado para detectar a presena ou a ausncia de
determinado produto, para detectar se uma determinada temperatura foi ou no
atingida, para detectar se h ou no luz suficiente em um local, detectar se h ou
no presso suficiente em uma tubulao.
Note que a resposta destes sensores pode ser interpretada simplesmente como
VERDADEIRO ou FALSO. Nestes casos, so sensores digitais com sinal binrio, ou
seja, podem representar dois estados distintos, representando os valores lgicos
VERDADEIRO ou FALSO.
Os sensores analgicos so capazes de quantificar uma determinada grandeza
medida, gerando uma informao que pode variar em infinitas possibilidades em
um intervalo especfico.
Exemplo: Detectar a variao de corrente de um circuito, detectar a
proximidade de um objeto, detectar o valor de presso. No caso de um sensor de
temperatura analgico, alm de saber se uma temperatura foi ou no atingida,
possvel quantificar a temperatura atual.
Para efeito de comparao, um sensor digital utilizado para a medio de nvel em
um recipiente com gua gera seu sinal atravs da variao da tenso, ou seja, tenso
em nvel alto ou em nvel baixo. Desta forma, possvel saber se o sensor foi ou no
atingido pelo lquido. J um sensor analgico gera um sinal proporcional ao nvel de
gua, variando gradualmente entre os nveis de tenso baixo e alto. (Figura 115)
Sensor digital Sensor analgico

+
+
Nvel mnimo Nvel de gua (mm)

Figura 115 - Sensor de nvel digital e um sensor de nvel analgico


Fonte: Autor
3 Sensores
103

Sensores digitais ou binrios podem gerar sinais de ligado ou desligado,


informando se um evento est ou no ocorrendo. De forma geral, os sensores
digitais so de construo mais simples, sendo de aplicao mais adequada e direta
em circuitos lgicos digitais. Os sensores analgicos, no entanto, so geralmente
mais complexos, pois geram uma informao que varia conforme a grandeza que
est sendo medida, exigindo um processamento mais complexo nos circuitos de
controle, porm so geralmente mais sensveis s interferncias externas.

3.1 Sensores digitais

Aps detectar a grandeza monitorada, o sensor deve enviar esta informao


ao circuito de controle onde est conectado. No caso dos sensores DIGITAIS
convencionais, podemos dividir o tipo de sada em sensores de contato
normalmente aberto, sensores de contato normalmente fechado, sensores NPN
(sinal negativo) e sensores PNP (sinal positivo).
Nos sensores de contato normalmente aberto existem ao menos dois terminais
que atuam como uma chave que fecha somente quando o evento a ser detectado
estiver ocorrendo. Veja a Figura 116:
SENSOR MAGNTICO
REED SWITCH

CONTATO ABERTO CONTATO FECHADO

CIRCUITO DE CONTROLE

Figura 116 - Chave de contato normalmente aberto com princpio de acionamento magntico
Fonte: Autor

Perceba, na figura acima, que o sensor (reed switch) funciona como uma chave
normalmente aberta, e seu contato fechado quando o objeto a ser detectado
for gerador de um campo magntico. Uma vez aproximado, este campo gera a
atrao dos contatos, fechando o circuito.
Nos sensores de contato normalmente fechado, o princpio similar, com
a diferena que o contato permanece fechado at que ocorra o evento a ser
detectado. Como exemplo podemos citar uma chave de emergncia, que
geralmente caracterizada por um contato normalmente fechado. (Figura 117)
AUTOMAO INDUSTRIAL
104

Figura 117 - Boto de emergncia com contato normalmente fechado


Fonte: Autor

Botes ou chaves de contato utilizados para detectar a vontade


VOC do usurio so sensores e podem ser de contato normalmente
SABIA? aberto (NA) ou normalmente fechado (NF), dependendo de sua
construo mecnica.

A exemplo de um boto ou chave de final de curso, alguns sensores podem


produzir o efeito (contato abrindo e fechando) atravs de uma ao mecnica
simples, sem a necessidade de amplificao, processamento interno ou filtragens
de sinais, no necessitando de alimentao para funcionar. Outros utilizam-se de
um filtro e circuitos eletrnicos em seu interior, precisando de alimentao para
seu funcionamento. Neste caso, deve ser observado o nvel de tenso, a corrente
e a correta polarizao do sensor para evitar danos internos.
Nem todos os sensores so baseados em contatos mecnicos, sendo que
alguns possuem seu acionamento atravs de semicondutores, geralmente
transistores bipolares. A exemplo de um transistor bipolar e juno (negativa/
positiva), os sensores com sadas deste tipo possuem propriedades diferentes,
podendo ter comportamento NPN (sinal negativo) ou PNP (sinal positivo).
Em ambos os casos, estes sensores so alimentados com tenso atravs de
dois terminais. Para evitar danos nos sensores, preciso garantir que o nvel de
tenso esteja adequado, dentro de uma faixa mnima e mxima de tenso.
Os sensores industriais geralmente so alimentados por uma fonte 24V de
corrente contnua, com o terminal positivo atravs de um condutor com capa
isolante da cor marrom, e com terminal negativo (0V ou GND) por um condutor
com capa isolante de cor azul. No caso de sensores de contato, devem ainda existir
mais dois terminais, geralmente de cores preta e branca, ligados em srie com o
dispositivo de contato NA ou NF. J em sensores PNP ou NPN o sinal fornecido
por um terminal que possui geralmente a cor preta.

Embora existam normas para a definio de cores para


FIQUE os condutores dos sensores industriais, muitos sensores
ALERTA podem no segui-las, sendo interessante observar a
documentao do componente antes de energiz-lo para
evitar danos permanentes nele.
3 Sensores
105

Em sensores PNP, quando ocorre a deteco, o sensor fornece, atravs do


terminal de retorno, uma tenso em nvel alto (geralmente 24V), e quando
a deteco interrompida, o sensor geralmente entra no estado de alta
impedncia, funcionando como uma chave aberta.
Em sensores NPN, quando ocorre a deteco, o sensor fornece uma tenso em
nvel baixo (GND), e quando a deteco interrompida, o sensor entra em estado
de alta impedncia. (Figura 118)

carga carga
sem deteco
sinal -
sinal alta impedncia com deteco

SENSOR NPN

carga carga
sem deteco
sinal +
sinal alta impedncia com deteco

SENSOR PNP

Figura 118 - Sensor NPN e PNP, forma de ligao e tipo de sinal de retorno
Fonte: Autor

Observe que, quando o sensor no est no modo deteco, o fio de retorno


(preto) entra em modo de alta impedncia, dificultando o fluxo da corrente. Alta
impedncia, neste caso, significa um sinal no definido, comportando-se como
uma chave aberta, sem corrente significativa. Observe que, quando no estiver
em modo deteco, o fio do sensor no pode ser usado como alimentao para
um determinado circuito, pois no h um sinal definido neste estado. Somente
quando o sensor passa a detectar algo este condutor passa a ter uma tenso
positiva (para sensores PNP) ou negativa (para sensores NPN).
Caso haja a necessidade de definir o nvel de tenso de um sensor, use
um resistor de PULL-UP para elevar a tenso (para sensores NPN) ou PULL-
DOWN para reduzi-la. (Figura 119)

carga carga
R1 R1
sem deteco
sinal + sinal -
com deteco

SENSOR NPN

carga carga
R1 R1
sem deteco
sinal - sinal +
com deteco

SENSOR PNP

Figura 119 - Sensores NPN e PNP com resistor de definio de sinal para alta impedncia
Fonte: Autor
AUTOMAO INDUSTRIAL
106

Na imagem acima foi instalado um resistor de 10.000 como PULL-UP (NPN) e


PULL-DOWN (PNP) para definir o nvel de tenso do sinal de sada quando o sensor
no estiver em estado de deteco. Alguns sensores possuem estes resistores
j instalados em seu circuito. Verifique isso na documentao (datasheet). Em
alguns sistemas de controle padronizados, como CLPs e controladores dedicados,
existem opes, atravs de microchaves ou configuraes por software, para
definir se o sensor conectado a uma entrada digital PNP ou NPN. De qualquer
forma, para a maior parte das aplicaes que seguem padres industriais este
resistor desnecessrio.
Caso o objetivo seja ligar o sensor industrial a um sistema de controle de
tenso inferior a 24V (por exemplo, a um microcontrolador de 5V), verifique
a possibilidade de diminuir a tenso do sinal gerado atravs de um divisor de
tenso, ou ainda, de forma mais segura, utilizando optoacopladores.
Na Figura119, o esquema de ligao de sensores PNP ou NPN em um
microcontrolador utilizando-se optoacopladores. Note que a fonte de alimentao
do microcontrolador independente da fonte de alimentao do sensor. Se no
lugar do acoplamento fosse utilizada uma ligao fsica, haveria a necessidade de
equalizar as fontes (interligar os sinais de GND) e reduzir o sinal de tenso do sensor
para um nvel aceitvel, para no danificar o microcontrolador (provavelmente 5V
ou 3V). (Figura 120 e Figura 121)

PNP 24V + GND GND 5V +

2K2 10K
uC
SENSOR

OPTOACOPLADOR

NPN 24V + GND GND 5V +

10K
uC
SENSOR 2K2

OPTOACOPLADOR

Figura 120 - Sensores NPN e PNP


Fonte: Autor

Acoplamentos pticos ou a rel so uma forma de oferecer


FIQUE segurana aos equipamentos na transmisso de sinais em
ALERTA linhas automatizadas muito abrangentes, que integram
sistemas com vrias fontes de alimentao.
3 Sensores
107

REL
BOBINA
24V
SINAL (RETORNO)
SINAL
V + (24V)

SISTEMA A SISTEMA B

GND
SINAL 5V
ACOPLAMENTO A REL
Figura 121 - Dispositivos de acoplamento eletromecnicos (a rel)
Fonte: Autor

Alm de sadas digitais atravs de nveis de tenso definidos, contato NA, NF,
NPN ou PNP, alguns sensores digitais podem produzir informaes mais complexas
atravs de sadas de dados. Isso ocorre em sensores industriais preparados para se
interligar a um sistema de controle atravs de uma rede de dados digitais.
Neste caso, o sensor envia os sinais a um dispositivo de controle (geralmente um
CLP) atravs de uma rede, podendo compartilhar o meio fsico de comunicao,
ou enviando a informao atravs de radiofrequncia (wireless).

A rede AS-i um padro de rede industrial bastante


FIQUE verstil, pois permite que, em seu cabeamento, um
ALERTA nico fio contendo um par metlico transporte sinal de
comunicao e alimentao 24V entre os diversos sensores
e atuadores do sistema.

Sensores deste tipo ainda no so muito comuns devido ao custo e


complexidade de uso. (Figura 122)

Figura 122 - Sistema de sinaleiro e botoeiras cuja alimentao e comunicao realizada por um nico cabo de dois fios
condutores, usando comunicao digital serial em rede padro AS-I
Fonte: Autor

3.2 Sensores analgicos

Sensores analgicos so caracterizados por gerar uma informao que varia


uniformemente em uma faixa especfica, conforme a grandeza medida, podendo
ser temperatura, presso, vazo, luminosidade, distncia, posio, velocidade,
fora, umidade, acelerao etc.
Em sensores analgicos industriais, estas grandezas so comumente
traduzidas para variaes de tenso ou corrente, podendo haver ainda sensores
cuja grandeza medida influencia na variao de frequncia ou resistncia.
AUTOMAO INDUSTRIAL
108

Como padro mais comum para sensores industriais analgicos, temos os


seguintes tipos de sada:
- Tenso: 0 a 10V.
Embora outros nveis de tenso tambm possam ser utilizados, sensores
analgicos com sada de tenso de 0 a 10V so bastante fceis de serem
implementados e conectados a sistemas de controle que utilizam CLP.
- Corrente: 0 mA a 20 mA.
Neste tipo de sensor, a grandeza medida convertida em uma variao de
corrente de 0 a 20 miliampr. Devido condio de baixa impedncia utilizada
neste tipo de circuito, o sinal apresenta uma boa intensidade em relao a sinais
analgicos de tenso. Como desvantagem, existe a possibilidade de um sinal de 0
(zero) mA lido ser um rompimento no condutor, e no um sinal gerado pelo sensor.
- Corrente: 4mA a 20mA.
Este tipo de transmisso de dados bastante comum em aplicaes industriais
com sensores analgicos e apresenta vantagens quanto boa intensidade do
sinal, alm da possibilidade de deteco de rompimento (quando a corrente
fica nula) ou curto (corrente infinita), permitindo deteco da anomalia por
parte da malha de controle. (Figura 123)
SENSOR ANALGICO

CLP (circuito de controle)

sada por corrente 4..20mA linear sada por tenso, 0..10V linear
mensurada

mensurada
Grandeza

Grandeza

corrente (mA) Tenso (V)

sada por corrente, 4..20mA linear inversa. sada por tenso, 0..10V no linear.
mensurada

mensurada
Grandeza

Grandeza

corrente (mA) Tenso (V)


Figura 123 - Sensor analgico
Fonte: Autor

importante ressaltar que um sensor analgico pode gerar uma resposta no-
linear em relao grandeza mensurada. Uma vez que este sensor converte a
grandeza medida, por exemplo a temperatura, em uma variao de tenso ou
de corrente de forma linear, o processamento facilitado, pois os clculos para
converso so realizados por uma equao linear.
3 Sensores
109

No entanto, muitos sensores apresentam curvas que so exponenciais,


logartmicas, e em alguns casos curvas mais complexas, que precisam de um
processamento matemtico mais complexo para que a malha de controle
converta ou interprete o sinal adequadamente.
Portanto, importante conhecer a curva do sensor analgico e saber interpretar
e resolver polinmios de forma grfica no momento de interligar um sensor a um
dispositivo de controle.

Pesquise na internet sobre sensores de temperatura com


SAIBA caractersticas lineares e no-lineares, comparando custos e
MAIS faixas de medio. Observe que os sensores lineares geralmente
apresentam um custo mais elevado e menor simplicidade.

Observe que, alm dos padres de 0 a 10V, 0 a 20mA e 4 a 20mA, outros


padres de variao de tenso e corrente tambm podem ser utilizados em
sistemas de controle especficos, embora no sejam muito empregados como
padro industrial, como 0 a 5V, 0 a +/-5V, -10 a 10V, 0 a +/-10V.
Assim como os sensores industriais digitais, um sensor analgico pode ser
construdo de forma a gerar um sinal complexo de dados, enviando-os de forma
digital atravs de uma rede de dados a um sistema de controle, podendo ser um
computador, sistema microcontrolado ou PLC.
C
MAXIM
TENSO

18B20
1 2 3
0 0 1 0 1 0 0
GND
DQ
VDD

TEMPO

Figura 124 - Sensor eletrnico de temperatura


Fonte: Autor

Acima, a Figura 124 de um sensor eletrnico de temperatura, que internamente


converte a temperatura analgica em uma informao digital binria e a envia
serialmente atravs de uma nica sada pulsada. Este tipo de sensor depende do
processamento da informao recebida pelo sistema de controle, mas podemos
afirmar que seu tipo de informao analisado analgico, mas a sada de dados
tem formato digital.

Pesquise sobre as folhas de dados (datasheets) dos


SAIBA sensores DS18B20 e LM35, descobrindo qual a vantagem e
MAIS desvantagem dos modelos citados em relao ao formato da
sada gerada pelo sensor.
AUTOMAO INDUSTRIAL
110

3.3 Princpio fsico

Todo sensor utiliza-se de um princpio fsico para realizar a deteco. (Figura 125)

CALOR

PRINCPIO FSICO
LUZ
N

L SADA DE SINAL
SOM POSIO
0

S
0
01
90 10
10 90

001mm

VELOCIDADE
80 20
20 80

PRINCPIOS MECNICOS
30 70
70 1 0 9 30
2 8
3 7
4 5 6
40 60
60 50
40
50

FORA

Figura 125 - Princpio fsico


Fonte: Autor

Um mesmo princpio fsico pode ser utilizado para medir grandezas diferentes. Por
exemplo, a temperatura de um forno pode ser medida atravs de um sensor que utiliza
o princpio fsico de calor, como um termopar (que estudaremos em breve), ou pode ser
medida atravs do princpio fsico da luz, atravs de um sensor tico que mede a radiao
infravermelha gerada pelo forno, ou ainda por um sensor que mede a deformao fsica
(princpio mecnico) de um metal dilatado pela temperatura do forno.
Embora no possamos citar aqui todos os sensores e seus respectivos princpios
fsicos, abordaremos os mais importantes, que so:
ELETRO-MECNICO: Quando um movimento pode gerar um acionamento
eltrico. Os sensores que funcionam a partir deste princpio so simples,
baratos e muito utilizados, mas possuem limitaes quanto durabilidade,
devido ao desgaste, e quanto fora necessria para o acionamento, alm
de precisarem do contato fsico para ocorrer.
PTICOS: Utilizam-se de luz visvel ou invisvel (infravermelho ou ultravioleta).
ACSTICO: Quando um som ou vibrao pode gerar um acionamento
eltrico. Os sensores que funcionam a partir deste princpio utilizam o som
ou as vibraes no ar para obter a informao desejada. Estes sensores so
mais utilizados do que voc imagina, principalmente na rea automotiva.
RESISTIVO: Os sensores resistivos apresentam variaes de resistncia
eltrica de acordo com a grandeza que est sendo mensurada (medida).
INDUTIVO: Os sensores indutivos so capazes de detectar metais, pois
produzem um campo eletromagntico ao seu redor. Sempre que um metal
ferromagntico se aproxima do sensor, o campo eletromagntico sofre uma
interferncia, indicando, desta forma, a presena de um metal.
CAPACITIVO: Os sensores que funcionam a partir deste princpio so sensveis
mudana na capacidade dieltrica (isolante) do meio, permitindo detectar
praticamente todo o tipo de material.
3 Sensores
111

MAGNTICO: Os sensores que se valem deste princpio de funcionamento


so sensveis presena de campos magnticos. Os sensores magnticos
podem variar de aplicao e custo, conforme sua sensibilidade.
PIEZOELTRICO: Estes sensores so capazes de gerar uma tenso eltrica toda
vez que sofrem deflexes mecnicas. So usados em balanas, microfones,
sistemas de deteco de esforo mecnico etc.
TEMPERATURA: Os sensores que funcionam a partir da variao trmica
geram sinais eltricos proporcionais ou inversamente proporcionais a esta
variao. Alguns sensores resistivos (termistores) e pticos (infravermelho)
so aplicados tambm a esta categoria.

3.4 Sensores eletromecnicos

Tambm conhecidos como CHAVES FIM DE CURSO, so chaves de contato


acionveis atravs de um pino ou alavanca, que so aplicadas em reas de movimento
do equipamento com o intuito de, em um determinado momento ou evento, haver
o acionamento desta alavanca ou pino, realizando a comutao do contato.

Figura 126 - Chaves mecnicas


Fonte: Autor

Apresentam baixo custo, porm exigem que uma fora fsica seja aplicada
para que haja a comutao do contato mecnico, alm de necessitar do
contato fsico com uma superfcie a ser detectada. Outro aspecto negativo
a presena de partes mveis, permitindo a entrada de impurezas nos
mecanismos internos de comutao.
Como ponto forte, um sensor de baixo custo e simples aplicao.

3.5 Sensores pticos

So sensores cujo princpio fsico a radiao eletromagntica prxima


faixa da luz visvel. So constitudos de uma fonte emissora e uma receptora, que
podem estar montadas em um nico encapsulamento. (Figura 127)
AUTOMAO INDUSTRIAL
112

SENSOR PTICO
REFLEXIVO
luz emitida
luz refletida

EMISSOR

RECEPTOR

Figura 127 - Sensor ptico de reflexo, e suas partes emissora/receptora


Fonte: Autor

A luz pode ser emitida pelo prprio sensor e percebida atravs de um circuito
receptor, geralmente composto de fototransistores ou fotodiodos. Quando
usado como sensor de presena, o sensor ptico pode revelar a presena de um
objeto pela deteco da luz refletida (objeto reflete a luz emitida no receptor do
sensor) ou, ainda, pela interrupo da reflexo causada por um objeto opaco
interrompendo a reflexo causada por um espelho refletor especial.
Alguns sensores pticos podem mensurar a quantidade ou o ngulo da luz
refletida, podendo no s identificar a presena de um objeto, como determinar
a distncia da superfcie refletora.

Nem todos os sensores pticos trabalham com luz visvel,


VOC sendo que grande parte utiliza comprimentos de onda
SABIA? no-visveis (ultravioleta e infravermelho) por questes de
interferncia externa.

FIQUE Alguns sensores pticos emitem uma radiao laser muito forte,
ALERTA e no recomendvel olhar diretamente para a fonte emissora
de luz, pois feixes de laser podem causar danos ao olho.

Quanto ao emissor, os sensores pticos geralmente empregam diodos


emissores de luz (LEDs) ou, em alguns casos, diodos laser para facilitar a focalizao
do alvo a ser detectado. Como a luz est presente em quase todos os ambientes,
so necessrias algumas estratgias que diferenciem o sinal luminoso gerado dos
sinais que podem interferir na leitura.
Na maioria dos casos, os sensores pticos geram luz de forma pulsada, em alta
frequncia, permitindo que o dispositivo emissor de luz gere um sinal mais forte
(com corrente maior por um curto perodo em cada pulso), e em uma frequncia
que possa ser identificada posteriormente pelo circuito de leitura. Conjuntos
pticos compostos de refletores e principalmente lentes especiais permitem
concentrar ou difundir o feixe gerado, permitindo definir focos diferentes para
diversos tipos de sensores, que podem ser utilizados para detectar objetos mais
distantes ou para detectar objetos mais prximos com melhor eficincia.
3 Sensores
113

Para o receptor, alm do conjunto ptico, podem ser utilizados filtros em forma
de lentes que limitam as cores lidas pelo receptor, que composto de um ou mais
componentes fotosensveis (fotodiodo ou fototransistor).

CASOS E RELATOS
Sensor ptico reflexivo caseiro.
Em uma escola do SENAI no Norte do pas, a bibliotecria solicitou aos
alunos que criassem um sistema automatizado e de baixo custo para realizar a
contagem dos usurios da biblioteca.
Aps estudar os diodos emissores de luz e os fotodiodos, Jaime, um aluno
do curso de Automao Industrial, teve a ideia de construir e instalar um sensor
ptico de barreira na nica porta de acesso da sala da Biblioteca.
Com o apoio da escola e de outros colegas, Jaime implementou o sensor,
usando como emissor um LED infravermelho fixado em um dos marcos da
porta, e um fotodiodo fixado no marco oposto, de forma a gerar um feixe de
luz invisvel que interrompido durante a passagem de uma pessoa pela porta.
Aps amplificar o sinal do fotodiodo e polarizar corretamente o LED emissor, o
sistema construdo por Jaime passou a enviar um sinal de 24V para um contador
eletromecnico sempre que o feixe de luz da porta da biblioteca fosse interrompido.
Porm, aps alguns dias de testes, ocorreu um problema bastante curioso.
Durante as manhs, quando a luz do sol proveniente de uma das janelas incidia
sobre a porta, a contagem no ocorria. A luz do sol interferia no receptor, gerando
uma falsa leitura do sinal, impedindo de detectar a interrupo do feixe de luz gerado
pelo LED emissor. Para resolver o problema, Jaime implementou, com o auxlio de um
colega mais experiente, um circuito multivibrador que passou a pulsar o LED emissor,
permitindo ao circuito de recepo diferenciar a luz solar da luz emitida pelo LED.

Como principal vantagem, os sensores pticos possuem um custo


relativamente baixo e grande velocidade de deteco. Os sensores pticos no
so indicados para locais que oferecem condies inadequadas propagao
direta da luz, com poeira e resduos em suspenso que podem interferir no feixe
de luz ou, ainda, decantar sobre a superfcie das lentes ou dos objetos detectados.
Como estratgia de filtragem a interferncias externas, como outras fontes de luz,
os sensores pticos geralmente modulam o sinal emitido em pulsos, podendo
distinguir entre o sinal original e uma possvel interferncia.
Atravs de ajustes no ganho, alguns sensores pticos permitem a deteco de
objetos a distncias bastante significativas, e atravs de diodos laser no lugar dos
tradicionais LEDs como fonte emissora de luz, podem ser utilizados para medir
com preciso a distncia ou a presena de objetos.
AUTOMAO INDUSTRIAL
114

3.5.1 Sensor ptico por retrorreflexo

Sensores que funcionam a partir deste princpio possuem um emissor e um


receptor do sinal luminoso. Estes sensores esto montados no mesmo dispositivo,
sendo que o emissor fica apontado para uma superfcie refletora. O objeto
detectado atravs da interrupo do feixe de luz. (Figura 128)
Sensor PNP detectando refletor, gerando sinal V+
SENSOR PTICO REFLEXIVO

REFLETOR
luz emitida
luz refletida
SINAL V+

Objeto interrompe feixe de luz interrompendo o sinal


SENSOR PTICO REFLEXIVO luz difundida

REFLETOR
OBJETO
SEM SINAL

Figura 128 - Sensor ptico por retrorreflexo com espelho refletor especial, usado como
barreira ptica para a deteo de objetos
Fonte: Autor

Quando os objetos so muito transparentes ou excessivamente reflexivos, eles


podem no ser detectados por este sensor. Para evitar que objetos reflexivos sejam
confundidos com o refletor do sensor, alguns sensores utilizam lentes e refletores
polarizadas. Estas lentes so combinadas aos refletores e evitam confundi-lo com
objetos de superfcies reflexivas. Este tipo de sensor mais caro, porm evita a
realizao de leituras invlidas.

3.5.2 Sensor ptico por reflexo difusa

A exemplo do sensor de retrorreflexo, este tipo de sensor tambm usa o


princpio de reflexo de luz, mas desta vez ele utiliza o objeto a ser detectado
como superfcie refletora. (Figura 129)
Luz emitida no encontra nenhuma superfcie refletora prxima, e o
sensor no envia sinal.
SENSOR PTICO REFLEXIVO

luz emitida
luz refletida
SEM SINAL

Luz refletida pelo objeto detectada pelo receptor e sensor envia sinal.
SENSOR PTICO REFLEXIVO luz difundida
OBJETO

SINAL V+

Figura 129 - Sensor ptico por reflexo difusa


Fonte: Autor
3 Sensores
115

Sensores reflexivos por difuso so mais prticos e geralmente mais baratos, pois
no necessitam da instalao de refletores especiais. Sua aplicao exige que o objeto
detectado no seja opaco, transparente ou muito fosco, havendo um mnimo de
capacidade reflexiva, e que o local para onde o sensor direcionado quando no houver
pea a ser detectada no tenha um fundo reflexivo o suficiente para confundir o sensor.

3.5.3 Sensores pticos por transmisso

Sensores onde o emissor e o receptor esto construdos em dispositivos


independentes, porm funcionando em conjunto. (Figura 130)
SENSOR PTICO EMISSOR
por transmisso
luz emitida

SINAL RECEPTOR

SENSOR PTICO EMISSOR


por transmisso
OBJETO

SEM SINAL RECEPTOR

Figura 130 - Sensores pticos por transmisso


Fonte: Autor

3.5.4 Sensores pticos atravs de cabos de fibra ptica

Em alguns equipamentos, no vivel instalar um sensor devido a limitaes fsicas


geralmente relacionadas ao tamanho. Nestes casos, os sensores pticos podem ser
conectados a cabos de fibra ptica para direcionar e conduzir os sinais luminosos.

E E
R R
sensor ptico

fibra ptica
E E
R R
emissor receptor
terminais
Figura 131 - Sistema de sensor ptico por transmisso usando fibra ptica
Fonte: Autor

Fibras pticas necessitam de cuidados especiais. Se for


necessrio seccionar a fibra ptica, o corte deve ser
FIQUE realizado atravs de ferramentas especiais e de forma
ALERTA perpendicular. Quando for necessrio curvar a fibra ptica,
devemos respeitar um raio mnimo, para evitar que sofra
fissuras que impeam a passagem da luz.
AUTOMAO INDUSTRIAL
116

Fibras pticas so condutores de luz que permitem enviar um sinal luminoso


com o mnimo de perdas. So imunes a rudos eltricos, pois conduzem sinais de
luz no lugar de sinais eltricos, porm devem ser observadas as condies ideais
para sua instalao. As curvas devem respeitar um raio mnimo para evitar que
haja rompimentos internos da fibra, que poderiam gerar perdas e alteraes nos
sinais lidos. Ferramentas especiais tambm devem ser utilizadas para cortar a
fibra, permitindo que o ponto de seco seja o mais perpendicular possvel em
relao ao sentido da fibra. Apesar de possvel, no so recomendadas emendas
em cabos de fibra ptica, a menos que se utilizem equipamentos especiais ou
conectores adequados nestas emendas.
Devido a caractersticas que podem variar conforme o fabricante,
recomendado pesquisar sobre a distncia mxima suportada para cada sensor,
considerando a fibra especfica empregada.

Pesquise na internet sobre as diferenas entre fibras pticas


SAIBA monomodo e multimodo, descobrindo suas aplicaes na
MAIS automao industrial e em telecomunicaes.

3.5.5 Sensor de barreira ptica de segurana

Como sugerido pelo nome, este sensor utilizado para identificar a violao de
uma zona de segurana, impedindo que algo ou algum invada uma determinada
rea controlada durante a execuo de um processo que oferece perigo ou risco.

Figura 132 - Sensor de barreira ptica


Fonte: Autor

Sensores de barreira ptica de segurana tm seu princpio de funcionamento


embasado em feixes independentes de luz, pulsados de forma alternada e em alta
velocidade. Geralmente possuem tipo de sada na forma de contato normalmente
fechado, abrindo o contato quando algo violar um ou mais feixes.
So disponibilizados com recursos programveis e com alturas e quantidade de
feixes diferentes, podendo serem configurados para permitir zonas livres de deteco.
3 Sensores
117

Sensores de segurana e chaves de emergncia


devem ser de caracterstica NF e devem ser ligados em
FIQUE srie. Desta forma, no caso de dano em sensores ou
ALERTA rompimento de condutores da rede de emergncia, o
sistema entrar em estado de erro, impedindo que o
dano passe desapercebido.

3.5.6 Sensores a laser

So caracterizados pela preciso, sendo apresentados em custos mais elevados


do que os sensores que utilizam LEDs convencionais como emissores de luz. O uso de
DIODOS LASER na produo do feixe luminoso permite um melhor controle sobre a
luz, emitindo um feixe extremamente concentrado e que pouco difuso. Podem ser
empregados em sensores pticos com formato analgico para sada da informao,
onde circuitos receptores e microprocessadores internos operando em altas velocidades
permitem leituras de distncia satisfatoriamente precisas. Dentre os diversos mtodos,
existem sensores que utilizam o ngulo de reflexo do feixe de laser para definir
a distncia do objeto detectado, e outros ainda medem o tempo (extremamente
pequeno) entre o pulso de laser emitido e o pulso de laser captado aps a reflexo.
Sensores a laser combinados com espelhos controlados ainda so utilizados
como sensores de segurana, podendo realizar a varredura em um plano em
busca de mudanas que podem revelar a presena de uma pessoa ou objeto. Estes
sensores so conhecidos por SCANNERS A LASER DE SEGURANA, e geralmente
so uma soluo bastante eficiente, porm com um elevado custo. (Figura 133)

Figura 133 - Scanner a laser


Fonte: Autor

Devido abrangncia da soluo aliada a um tamanho reduzido, scanners a


laser so empregados em equipamentos mveis, por exemplo AGVs (Veculos
Guiados Automaticamente) para detectar obstculos que possam impedir a
movimentao automtica do veculo.

AGVs so veculos guiados automaticamente que se


deslocam atravs de sinais e informaes coletados por
SAIBA sensores. Pesquise sobre AGV em sites de busca na internet,
MAIS procurando entender a funo dos diversos sensores
estudados neste tipo de equipamento.
AUTOMAO INDUSTRIAL
118

3.5.7 Sensor infravermelho

Comumente utilizados para a deteco de movimento e presena humana em


sistemas de alarme, seu princpio de funcionamento embasado na deteco de
luz infravermelha ou na variao da quantidade deste tipo de luz. Pirossensores
so os elementos receptores deste tipo de sensor. (Figura 134)

Figura 134 - Sensor infravermelho


Fonte: Autor

Devido ausncia de um dispositivo emissor, estes sensores so conhecidos


por sensores passivos, sendo empregados para detectar movimento de pessoas
ou objetos que apresentem variao na irradiao de calor. Uma lente especial
na frente do pirossensor permite a deteco de variaes bruscas na quantidade
de luz infravermelha durante o movimento de uma pessoa ou animal de sangue
quente, identificando o movimento e a violao do permetro, fazendo com que
o contato do sensor (geralmente NF) mude de estado.

Sensores de presena do tipo infravermelho no detectam


movimentos, e sim o calor. Faa um teste: permanea parado
SAIBA em frente a um sensor de alarme residencial com indicador
MAIS luminoso, com um objeto em suas mos. Aguarde o sensor
parar de indicar movimento, evitando ao mximo se mover,
solte o objeto. Observe o comportamento do sensor.

3.5.8 Rels fotoeltricos

Tambm conhecidos pelo termo fotoclulas, so dispositivos de acionamento


que reagem luz, acionando um contato sempre que a luminosidade estiver
abaixo de um nvel mnimo.
Grande parte dos rels fotoeltricos utilizam resistores dependentes de luz
(ou, em ingls, Light Dependent Resistor - LDR) como dispositivos detectores
de luminosidade. Como o prprio nome sugere, um LDR possui uma resistncia
varivel que diminui proporcionalmente luz incidente.
LDRs so frequentemente utilizados em automaes prediais e domsticas,
sendo utilizados em alguns eletrodomsticos para detectar a quantidade de
luminosidade ambiente, e em automveis para proporcionar acendimento
automtico dos sistemas de iluminao (sensor crepuscular). (Figura 135)
3 Sensores
119

Rels fotoeltricos LDR


Figura 135 - Rels fotoeltricos e um resistor dependente de luz
Fonte: Autor

3.5.9 Viso artificial

Cmeras fotogrficas digitais aliadas a velozes sistemas de processamento e


algoritmos especficos permitem realizar a aquisio e a anlise de uma imagem,
de modo que informaes podem ser comparadas com um padro, definindo se
um produto est ou no adequado s caractersticas esperadas. (Figura 136)

Figura 136 - Sensor de viso


Fonte: Autor

O procedimento conhecido como viso artificial, e realizado por cmeras que


capturam a imagem, comparando com um padro pr-definido, acionando sadas
digitais em caso de falha. A falha detectada pode ser a falta de um componente
visualmente detectvel, diferenas dimensionais, de cores ou posicionamento.

3.6 Sensor de ultrassom

Caracterizado por um sonar, tem sido largamente empregado na rea


automotiva como sensor de proximidade para estacionamento ou em alarmes
como sensores volumtricos. Na indstria, sensores de ultrassom so empregados
para medir distncias de objetos grandes, nveis de reservatrios, presena de
obstculos, alm da vazo de fludos.
Seu funcionamento tem princpio acstico, onde um dispositivo gera um som
de alta frequncia (no percebido pelo ouvido humano).

Os seres humanos conseguem perceber sons com


VOC frequncias entre 20Hz e 20kHz (variaes por segundo).
Nos dispositivos de ultrassom, as frequncias geralmente
SABIA? ficam na faixa de 33kHz a 40kHz, sendo imperceptveis aos
ouvidos humanos.
AUTOMAO INDUSTRIAL
120

Em sensores de ultrasom convencionais, o sinal sonoro emitido ento


propagado pelo meio. No caso do ar, esta propagao ocorre na velocidade de
330 a 350 metros por segundo, dependendo da temperatura, umidade e presso
atmosfrica. As ondas sonoras so propagadas at encontrar um obstculo capaz
de refleti-las de volta origem. Um microfone capta e amplifica o sinal sonoro
recebido. Devido velocidade dos sistemas de processamento, possvel medir
o tempo (em microssegundos) entre o envio e a recepo do sinal sonoro, e isso
permite estimar a distncia de um obstculo ou objeto. (Figura 137)
emissor
(altofalante)

OBJETO
DETECTADO

receptor
(microfone)

Figura 137 - Sensor com ultrasom


Fonte: Autor

Sons tambm podem ser propagados em outros meios fsicos, como lquidos
e slidos, havendo uma diferente faixa de propagao, geralmente associada
densidade do material.
Sensores de ultrassom empregados em medidas de distncias e suas variveis
geralmente produzem uma informao do tipo analgica, e podem apresentar
uma variao devido s variantes atmosfricas que podem fazer com que o som
se propague com uma velocidade diferente. Outro fator que deve ser observado
no uso destes sensores a capacidade de reflexo sonora por parte do objeto,
que pode refletir mais ou menos ondas sonoras de volta ao sensor.

Alguns objetos podem absorver as ondas sonoras (como


FIQUE espumas e superfcies muito macias), no refletindo o suficiente
ALERTA para ser identificado por sensores ultrassnicos. Objetos de
dimenses reduzidas tambm podem no ser identificados.

Algumas superfcies podem ser transparentes ao som, no refletindo ou


refletindo parcialmente o sinal sonoro. Essa capacidade em reflexes sonoras
diferentes por parte dos materiais de diferentes densidades permite aos sensores
de ultrassom a coleta de informaes no interior de alguns recipientes. (Figura 138)

Figura 138 - Equipamento aplicado anlise por ultrassom, permitindo identificar fissuras internas no material atravs da
anlise da propagao do som atravs do material
Fonte: Autor
3 Sensores
121

Sensores de ultrassom combinados com processamento de sinais digitais


podem compor equipamentos de anlise por ultrassom capazes de identificar
fissuras internas em materiais slidos, ou ainda visualizar materiais compostos com
densidades diferentes. Esta tecnologia j usada h algum tempo na medicina,
onde a ultrassonografia permite visualizar os rgos internos de pacientes.
Alguns sensores de ultrassom industriais permitem programar uma faixa
livre, na qual obstculos detectados so ignorados, permitindo a sensores de
ultrassom detectar obstculos em uma rea mais restrita, ou atravs de paredes
relativamente transparentes ao som.

o uso de sensores de ultrassom depende de algumas


variveis do ambientes, tais como temperatura, presso
FIQUE atmosfrica e umidade relativa do ar. Ambientes onde estas
ALERTA variveis no so controladas, e que possuem presena
de fortes deslocamentos de ar (ventilao), podem causar
interferncias significativas nas leituras.

3.7 Sensores indutivos

Ao se aproximar um material metlico de uma bobina submetida a uma


alta frequncia, a amplitude do sinal da bobina sofre alteraes devido a
mudanas em sua indutncia.
Sensores indutivos seguem este princpio, gerando um campo
eletromagntico de alta frequncia e medindo a amplitude da tenso no
circuito oscilador. Um circuito comparador no interior de sensores indutivos
permite identificar estas alteraes de amplitude no circuito oscilador,
percebendo a presena de um material metlico. (Figura 139)

Sensor sem objeto prximo. Objeto no metlico. Objeto metlico produz


Praticamente sem mudana no Uma grande mudana no
campo eletromagntico gerado. campo eletromagntico.
Figura 139 - Sensores indutivos
Fonte: Autor

Como podemos observar, estes sensores so ideais para detectar


materiais metlicos, e so largamente utilizados em aplicaes industriais
por oferecerem robustez e imunidade a outras interferncias, como poeira e
partculas no-metlicas.
Em alguns ambientes industriais, comum que, aps algum perodo de uso,
sensores estejam cobertos por lubrificante, poeira e outros resduos. Sensores
indutivos so bastante imunes a isso, no sendo afetados por poeira, partculas
no-metlicas e fludos lubrificante, sendo adequados para situaes de deteco
onde os sensores pticos no podem ser empregados.
AUTOMAO INDUSTRIAL
122

Alguns sensores indutivos geram sinais analgicos, retornando a


proximidade ou volume do material metlico, porm na maioria das aplicaes
industriais, sensores indutivos so aplicados como sensores digitais de presena,
identificando a presena (ou no) de um dispositivo metlico. Sensores indutivos
tambm so aplicados em rodas dentadas para medir posicionamento e
velocidade, pois o sensor ir gerar pulsos toda vez que um dente de uma roda
dentada passar em frente a ele. (Figura 140)

roda dentada (metal)


sada digital

sensor
indutivo

referncia

Figura 140 - Aplicao de sensores indutivos


Fonte: Autor

Embora o uso de outros tipos de sensores tambm resultasse na informao


desejada, por questes de custo, robustez e, principalmente, imunidade a
interferncias externas, os sensores indutivos so largamente empregados.Um
exemplo bastante comum usado na rea automotiva: no sistema de injeo
eletrnica, uma roda dentada em conjunto com um sensor indutivo gera pulsos
para que o sistema de controle saiba a posio do eixo do motor, do motor, e
sua velocidade de rotao. Em outro exemplo, temos o sistema de assistncia
de frenagem (ABS), em que um sistema computacional avalia constantemente a
desacelerao da roda, evitando seu bloqueio.

3.8 Sensores capacitivos

Nos sensores indutivos, a mudana da indutncia da bobina de um circuito


gera uma alterao no circuito ressonante (FILTRO), que UTILIZADO para gerar
a informao desejada. J em sensores CAPACITIVOS, a mudana detectada na
capacitncia do circuito. Esta capacitncia determinada pela distncia entre duas
superfcies condutivas, separadas pelo material isolante dieltrico. Dependendo
das dimenses do posicionamento e do material que constitui o dieltrico,
e tambm das variaes de distncia das camadas condutoras, h sensveis
variaes na capacitncia, que podem ser aplicadas a circuitos de transformao
do sinal que, aps amplificado e filtrado, gera o sinal desejado.
3 Sensores
123

Sensores capacitivos industriais so equipamentos que possuem um


capacitor montado em sua face de deteco e utilizado em um circuito
interno bastante sensvel a variaes de capacitncia deste capacitor. Quando
um material ingressa na regio deste capacitor, sua capacitncia afetada e
a alterao causa uma mudana de comportamento no funcionamento do
circuito, permitindo a deteco.
Uma vantagem dos sensores de presena capacitivos a possibilidade de
detectar vrios tipos de material, sejam eles ferromagnticos ou no. Um sensor
capacitivo pode detectar materiais condutores (metais em geral) e tambm no-
condutores (plstico, borracha, compostos orgnicos naturais como madeira,
papel, fludos, leo, gua etc.).
O uso de sensores capacitivos muito frequente como alternativa a
sensores indutivos quando o material a ser detectado no metlico. Devido
a sua abrangncia (detecta vrios tipos de materiais), um sensor capacitivo
deve ser usado com cuidado, evitando seu uso em ambientes com muito
resduo, como poeira, leo ou asperso de gua, pois isso pode causar
depsitos sobre o sensor, fazendo com que a capacitncia seja alterada a
ponto de causar falsas deteces.
Sensores capacitivos podem tambm ser empregados em tanques
para a medio de nvel, sem a necessidade de perfuraes, uma vez que a
capacitncia pode ser medida atravs das paredes de um recipiente, desde
que no sejam muito espessos, sem a necessidade de perfuraes e do contato
direto do sensor com o fludo. (Figura 141)

sensor capacitivo

sensor capacitivo GUA

reservatrio

Figura 141 - Sensores capacitivos


Fonte: Autor

Sensores capacitivos analgicos podem ser utilizados para medir a


proximidade ou o volume de um objeto. Sensores capacitivos de nvel funcionam
pelo processo de capacitncia entre dois elementos condutivos imersos em um
fludo no-condutivo. Como a constante dieltrica do fludo tende a ser diferente
da constante dieltrica do ar, a capacitncia do sensor de nvel tende a mudar de
acordo com a proporo da imerso das hastes no fludo.
AUTOMAO INDUSTRIAL
124

3.9 Sensores magnticos

So sensores que reagem a um campo magntico. Seu principal representante


o reed switch, constitudo por uma chave magntica de contato normalmente
aberto que reage aproximao de um m ou campo magntico. (Figura 142)
SENSOR MAGNTICO
REED SWITCH
M
(OBJETO DETECTADO)

CONTATO ABERTO CONTATO FECHADO

CIRCUITO DE CONTROLE

Figura 142 - Sensores magnticos


Fonte: Autor

Seu uso na automao industrial frequentemente relacionado deteco de


movimentao de cilindros pneumticos com mbolos magnticos. Este sensor
utilizado para detectar a posio do mbolo sem a necessidade de alterar as
propriedades construtivas do cilindro e sem o uso de contato mecnico com a
parte mvel do atuador. (Figura 143)

sensor magntico
magntico

sensor magntico
magntico

cilindro pneumtico com mbolo magntico

Figura 143 - Cilindro pneumtico com mbolo magntico


Fonte: Autor

Apesar de oferecer uma soluo de baixo custo e sem contato mecnico com o
objeto detectado, o sensor magntico com reed switch possui limitaes quanto
ao tamanho e vida til se comparado a sensores magnticos construdos a partir
de semicondutores, como sensores HALL. (Figura 144)

A
NNT

N
N
A
T

Figura 144 - Circuito integrado sensor de efeito HALL A1101, da Allegro MicroSystems Inc.
Fonte: Autor
3 Sensores
125

Sensores HALL (em homenagem a E.H. Hall) so sensveis a campos magnticos,


gerando um sinal de tenso proporcional a eles e que pode ser amplificado e
processado para gerar uma informao digital similar aos sensores magnticos
de contato, com a vantagem de no haver partes mveis internas no sensor,
aumentando sua vida til e diminuindo o tempo de resposta. Sensores HALL so
usados para posicionamento em pequenos dispositivos, como leitores de discos
de computadores, e posicionamento e velocidade de motores. Em aplicaes
industriais, estes sensores vem sendo empregados em conjunto com cilindros
pneumticos para a deteco de posicionamento do atuador.

3.10 Sensor de presso

Todo tipo de presso sobre um material tende a causar uma deformao/


deflexo. Em alguns materiais, esta deformao temporria e, quando a presso
interrompida, o material volta ao seu estado original.
Alguns materiais, ao serem submetidos a presso, tm suas propriedades
condutivas modificadas, geralmente com diminuio de sua resistncia.
Os Piezorresistores so componentes que reagem desta forma, tendo sua
resistncia inversamente proporcional presso a que so submetidos.

Muitos microfones utilizados em telefones tm, sem seu


VOC interior, piezorresistores, onde as variaes da presso
SABIA? do ar causadas pelas ondas sonoras so traduzidas em
variaes de resistncia eltrica

Em sensores capacitivos, a presso pode comprimir o material dieltrico (entre


as camadas condutoras do capacitor), causando uma mudana na capacitncia.
Alguns materiais podem ainda gerar um campo eltrico durante a variao da
presso, gerando energia eltrica.
Tenso, corrente, capacitncia e resistividade so, portanto, grandezas
que podem variar conforme a presso em determinados componentes. Estes
componentes so ento combinados e montados de forma a mensurar a presso
atravs da variao controlada destas grandezas.
Piezorresistores podem ser aplicados em encapsulamentos que aplicam a
deformao atravs da presso positiva ou negativa para criar sensores de presso
mais complexos, com sadas digitais ou analgicas. (Figura 145)
AUTOMAO INDUSTRIAL
126

bar

Sensor de presso Sensor de presso Piezoresistor


microcontrolado
Figura 145 - Sensor de presso microcontrolado, de seu componente interno (sensor de presso) e do piezorresistor utilizado
nesta ltima como elemento detector de presso
Fonte: Autor

Os mesmos piezorresistores podem ser aplicados em sistemas de presso


mecnica e em balanas e detectores de vibrao.
Sensores de presso so geralmente empregados para uma sada de
formato analgico, porm tambm podem ser condicionados para gerar
uma informao digital.
Sensores mais tradicionais utilizam ainda o princpio fsico mecnico, realizando
a deteco da presso atravs da contrarresistncia (fora que se ope presso)
mecnica controlada por uma mola que, quando vencida, realiza a comutao,
e um contato eltrico, informando se uma presso especfica foi ou no atingida.

Figura 146 - Sensor de presso do tipo pressostato de membrana


Fonte: Autor

Um pressostato pode ser utilizado para medir o nvel de


VOC lquidos, atravs da medio da variao de presso em um
SABIA? sistema fechado conectado ao fundo do recipiente? Esta
tcnica utilizada em mquinas de lavar roupas.

3.11 Sensores de acelerao

Conhecidos tambm como ACELERMETROS, estes sensores so capazes


de perceber a acelerao. Os primeiros acelermetros tinham por base o uso de
giroscpios, porm, devido ao tamanho e robustez, acelermetros capacitivos
foram embutidos na pastilha de circuito integrados, permitindo medir a acelerao
e a direo da fora da gravidade, auxiliando em aplicaes de uso em segurana.

VOC Pesquise sobre o uso e a funo de acelermetros e


SABIA? giroscpios em aplicaes aeroespaciais.
3 Sensores
127

Computadores pessoais, telefones celulares e controles de videogame aplicam


estes sensores para detectar movimentos realizados pelo usurio, detectando
a direo do movimento, e tambm a direo do vetor fora da gravidade,
atualizando imagens para a orientao mais adequada.
Em automveis, estes sensores de acelerao so utilizados para detectar uma
desacelerao brusca causada por uma coliso, disparando sistemas de segurana
passiva, tais como air-bags.
Na indstria, os sensores de acelerao podem ser aplicados para detectar
movimentos bruscos ou vibraes, podendo servir de mecanismo de deteco
de problemas em equipamentos crticos. (Figura 147, Figura 148 e Figura 149)

Wii

Figura 147 - Circuitos inte- Figura 148 - Sensor industrial Figura 149 - Equipamentos que
grados acelermetros Fonte: Autor utilizam acelermetros
Fonte: Autor Fonte: Autor

3.12 Extensmetros e clulas de carga

Tambm conhecidos pelo termo STRAIN-GAGE, os extensmetros so resistores


aderidos superfcie de um material que pode sofrer deformao por trao. Quando
um material sofre trao, h um ligeiro estreitamento da superfcie condutora,
alterando tambm sua resistncia. Esta variao de resistncia pode ser aplicada a
um circuito comparador, gerando um sinal proporcional deformao sofrida.

Base Fio ou lmina

Terminal
para a Solda

Figura 150 - Sensor strain-gage acoplado Modelo


Figura 151 -de
Modelo de Strain -gage
Figura 152 -acoplado
Strain-gage
Sensor strain - gage
clula de carga posicionamento.
posicionamento a clula deAutor
Fonte: carga.
Fonte: Autor Fonte: Autor

Extensmetros podem ser aplicados a superfcies cuja deformao


controlada e conhecida para determinadas faixas de fora, gerando a chamada
clula de carga.
Clulas de carga so comumente empregadas para a medio de peso e outros
tipos de fora.
AUTOMAO INDUSTRIAL
128

3.13 Sensores de vazo

So sensores capazes de medir a quantidade de um determinado elemento que


passa por um determinado ponto, por um determinado perodo de tempo. Podemos
medir a vazo em unidades de volume por tempo (volumtricos), como litros por
segundo (L/s), metros cbicos por hora (m/h), gales por minutos (GPM) ou, ainda, em
unidades de massa por tempo (mssicos), como kilogramas por hora (kg/h), toneladas
por minuto (ton/min), miligramas por minuto (mg/min.), libras por segundo (lb/s).
A vazo geralmente medida em elementos transportados por tubulaes
em fluxos relativamente contnuos, e geralmente aplicada a lquidos ou gases,
embora tambm possa ser aplicada a slidos, como gros de matria-prima de
polmeros, minrios triturados, p, alimentos em gros, derivados etc.

Os sensores de vazo so comuns em nosso dia a dia,


embora em muitas situaes passem desapercebidos.
VOC Hidrmetros so usados para medir o consumo de gua
SABIA? nas residncias. Sensores de vazo por turbina tambm so
aplicados em bombas de postos de combustveis.

Os sensores de vazo so apresentados nas mais diversas configuraes,


variando conforme o elemento a ser medido, preciso necessria, resoluo,
presso suportada, vazo mnima e mxima, formato de sada etc.

0,000

Figura 153 - Sensores de turbinas


Fonte: Autor

Acima, a Figura 153 de sensores de turbina, frequentemente utilizados na


medio de vazo para lquidos.
Em caso de produtos slidos que podem ser transportados em esteiras, a medida
aproximada da vazo pode ser feita atravs do peso da esteira ou de medies de
altura do material transportado pela esteira. Este valor pode ser processado para
gerar uma aproximao em relao quantidade de material transportado.
Para lquido ou gs, destacam-se os sensores de vazo por turbinas onde ps
inseridas na tubulao giram durante a passagem do fludo, e sistemas externos
utilizam a informao gerada pelo giro das ps para obter a informao desejada.
Alguns sensores de vazo podem se basear na diferena de presso existente
entre a medida que ocorre antes (a montante) de um ponto de estrangulamento
e aps (a jusante) o ponto de estrangulamento. A diferena de presso entre os
dois pontos pode ser usada para determinar a vazo com uma boa aproximao.
3 Sensores
129

Representao da tubulao com um ponto de estrangulamento, com pontos


de presso diferencial. (Figura 154)
P2 P1
A1: Area do buraco

A2: Area do cano


de seo transversal

Figura 154 - Tubulao com ponto de estrangulamento


Fonte: Autor

O sensor do tipo tubo pitot permite a deteco da diferena entre a presso


esttica e a dinmica, podendo ser usado para estimar com bastante preciso a
vazo de um fludo. Este sensor usado em avies para o clculo da velocidade
atravs da vazo do ar.

Presso de Impacto Presso esttica


(velocidade)
Figura 155 - Representao de um sensor tipo pitot
Fonte: Autor

A Figura 155 de um tubo pitot. Observe que a diferena entre as presses


estticas e de impacto ser proporcional vazo.
Unio de sada
Conexo de sada

Limitador do flutuador
Caixa de vedao sela o tubo
De vidro com a unio de metal
Mximo fluxo obtido
Na parte superior do tubo
Tubo afunilado de vidro

Flutuador de medida

Mnimo fluxo obtido na


Parte inferior do tubo
Limitador do flutuador

Conexo de entrada
Unio de entrada
Figura 156 - Rotmetro
Fonte: Autor
AUTOMAO INDUSTRIAL
130

Rotmetros (Figura 156) so sensores de vazo aplicados a fludos (lquidos


e gases) cujo princpio consiste em uma passagem cnica com um elemento
bloqueador. O elemento tende a se deslocar para baixo, bloqueando o orifcio,
devido fora da gravidade, porm sofre a impulso do elemento em sentido
contrrio, buscando um ponto de equilbrio onde a rea de passagem suficiente
para que a suspenso do flutuador causada pelo atrito e seu peso entrem em
equilbrio. A altura do flutuador o indicador do fluxo.
Sensores magnticos podem medir a vazo atravs do campo magntico
causado pelo deslocamento de um fludo levemente condutor.
Sensores de ultrassom podem ser usados para medir a vazo atravs da
diferena de tempo entre a gerao e a captao de sinais sonoros propagados
pela tubulao. A velocidade do fludo na tubulao propaga as ondas sonoras de
forma levemente mais veloz ou mais lenta, conforme a velocidade e o sentido do
deslocamento. Esta informao, aliada a dados dimensionais da tubulao, pode
ser usada para estimar a vazo.
Obstculos inseridos no interior da tubulao podem causar a criao de
vrtices, que oscilam em proporo a velocidade do fludo. Esta informao pode
ser usada para calcular a vazo. Sensores de esforo ou trmicos tambm podem
ser aplicados aos obstculos, a fim de estimar o atrito com o elemento e definir
sua velocidade, usando esta informao para o clculo da vazo.

SAIBA Pesquise sobre aplicaes de sensores de vazo aplicados a


lquidos e gases.
MAIS

3.14 Sensores de temperatura

Sensores de temperatura so bastante aplicados na automao industrial e


podem utilizar mais de um princpio fsico para a medio da mesma grandeza.
O calor uma forma de energia, e a versatilidade e a diversidade em suas
transmisso fazem com que seja uma das mais usadas. O calor pode ser
transferido por conduo, por conveco ou por irradiao. Esta forma de
energia pode realizar transformaes em materiais, mudando a condutividade
eltrica de alguns elementos, causando dilataes e deformaes fsicas e
gerando ondas eletromagnticas.
Os elementos condutivos tendem a apresentar uma resistncia varivel
em relao temperatura. Em componentes eletrnicos, como resistores,
esta propriedade geralmente indesejvel, fazendo com que circuitos de
compensao sejam implementados para casos onde h necessidade de
preciso e estabilidade.
3 Sensores
131

Porm, como sensor trmico, esta propriedade dos resistores desejvel e


elementos resistivos mais sensveis temperatura so utilizados para compor
TERMISTORES. Alguns termistores apresentam uma resposta onde a resistncia
diretamente proporcional temperatura; ou seja, quanto mais calor, maior a
resistncia. Estes elementos so conhecidos como PTC (Positive Temperature
Coefficient), em portugus, coeficiente positivo de temperatura.
Alguns termistores podem ainda apresentar uma resistncia inversamente
proporcional temperatura; ou seja, a resistncia diminui com o aumento da
temperatura. Estes so conhecidos por NTC (Negative Temperature Coefficient),
em portugus, coeficiente negativo de temperatura.
Sensores do tipo PTC e NTC geralmente no apresentam comportamento
linear e podem apresentar comportamentos indesejveis se submetidos fora da
faixa de medio adequada.
Ao escolher um termistor, devemos observar esta faixa de medio e a
resistncia do componente nos valores mnimos e mximos dessa faixa. Alm
disso, necessrio interpretar a curva do sensor, conhecendo alguns pontos de
resistncia em determinadas temperaturas. (Figura 157)

NTC PTC
Resistncia (ohms)

Temperatura (oC)

Figura 157 - Grfico da curva de sensores NTC e PTC genricos


Fonte: Autor

Alguns sensores podem apresentar comportamento mais linear em certas


faixas de temperatura.
Devido a sua simplicidade, termistores geralmente so sensores baratos
(custam alguns centavos) e so aplicados a circuitos de controle mais complexos
para compensar sua no- linearidade.

A juno de dois metais diferentes pode transformar


VOC energia trmica em energia eltrica. Este princpio foi
SABIA? descoberto por Thomas Johann Seebeck em 1821, e
conhecido como efeito termoeltrico.

Atravs do princpio termoeltrico, os termopares realizam medies de


temperatura gerando uma pequena tenso proporcional ao calor ao qual uma
juno de dois metais diferentes submetida. (Figura 158)
AUTOMAO INDUSTRIAL
132

INFINITOS VALORES

DC

V
,
POWER PK HOLD B/L DC / AC

AUTO POWER OFF

(mV)

+
-
CAT ll

20A mA COM VHz

- + 0C
termopar

Figura 158 - Voltmetro


Fonte: Autor

Todo termopar constitudo de um PAR metlico, envolvendo um elemento


positivo (gera lacunas), e um elemento negativo (fornece eltrons); ou seja, quando
estes metais so submetidos a uma variao da temperatura, uma corrente passa
a circular entre eles. Os termopares tambm so indicados a faixas de temperatura
especfica, no tolerando temperaturas acima ou abaixo de uma faixa especfica,
podendo ocorrer danos permanentes se utilizados fora desta faixa de temperatura.

3.14.1 Tipos de termopares

Estes termopares podem ser formados com juno de metais diferentes,


apresentando respostas diferentes e principalmente faixas de leitura bem
particulares. Na automao industrial, so conhecidos por letras.
TipoK (Cromel / Alumel): um termopar bastante utilizado, com baixo
custo e cobrindo temperaturas entre -200 e 1200C, com sensibilidade de
aproximadamente 41V/C.
Termoelemento positivo (KP): Ni 90% Cr 10% (Cromel)
Termoelemento negativo (KN): Ni 95% Mn 2% Si 1% Al 2% (Alumel)
Faixa de utilizao: -270C a 1200C
f.e.m. (tenso em funo da temperatura) produzida: -6,458 mV a 48,838 mV
Tipo E (Cromel / Constantan): tem sensibilidade elevada (68 V/C) e muito
empregado em temperaturas negativas.
Termoelemento positivo (EP): Ni 90% Cr 10% (Cromel)
Termoelemento negativo (EN): Cu 55% Ni 45% (Constantan)
Faixa de utilizao: -270C a 1000C
f.e.m. produzida: -9,835 mV a 76,373 mV
3 Sensores
133

Tipo J (Ferro / Constantan): possui medio em faixa de -40 a 750C, mas


pouco usado atualmente.
Termoelemento positivo (JP): Fe 99,5%
Termoelemento negativo (JN): Cu 55% Ni 45% (Constantan)
Faixa de utilizao: -210C a 760C
f.e.m. produzida: -8,096 mV a 42,919 mV
TipoN (Nicrosil / Nisil): caracterizado pela resistncia oxidao e a
estabilidade, sendo ideal para temperaturas mais elevadas. Apresentado
como alternativa a termopares com platina, apresenta um custo mais baixo.
Termoelemento positivo (NP): Ni 84,4% Cr 14,2 % Si 1,4%
Termoelemento negativo (NN): Ni 95,45% Si 4,40% Mg 0,15%
Faixa de utilizao: -270C a 1300C
f.e.m. produzida: -4,345 mV a 47,513 mV.
Tipo B (Platina / Rdio-Platina): bastante estvel, porm com baixa
sensibilidade (da ordem dos 10 V/C). Tem alto custo, porm adequado
para ler temperaturas elevadas, at 1800C.
Termoelemento positivo (BP): Pt 70,4% Rh 29,6%
Termoelemento negativo (BN): Pt 93,9% Rh 6,1%
Faixa de utilizao: 0C a 1820C
f.e.m. produzida: 0,000 mV a 13,820 mV
Tipo R (Platina / Rdio-Platina): adequado para a medio de temperaturas
at 1600 C. Reduzida sensibilidade (10 V/C) e custo elevado.
Termoelemento positivo (RP): Pt87%Rh13% (Rdio-Platina)
Termoelemento negativo (RN): Pt100%
Faixa de utilizao: -50C a 1768C
f.e.m. produzida: -0,226 mV a 21,101 mV
Tipo S (Platina / Rdio-Platina): adequado para a medio de temperaturas at
1600C. Reduzida sensibilidade (10 V/C), elevada estabilidade e custo elevado.
Termoelemento positivo (SP): Pt 90% Rh 10% (Rdio-Platina)
Termoelemento negativo (SN): Pt 100%
Faixa de utilizao: -50C a 1768C
f.e.m. produzida: -0,236 mV a 18,693 mV
Tipo T (Cobre / Constantan): indicado para medies na gama dos -270C a 400C.
AUTOMAO INDUSTRIAL
134

Termoelemento positivo (TP): Cu 100%


Termoelemento negativo (TN): Cu 55% Ni 45% (Constantan)
Faixa de utilizao: -270C a 400C
f.e.m. produzida: -6,258 mV a 20,872 mV
Termopares so geralmente disponibilizados encapsulados em hastes metlicas
chamadas de sondas, que permitem a insero do sensor em ambientes hostis,
aumentando a robustez e facilitando instalaes fsicas. (Figura 159)

Figura 159 - Sonda com termopar


Fonte: Autor

Em relao a seu comportamento, alguns tipos apresentam uma curva muito


linear em certas faixas de temperatura, facilitando seu uso. Este um dos grandes
motivos de seu largo uso em processos de automao industrial. (Figura 160)

TERMOPARES: F.E.M. X Temperatura


Tipo B
70
Tipo N E
65
Tipo R 60
Tipo S 55
Tipo K 50
K
F. E. M. (mV)

45
Tipo E J
N
40
Tipo J
35
Tipo T
30
25
T
20
R
15 S
B
10
5
0
-5
-10
-200 0 200 400 600 800 1000 1200 1400 1600

Termperatura (C)
Figura 160 - Grfico das curvas de termopares, entre temperatura e tenso gerada em milivolts
Fonte: Autor
3 Sensores
135

3.14.2 Sensor infravemelho aplicado medio de temperatura

Uma das formas de transmisso trmica atravs da irradiao, onde o objeto


que libera calor tambm irradia luz infravermelha. Conhecendo as caractersticas
do objeto, possvel realizar a medio da temperatura com uma boa preciso
atravs da medio de radiao infravermelha emitida por ele. (Figura 161)

Cmeras sensveis luz infravermelha, ou cmeras


VOC termogrficas, permitem a deteco de pontos de gerao
SABIA? de calor, sendo uma moderna ferramenta de deteco de
anomalias, muito utilizada na manuteno preditiva.

Figura 161 - Imagem trmica de um motor eltrico em funcionamento


Fonte: Autor

Sensores infravermelhos so aplicados em medies de temperaturas elevadas,


onde no possvel inserir uma sonda ou no desejvel um contato fsico entre
o sensor e a fonte emissora de calor. (Figura 162)

A V
O

Figura 162 - Sensor infravermelho para a medio de temperaturas


Fonte: Autor

Alguns sensores infravermelhos apresentam curvas de sada similar a alguns


tipos de termopares, para facilitar sua implantao em sistemas padronizados.
Ao utiliz-los, importante conhecer as caractersticas de emissividade do
objeto a ser medido para melhorar a preciso da leitura.

3.14.3 Termodinmica aplicada leitura de temperatura

Termodinmica o ramo da Fsica que estuda causas e efeitos gerados


pela mudana na temperatura, presso e volume, compreendendo tambm o
comportamento dinmico (movimento) da energia trmica, que largamente
utilizada, tanto de forma desejvel quanto indesejvel.
AUTOMAO INDUSTRIAL
136

Em essncia, a Termodinmica estuda o movimento da energia e como a


energia cria movimento. Na automao industrial, controlar a temperatura exige
conhecimentos amplos na rea, por isso vamos abordar alguns pontos importantes
em relao ao comportamento de sistemas onde o calor um fator crtico.
Adquirir a informao de temperatura geralmente s parte do processo de
um controle por temperatura. Sistemas de troca trmica geralmente tm uma
resposta lenta, que varia muito conforme condies, composio e volume dos
elementos monitorados.
Em grandes volumes de gua, por exemplo, sistemas de aquecimento ou
refrigerao podem causar mudanas de temperatura somente em parte do
reservatrio, com uma demora considervel para que esta mudana se propague
para todo o volume que desejamos controlar.
O aquecimento causa variaes na densidade dos elementos. No caso de
fludos (lquidos ou gs), esta mudana gera a conveco, fazendo com que o
material mais denso ocupe um lugar mais abaixo no recipiente, dando lugar ao
material menos denso, que se desloca para a superfcie. Lquidos e gases no so
bons condutores de calor, mas a conveco permite que haja uma homogenizao
trmica adequada.
Portanto, em um sistema de aquecimento, importante que o aquecedor
fique na parte inferior do recipiente, facilitando a conveco e fazendo com que
haja um aquecimento de todo o fludo de forma mais homognea.
A posio de um sensor de temperatura neste sistema no menos importante.
Se a temperatura for medida muito prximo do atuador de aquecimento /
resfriamento, a informao lida pode no refletir a temperatura mdia do
recipiente, gerando um controle impreciso, e se o sensor for posicionado muito
distante do atuador, poder demorar muito tempo para que o sistema de controle
perceba as variaes de temperatura, causando oscilaes muito elevadas.
Em situaes de grandes volumes, estratgias como misturadores ou vrios
sensores interligados podem auxiliar na medio, permitindo leituras mais precisas.
Controladores especiais ainda podem auxiliar neste controle, pois integram
solues matemticas adaptativas, que interpretam as variveis do ambiente
(tempo de resposta do sistema, erro etc) para gerar um controle mais preciso.

3.15 Sensores de posicionamento

Em muitos dispositivos automatizados, no basta ao sistema de controle


acionar um atuador. importante saber se o efeito gerado pelo atuador
realmente ocorreu.
3 Sensores
137

Como exemplo, vamos estudar um brao robtico. (Figura 163 e Figura 164)
led disco perfurado
infravermelho

encoder ptico eixo


fotodiodo

brao robtico aplicando a solda


Figura 163 - Brao robtico Figura 164 - Encoders pticos
Fonte: Autor usados em suas articulaes e
seu princpio de funcionamento
Fonte: Autor

Motores e redues so responsveis pelo movimento das articulaes nos


robs eltricos, muito utilizados na indstria devido a sua preciso e repetibilidade.
Mas, como o sistema de controle deste rob pode realizar movimentos to
precisos, mesmo havendo diferentes condies de uso? Suas articulaes contam
com sensores que conseguem captar o movimento realizado, quantificando-o de
forma razoavelmente precisa.
Encoders so dispositivos que transformam movimentos em sinais eltricos
que so enviados ao sistema de controle. Estes sinais so utilizados para compor
informaes de velocidade e posio e para aes corretivas, permitindo ao
equipamento uma resposta correta e constante.

Alguns encoders podem gerar at 360000 pulsos por


VOC revoluo; ou seja um pulso gerado a cada milsimo de
SABIA? grau de movimento angular do eixo do encoder.

3.15.1 Sensores de posio linear

Tambm conhecidos como transdutores de posio linear, so sensores


cada vez mais utilizados na automao devido a sua versatilidade, podendo
serem empregados em sistemas de controle de posicionamento at em
sensores de nvel.
Dentre os sensores de posio linear, podemos destacar a rgua potenciomtrica
e a rgua ptica.
Na rgua potenciomtrica, com o nome j sugere, temos um potencimetro,
ou seja, uma resistncia varivel em funo da posio, comportando-se como um
sensor analgico; j na rgua ptica o sistema de medio da posio realizado
atravs de pulsos gerados pela passagem de um pequeno sensor ptico por uma
fita graduada translcida, como em um encoder ptico.
AUTOMAO INDUSTRIAL
138

LVDT : Linear Variable Differential Transformer - Transformador Diferencial Linear


Varivel. Constitui um sistema que utiliza transformadores acoplados atravs de um
ncleo metlico mvel, variando sua sada de tenso em funo da posio deste
ncleo. Seu uso geralmente dado como sensor de posio linear resultando como
sada um sinal analgico definido pela variao de tenso eltrica.
A tecnologia de magneto-restrio aplicada a sensores de posicionamento
lineares permite a construo de sensores de alta resoluo, robustos e sem
contato fsico no elemento sensor. (Figura 165)

Figura 165 - Sensor de posio linear


Fonte: Autor

3.15.2 Encoders absolutos

Tambm conhecidos como transdutores de posio angular, Encoders so


dispositivos sensores com capacidade de gerar pulsos eltricos proporcionais ao
movimento angular detectado.
Geralmente conectados a eixos de motores ou redutores, os encoders
permitem a leitura, por parte do sistema de controle, da posio angular do eixo.
Encoders que permitem uma leitura instantnea da posio do eixo,
tendo como resposta um sinal proporcional a posio, so chamados de
encoders absolutos.
Um potencimetro convencional um exemplo clssico de um encoder
analgico potenciomtrico, pois traduz o movimento angular em uma
variao de resistncia, que pode tambm ser convertido para variao de
tenso. (Figura 166)

5V
Tenso (V)
GND
5V
Sinal

ngulo 270o

Figura 166 - Encoders analgico potenciomtrico


Fonte: Autor
3 Sensores
139

Embora o potencimetro seja utilizado como um sensor de posio em


painis de interface com usurios, ele pode ser aplicado a sistemas mecnicos,
como braos robticos de pouca preciso, boias potenciomtricas e pndulos,
dentre outros sensores.
Para aplicaes que exigem maior preciso, encoders absolutos pticos ou
magnticos permitem uma leitura mais precisa, traduzindo a posio em uma
sequncia binria. Para facilitar o entendimento, segue a imagem de um encoder
ptico absoluto de uma volta com resoluo de 3 bits: (Figura 167)

1
0
1

Disco com reas


reflexivas e
reas foscas

Figura 167 - Encoders absolutos ptico


Fonte: Autor

importante ressaltar que, por se tratar de um encoder absoluto, no


importa o momento da leitura; sempre ser retornada a informao relativa
posio do sistema.
Existem encoders absolutos construdos para monitoramento de uma nica
volta (360), conhecidos como monovolta; j os encoders multivoltas podem
suportar mais de uma revoluo sobre seu eixo e conseguem medir a quantidade
de revolues, alm da posio angular.

3.15.3 Encoders incrementais ou relativos

Similares aos encoders absolutos, os encoders incrementais tambm geram


informaes eltricas baseadas em um movimento.
Enquanto em um encoder absoluto possvel obter a informao referente
posio angular de seu eixo, no encoder incremental s possvel obter a
informao de que um movimento foi realizado, sem informao da posio
exata do eixo. (Figura 168)
AUTOMAO INDUSTRIAL
140

101010101

Disco com reas


reflexivas e
reas foscas

Figura 168 - Encoders incrementais ou relativos ptico


Fonte: Autor

Em um encoder incremental, o movimento transformado em pulsos. A


velocidade dos pulsos indica a velocidade do eixo do encoder, e a quantidade de
pulsos gerada indica o movimento relativo ao momento inicial do controle.

disco conectado ao eixo


Sensor A

receptores
Sensor B
mascara fixa
emissores

Figura 169 - Encoders incrementais


Fonte: Autor

Na Figura 169, vemos um encoder incremental com dois receptores. A


colocao dos receptores na distncia correta permite perceber pulsos levemente
defasados em relao a eles. Se o disco girar em sentido horrio, um dos sensores
(digamos, o sensor A) ir gerar pulsos antes que o outro. J quando em sentido
anti-horrio, o sensor B que ir gerar pulsos antes do sensor A. Esta informao
pode ser usada pelo sistema de controle para aumentar ou diminuir a contagem
que revela o posicionamento do sistema.

Em sistemas que possuem encoders incrementais, a


FIQUE cada inicializao do sistema ocorre uma etapa de
ALERTA referenciamento, onde os eixos monitorados pelo encoder
so deslocados at um limite pr-determinado (ponto zero).
3 Sensores
141

CASOS E RELATOS

Antnio trabalha em uma empresa de mdio porte no Oeste do Estado


do Paran, e orgulha-se de manter um sistema de manuteno preventiva
bastante completo, evitando paradas no-programadas em equipamentos da
produo. H algum tempo, esta empresa importou um rob industrial que foi
fabricado em um grande pas asitico. Antnio recebeu um treinamento e vasto
material impresso e em meio digital, compreendendo manuais de manuteno
do equipamento, tanto na lngua de origem quanto em ingls. Devido a um
erro de traduo e a uma falha no treinamento, Antnio no foi corretamente
orientado quanto ao processo de troca das baterias dos encoders do rob,
que deveria ser realizado anualmente. Aps 2 anos, quando o rob foi ligado
no incio do turno de trabalho, Rivaldo (experiente metalrgico e responsvel
pela operao do rob) se deparou com um erro de mal funcionamento. Em
consulta ao manual do equipamento, observaram que o erro era referente
perda de carga nas baterias. Aps a compra e troca da baterias, Antnio e
Rivaldo realizaram o procedimento de referenciamento do rob. Apesar se ser
um processo lento e complexo, foi concludo com sucesso. No entanto, ao iniciar
o uso do equipamento, observaram a ocorrncia de pequenas mudanas de
posicionamento, mudando a posio da garra do rob em alguns milmetros.
Compreendendo se tratar de um erro dado pela leve mudana no novo
referenciamento (feito de forma visual), reajustaram os pontos dos programas.
A partir de ento, Antnio incluiu a troca peridica das baterias no programa de
manuteno preventiva.

Em alguns casos, estes encoders multivoltas so encoders relativos que


foram referenciados e mantm a informao relativa posio dos eixos
graas a um sistema alimentado por baterias. Isso bastante comum em
robs industriais e mquinas CNC, onde os eixos so monitorados por
encoders relativos com comportamento de encoders absolutos. Nestes
equipamentos, a manuteno preventiva fundamental, pois, em caso
de finalizar a carga das baterias, a informao dos encoders perdida e
eles devem ser referenciados, obrigando a um procedimento demorado
e que pode trazer pequenas variaes em relao aos posicionamentos
anteriormente gravados.
AUTOMAO INDUSTRIAL
142

3.16 Transdutores / Conversores

Na automao industrial, transdutores so dispositivos que transformam


uma forma de energia em outra, geralmente com o objetivo de gerar um sinal
eltrico proporcional que possa ser utilizado em um sistema de controle, ou de
transformar este sinal de controle em outra forma de energia.
Como sensores, os transdutores podem converter grandezas fsicas em
sinais eltricos. So exemplos os microfones, termistores, acelermetros,
potencimetros, resistores dependentes de luminosidade etc.
Como atuadores, os transdutores convertem sinais eltricos em outros tipos
de energia. Exemplo: motores, alto-falantes, pastilhas trmicas etc. (Figura 170)
Perdas

Forma de energia Forma de energia


de entrada de sada

Transdutor
Figura 170 - Diagrama de funcionamento de um transdutor
Fonte: Autor

Segundo este conceito, muitos dos sensores antes estudados caracterizam-se


como transdutores; outros utilizam transdutores em seu princpio de funcionamento.

Podemos dividir os transdutores em PASSIVOS e ATIVOS.

Transdutores passivos no so capazes de funcionar sem a necessidade de uma


fonte de energia externa. So transdutores de princpios resistivos, capacitivos ou
indutivos. Exemplo: termistores, resistores dependentes de luz, potencimetros,
sensores indutivos, chaves sensveis ao toque etc. J em transdutores ativos no
h necessidade de uma alimentao externa para extrair o sinal desejado, sendo
que a energia proveniente do prpria transformao da energia medida.
Este tipo de sensor geralmente reversvel, e pode ser usado como atuador
com o processo inverso.
Exemplos: gerador / motor, alto-falante / microfone, termopar / pastilha trmica.
A escolha do transdutor pode variar conforme a grandeza fsica a ser medida ou
gerada, a sensibilidade, a potncia desejada e a eficincia, dentre outros fatores.
Nos ateremos aos transdutores que so utilizados como sensores na adequao
dos sinais de entrada em sinais eltricos, digitais ou analgicos.
Segue uma lista dos principais transdutores conhecidos.
3 Sensores
143

3.16.1 Transdutores passivos

potencimetros: transdutor resistivo j estudado, so resistncias variveis.


A resistncia varia conforme a posio; portanto, o princpio de converso
posio -> resistncia.
extensmetros: tambm de princpio resistivo, strain gages so componentes
sensveis deformao, com a resistncia variando proporcionalmente
tenso mecnica (trao) sofrida pelo componente.
termistores:
tambm j estudados, so resistncias que variam de forma
diretamente proporcional ou inversamente proporcional temperatura.
fotoresistores:
resistores sensveis a luz, tambm conhecidos como LDRs,
muito utilizados em detectores de luminosidade, como fotmetros, sensores
crepusculares automotivos e clulas fotoeltricas.
capacitivos:
usam o princpio da alterao do material dieltrico ou da
distncia das placas condutoras variando conforme a grandeza medida.
Como exemplo, citamos sondas de nvel, transdutores de presso e
microfones condensadores.
indutivos: a indutncia de uma bobina pode variar proporcionalmente
posio de um ncleo ferromagntico em seu interior. Este
princpio permite a construo de dispositivos LVDT (Linear Variable
Differential Transformer), que so sensores de posicionamento linear
livres de contato.

3.16.2 Transdutores ativos

termopares: princpio de gerao de uma tenso eltrica em funo da


temperatura: efeito Seebeck. Em processo inverso, pastilhas trmicas
permitem a gerao de calor ou a absoro de calor a partir de uma corrente
eltrica (efeito Peltier).
transdutorespiezoeltricos: dispositivos que geram energia eltrica ao
serem deformados/deflexo, geralmente sendo aplicados a medio de
impacto ou presso. Um microfone piezoeltrico segue este princpio. Em
processo inverso, um transdutor piezoeltrico tambm sofre deformao ao
ser submetido corrente eltrica. Como exemplo, pequenos geradores de
som em relgios e calculadoras, que usam uma cpsula piezoeltrica.
fotodiodo: em um diodo sensvel luz quando inversamente polarizado, a
corrente aumenta proporcionalmente luz incidente.
AUTOMAO INDUSTRIAL
144

3.16.3 Transdutores industriais

Na maioria dos casos de automao na indstria, os transdutores so fornecidos


j montados em um equipamento para facilitar seu uso, integrado a circutos de
condicionamento de sinal. So comuns alicates-ampermetro para a medio de
corrente, que so compostos basicamente de sensores de corrente, ou sensores
de presso compostos de transdutores piezoeltricos que medem a presso de
um fludo atravs da deformao gerada. (Figura 171)

Figura 171 - Transdutor de corrente, usado para medir a corrente atravs do campo eltrico gerado pelo condutor
Fonte: Autor

Corrente

Condutor
Figura 172 - Esquema de um transdutor industrial de corrente
Fonte: Autor

A Figura 172 o esquema de um transdutor de corrente, que pode ser


construdo com uma argola de ferrite, um condutor isolado e um resistor de valor
elevado (aprox. 100k). Nas extremidades do resistor, devidamente conectada
a bobina de fio, obtemos uma variao de tenso proporcional corrente, que
pode ser amplificada e utilizada em um sistema de controle. (Figura 173, Figura
174 e Figura 175)

Figura 173 - Transdutores de posio tipo LVDT


Fonte: Autor

Figura 174 - Transdutores de presso


Fonte: Autor
3 Sensores
145

Figura 175 - Transdutor de fora clula de carga


Fonte: Autor

3.16.4 Conversores de sinal

Alguns sistemas esto preparados para um determinado nvel de sinal, porm


os sensores geram um sinal diferente. o caso dos termopares, que geram tenso
em milivolts e, para serem conectados a CLPs, precisam ser adequados para
variaes de corrente de 4 a 20mA, ou de tenso de 0 a 10V.
Conversores podem ser usados para converter sinais analgicos ou de dados
entre os diferentes padres industriais. (Figura 176)

1 2 3
4 5 6

1
2 6
3 4 5

Figura 176 - Conversor de 4 a 20mA para sinal de radiofrequncia


Fonte: Autor

Alguns dispositivos conversores permitem tambm converter sinais eltricos


em sinais de rdio, e vice-versa, permitindo instalaes remotas sem fio.

FIQUE Sistemas de comunicao wireless podem interferir e sofrer


ALERTA interferncias de outras fontes de rudo eletromagntico.
AUTOMAO INDUSTRIAL
146

Recapitulando

Neste captulo estudamos os sensores, que so dispositivos utilizados para


adquirir informaes, enviando-as ao sistema de controle. Os sensores tambm
podem enviar sinais digitais que apresentam um nmero limitado de estados
possveis, e geralmente so representados por dois estados: ligado (1) ou
desligado (0). Existem tambm os sensores analgicos, que enviam sinais que
apresentam infinitas possibilidades dentro de uma faixa determinada, e so
representados pela variao de uma grandeza, como tenso ou corrente.
Estudamos que os sensores podem ser divididos quanto ao sinal gerado e
tambm por suas sadas, podendo ser de princpio analgico ou digital. Alguns
sensores digitais tm comportamento similar ao das chaves que abrem e fecham
conforme deteco. Outros sensores analgicos geram variao de corrente ou
tenso conforme a grandeza medida. Estas caractersticas so importantes ao
escolhermos ou utilizarmos um sensor, determinando sua forma de integrao
ao sistema de controle. Quanto ao princpio fsico, os sensores tambm podem
diferenciar-se uns dos outros, sendo alguns mais adequados em certas situaes.
Em ambientes com muita poeira, por exemplos os sensores pticos podem
sofrer devido difuso da luz causada pelas partculas em suspenso no ar.
Em situaes onde pode ocorrer desgaste mecnico, sensores eletromecnicos
de contato podem no ter uma durabilidade muito aceitvel.
Estudamos tambm que alguns sensores com um mesmo princpio
fsico podem diferenciar-se consideravelmente em suas caractersticas. Um
termopar, por exemplo, com a alterao da composio de seus elementos,
pode ser mais indicado para a medio de altas temperaturas do que outro.
importante ressaltar que o contedo estudado somente uma pequena
parte desta vasta rea, e atualizar constantemente os estudos de tipos de
sensores e suas caractersticas pr-requisito para uma atuao de sucesso
na rea de Automao Industrial.
3 Sensores
147

Anotaes:
Sistemas Digitais

costume dividir a Eletrnica em duas reas: Eletrnica Analgica e Eletrnica Digital.


Ao ouvir o termo digital, pensamos imediatamente em relgios, calculadoras e
computadores. Esta associao deve-se provavelmente popularidade adquirida por estes
equipamentos devido sua utilizao por parte da grande maioria das pessoas. No entanto,
importante saber que as calculadoras e os computadores representam apenas uma parcela da
imensa gama de aplicaes dos circuitos digitais.
Uma maneira bem simples de entender o conceito dos termos analgico e digital fazer a
comparao de uma rampa com uma escada. (Figura 177)

Degraus Rampa
(digital) (analgico)
Figura 177 - Comparao analgica e digital
Fonte: Autor

Ao analisar a rampa, observamos que uma pessoa pode ocupar cada uma das infinitas
posies existentes entre o incio e o fim dela. No caso da escada, a pessoa pode se encontrar
em apenas um de seus degraus, em uma posio definida. Assim, correto dizer que a rampa
representa um sistema analgico, enquanto a escada representa um sistema digital.
Esse conceito pode ser ainda explicado atravs das representaes numricas.
Constantemente trabalhamos com grandezas e quantidades, as quais so medidas,
monitoradas, gravadas, manipuladas aritmeticamente e utilizadas na maioria dos sistemas
fsicos. Ao utilizarmos certas quantidades, de suma importncia o conhecimento de como
realizar a representao de seus valores de maneira precisa e eficiente. Existem duas formas de
representao dos valores numricos das quantidades: a analgica e a digital.
AUTOMAO INDUSTRIAL
150

Representao analgica:

De maneira analgica, uma grandeza representada por outra proporcional


primeira. Para tanto, utilizamos quantidades que variam continuamente dentro
de uma faixa de valores.
Um exemplo de sistema que utiliza a representao analgica o
manmetro de ponteiro. (Figura 178)
6
4

100 8
50
2

150 10
psi
bar
11

Figura 178 - Manmetro analgico (ponteiro)


Fonte: Autor

Neste tipo de manmetro, a deflexo, movimentao angular do ponteiro,


proporcional presso conectada ao equipamento. Assim, a posio angular do
ponteiro passa a representar a presso. A posio do ponteiro e a presso representada
tm em comum o fato de variarem em uma faixa contnua de valores. Por exemplo, a
presso pode variar continuamente de 0 a 11 bar, e a posio do ponteiro pode ocupar
qualquer valor angular entre 0 e 270, proporcional a esta presso.
Existem infinitas variaes de presso entre 0 e 11 bar, e existem infinitas
posies entre 0 e 270 do ponteiro de representao, o que faz com que o
sistema tenha comportamento analgico.
O que caracteriza a informao representada de forma analgica o fato de
haver infinitas posies para o ponteiro entre o valor mnimo e mximo, sendo
que ele se desloca por todos os possveis valores dentro de um limite.

Representao digital:

Na representao digital (tambm chamada de discreta), as grandezas e


quantidades so representadas no por valores proporcionais, mas por smbolos
chamados dgitos.
Observando a Figura 179:

Figura 179 - Manmetro digital


Fonte: Autor
4 Sistemas digitais
151

Sabemos que a presso de um sistema no passa de um valor para outro


instantaneamente, havendo um tempo necessrio para isso (mesmo que pequeno)
para que a variao ocorra. Se a presso de um sistema dada em um momento est
em 2 bar e sobe para 3 bar, isso no ocorre repentinamente, pois, mesmo que dure
alguns milisegundos, a presso ir subir gradualmente at atingir o novo valor.
Porm, em um sistema digital, a presso medida em estgios, sendo admitido
que uma grandeza mensurvel varie de estado sem haver representao dos
valores intermedirios durante esta variao. Por exemplo, no manmetro digital
acima apresentado podemos ter indicao da presso de 2,05 bar, e de 2,06 bar,
porm no podemos ter a indicao de uma presso entre estes dois valores, pois o
sistema est limitado a representaes de dois dgitos aps a vrgula.
Ento, por que usar sistemas digitais?
Uma grande vantagem da representao digital que, devido sua natureza
discreta, as leituras no apresentam problemas de ambiguidade, em contraposio ao
sistema analgico, em que as leituras deixam margem interpretao do observador.
Outra vantagem o fato de pequenas alteraes no representarem, em
muitos casos, variaes no valor lido, permitindo uma maior estabilidade na
informao coletada.
Voc sabia que um dos mais antigos sistemas digitais existentes o cdigo
gentico dos seres vivos? O DNA uma cadeia limitada de combinaes de alguns
aminocidos e define as caractersticas repassadas a seus decendentes.
Ento, o que eletrnica digital?
a cincia eletrnica que trabalha com estes estados definidos de tenso,
onde sinais digitais (geralmente binrios) so aplicados em circuitos eltricos.
Sistemas digitais utilizam um conjunto finito de estados. No sistema decimal,
utilizamos dez dgitos (de 0 a 9) para representar nmeros. Combinar estes dgitos
permite a representao de informaes mais complexas. (Figura 180)

4 5 6
3 7 dgitos
8
2 9
1
0 01

Sistema decimal Sistema binrio


10 digitos (0 a 9) 2 digitos (0 ou 1)

Figura 180 - Sistemas numricos


Fonte: Autor
AUTOMAO INDUSTRIAL
152

Porm, o sistema decimal ainda apresenta um desafio para a Eletrnica.


Representar informaes em dez estgios diferentes exige uma preciso grande
de sistemas eletrnicos e no permite que um sistema simples (como um contato,
por exemplo) represente uma informao.
Se um sinal de 0 a 5V fosse utilizado para representar nmeros de 0 a 9, teramos
5V / 10 dgitos = 0,5V por dgito. Neste caso, 0V poderia ser a representao do valor
zero, 0,5V seria a representao do valor um, 1V seria a tenso representante do
valor 2, e assim por diante. Porm, ainda nesta forma de representao hipottica,
com uma pequena variao de 5% sobre a tenso mxima de 5V, que equivale
a 0,25V, a tenso de 0,5V poderia subir para 0,75V, ou a tenso de 1V poderia
cair para 0,75V. Neste caso, com esta variao de 5% para cima ou para baixo,
teramos uma indefinio no valor representado, pois no seria possvel saber se
0,75V significam 1 ou 2. Infelizmente, variaes at maiores que 5% ocorrem em
circuitos eltricos pelos mais diversos fatores.
J o sistema binrio composto por dois dgitos (0 ou 1) e permite que as
informaes sejam assim representadas. Neste caso, podemos assumir que 0V 0,
e 5V 1. Porm, com uma variao de at 10%, 0,5V continua a ser nvel baixo e,
portanto, 0, e 4,5V continua a ser nvel alto e, portanto, 1. A informao foi mantida.
Embora um dgito binrio permita representar somente duas informaes
distintas, a combinao de diversos dgitos binrios (bits) pode representar
informaes mais complexas.
Este sistema ainda permite que a representao da informao seja facilitada
em componentes eletrnicos simples. Uma chave pode estar com contato aberto
ou fechado (0 ou 1). Um LED pode estar ou no emitindo luz (1 ou 0). Um transistor
pode estar em estado de conduo ou em estado de corte (1 ou 0). Um rel pode
estar comutado ou no (1 ou 0). Um par condutor pode ter tenso de 12V ou
-12V entre si (1 ou 0). Um pulso de luz pode ser curto ou longo (0 ou 1). Em outras
palavras, representar informaes digitalmente mais simples e eficiente.
No padro TTL (transistor transistor logic), muito utilizado em sistemas
digitais, utilizamos dois nveis de tenso distintos para representar da informao:
nvel baixo (0V) e nvel alto (5V).
Neste sistema, se um condutor destinado ao transporte da informao estiver
apresentando uma tenso diferente de 0V, porm muito prxima a este (por
exemplo, 0,75V), mesmo assim o sinal continua a ser nvel baixo de tenso, sem
haver mudana na informao.
O mesmo ocorre em nvel alto. Digamos que um sistema deva gerar um sinal
de nvel alto de 5V, porm, devido resistividade de alguns conectores, perda e
rudo dos condutores, a tenso caia para 4V. Mesmo com esta queda de 20%, a
informao permanece a mesma: nvel alto.
4 Sistemas digitais
153

Portanto, na eletrnica digital os sistemas tm o objetivo de manipular esta


informao digital. Nos sistemas binrios, temos a representao binria de um
sistema digital utilizando nveis de tenso alto e baixo.

Estamos acostumados a lidar com sistemas decimais


(utilizamos dgitos de zero a nove para contar, calcular,
FIQUE registrar), e dimensionar sistemas para representaes
ALERTA em dois dgitos requer estudos de tcnicas, pois algumas
regras aplicadas ao sistema decimal no podem ser
aplicadas ao sistema binrio.

Felizmente, no sculo XIX (dcada de 1830), o matemtico e filsofo britnico


George Boole realizou estudos e publicaes que deram origem lgebra
booleana, onde estruturas algbricas permitem realizar operaes lgicas
aplicadas valores lgicos VERDADEIRO e FALSO (1 e 0), bem como das operaes
de soma, produto e complemento destes valores lgicos. Embora Goerge Boole
tenha vivido muito antes do surgimento dos computadores, podemos afirmar
que seus estudos permitiram o surgimento e os avanos na rea.

VOC A lgebra de Boole (lgebra booleana) o fundamento da


SABIA? Matemtica Computacional, baseada em nmeros binrios.

Na eletrnica digital, estudamos como realizar as operaes digitais aplicando


componentes (semicondutores) especiais, bem como ligaes em srie e paralelo, para
obter operaes lgicas, utilizando principalmente, sistemas de representao binrios.

4.1 Vantagens das tcnicas digitais

Dentre os diversos fatores que nos levam a utilizar sistemas eletrnicos digitais
podemos citar os que seguem:
Maior robustez, preciso e exatido: sistemas digitais toleram variaes em
componentes eletrnicos sem alterar a informao representada, o que no
ocorre em sistemas analgicos.
Facilidade de projeto: circuitos digitais so basicamente circuitos de
chaveamento (ligar / desligar), fceis de serem implementados e bastante
robustos, pois no importa se os valores de tenso ou corrente no estiverem em
nveis exatos, havendo uma ampla faixa de tolerncia para os nveis Alto (High)
ou Baixo (Low) na qual eles se encontram.
Fcil armazenamento de informao: possvel armazenar informaes
digitais usando princpios fsicos (cartes perfurados), princpios magnticos
(HD, disquete), princpios eletrnicos (matriz de semicondutores de um carto de
memria) e princpios pticos (DVD, BlueRay, cdigo de barras), dentre outros.
AUTOMAO INDUSTRIAL
154

Operaes programveis: operaes lgicas e aritmticas so aplicveis s


informaes digitais de forma mais fcil do que em sistemas analgicos.
Adequao integrao: embora o desenvolvimento de circuitos integrados
tenha beneficiado os circuitos analgicos, os benefcios foram maiores para sistemas
digitais, pois em sistemas analgicos h um limite para integraes (devido ao
tamanho e s caractersticas fsicas de certos componentes), enquanto em sistemas
digitais alternativas permitem evolues com dimenses nanoscpicas.

4.1.1 Limitaes das tcnicas digitais

Sistemas digitais: so mais robustos, estveis e viveis, porm h uma


desvantagem, o mundo quase totalmente constitudo de informaes analgicas,
como por exemplo temperatura, presso, tenso, corrente, vazo, nvel. Para obter
vantagens de tcnicas aplicadas a sistemas digitais com grandezas deste mundo
de informaes analgicas, devemos seguir trs passos:
1- Converter sinais analgicos capturados do mundo real para formato digital.
2- Realizar o processamento da informao digitalizada.
3- Converter sadas digitais de volta para o formato analgico.
Como exemplo, vamos usar o princpio de funcionamento de um sistema de
telefonia digital.

Sinal analgico A voz humana um som, e como todo


(frequncia e amplitude som caracterizado por vibraes
da voz humana)
propagadas no meio (ar). Quando
7
4
1
5
2
6
3
capturada pelo microfone do telefone,
8
*

estas oscilaes analgicas geram


0 9
#

variaes de frequncia e amplitude em


sinais eltricos, porm continuando com
comportamento de sinal analgico.

O som representvel em uma


onda analgica, que digitalizada,
Sinal analgico
transformando-se em uma
(frequncia e amplitude sequncia de bits (dgitos binrios).
da voz humana)
Na digitalizao, a informao
Na digitalizao, cada analgica analisada em vrias
12345678910111213141516

amostra em um dado
parodo de tempo amostras por segundo (geralmente
convertida em uma
grandeza numrica,
prximo a algumas milhares de
representada usando
11,15,16,15,12,4,1,4,12,14,11,5,6,... o sistema binrios (0 e 1)
amostra por segundo). Cada amostra
quantificada, virando um valor
numrico inteiro.
4 Sistemas digitais
155

Estes valores so ento codificados


para representao binria e 0 e 1 so

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
transmitidos
transmitidos em uma rede de atravs de ondas
dados por ondas de rdio, usando de rdio, por
frequncias
sistemas que diferenciam a altura 11,15,16,15,12,4,1,4,12,14,11,5,6,... diferentes.
ou a frequncia das ondas enviadas, 15(1111), 12(1100), 4(0100), 1(0001), ...

chegando at o equipamento de
destino. Embora a informao seja
digital, caracterizada por bits (zeros ou 1
4
2
5
3
6
7 8 9

uns), uma onda de rdio o meio fsico


* 0 #

analgico por onde ela transferida.

No equipamento de destino, as ondas


de rdio so lidas e interpretadas
como bits zeros e uns. Circuitos
decodificadores ento recalculam e
reconstroem a onda capturada na Sinal chega vai ondas de
origem, e a informao novamente rdio, e interpretado
como sinal digital.
revertida para o sistema analgico
3
2
1 6
5
4 9
8
7 #
0
*

produz oscilaes que movimentam Equipamento converte o sinal


digital em ondas analgicas (som).
o alto-falante do equipamento
receptor. Embora a informao gerada
pelo conversor digital / analgico
(A/D) no seja exatamente igual da
origem, o transporte dos dados foi
facilitado, evitando ou dificultando
alteraes nas informaes durante o
processo de transmisso.
Acima podemos observar a converso sendo aplicada de duas formas: converso
entre representaes analgicas e digitais (analgica para digital: A/D, ou digital
para analgica: D/A) e converso de sistema numrico (decimal para binrio).
Um dado digital armazenado ou transferido pode ser verificado, e at corrigido,
permitindo que a informao digital seja enviada, copiada e armazenada sem
perdas, ou que estas perdas, ao menos, sejam identificadas.
Porm, ao transformarmos sinais analgicos em sinais digitais, ou sinais digitais
em analgicos, ocorrem perdas e alteraes nas informaes. Converses de maior
resoluo podem deixar estas perdas imperceptveis, porm elas continuaro a existir.

Um CD, DVD ou BlueRay so discos pticos onde o som,


VOC as imagens e os dados so convertidos em bits (0 e 1),
SABIA? armazenados e lidos por meio de um feixe de luz (laser)
que percorre trilhas reflexivas, percebendo pontos e traos.
AUTOMAO INDUSTRIAL
156

Para realizar a converso entre sistemas de codificao diferentes (decimal,


hexadecimal, binrio...) so utilizados conversores de cdigo, tambm conhecidos
como codificadores e decodificadores, que sero estudados mais tarde.

4.2 Circuitos combinacionais e sequenciais

Vamos dividir os circuitos digitais em duas categorias: circuitos combinacionais


e circuitos sequenciais.
Circuitos combinacionais so circuitos cujas sadas so determinadas
unicamente pelas condies das entradas. Nesta categoria encontraremos circuitos
multiplexadores, demultiplexadores, somadores e subtratores, dentre outros.
Circuitos sequenciais, por sua vez, so circuitos nos quais h realimentao,
com sinais da sada sendo enviados a entradas do circuito, havendo uma
sequncia de eventos disparados como uma reao em cadeia. Em suma, no
somente as entradas definem a sada, mas tambm o tempo e a ordem como elas
so modificadas determinam o funcionamento do circuito.
So exemplos deste tipo de circuito digital os latches, flip-flops, contadores,
processadores, microcontroladores etc.

4.3 Circuitos lgicos

Circuitos digitais geralmente operam com lgica binria, representados por


dgitos do sistema binrio (0 e 1). Estes so representados eletricamente por
nvel baixo e nvel alto de tenso, com tenses de 0V para nvel baixo, e no
ultrapassando 5V para nvel alto.
A lgebra booleana principal ferramenta de anlise e projeto de sistemas
digitais, onde utilizamos valores lgicos, conhecidos como VERDADEIRO (TRUE, em
ingls) e FALSO (FALSE, em ingls), ambos representando respectivamente 1 e 0.

4.3.1 Noes de lgebra booleana

1+1=1
H algo estranho na expresso acima?
Se tomarmos o sinal de + como soma aritmtica, 1 + 1 = 2. Porm, o sinal de +
nesta expresso est sendo utilizado com outro objetivo: ele representa a lgica
OU. Neste caso, 1+1=1.
4 Sistemas digitais
157

isso que ocorre em expresses lgicas: 1 representa VERDADEIRO e 0


representa FALSO.
Sinais so utilizados para representar operadores lgicos, sendo os mais
comuns os operadores E, OU e NO. Na expresso acima, o sinal de + aplicado
ao operador OU, e o resultado exatamente este:
VERDADEIRO ou VERDADEIRO = VERDADEIRO
Na sequncia, estudaremos a relao entre estes operadores e os possveis
valores de seus operandos, estudando as propriedades lgicas das principais
operaes lgicas. O objetivo de estud-las que, conhecendo a equivalncia entre
as operaes lgicas, poderemos criar e simplificar circuitos digitais, conseguindo
atingir o objetivo desejado com um nmero menor de componentes.

4.3.2 Tabela verdade

Tabela verdade uma tabela que relaciona todas as combinaes possveis de


valores aplicados a variveis de entrada de uma expresso aritmtica, analisando
o valor resultante da expresso. Para facilitar, vamos imaginar que h um
circuito lgico passando por um operador incgnito (desconhecido) que vamos
representar por um ponto de interrogao: (?) (Figura 181)

A
? x
B
Figura 181 - Exemplo tabela verdade
Fonte: Autor

Observe o circuito, onde A e B so entradas de valores lgicos. Portanto, A


e B podem valer verdadeiro (1) ou falso (0). No sabemos o valor de A e B, mas
podemos criar uma tabela com todas as combinaes possveis. Dado que cada
um dos operandos (A e B) podem assumir dois valores lgicos (0 ou 1), temos um
total de 4 combinaes (2 x 2).
Montando a Tabela 5:
Tabela 5: Circuito A e B
A?B
A B
X
0 0
0 1
1 0
1 1
Fonte: Autor
AUTOMAO INDUSTRIAL
158

Para termos a tabela verdade do operador (?), precisamos tambm conhecer


o resultado criado para cada possvel combinao de suas entradas. Vamos
imaginar que, aps testes de todas as possibilidades deste operador, temos a
seguinte tabela verdade: (Tabela 6)
Tabela 6: Circuito A e B
A?B
A B
X
0 0 0
0 1 1
1 0 1
1 1 0
Fonte: Autor

Chamamos esta tabela de tabela verdade, e cada operador ou expresso tem


sua prpria tabela verdade.
Agora temos valores lgicos da sada (X) que so determinados em funo das
entradas do operador, dadas por A e B. Observe que, para que X (resultado da
operao A ? B) seja 1, A e B devem ser diferentes um do outro.
O operador (?), neste caso, tem o comportamento do operador OU EXCLUSIVO
(XOR) que vamos estudar mais adiante.
A seguir estudaremos operadores lgicos aplicveis Eletrnica
Digital e suas respectivas tabelas verdade. Os operadores assumem, na
Eletrnica Digital, o nome de PORTAS LGICAS, pois assumem fisicamente
o comportamento de circuitos (ou parte de circuitos) onde uma ou mais
informaes digitais so coletadas na entrada, gerando uma informao
digital na sada.

4.3.3 Portas lgicas

Na Eletrnica Digital, portas lgicas so circuitos com um ou mais terminais


para entrada de dados e uma sada, sendo esta sada definida pela combinao
das entradas. So, portanto, circuitos combinacionais.
Cada porta lgica possui uma representao (smbolo) especfica, uma
expresso e uma tabela verdade. Esses elementos so utilizados e combinados
para implementar circuitos dedicados para aplicaes especficas.
Segue na Tabela 7, as principais portas lgicas, seu smbolo para diagramas, a
expresso booleana, a tabela verdade e exemplo dos modelos de componentes
comercialmente encontrados.
4 Sistemas digitais
159

Tabela 7: Principais portas lgicas


Portas Lgicas
Operao Smbolo Expresso Tabela Exemplos Comerciais
Verdade
OR (ou) X=A+B A B X 74HC32 (quad 2-input OR gates)
0 0 0 74HC4075 (triple 3-input OR gates)
A
X 0 1 1 CD4075 (triple 3-input OR gates)
B CD4072 (dual 4-input OR gates)
1 0 1
1 1 1
AND (e) X=A.B A B X 74HC08 (quad 2-input OR gates)
0 0 0 74HC11 (triple 3-input OR gates)
A
X 0 1 0 CD4082 (dual 4-input OR gates)
B 74HC21 (dual 4-input OR gates)
1 0 0
1 1 1
NOT (no) X=A A X 74HC04 (hex inverter)
A X 0 1 MC14049 (hex inverter)
1 0 CD4049 (hex inverter)

NOR X=A+B A B X 74HC00 (quad 2-input NOR gates)


0 0 1 CD4025 (triple 3-input NOR gates)
(no ou) A
X 0 1 0 CD4002 (dual 4-input NOR gates)
B CD4078 (single 8-input NOR gates)
1 0 0
1 1 0
NAND X=A.B A B X 74HC02 (quad 2-input NAND gates)
0 0 1 CD4023 (triple 3-input NAND gates)
(no e) A
X 0 1 1 CD4102 (dual 4-input NAND gates)
B CD4058 (single 8-input NAND gates)
1 0 1
1 1 0
XOR (ou X = AO B A B X 74HC85 (quad 2-input XOR gates)
0 0 0 CD4070 (quad 2-input XOR gates)
exclusivo) A X = AB + AB
X 0 1 1
B
1 0 1
1 1 0
XNOR (no X = AO B A B X 74LS266 (quad 2-input XNOR gates)
0 0 1 74LS811 (quad 2-input XNOR gates)
ou exclu- A X = A B + AB
X 0 1 0 CD4077 (quad 2-input XNOR gates)
B
sivo) 1 0 0
1 1 1
Fonte: Autor

Portas NOR, NAND, XOR e XNOR so combinaes da


portas bsicas AND, OR e NOT? Devido sua frequente
VOC utilizao os fabricantes j constroem essas combinaes e
SABIA? disponibilizam em modelos comerciais, porm elas podem
ser implementadas com as ligaes de portas bsicas.

Embora haja algumas similiaridades e padronizaes, os


FIQUE circuitos integrados de um mesmo modelo podem variar
ALERTA em suas caractersticas dependendo do fabricante e verso.
Sempre use o datasheet (folha de dados) do componente
como principal referncia.
AUTOMAO INDUSTRIAL
160

A equivalncia entre as portas lgicas demonstrada na tabela abaixo, onde


portas mais complexas so derivadas de ligaes de portas lgicas mais simples.
Geralmente, utilizamos componentes j prontos, mesmo com as portas lgicas
mais complexas. Porm, devido reduo de custo ou ao aproveitamento de
componentes em um circuito, podemos utilizar ligaes equivalentes. (Tabela 8)
Tabela 8: Equivalencias das portas lgicas
Porta Expresso Smbolo equivalncia
NOR X=A+B A A
X X
B B

NAND X=A.B A A
X X
B B

XOR X = AO B A
X = AB + AB A B
X X
B

XNOR X = AO B
A
X = A B + AB A B
X X
B

Fonte: Autor

A representao simplificada da porta NOT pode ser usada em todo o


esquema de seu circuito. Para tanto, utilizamos um pequeno crculo junto
entrada ou sada do operador em lugar do smbolo completo. Este crculo deve
ser representado no local onde a porta NOT estaria conectada. (Figura 182)

AB A AB
A X =AB
X =AB B
B

A A
A A
X =AB X =AB
B B

Figura 182 - Portas Lgicas


Fonte: Autor

4.3.4 Operadores da lgebra booleana

Existem vrias formas de obter o mesmo resultado. Nas tabelas acima,


expresses equivalentes provam sua equivalncia justamente porque o resultado
obtido em funo das entradas o mesmo. Por que podemos preferir uma
expresso outra em dado momento?
4 Sistemas digitais
161

Duas expresses lgicas equivalentes entre si podem ser bem diferentes em


termos de tamanho. Se usarmos a expresso lgica errada, corremos o risco de
desenvolver um circuito fisicamente maior, mais caro, que consome mais energia,
ou que mais lento.
Para no correr este risco, precisamos estudar alguns teoremas, que sero
utilizados para a construo e simplificao de circuitos lgicos mais eficientes.
Estes teoremas so apresentados na forma de expresses, que possuem
operadores representados por smbolos. Para conhecer estes smbolos, vamos ver
a seguir o uso deles em uma expresso.

D A.(B+A) C=X ou

D A.(B+A) C=X e

D A.(B+A) C=X no (barrado)

D A.(B+A) C=X ou exclusivo

D A.(B+A) C=X ou exclusico negado

D A.(B+A) C=X prioridade

Figura 183 - Operadores da lgebra booleana


Fonte: Autor

O operador E (and) costumeiramente associado ao sinal de multiplicao


(ponto); j, o operador OU (or) representado pelo operador de adio (+). A
precedncia do operador E maior que a do operador OU; ou seja, se no houver
parnteses, E (.) ocorre antes do OU (+).

4.3.5 Teoremas e leis da lgebra booleana

Abaixo, seguem as bases do funcionamento da lgebra booleana, chamados


de axiomas:
Axioma 1: As variveis podem tomar um dos valores: 0 ou 1
a) Se X = 0, ento X = 1
b) Se X = 1, ento X = 0
Axioma 2:
a) 0 . 0 = 0 F e F = F
b) 1 .1 = 1 V e V = V
Axioma 3:
a) 0 + 0 = 0 F ou F = F
AUTOMAO INDUSTRIAL
162

b) 1 + 1 = 1 V ou V = V
Axioma 4:
a) 0 . 1 = 1 . 0 = 0 FeV=VeF=F
b) 0 + 1 = 1 + 0 = 1 F ou V = V ou F = V
Com base nesses axiomas foram desenvolvidos teoremas (tambm chamados
de leis ou postulados), os quais auxiliam na simplificao de funes lgicas ou na
expresso de sua equivalncia. Esses teoremas so descritos a seguir.
Teorema 1: Princpio da Dualidade
Para cada teorema ou postulado h outro, o dual, obtido pela troca dos
operadores +, . , e valores dos operandos 0 e 1.
ex: (1+a) . (b+0) = b
(0.a) + (b.1) = b
Teorema 2: Elemento absorvente
a) A . 0 = 0
b) A + 1 = 1 (dual)
Teorema 3: Elemento Neutro ou Identidade
a) A . 1 = A
b) A + 0 = A (dual)
Teorema 4: Lei da Idempotncia
a) A . A = A
b) A + A = A (dual)
Teorema 5: Complemento
a) A . A = 0
b) A + A = 1 (dual)
Teorema 6: Involuo
A =A (dupla negao e A equivale a A)
Teorema 7: Comutatividade
a) A . B = B . A
b) A + B = B + A (dual)
Teorema 8: Associatividade
a) A . B . C = A . (B . C) = (A . B) . C
b) A + B + C = A + (B + C) = (A + B) + C (dual)
4 Sistemas digitais
163

Teorema 9: Distributividade
a) A . B + A . C = A . (B + C)
b) (A + B) . (A + C) = A + B . C (dual)
Teorema 10: Absoro
a) A + A . B = A
b) A .(A + B) = A (dual)
Teorema 11: Termo menor
a) A + A . B = A + B
b) A . ( A + B) = A . B (dual)
Teorema 12: Adjacncia
a) A . B + A . B = A
b) (A + B) . (A + B ) = A (dual)
Teorema 13: Termo includo ou Consenso
a) A . B + A . C + B . C = A . B + A . C
b) (A + B) . ( A + C) . (B + C) = (A + B) . ( A + C). (dual)
Observaes:
a) A ordem na aplicao do operador + entre n elementos no importa:
A + {B + [C + (D + E)]}={[(A + B) + C] + D} + E = {A + [(B + C) + D]} + E =A + B + C
+D+E
b) A ordem na aplicao do operador . entre n elementos no importa:
A . {B . [C . (D . E)]} = {[(A . B) . C] . D} . E = {A . [(B . C) . D]} . E = A . B . C . D . E
Teorema 14: Lei de DeMorgan
a) A.B = A + B
b) A+B = A . B (dual)

4.3.6 Expresses equivalentes e complementares

A partir de uma expresso lgica, aplicando os teoremas da lgebra Booleana,


podemos obter expresses equivalentes e complementares, alm da expresso dual.
Duas expresses so ditas equivalentes se produzem o mesmo efeito
a partir das mesmas entradas (mesma tabela verdade). Por exemplo, as
expresses XY e X + Y so equivalentes, como pode ser observado nas
tabelas abaixo:
AUTOMAO INDUSTRIAL
164

Tabela 9: Verdade para as expresses equivalentes: a) XY e b) X + Y


a) b)
X Y XY XY X Y X Y X +Y
0 0 0 1 0 0 1 1 1
0 1 0 1 0 1 1 0 1
1 0 0 1 1 0 0 1 1
1 1 1 0 1 1 0 0 0

Fonte: Autor

Duas expresses so complementares se a tabela verdade das expresses


apresentar valores opostos para as mesmas entradas. Por exemplo, as
expresses XY e XY (com linha acima) so complementares, como pode ser
observado na Tabela 10:

Tabela 10: Verdade para as expresses complementares a) XY e b) XY


X Y XY XY
0 0 0 1
0 1 0 1
1 0 0 1
1 1 1 0
Fonte: autor

4.3.7 Universalidade das portas NAND e NOR

Atravs de expresses equivalentes, na lgebra booleana possvel


implementar qualquer funo utilizando somente portas NAND ou somente
portas NOR. Isso facilita implementaes de circuitos, com reaproveitamento de
circuitos semicondutores e consequente reduo de custos. (Tabela 11)

Tabela 11: Universalidade das portas NAND e NOR


Funo circuito original equivalente nand equivalente nor
NOT
A Y A Y=A A Y=A

AND
A A A
Y=A.B Y=A.B Y = A+B
B B Y=A.B Y=A.B
B

OR
A A
Y=A.B A Y = A+B
Y = A+B
B B
Y = A+B B Y = A+B

Fonte: Autor
4 Sistemas digitais
165

4.3.8. Simplificao de circuitos lgicos

A lgebra Booleana largamente empregada para a simplificao de


circuitos e expresses lgicas. Entretanto, no o nico mtodo que possibilita
a obteno de circuitos mais simples. Alm da lgebra Booleana, podemos
utilizar os Mapas de Karnaugh a fim de obter uma expresso ou circuito
equivalente e simplificado.
O Mapa de Karnaugh consiste em um mtodo grfico utilizado para simplificar
expresses lgicas a partir da tabela verdade. Os exemplos a seguir ilustram os
mapas para 2, 3 e 4 variveis:

Os diagramas conhecidos como Mapas de Karnaugh foram


VOC desenvolvidos originalmente por Edward Veitch? Mais tarde, o
engenheiro de telecomunicaes Maurice Karnaugh aperfeioou-
SABIA? os para utiliz-los na simplificao de circuitos de telefonia. Por
isso o nome completo do mtodo Veitch-Karnaugh.

a) Funo de duas variveis:


Tabela Verdade Expresso Mapa de Karnaugh

A B F
0 0 1 B B
0 1 0 F=A.B+A.B A 1 0
1 0 0 A 0 1
1 1 1

b) Funo de trs variveis:


Tabela Expresso Mapa de Karnaugh
Verdade

A B C F
0 0 0 1
C c
0 0 1 1
0 1 0 1 Ab 1 1
0 1 1 0 F = A . B . C+ A . B . C+ A . B . C+ A . B . C AB 1 0
1 0 0 0 AB 1 0
1 0 1 0
Ab 0 0
1 1 0 1
1 1 1 0
AUTOMAO INDUSTRIAL
166

c) Funo de quatro variveis:


Tabela Verdade Expresso

A B C D F
0 0 0 0 0
0 0 0 1 1
0 0 1 0 0 F=A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D
0 0 1 1 0
0 1 0 0 0
0 1 0 1 1
0 1 1 0 0
0 1 1 1 0 Mapa de Karnaugh
1 0 0 0 0
1 0 0 1 0 cd cd
C d Cd
1 0 1 0 0
Ab 0 1 0 0
1 0 1 1 0
AB 0 1 0 0
1 1 0 0 0
1 1 0 1 1 AB 0 1 1 0
1 1 1 0 0 Ab 0 0 0 0
1 1 1 1 1

Pontos importantes nos Mapas de Karnaugh


a) A tabela verdade fornece o valor para uma dada funo para cada combinao
de entradas. O Mapa de Karnaugh fornece a mesma informao.
b) Os quadrados horizontais e verticais adjacentes devem diferir apenas
em uma varivel. importante observar que quadrados da linha superior so
adjacentes aos da linha inferior, por exemplo: ABCD adjacente a ABCD . O
mesmo vlido para os quadrados da direita e da esquerda.
c) Para que os quadrados adjacentes sofram alterao de uma varivel apenas,
devemos seguir a ordem AB , AB, AB, AB. O mesmo ocorre com C e D. Observe
que, utilizando essa sequncia, o primeiro quadrado adjacente ao ltimo, tanto
na horizontal quanto na vertical.
d) Ao preencher o Mapa de karnaugh com zeros (0) e uns (1), a expresso para a
soma dos produtos obtida somando-se (OR) os quadrados que contenham uns (1).

Agrupamentos
A expresso para a sada de uma funo pode ser simplificada pela combinao
apropriada dos quadrados do Mapa de Karnaugh que contenham 1s. Esse processo
o agrupamento. Podem ser formados grupos de 2, 4, 8, 16 ou 32 quadrados
adjacentes, de acordo com o nmero de combinaes das variveis de entrada.
A expresso simplificada obtida a partir da anlise do grupo, reescrevendo as
variveis que se repetem ao longo de todos os quadrados. A seguir so apresentados
exemplos de agrupamentos com duplas (ou pares), quadras e octetos:
4 Sistemas digitais
167

a) Pares ou Duplas
AB AB AB AB
C 0 1 1 0
X = A.B.C + A.B.C = (B.C).(A+A)= B.C
C 0 0 0 0
Obs: Note que nesses dois termos, apenas A varia,
enquanto BC no se altera.
C C C C CD CD CD CD
AB 0 0 AB 1 0 AB 0 0 1 1
AB 1 1 AB 0 0 AB 0 0 0 0
AB 0 0 AB 0 0 AB 0 0 0 0
AB 0 0 AB 1 0 AB 1 0 0 1

X = A.B X = B.C X = A.B.C + A.B.D

b) Quadras
AB AB AB AB
C 0 0 0 0
X=C
C 1 1 1 1
Obs: Note que nesses quatro termos, A e B variam,
enquanto C no se altera.

CD CD CD CD CD CD CD CD
AB 0 0 0 0 AB 1 0 0 1
AB 0 1 1 0 AB 0 0 0 0
AB 0 1 1 0 AB 0 0 0 0
AB 0 0 0 0 AB 1 0 0 1
X = B.D X = B.D

c) Octetos
CD CD CD CD CD CD CD CD
AB 1 1 1 1 AB 1 1 0 0
AB 0 0 0 0 AB 1 1 0 0
AB 0 0 0 0 AB 1 1 0 0
AB 1 1 1 1 AB 1 1 0 0

X=B X=C

CD CD CD CD
AB 0 0 0 0
AB 1 1 1 1
AB 1 1 1 1
AB 0 0 0 0
X=B
d) Agrupamentos Mistos
CD CD CD CD CD CD CD CD
AB 0 0 0 1 AB 0 0 1 0
AB 0 1 1 0 AB 1 1 1 1
AB 0 1 1 0 AB 1 1 0 0
AB 0 0 1 0 AB 0 0 0 0
X = B.C + A.C.D + A.B.C.D X = A.B + B.C + A.C.D
AUTOMAO INDUSTRIAL
168

Condio irrelevante
Alguns circuitos podem ser projetados para que, em funo de certas combinaes
de entrada, a sada seja irrelevante (no importando se, para este caso, a sada for 1
ou 0). Neste caso, costumamos representar o valor irrelevante com um X. (Tabela 12)
Tabela 12: Verdade considerando condies irrelevantes
A B x y
0 0 1 0
0 1 x 1
1 0 0 0
1 1 1 x
Fonte: Autor

Analisando a tabela verdade para esse sistema, vemos que X definido pela
combinao dos estados de A e B, porm quando A for 0, e B for 1, o valor de X
ser irrelevante, ou seja, para o circuito no importar.
O valor de Y, da mesma forma, assume valor irrelevante quando A e B estiverem
VOC Os Mapas de Karnaugh podem ser utilizados para
valendo 1.SABIA? simplificar funes de at 6 variveis?

Nos casos em que uma funo depende de 5 ou seis variveis, temos dois
mtodos para a construo dos diagramas: a sobreposio de mapas de 4 variveis
ou o espelhamento de mapas de 4 variveis. Nos exemplos abaixo temos mapas
de 5 e 6 variveis utilizando o mtodo da sobreposio. (Figura 184)
f
A-1 0 4 3 2
4 5 2 6
00 01 11 10 C 12 13 15 14 d
16 20 28 24 8 9 11 10
A=0 1 1 1 e
BC 17 21 29 25 f
16 17 19 18
DE 00 01 11 10 19 23 31 27 20 21 23 22
C 28 29 31 36 d
0 9 12 8 1 1
1 1 1 18 22 36 26 24 25 27 26
1 1
1 5 13 9
e
1 1
f b
3 7 15 11
48 49 51 50
7 6 14 10
52 53 55 54
1 1 C 60 61 63 62 d
a 56 57 59 58
e
f
32 33 35 34
36 37 39 38
44 45 47 46 d
C 40
41 43 42
e
Figura 184 - Mapas de Karnaugh para 5 e para 6 variveis
Fonte: Autor

SAIBA Pesquisando sobre programas de edio e simplificao de


expresses booleanas na internet.
MAIS
4 Sistemas digitais
169

4.4 Circuitos multiplexadores e demultiplexadores

Muitas vezes precisamos realizar o controle de diversos dispositivos em


um determinado sistema. Ou ento, esse controle depende de diversas
variveis e o sistema utiliza componentes com um nmero de entradas ou
sadas menor do que o necessrio.
Como exemplo, imagine termos de controlar um conjunto de 60 atuadores
usando um microcontrolador que tenha somente 15 sadas digitais, ou,
ainda, ler sinal de 20 sensores analgicos usando um mesmo circuito de
anlise para todos os 20 sensores.
Para resolver esse problema, uma abordagem empregada a utilizao de
circuitos multiplexadores ou demultiplexadores para aumentar o nmero de
entradas ou sadas do sistema.

4.4.1 Circuitos multiplexadores

Um circuito multiplexador (MUX) ou seletor de dados um circuito lgico que


recebe vrios dados de entrada e seleciona um deles para transferi-lo para a sada.
A seleo do dado de entrada que ser transportado para a sada controlada
pelas entradas de seleo, conforme mostrado na Figura 185:

ENTRADAS DE DADOS
I0

I1
I2
I3 A sada Z recebe um dado
IN de entrada de acordo com o
cdigo na entrada de seleo.
S0 S1 S2

ENTRADAS DE SELEO
Figura 185 - Diagrama de um multiplexador
Fonte: Autor

Pelo diagrama, observamos que um multiplexador atua como uma chave


digitalmente controlada de mltiplas posies, em que um cdigo digital
aplicado nas entradas de seleo, definindo qual das n entradas de dados ter
seu contedo transmitido para um nico canal de sada. Multiplexadores so
construdos a partir de circuitos combinacionais, utilizando essencialmente
portas lgicas. Devido ao seu uso recorrente, existem modelos comerciais
de multiplexadores. Vejamos como estes circuitos podem tambm ser
implementados a partir de portas lgicas bsicas.
AUTOMAO INDUSTRIAL
170

Para o projeto de um circuito multiplexador devemos levar em considerao


o nmero de cdigos diferentes que as entradas de seleo podem fornecer.
Cada um desses cdigos ser o endereo de uma das entradas de dados, o qual
definir qual dado ser enviado para a sada. Assim, para um multiplexador com
n entradas de seleo, teremos 2n entradas de dados.
Para entender melhor como funciona o projeto de um circuito multiplexador,
vamos analisar o processo de construo de dois multiplexadores: um circuito
bsico de 2 entradas (ou canais) de dados e um circuito para 4 entradas.
a) Multiplexador bsico de 2 entradas (2:1)
Considere o circuito da figura a seguir, o qual apresenta um multiplexador
com duas entradas de dados (I0 e I1) e uma entrada de seleo (S). Utilizando
uma entrada de seleo, possvel obter dois cdigos diferentes, ou seja, dois
endereos diferentes e, assim, utilizar duas entradas de dados.
O nvel lgico da entrada S determina qual entrada de dado ser transferida
para a sada. Obtendo a expresso para o circuito, temos: (Figura 186)

Z = I0 S + I1 S
Io
1 Assim, quando S = 0, a porta 2
I1 habilitada, permitindo que o sinal de
2 I1 seja enviado para a sada, e a porta 1
S
desabilitada, fazendo com que I0 no
Figura 186 - Multiplexador de 2 canais
Fonte: Autor
interfira na sada.

b) Multiplexador de 4 entradas (4:1)


Utilizando a ideia bsica apresentada anteriormente, possvel implementar
um multiplexador de quatro entradas de dados (I0, I1, I2e I3) e duas entradas de
seleo (S0 e S1). A tabela verdade para essa operao e o circuito implementado
so apresentados na Figura 187.
a) b) 3 2 1 0

S0 S1 Sada
0 0 Z = I0
0 1 Z = I1
1 0 Z = I2
1 1 Z = I3

Figura 187 - Multiplexador de quatro entradas - a) Tabela verdade - b) Circuito implementado


Fonte: Autor

Comercialmente podem ser encontrados multiplexadores de dois, quatro, oito


e desesseis entradas. A combinao de Cis (circuito integrado) bsicos possibilita
a formao de um multiplexador com um maior nmeros de entradas.
4 Sistemas digitais
171

Pesquisando como associar multiplexadores em srie ou


SAIBA paralelo para formar um multiplexador com um nmero
MAIS maior de entradas.

A) MUX de 8 entradas (8:1)


O circuito apresentado na figura a seguir o multiplexador de oito entradas
74xx151, que tem como particularidades uma entrada de habilitao e o
fornecimento de duas sadas, normal e invertida. (Figura 188 e Figura 189)
a) b)
Entradas Sadas
I0 I1 I2 I3 I4 I5 I6 I7
e s2 s1 s0 Z Z
H X X X H L S2 0

L L L L I0 I0 S10
74 x x 151
L L L H I1 I1 S0 0
MUX de 8 Entradas
E
L L H K I2 I2
L L H H I3 I3
L H L L I4 I4
L H L H I5 I5
H H L I6 I6
L H H H I7 I7

c)
0 1 2 3 4 5 6 7
9 4 3 2 1 15 14 13 12
S2
10
S1
11
S0
7
E

6 5

Figura 188 - Multiplexador de 8 entradas - a) Tabela verdade - b) Smbolo lgico - c) Diagrama lgico
Fonte: Autor

Muitos circuitos digitais possuem entradas que permitem


VOC que o circuito funcione ou no. Essas entradas de controle
so chamadas de entradas de habilitao e podem ser o
SABIA? terminal de uma porta lgica ou de uma combinao de
portas lgicas.
AUTOMAO INDUSTRIAL
172

PORTAS HABILITADAS PORTAS DESABILITADAS

=A =A
X =A = X =0
1= B 0=B

=A =A
X =A = X =1
1 =B 0=B

=A =A
X =A = X =1
0 =B 1= B

=A =A
X=A = X =0
0 =B 1= B
Figura 189 - Portas lgicas utilizadas como circuitos de habilitao
Fonte: Autor

Nos circuitos da Figura 189, a entrada de controle possibilita (habilita / enable)


ou impede (desabilita / disable) que o sinal de entrada alcance a sada. Nota-se
que, ao habilitar portas no-inversoras (AND e OR), a sada segue exatamente o
sinal A, ao passo que, ao habilitar portas inversoras (NAND e NOR), a sada segue
o inverso de A. Observa-se ainda que, quando desabilitadas, as portas AND e NOR
geram uma sada constante em nvel baixo, enquanto as portas OR e NAND geram
uma sada constante em nvel alto.
b) MUX Qudruplo de 2 Entradas (2:1)
O circuito integrado 74xx157 um multiplexador muito til que possui quatro
multiplexadores independentes de 2 entradas, conforme mostrado na Figura 190. Esse
circuito tambm apresenta uma entrada para habilitao como o modelo anterior.
a) b) I1a I1b I1c I1d I0a I0b I0c I0d

e s Za Zb Zc Zd
S
H X L L L L 74 x x 157

L L I0a I0b I0c I0d E


L H I1a I1b I1c I1d

Za Zb Zc Zd

c) I1a I0a I1b I0b I1c I0c I1d I0d E S

a b c d

Figura 190 - Multiplexador qudruplo de 2 entradas 74xx157 - a) Tabela verdade - b) Smbolo lgico - c) Diagrama lgico
Fonte: Autor
4 Sistemas digitais
173

Encontram-se comercialmente disponveis multiplexadores com vrias


entradas; no entanto, podemos implementar circuitos com um grande nmero
de entradas atravs da associao de multiplexadores menores.

Pesquisando como associar multiplexadores em srie ou


SAIBA paralelo para formar um multiplexador com um nmero
MAIS maior de entradas.

4.4.2 Circuitos demultiplexadores

Um circuito demultiplexador (DEMUX) ou distribuidor de dados o circuito


lgico que realiza a operao inversa quela realizada pelos multiplexadores;
ou seja, recebe uma nica entrada e a distribui para diversas sadas. A sada pela
qual o dado de entrada ser transmitido determinada atravs de um cdigo de
seleo, conforme possvel observar na Figura 191:

ENTRADA
DE DADOS
Z0

Z1
I
Z2
Z3 A entrada de dados transmitida
ZN
apenas para uma das sadas, de
acordo com a entrada de cdigo
de seleo.
S0 S1 S2

ENTRADAS DE SELEO
Figura 191 - Diagrama de um demultiplexador
Fonte: Autor

Para o projeto de um demultiplexador, devemos lembrar que o nmero de


sadas ser determinado pelo nmero de entradas de seleo. Assim, para
um demultiplexador com n entradas de seleo, ocorrem 2n sadas. Depois,
necessrio relacionar um cdigo de seleo com cada sada.
Para enterder melhor como funciona o projeto de um circuito demultiplexador,
vamos analisar o processo de construo de dois DEMUX: um circuito bsico de 2
entradas (ou canais) de dados e um circuito para 4 entradas.
a) Demultiplexador de 2 sadas (1:2)
Considere o circuito da Figura 192, onde temos um demultiplexador com uma
entrada de dados (I), uma entrada de seleo (S) e duas sadas (O0 e O1). O nvel
lgico na entrada S determina para qual sada ser transmitido o dado de entrada.
AUTOMAO INDUSTRIAL
174

O0

O1

Figura 192 - Demultiplexador de 2 canais


Fonte: Autor

Obtendo a tabela verdade para o circuito, temos: (Tabela 13)


Tabela 13: Tabela verdade para o circuito
S O0 O1
0 1 0
1 0 1
Fonte: Autor

e a expresso para cada uma das sadas dada por: O0 = I . S e O1 = I. S


b) Demultiplexador de 4 sadas (1:4)
Para o projeto de um DEMUX 1:4 deve ser elaborada a tabela verdade, onde
cada cdigo de seleo relacionado com uma das sadas. A partir da tabela
verdade implementado o circuito. Como exemplo, apresentamos na Figura 193
o projeto de um demultiplexador 1:4.

a) b)
S0 S1 O0 O1 O2 O3 O0 = I . S0 . S1
0 0 I 0 0 0 O1 = I . S0 . S1
0 1 0 I 0 0
1 0 0 0 I 0 O2 = I . S0 . S1
1 1 0 0 0 I O3 = I . S0 . S1

c)
O0

O1
I
O2

O3

S0 S1
Figura 193 - Projeto de um demultiplexador 1:4 - a) Tabela verdade - b) Expresses para as sadas - c) Circuito implementado
Fonte: Autor
4 Sistemas digitais
175

Circuitos demultiplexadores comerciais podem ser encontrados com 2,


4, 8 e 16 terminais de sada. Assim como os multiplexadores, esses circuitos
podem ser encontrados com 2, 4, 8 e 16 terminais de saida. Assim como os
multiplexadores, esses circuitos podem ser combinados com a finalidade de
formar demultiplexadores com um nmero maior de sadas.
a) DEMUX de oito sadas
A figura abaixo apresenta o diagrama lgico de um demultiplexador de 8
canais. Nela, percebemos que a entrada I conectada a todas as sadas atravs
de portas AND, mas somente uma dessas portas acionada atravs do cdigo
de seleo. O circuito mostrado semelhante a alguns decodificadores de 3
linhas para 8 linhas que sero estudados mais tarde. A diferena entre eles est
na entrada de dados I, que deve ser acrescentada aos demultiplexadores. Desta
forma, circuitos decodificadores que apresentam uma entrada de habilitao
podem ser utilizados como demultiplexadores. (Figura 194)

a) b)
O0 = I (S2 . S1 . S0 )
S2 S1 S0 O7 O6 O5 O4 O3 O2 O1 O0
O1 = I (S2 . S1 . S0 )
0 0 0 0 0 0 0 0 0 0 I
0 0 1 0 0 0 0 0 0 I 0
O2 = I (S2 . S1 . S0 )
0 1 0 0 0 0 0 0 I 0 0 O3 = I (S2 . S1 . S0 )
0 1 1 0 0 0 0 I 0 0 0 O4 = I (S2 . S1 . S0 )
1 0 0 0 0 0 I 0 0 0 0
O5 = I (S2 . S1 . S0 )
1 0 1 0 0 I 0 0 0 0 0
O6 = I (S2 . S1 . S0 )
1 1 0 0 I 0 0 0 0 0 0
1 1 1 I 0 0 0 0 0 0 0 O7 = I (S2 . S1 . S0 )

c) A2 A1 A0 I (b)

00 01 02 03 04 05 06 07

Figura 194 - Demultiplexador 1:8 - a) Tabela verdade - b) Expresses para as sadas - c) Diagrama lgico
Fonte: Autor

Na Figura 195 temos o diagrama do circuito integrado 74xx138, um


decodificador configurado para ser usado como um demultiplexador, com o
( C ) (FIGURA RETIRADA DO DARASHEET DE COMPONENTES - REFAZER)
dado de entrada aplicado em uma das entradas de habilitao.
AUTOMAO INDUSTRIAL
176

I Vcc
123

E
A2
CDIGOS DECODIF/DEMUX
DE A1
74 XX 138
SELEO
A0

O0 O1 O2 O3 O4 O5 O6 O7

Figura 195 - Circuito 74xx138, Decodificador/Demultiplexador configurado como demultiplexador com a entrada de
habilitao funcionando como entrada de dados
Fonte: Autor

b) DEMUX de desesseis sadas


O circuito integrado 74xx154 um decodificador hexadecimal que, assim
como o 74xx138, pode ser utilizado como demultiplexador. Para tanto, basta
conectar as duas entradas de strobe como a entrada de dados - figura (a) ou,
ainda, reservar uma das entradas de strobe como entrada de dados e a outra
com sua funo normal, conforme mostrado na figura (b). A entrada de strobe
funciona como uma entrada de bloqueio. Quando ambas as entradas estiverem
em 0, o circuito funcionar como decodificador/demultiplexador. (Figura 196)
a) b) S0
D 7 DS0 7
S0 D 7 D 7
S0
S1
C 4 CS1 4
S1 C 4 C 4
S1
B x B B x B
x x
A A A A
x x(...) (...) x (...)
x (...)
1 1 1 1
I G1I 5 S14 5
G1 S14 I G1I 5 S14
G1 5 S14
G2 4 G2
S15 4 Strobe G2 4
Strobe G2
S15
S15 4 S15

(a) (b) (b)


(a) INPUTS
c) C B A
G2

D
G1
( 20 )

( 22 )
( 19 )

( 21 )

( 18 )

( 17 )

D D C C B B A A G
A

A
B

B
C

C
D A
A

D
B

B
C

C
D

D
G
( 16 )

( 15 )

( 14 )

( 13 )

( 12 )

( 11 )

( 10 )

(9)

(7)

(3)

(2)

(1)
(8)

(6)

(5)

(4)

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
OUTPUTS

Figura 196 - Circuito 74xx154 configurado como demultiplexador 1:16 - a) e b) Configuraes para funcionamento como
demultiplexador 1:16 - c) Diagrama lgico
Fonte: Autor
4 Sistemas digitais
177

c) Duplo DEMUX de quatro sadas


A Figura 197 apresenta o circuito integrado 74xx155, que possui dois
demultiplexadores, cada um com 4 canais de sada, e entradas tipo strobe
diferentes, para permitir a ativao individual dos dois circuitos.
a) b)
ENtradas Sadas 7 100
Seleo Strobe Dado - 1C 4 101

b a 1g 2g 1 2 nO0 nO1 nO2 nO3 1G X 102


Strobe X 103
c c 2G
200
X X 1 X X 1 1 1 1 1
201
Dado 2C 5
0 0 0 1 0 0 1 1 1 202
5
A0 A1 203
0 1Ea Ea 0 1 0 1 0 1 Eb Eb 1
7 100
1 0 0 1 0 1 1 0 1 - 1C 4 101

1 1 0 1 0 1 1 1 0 1G X 102
Strobe 103
A2G B X
X X X 0 1 1 1 1 1 Seleo 1
200
201
Dado 2C 5
202
c) A0 A1 (b) 5 203
Ea Ea Eb Eb

O0a O1a O2a O3a O0b O1b O2b O3b A B


Seleo

(b)

O0a O1a O2a O3a O0b O1b O2b O3b


Figura 197 - Decodificador/Demultiplexador 74xx155: a) Tabela verdade; b) Diagrama de conexes; c) Diagrama lgico
Fonte: Autor

Assim como no caso dos multilexadores, podem ser encontrados comercialmente


demultiplexadores com vrias sadas; no entando, podemos implementar circuitos com
um nmero maior de sadas atravs da associao de demultiplexadores menores.

4.5 Conversores D/A e A/D

CASOS E RELATOS

Casos e relatos: Sr. Rivaldo atua no segmento de exportao e importao


de frutas. Sua empresa de porte mdio conta com uma frota considervel de
caminhes frigorficos que permitem transportar frutas e vegetais para vrios
locais da Amrica do Sul. Em transportes longos, faz-se necessrio um controle
mais rigoroso de temperatura, que pode variar de 2C a 10C conforme a
mercadoria transportada, e com variao mxima de 1C durante o transporte.
Aps consultar um especialista, Rivaldo considera a compra de um sistema
automatizado para controle de temperatura, e aps alguns oramentos, se
depara com duas propostas com custos bem diferentes.
AUTOMAO INDUSTRIAL
178

Na primeira opo, e bem mais cara, o sistema permite realizar um controle de


temperatura entre -55C e 85C, com uma resoluo de 10 bits. No segundo sistema,
o controle realizado em temperaturas entre -15C e 55C, com resoluo de 8 bits.
Aps consulta a um especialista para saber qual sistema atende suas espectativas,
ainda por telefone, o consultor apresentou os seguintes dados: O sistema mais caro
trabalha em 10 bits, e pode ler at 210 = 1024 possibilidades. Isso, aplicado a uma faixa
de temperatura de -55C a 85C, permite detectar variaes de aproximadamente
0,14C, atendendo a expectativa. O segundo sistema, de menor custo, permite
realizar um controle de -15C a 55C, detectando variaes de aproximadamente
0,28 C, e tambm atende as expectativas. Apesar de ter resoluo de 8 bits, este
ltimo sistema permite um ajuste mais preciso para a faixa de temperatura esperada
para o interior das cmaras frias dos caminhes, proporcionando melhor controle
para esta aplicao, alm de ter um menor custo.

Como dito anteriormente, o mundo basicamente analgico. Grandezas


lidas por sensores variam constantemente em uma faixa. Temperatura, presso,
vazo, peso, velocidade, luminosidade inmeras grandezas todas de origem
analgica. Para processar esta informao analgica em sistemas mais robustos,
precisamos converter estes sinais analgicos em informaes digitais.
Da mesma forma, sinais digitais processados precisam, em muitos casos, ser
convertidos para informaes analgicas para gerar os efeitos esperados, como
controlar a acelerao contnua de um motor de elevador para que os ocupantes
no sintam os trancos, variar a luminosidade de forma controlada em dispositivos
de interface, como displays e iluminaes de painis, ou, ainda, variar a amplitude
e a frequncia de um sinal eltrico que enviado a alto-falantes para produzir o
som esperado no volume e na frequncia corretos.
Temos, ento, a necessidade de converter sinais analgicos em digitais, e sinais
digitais em analgicos. (Figura 198)
Sinal Analgico Sinal Digital
0101101011
6
4

100 8
50
2

150 10
psi
bar
11

Conversores Conversores
A/D D/A

Sinal Digital Sinal Analgico


V
0101101011 t
Figura 198 - Conversores DA e AD
Fonte: Autor

Com o advento dos circuitos integrados (CI), muitos componentes foram


desenvolvidos com o objetivo de realizar a converso entre os tipos de sinais.
4 Sistemas digitais
179

Porm, quando realizamos a converso, os seguintes fatores devem ser


considerados:
1) Tipo de sinal analgico: um sinal analgico um sinal que varia dentro de
uma faixa especfica e pode ser representado, dentre outras formas, por variaes
de corrente ou de tenso (padres mais utilizados na automao industrial).
2) Resoluo: a converso de um sinal analgico em um sinal digital
requer um sacrifcio: transformar o sinal analgico, representado por uma
rampa, em um conjunto de valores finito e aproximado ao valor de origem,
representado por uma escada.
Vejamos a Figura 199:
111
1 11 110
101
10 100
011
01 010
001
0 00 000

analgico 1 bit 2 bits 3 bits

Figura 199 - Converso de um sinal analgico para digital


Fonte: Autor

Observe que a converso de um sinal analgico (representado pela variao


contnua de uma rampa) para um conversor A/D de 1 bit gera um sinal digital que
pode estar ligado ou desligado. Porm, com a converso de dois bits, obtemos 22
= 4 estgios diferentes. Com converso de 3 bits, so 23 = 8 estgios diferentes.
Um conversor A/D de 8 bits pode, ento, fornecer 28 = 256 estgios.
Em termos prticos, a resoluo de um conversor A/D dada em bits. Em certos
sistemas microcontrolados ou microprocessados que estudaremos em breve,
o processo inverso tambm ocorre, convertendo uma combinao binria de
alguns bits em um sinal analgico. Quanto mais bits, maiores so as possibilidades
que podem ser obtidas.
Em termos prticos, se usarmos um sensor de temperatura analgico conectado
a um conversor A/D de 8 bits, poderemos dividir a temperatura detectada por
este sensor em at 256 (28) possveis valores. Se este conversor A/D fosse de 10
bits, seriam 1024 (210) possibilidades.
Alguns sistemas que exigem converses extremamente precisas utilizam
conversores A/D de 16 bits. Faa um clculo e descubra a quantidade de valores
possveis gerados por este tipo de conversor.
Da mesma forma, se pretendermos controlar a velocidade de um motor usando
um conversor D/A de 4 bits, poderemos obter at 24 = 16 velocidades diferentes.
AUTOMAO INDUSTRIAL
180

Sabemos que no uma representao fiel de um sistema analgico; no


entanto, quanto maior a resoluo, mais aproximada a representao.
3) Velocidade de converso: muitos conversores utilizam circuitos de carga e
descarga de capacitores para fazer a converso de sinais analgicos em sinais digitais.
Sabemos que um capacitor um componente que pode armazenar energia eltrica.
Imagine um pequeno circuito composto por um capacitor e um resistor ligados
em paralelo, e submetido a uma tenso. Quando o circuito desconectado, o
capacitor se descarregar pelo resistor, at que a tenso eltrica entre seus
terminais seja anulada. Quanto maior a tenso qual este capacitor submetido,
maior a quantidade de eltrons que ele pode armazenar e, consequentemente,
maior o tempo de descarga. Como os circuitos de converso precisam mensurar
o tempo de descarga, muitos deles utilizam circuitos para gerar bases de
tempo estveis. Estes circuitos, por mais rpidos que sejam, tomam algum
tempo, tornam a converso um processo um pouco mais lento do que muitos
outros processos digitais combinacionais. Felizmente, tm surgido circuitos
integrados e dispositivos de processamento de sinais extremamente velozes,
permitindo realizar converses de sinais analgicos em sinais digitais em tempos
extremamente curtos, na ordem dos microsegundos.

4.5.1 Conversor A/D

Conversores AD so circuitos eletrnicos que podem ser apresentados em


vrias configuraes: como subcircuito de um circuito integrado com mais
funes (caso que segue), como circuito integrado simples ou, ainda, como parte
de um dispositivo que realiza a leitura de sinais analgicos.

500 kHz CLK DE


5.000V VREF (+) EDC
0.000V VREF ( - )

START
2 -1 DB7 MSB
ALE
2
-2
DB6
2 -3 DB5
AD0 A ADC0808
2 -4 DB4
AD1 B ADC0809
AD2 C 2 -5 DB3
5V SUPPLY 2 -6 DB2
Vcc 2 -7 DB1
GND 2 -8 DB0 LSB
In7 VIN 8
GROUND
0 -5V
ANALOG
INPUT RANGE
VIN1
In0

Figura 200 - Conversor AD muito utilizado, o ADC0808


Fonte: Autor
4 Sistemas digitais
181

O exemplo da Figura 200 um conhecido e bastante utilizado conversor


A/D de 8 bits, que pode converter at 8 entradas analgicas (In0 a In7) em
sinais de 8 bits (DB 0 a DB 7). Para definir que entrada analgica deve ser
convertida, os pinos A, B e C (AD0 a AD 2) so utilizados para informar a
combinao binria da entrada a ser convertida. Por exemplo, se um sistema
desejar ler dois sensores analgicos, sendo um conectado entrada In 3, e
outro entrada In 6, o procedimento ser:
1) Para ler In 3, sendo que 3 em binrio 011, devem ser postos em
nvel alto (5V) somente os pinos A e B, representando os dois bits menos
significativos. Desta forma, aps alguns poucos microssegundos, a sada
digital constituda pelos pinos DB 0 a DB 7 representar a combinao binria
desejada, referente entrada In3.
2) Para ler In6, basta repetir o processo, porm com os pinos B e C em
nvel alto, e A em nvel baixo (0V). Desta forma, a combinao binria gerada
110, que equivalente a 6 em decimal, indicando que esta ser a porta que
realizar a converso.
Este exemplo, alm de ilustrar o funcionamento (de forma superficial) de
um conversor A/D, tambm demonstra o uso de um circuito multiplexador,
onde um pequeno nmero de entradas digitais combinado para produzir
um nmero maior de possibilidades, sendo que cada possibilidade uma
possvel ligao entre vrias entradas e uma sada.
Na automao industrial, grande parte dos circuitos de converso de
sinais analgicos em digital j esto presentes nos sistemas de controle
mais complexos. Em Controladores Circuitos Lgicos Programveis, tambm
conhecidos por CLPs (ou PLCs), so disponibilizadas entradas analgicas de
tenso e corrente (geralmente 0 a 10V, ou 4 a 20mA), podendo variar em
quantidade e resoluo entre os fabricantes.

Os microcontroladores so circuitos integrados


VOC programveis, e tambm podem possuir uma ou mais
SABIA? entradas analgicas atuando em nveis de tenso de at 5V.

4.5.2 Conversor D/A

Da mesma forma que circuitos A/D, os circuitos D/A podem se apresentar


como circuitos integrados hbridos, agregando vrias funes ou, ainda, partes
de um dispositivo ou equipamento.
Um circuito D/A deve converter um conjunto de sinais digitais em um valor analgico.
Isso pode ser obtido, de forma mais genrica, utilizando-se um circuito com
amplificador operacional, conforme a imagem que segue.
AUTOMAO INDUSTRIAL
182

2R R R R P 2R O 3R A B C D Vpo Vs (v)
(Va) (Vb) (vc) (Vd) (V)
2R 2R 2R 2R - 0 0 0 0 0,00 0,00
+ 0 0 0 1 0,20 0,40
Vs
Vd Vc Vb Va 0 0 1 0 0,40 0,80
0 0 1 1 0,60 1,20
Exemplo: 0 1 0 0 0,80 1,60
Se R = 10k, R2 = 20k 0 1 0 1 1,00 2,00
0 1 1 0 1,20 2,40
R2 (pode ser obrido por dois resistores R em srie)
0 1 1 1 1,40 2,80
1 0 0 0 1,60 3,20
Se R = 10k, R3 = 30k 1 0 0 1 1,80 3,60
R3 (pode ser obtido por trs resistores R em srie) 1 0 1 0 2,00 4,00
1 0 1 1 2,20 4,40
1 1 0 0 2,40 4,80
Vd, Vc, Vb e Va so entradas digitais, Vs uma 1 1 0 1 2,60 5,20
sada de comportamento prximo as analgico, 1 1 1 0 2,80 5,60
1 1 1 1 3,00 6,00
com resoluo de 4 bits (16 possobilidades)
Figura 201 - Conversor D/A de 4 bits
Fonte: Autor

A Figura 201 mostra a ligao de um amplificador operacional em uma


rede resistiva (conhecida como malha R-2R), onde, com nvel de tenso
alto (considerando 4.8V para isso) nos pinos Va, Vb, Vc e Vd, podemos obter
tenses de sada variando entre um mnimo e um mximo (no caso de 0 a
6V), dependendo da combinao dos pinos de entrada.
Este tipo de circuito pode ser til caso desejemos obter um sinal de sada
analgico em um sistema que s possua sinais de sada digitais, como, por
exemplo, um controle de um inversor de frequncia por sinal analgico.
Observe que o circuito acima ilustrativo e pode ter funcionamento
variado conforme modelo e as caractersticas de alimentao do
amplificador operacional.
Outra forma de obter uma sada analgica o uso de PWM aliado a
filtros com resistores e capacitores, criando um conversor DA de 1 bit. Em
poucas palavras, atravs de sadas pulsadas com pulsos mais longos ou mais
curtos, em alta frequncia, a tenso mdia armazenada por um circuito de
resistor/capacitor varia. Desta forma, muitos sistemas microcontrolados
geram sinais analgicos.
Em muitos modelos de CLPs j disponibilizada uma ou mais sadas
analgicas, que podem ser utilizadas para integrar a outros dispositivos,
sendo muito empregada em integraes com sistemas de controle de
velocidade de motores de corrente alternada AC, conhecidos como
inversores de frequncia.
4 Sistemas digitais
183

4.6 Circuitos codificadores e decodificadores

Chamamos de codificador o circuito combinacional que possibilita a


transformao de um cdigo em outro cdigo. Chamamos de decodificador o
circuito que realiza a operao inversa. Como exemplo, considere o diagrama de
uma calculadora conforme mostrado na Figura 202:
1234567890

CE % +/- -
1 2 3 +
codificador processador decodificador 1234567890
4 5 6 x
7 8 9 /
aritmtico
00 0 . =
CE % +/- -
1 2 3 +
4 5 6 x
decimal binrio decimal
7 8 9 /
00 0 . =

Figura 202 - Diagrama esquemtico de uma calculadora


Fonte: Autor

O circuito inicial da calculadora (codificador) transforma uma entrada


decimal, feita atravs de um teclado, em um cdigo binrio para que o
circuito interno (processador aritmtico) processe e realize a operao
desejada. O resultado da operao em binrio transformado por um circuito
(decodificador) em uma sada decimal, em uma forma compatvel para que o
mostrador apresente os algarismos.
importante, entretanto, ressaltar que os termos codificador e decodificador
se diferenciam em funo do referencial (qual o cdigo de entrada e qual o cdigo
de sada), sendo comum o uso do termo decodificador para ambas as operaes.
Muitas vezes utilizamos o termo conversores de cdigo para evitar problemas
com a definio dos cdigos.

4.6.1 Cdigos numricos e alfanumricos

Quando representamos informaes atravs de smbolos, chamamos o grupo


de smbolos de cdigo e dizemos que a informao est sendo codificada. As
letras que compem este texto so exemplos de cdigos. Cada letra um smbolo
que, junto a outros, tem um significado.
Nos sistemas digitais existe a necessidade de representar nmeros,
quantidades, textos, imagens, vdeos e sons, dentre outras informaes,
atravs de smbolos que possam ser armazenados, processados e transmitidos
atravs de sinais digitais.
J vimos que os sistemas digitais so adequados para o uso de nmeros
binrios nas operaes internas, porm somos educados desde a infncia a contar
usando o sistema decimal.

Discuta com seus colegas sobre a frase que segue: Existem


SAIBA 10 tipos de pessoas: As que conhecem nmeros binrios e as
MAIS que no conhecem nmeros binrios.
AUTOMAO INDUSTRIAL
184

Imagine que todo este texto que voc est lendo foi gerado e armazenado em
um computador. Cada letra do texto representada, em uma tabela padronizada,
por um cdigo binrio, que armazenado em um dispositivo digital.

A tabela ASCII (acrnimo para American Standard Code for


Information Interchange) um padro de codificao de
VOC caracteres de oito bits baseada no alfabeto ingls, onde os
SABIA? cdigos representam caracteres? Exemplo: Na tabela ASCII,
a letra H maiscula e representada pelo cdigo 72, que em
binrio 01001000.

Dispositivos digitais de codificao/decodificao so usados para transformar


uma combinao especfica (geralmente binria) em outra, com o intuito de
permitir a troca de informao e integrao de sistemas diferentes.
O cdigo numrico mais simples consiste na representao de um nmero
inteiro por uma palavra de cdigo que a sua representao em binrio. Se
cada palavra tem um comprimento constante, o cdigo denomina-se Cdigo
Binrio Natural (CBN). (Tabela 14)
Tabela 14: Cdigo binrio natural de 4 bits
Nmero decimal CBN de 4 bits Nmero decimal CBN de 4 bits
0 0000 8 1000
1 0001 9 1001
2 0010 10 1010
3 0011 11 1011
4 0100 12 1100
5 0101 13 1101
6 0110 14 1110
7 0111 15 1111
Fonte: Autor

Para enfatizar o uso de 4 bits, representamos os nmeros binrios com


ZEROS esquerda, embora estes no alterem o valor representado em
sistemas onde o dgito menos significativo est direita. Portanto, o nmero
decimal 2 representado em binrio por 0010, ou, ainda, 10 se sumprimidos
os zeros esquerda.

4.6.2 Cdigo BCD (Binary Coded Decimal)

Durante a evoluo do ser humano foram utilizadas vrias formas de


representao numrica. Nmeros romanos ainda so usados para representar
sculos. Os sumrios usavam bases distintas na mesma representao numrica,
empregando smbolos para mltiplos de 5, 12 e 60.
4 Sistemas digitais
185

Prevalecendo o sistema decimal, que utiliza 10 dgitos (de 0 a 9),


provavelmente pela adequao soma de dedos das mos. O uso da
representao de nmeros maiores acabou utilizando-se da extenso do
sistema numrico decimal.
Porm, os sitemas digitais requerem uma reinveno na forma de contar.
Computadores no possuem 10 dedos, como os seres humanos, mas possuem
caractersticas eltricas onde o sistema binrio o melhor representado.
Durante a converso de nmeros decimais para binrio, e vice-versa,
encontramos algumas formas para faz-lo de forma mais fcil. Se cada
algarismo de um nmero decimal representado por seu binrio equivalente,
o resultado o cdigo BCD (Binary-coded decimal). Uma vez que o sistema
decimal composto de 10 dgitos, quatro bits so necessrios para a
codificao (24 bits = 16 possibilidades).
Existem diversos cdigos BCD, o mais comum BCD 8421. Os nmeros indicam
os valores dos algarismos de acordo com sua posio (23, 22, 21, 20). Entre os vrios
outros cdigos temos BCD 7421, BCD 5211 e o BCD 2421. A converso destes
cdigos para o sistema decimal anloga converso do BCD 8421. (Figura 203)
Ex.: (874)10
8 7 4 (874)10 = (100001110100)BCD
(874)10 = (1101100010)2
1000 0111 0100
Converso do nmero 874 e um sistema BCD 8421
Figura 203 - Cdigo BCD (Binary Coded Decimal)
Fonte: Autor

O circuito integrado 74xx45 um decodificador/driver BCD para


decimal. Chamamos um componente de driver quando ele tem a funo
de realizar a interface entre o sistema lgico e o dispositivo sensor/
atuador, geralmente provendo sinal de potncia requerida pelo dispositivo
controlado. No caso do 74xx45, alm da funo de decodificador, as sadas
suportam correntes suficientes para acionamento de LEDs, minirrels e at
alguns micromotores DC.
Consulte o datasheet do componente para maiores detalhes.
O display de 7 segmentos, como mostrado, possibilita a escrita de nmeros decimais
de 0 a 9, algumas letras e smbolos, facilitando a apresentao de informaes.
Um decodificador/driver BCD para 7 segmentos utilizado para receber
um cdigo BCD na entrada e gerar as sadas que acionam os segmentos
para apresentar o decimal correspondente. A diferena deste decodificador
para um comum que, neste caso, cada sada ativada para mais de uma
combinao de entradas. Entre os circuitos decodificadores/drivers BCD
para 7 segmentos esto o 4511, 74xx46, 74xx47 e 74xx48. (Figura 204)
AUTOMAO INDUSTRIAL
186

a
f g b

e c
d
Figura 204 - Display de 7 segmentos
Fonte: Autor

Pesquise sobre a diferena entre os displays de 7 segmentos


SAIBA ANODO COMUM e CATODO COMUM. Observe diagramas
MAIS de ligao entre estes displays e os circuitos integrados
estudados neste tpico.

4.6.3 Circuitos decodificadores

Um decodificador um circuito lgico que recebe um conjunto de


entradas, representando um nmero binrio, e ativa apenas a sada
correspondente ao nmero recebido.
O demultiplexador 74xx138, por exemplo, pode ser usado como um
decodificador. Possui 3 entradas (A0, A1 e A2) e 8 sadas (O0 a O7). Com as 3 entradas,
h 8 combinaes possveis, e cada combinao faz referncia a uma possvel sada.

00

01
E3
02
E2
ENABLE
E1 03

SADA
04

A0 05

ENTRADAS DE A2 06
SELEO
07
A1

Figura 205 - Circuitos decodificadores


Fonte: Autor

Alguns decodificadores possuem uma ou mais entradas ENABLE (HABILITAO),


que so utilizadas para controlar a operao do circuito. O cdigo de entrada
aplicado em A2 A1 A0 sendo A2 o MSB (bit mais significativo). Analisando o
diagrama possvel observar que as sadas so ativas em nvel baixo, isto , o
cdigo de entrada ativar a sada correspondente e essa passar a ter nvel lgico
baixo; as demais sadas permanecem em alto. (Figura 206)
4 Sistemas digitais
187

Vcc

123

E
A2
CDIGOS
A1 DECODIF/DEMUX
DE
74 XX 138
SELEO
A0

O0 O1 O2 O3 O4 O5 O6 O7

E1 E2 E3 Sadas

0 0 1 Respondem ao cdigo de entraga A2 A1 A0


1 X X Desabilitadas - todas em nvel alto
X 1 X Desabilitadas - todas em nvel alto
X X 0 Desabilitadas - todas em nvel alto

Figura 206 - Decodificador 74xx138, diagrama lgico e tabela verdade em relao s entradas de habilitao (enable)
Fonte: Autor

As entradas E1 , E2 e E3 so entradas de habilitao, separadas e combinadas


em uma porta AND. Para possibilitar que as portas NAND respondam ao
cdigo de entrada A 2 A 1 A 0, a sada da porta AND deve estar em nvel alto,
o que s ocorre quando E1 = E2 = 0 e E 3 = 1. Se uma ou mais das entradas
de habilitao estiverem inativas, a sada da AND estar em nvel baixo,
forando todas as sadas para seus estados inativos, como verificado na
tabela verdade.
Como exemplo de aplicao, vamos propor o controle de um motor de passo,
onde 4 bobinas so acionadas em sequncia para obter o movimento desejado.
Como desejamos acionar somente uma bobina por vez, o uso de um decodificador
permite que duas sadas digitais sejam suficientes para o controle deste dispositivo.
Sadas
Entradas

S0

E0 S1
S2
E1
S3

Circuito
Controlador Decodificador Motor de passo
amplificador

Figura 207 - Esquema de ligao de um decodificador de 2 bits para controlar at 4


sadas, usadas em um motor de passo de 4 bobinas
Fonte: Autor

Observe que, sem o uso do decodificador, seriam necessrias 4 sadas digitais


para o controle do motor de passo. Portanto, uma das principais aplicaes de
codificadores e decodificadores para a otimizao de entradas e sadas digitais
de sistemas de controle.
AUTOMAO INDUSTRIAL
188

4.6.4 Circuitos codificadores

Um codificador um circuito que realiza a operao inversa do decodificador;


ou seja, o acionamento de uma das entradas gera um cdigo de N bits na sada,
correspondente entrada ativada.
A Figura 208 a seguir apresenta o diagrama geral de um codificador com M
entradas e N sadas.

I0 O0

Controlador
entradas
I1 O1

sadas
M * *

N
* *
I M-1* *
O N-1
M entradas com apenas
Cdigo de sada
uma entrada em nvel
de N bits
ALTO de cada vez

Figura 208 - Diagrama geral de um codificador


Fonte: Autor

Imagine a seguinte situao: uma chave seletora de 8 posies em um painel de


um equipamento. Cada posio da chave gera um sinal e uma sada. (Figura 209)

S4
S3 S5
S2 S6
S1 S7
S0
24V
comum

Chave Seletora
Figura 209 - Painel de equipamento com chave seletora de 8 posies
Fonte: Autor

Observando a Figura 209, necessitariamos 8 entradas digitais para ligar


esta chave diretamente a um dispositivo de controle, no caso um CLP. Como
as entradas digitais so limitadas (finitas), utilizar 8 entradas digitais pode
ser um problema. (Figura 210)

S4
S3 S5
S2 S6
Codificador

S1 S7
S0
24V
comum

Chave Seletora

Figura 210 - CLP usando 3 entradas digitais para ler sinal de 8 diferentes combinaes possveis
Fonte: Autor
4 Sistemas digitais
189

Embora sejam bastante versteis, circuitos integrados


FIQUE codificadores e decodificadores so meramente circuitos
combinacionais de sinal, e no so adequados para sinais
ALERTA de tenso ou corrente elevada. Se necessario, utilize
configuraes com circuitos de proteo e amplificao.

Considere o codificador de 8 para 3 linhas mostrado na Figura 211, em que o


acionamento de uma das 8 entradas gera um cdigo de 3 bits na sada. (Tabela 15)
A0
A1
A2 O0 (LSB)
A3
A4 O1
A5
A6 O2 (MSB)
A7

Figura 211 - Codificador de 8 para 3 linhas


Fonte: Autor

Tabela 15: Verdade de um codificador com entradas negadas


A0 A1 A2 A3 A4 A5 A6 A7 O2 O1 O0

X 1 1 1 1 1 1 1 0 0 0
X 0 1 1 1 1 1 1 0 0 1
X 1 0 1 1 1 1 1 0 1 0
X 1 1 0 1 1 1 1 0 1 1
X 1 1 1 0 1 1 1 1 0 0
X 1 1 1 1 0 1 1 1 0 1
X 1 1 1 1 1 0 1 1 1 0
X 1 1 1 1 1 1 0 1 1 1
Fonte: Autor

Atravs do circuito, fcil verificar que qualquer uma das entradas produz um
cdigo binrio na sada, correspondente a ela. Mas o que acontecer se duas ou mais
entradas forem acionadas simultaneamente? Esta uma desvantagem dos circuitos
codificadores simples. Uma verso modificada, denominada codificador de prioridade,
inclui uma lgica que garante que, quando duas ou mais entradas forem ativadas ao
mesmo tempo, o cdigo na sada corresponder entrada de nmero mais alto.

4.7 Flip-flop (multivibrador biestvel)

Flip-flop um circuito bastante comum em sistemas digitais, e tem


comportamento de um multivibrador biestvel. Chamamos de multivibrador, pois
o circuito possui basicamente dois estados possveis, podendo fazer a transio
de um para outro estado, e biestvel porque a transio entre os estados ocorre
somente com impulsos externos.
AUTOMAO INDUSTRIAL
190

O circuito aciona ao receber um pulso em uma entrada (set), e desaciona ao


receber um pulso em outra entrada (reset). Isso faz com que tal configurao de
hardware funcione como uma memria de 1 bit. Em circuitos digitais, flip-flops
so implementados geralmente com esta finalidade.
Geralmente, flip-flops so implementados na forma de circuitos integrados e,
portanto, necessitam de alimentao geralmente no superior a 5V.
Um flip-flop possui dois estados de sada. A mudana destes estados de sada
determinada por eventos externos. Alguns circuitos de flip-flop possuem uma
entrada para ativar e outra para desativar a sada. Outros circuitos usam a mesma
entrada para isso, sendo que um pulso aciona e outro pulso desaciona. Existem,
ainda, circuitos que dependem de um sinal de clock (chamados de sncronos),
onde um pulso determina os momentos das transies.

O primeiro flip-flop eletrnico foi inventado em 1919, por


William Eccles e F. W. Jordan. Ele foi inicialmente chamado
VOC de circuito de disparo Eccles-Jordan, porm o nome
SABIA? flip-flop devido ao som produzido em um alto-falante
conectado sada do circuito.

4.7.1 Flip-flop RS (reset-set)

A lgica RESET-SET a mais comum. Uma entrada S(set) usada para ativar a
sada, e uma entrada R(reset) utilizada para desativ-la.
O circuito para um flip-flop RS assncrono (sem clock) pode ser implementado
utilizando-se portas NOR, como mostrado na Figura 212:
a) b)
S Q
1 R Q

2 Q S Q
R
Figura 212 - Flip-flop RS - a) implementao do circuito com portas NOR - b) smbolo lgico
Fonte: Autor

Para realizar a anlise do circuito, considere a Tabela 16 verdade que segue.


Tabela 16: Verdade para o flip-flop RS implementado com portas NOR
Entradas sadas operaes observaes
R S Q Q
0 0 Qanterior Qanterior Conservao As sadas mantm seus estados anteriores.
0 1 1 0 Estabelecimento Sada Q fixa seu valor em 1, independente do
valor anterior.
1 0 0 1 Restaurao Sada Q fixa seu valor em 0, independente do
valor anterior.
1 1 0 0 Proibido Combinao proibida para biestveis RS.
Fonte: Autor
4 Sistemas digitais
191

Outro circuito possvel para a construo de um flip-flop RS assncrono pode


ser implementado utilizando-se portas NAND, como mostrado abaixo:
a) b)
S Q R Q

Q S Q
R

Figura 213 - Flip-flop RS - a) implementao do circuito com portas NAND - b) smbolo lgico
Fonte: Autor

A anlise deste circuito pode ser feita de forma anloga realizada


anteriormente, entretanto devemos atentar para o fato de que neste circuito as
entradas so invertidas, e a inverso faz com que tenhamos uma tabela verdade
para o circuito como a apresentada na Tabela 17:
Tabela 17: Verdade para o flip-flop RS implementado com portas NAND
Entradas sadas operaes observaes
S R Q Q
0 0 0 0 Proibido Combinao proibida para biestveis RS.
0 1 1 0 Estabelecimento Sada Q fixa seu valor em 1, independente do
valor anterior.
1 0 0 1 Restaurao Sada Q fixa seu valor em 0, independente do
valor anterior.
1 1 Qanterior Q anterior Conservao As sadas mantm seus estados anteriores.

Fonte: Autor

4.7.2 Flip-flop RS sncrono

O flip-flop RS sncrono assim chamado porque, alm das entradas reset (R) e
set (S), possui uma terceira entrada chamada clock (CLK), atravs da qual um sinal
externo determina o instante em que as sadas sero atualizadas. O circuito para
esse flip-flop apresentado na Figura 214:
a) b)
S
Q R Q
CLK CLK
Q S Q
R

Figura 214 - Flip-flop RS sncrono - a) implementao do circuito com portas lgicas - b) smbolo lgico
Fonte: Autor

Analisando o circuito podemos observar que, quando a entrada CLK est em


nvel lgico baixo, as sadas permanecem inalteradas, independentemente do
valor colocado nas entradas R e S. Isto , quando CLK = 0, as entradas R e S so
inibidas e, por essa razo, a operao chamada de inibio.
AUTOMAO INDUSTRIAL
192

Entretanto, quando a entrada CLK est em nvel lgico alto, temos o


funcionamento de um flip-flop RS conforme estudado anteriormente, com as
entradas R e S, juntamente com o estado anterior das sadas, definindo o estado
atual das sadas.
Ou seja, a atualizao do estado das sadas sincronizada atravs do sinal
de clock (CLK), o qual determina quando as entradas R e S podem atuar. A
tabela verdade resume o funcionamento desse circuito lgico e pode ser
conferida na Tabela 18:
Tabela 18: Verdade para o flip-flop RS sncrono
Entradas sadas operaes observaes
CLK R S Q Q
0 X X Qanterior Q anterior Inibio As sadas permanecem inalteradas.

1 0 0 Qanterior Q anterior Conservao As sadas mantm seus estados anteriores.

1 0 1 1 0 Estabelecimento Sada Q fixa seu valor em 1, independente do


valor anterior.
1 1 0 0 1 Restaurao Sada Q fixa seu valor em 0, independente do
valor anterior.
1 1 1 0 0 Proibido Combinao proibida para biestveis RS.
Fonte: Autor

4.7.3 Flip-flop JK

O flip-flop RS estudado anteriormente apresenta como grande


desvantagem a proibio para uma dada combinao das entradas R e S.
Com o objetivo de corrigir esse problema foi implementado o flip-flop JK,
cujo diagrama lgico mostrado abaixo. Esse circuito uma variao do
flip-flop RS sncrono, onde foi realizada uma nova ligao (realimentao)
entre as sadas e as portas de entrada. (Figura 215)

J
(set) Q
CLK
Q
K
(reset)

Figura 215 - Implementao do circuito de um flip-flop JK com portas lgicas


Fonte: Autor

O funcionamento do flip-flop JK assemelha-se ao do flip-flop RS, com as


entradas J e K operando como entradas set e reset, respectivamente. A exceo
do funcionamento do circuito est na condio proibida para o RS. No flip-flop JK,
quando as entradas esto em J = 1 e K = 1 e o pulso de clock muda de 0 para 1, as
sadas se complementam, isto , passam de 0 e 1 para 1 e 0, ou vice-versa.
4 Sistemas digitais
193

O problema neste circuito que a condio em questo (J = 1 e K = 1) causa


sucessivas complementaes nas sadas enquanto o pulso de clock estiver em
nvel lgico alto. Essas complementaes constituem uma oscilao, ou seja, uma
instabilidade no circuito, situao no desejvel para um circuito biestvel. (Tabela 19)
Tabela 19: Verdade para o flip-flop RS sncrono
Entradas sadas observaes
CLK J K Q Q
0 X X Qanterior Q anterior As sadas permanecem inalteradas.

1 0 0 Qanterior Q anterior As sadas mantm seus estados anteriores.

1 0 1 0 1 Sada Q fixa seu valor em 0, independente do


valor anterior.
1 1 0 1 0 Sada Q fixa seu valor em 1, independente do
valor anterior.
1 1 1 Q anterior Qanterior Oscilao
Fonte: Autor

4.7.4 Flip-flop JK mestre-escravo (master-slave)

O flip-flop JK mestre-escravo uma implementao que visa eliminar a


oscilao no circuito anterior para a condio J = 1 e K = 1. O circuito consiste
em dois flip-flops RS sncronos conectados em cascata, com uma porta inversora
entre o clock do primeiro flip-flop (mestre) e o clock do segundo flip-flop (escravo),
alm de uma segunda realimentao entre as sadas e as portas de entrada. Esse
circuito apresentado na Figura 216.
Mestre Escravo

J x
Q
CLK
CLK

Q
K y

Figura 216 - Implementao do circuito de um flip-flop JK mestre-escravo


Fonte: Autor

Para entender por que a oscilao no ocorre neste circuito como no caso anterior,
precisamos analisar seu funcionamento para a condio J = 1 e K = 1:
Quando a entrada de clock do circuito est em nvel lgico alto (CLK = 1), o flip-
flop mestre est habilitado e as sadas intermedirias X e Y se complementam.
Entretanto o clock do flip-flop escravo est em nvel lgico baixo, o que faz com
que esteja desabilitado. Portanto, as sadas no sofrem alterao e a realimentao
delas com a entrada do circuito no provoca mais alteraes em X e Y.
AUTOMAO INDUSTRIAL
194

Quando a entrada de clock do circuito est em nvel lgico baixo (CLK = 0), o flip-
flop escravo est habilitado e as sadas Q e Q sofrem alterao. Entretanto, como
o flip-flop mestre est desabilitado, a alterao nas entradas provocada pela
realimentao no tem efeito sobre as sadas X e Y.
Ou seja, na condio J = 1 e K = 1, as sadas X e Y alteram-se somente na subida
do pulso de clock, enquanto que as sadas Q e se alteram somente na descida do
pulso de clock. Abaixo, na Tabela 20, apresentada a tabela verdade para um flip-
flop mestre escavo, e na Figura 217, seu smbolo lgico.
Tabela 20: Verdade para o flip-flop RS sncrono
Entradas sadas observaes
CLK J K Q Q
0 X X Qanterior Q anterior As sadas permanecem inalteradas.

0 0 Qanterior Q anterior As sadas mantm seus estados anteriores.

0 1 0 1 Sada Q fixa seu valor em 0, independente do valor anterior.


1 0 1 0 Sada Q fixa seu valor em 1, independente do valor anterior.
1 1 Q anterior Qanterior As sadas se complementam
Fonte: Autor

J Q
CLK
K Q
Figura 217 - Smbolo lgico de um flip-flop JK mestre-escravo
Fonte: Autor

VOC Um flip-flop sncrono pode ser sensvel borda de descida


SABIA? ou borda de subida.

Existem modelos de flip-flop cujas sadas respondem combinao das


entradas quando ocorre a subida do pulso de clock (transio positiva), e outros
modelos (como o demonstrado anteriormente) so sensveis borda de descida
do pulso de clock (transio negativa).
A diferena entre os flip-flops pode ser observada na entrada de clock no
smbolo lgico do componente: (Figura 218)

J Q J Q
CLK CLK
K Q K Q

Transio Transio
negativa positiva
Figura 218 - Flip-flop sensvel borda
Fonte: Autor
4 Sistemas digitais
195

4.7.5 Flip-flop JK mestre-escravo com preset e clear

A incluso das entradas preset (PR) e clear (CL) no flip-flop JK mestre-escravo


tem como efeito a determinao do valor lgico das sadas, independente da
combinao das entradas J e K e do pulso de clock. Na Figura 219 apresentado
o circuito para esse flip-flop: (Tabela 21)
PR
a) b)
J x PR
Q J Q
CLK
CLK CLK
Q
K y K Q
CL

CL

Figura 219 - Flip-flop JK mestre-escavo com entradas Preset e Clear - a) implementao do circuito com
portas lgicas - b) smbolo lgico
Fonte: Autor

Tabela 21: Verdade para o flip-flop JK mestre-escravo com preset e clear


A tabela verdade para esse circuito pode ser escrita como segue. importante
observar, para esse circuito, que a ativao simultnea das entradas de preset e
clear (PR = 0 e CL = 0) gera um novo erro lgico nas sadas e essa combinao
deve ser evitada.
Entradas sadas observaes
PR CL CLK J K Q Q
1 0 X X X 0 1 Clear ativo: Sada Q fixa seu valor em 0, inde-
pendente das demais entradas.
0 1 X X X 1 0 Preset ativo: Sada Q fixa seu valor em 1, inde-
pedente das demais entradas.
1 1 0 0 Qanterior Q anterior As sadas mantm seus estados anteriores.

1 1 0 1 0 1 Sada Q fixa seu valor em 0, independente do


valor anterior.
1 1 1 0 1 0 Sada Q fixa seu valor em 1, independente do
valor anterior.
1 1 1 1 Q anterior Qanterior As sadas se complementam
Fonte: Autor

4.7.6 Flip-flop D

O flip-flop tipo D uma variao do JK. Esse circuito possui uma nica entrada
de dados e uma entrada de clock. Para a implementao de um flip-flop tipo D a
partir de um JK, basta acrescentar uma porta NOT entrada K. Essa inversora ser
conectada entrada J do flip-flop, como mostrado na Figura 220 e Tabela 22.
AUTOMAO INDUSTRIAL
196

a) b)
D J Q D Q
CLK CLK
K Q Q

Figura 220 - Flip-flop tipo D - a) implementao do circuito a partir de um flip-flop JK - b) smbolo lgico
Fonte: Autor

Tabela 22: Verdade para o flip-flop tipo D


Entradas sadas
CLK D Q Q
0 0 1
1 1 0
Fonte: Autor

Analisando o circuito, observamos que, aps o pulso de clock, o flip-flop apenas


armazena o valor da entrada D. Por essa razo, o flip-flop tipo D chamado de
latch (memria). preciso lembrar que, comercialmente, esto disponveis vrios
modelos de flip-flops tipo D, podendo esses componentes apresentar, assim como
o flip-flop JK, entradas preset, clear e clock com transio positiva ou negativa.

4.7.7 Flip-flop Tipo T

O flip-flop tipo T outra variao do JK. Assim como o modelo anterior, esse
circuito tambm possui uma nica entrada de dados e uma entrada de clock.
Para a implementao de um flip-flop tipo T a partir de um JK, basta interligar as
entradas J e K, como mostrado na Figura 221.
a) b)
T J Q T Q
CLK CLK

K Q Q

Figura 221 - Flip-flop tipo T - a) implementao do circuito a partir de um flip-flop JK - b) smbolo lgico
Fonte: Autor

Uma aplicao prtica de um circuito de Flip-Flop (T) para adequar um boto


de pulso (ou circuito que gere pulso) em uma lgica liga/desliga. (Figura 222)
5V
Diodo

Rel

Boto
14
1

R1
13
2

1k5 Transistor
12
3

NPN
11
4

10
5
6

9
7

Figura 222 - Circuito com Flip-Flop J-K aplicado configurao de Toggle. CI utilizado: 74xx73
Fonte: Autor
4 Sistemas digitais
197

Analisando o circuito implementado, com base no funcionamento de um flip-


flop JK, podemos obter a seguinte tabela verdade. (Tabela 23)
Tabela 23: Verdade para o flip-flop tipo T
Entradas sadas
CLK T Q Q
0 Qanterior Q anterior

1 Q anterior Qanterior
Fonte: Autor

4.7.8 Modelos comerciais de flip-flop

Abaixo, na Tabela 24, apresentada uma tabela com alguns exemplos de modelos
comerciais de flip-flop. importante lembrar que, antes de utilizar um modelo
comercial, devemos sempre consultar o datasheet do componente para conhecer
quais os nveis lgicos de acionamento das entradas, bem como suas funes e
controles adicionais.
Tabela 24: Modelos comerciais de flip-flop
Modelo Descrio Resumida
74xx72 Flip-flip JK mestre-escravo com preset e clear
74xx73 Flip-flip JK com clear
74xx74 Flip-flip tipo D com preset e clear
74xx107 Flip-flip JK com clear
74xx109 Flip-flip JK com preset e clear
74xx111 Flip-flip JK mestre-escravo com preset e clear
74xx112 Flip-flip JK com preset e clear
74xx113 Flip-flip JK com preset
74xx114 Flip-flip JK com preset e clear
74xx171 Flip-flip tipo D com clear
74xx175 Flip-flip tipo D com clear
74xx273 Flip-flip tipo D com clear
74xx276 Flip-flip JK
74xx279 Flip-flip RS
74xx374 Flip-flip tipo D
Fonte: Autor
AUTOMAO INDUSTRIAL
198

Recapitulando

Neste captulo vimos que enquanto na Eletrnica Analgica temos como


principal objetivo controlar grandezas eltricas como corrente e tenso, na
Eletrnica Digital o principal enfoque a representao da informao e de
lgicas binrias em circuitos combinacionais e sequenciais.
A lgica utilizada em sistemas digitais a lgica booleana, criada por George
Boole, onde utilizamos operadores E (AND), OU (OR) e NO (NOT) para construir
expresses. Operadores derivados (XOR, NOR, NAND, XNOR) tambm permitem
operaes entre operadores. Os operandos so valores lgicos constitudos
de variveis binrias ou constantes, podendo valer 0 (falso) ou 1 (verdadeiro).
Componentes eletrnicos que implementam comportamento destes
operadores da lgica booleana so chamados de portas lgicas, e combinados
podem gerar circuitos mais complexos, como codificadores, decodificadores,
multiplexadores, demultiplexadores, processadores e microcontroladores,
dentre outros. Todo circuito lgico pode ser representado em uma tabela que
relaciona todos os possveis valores lgicos das entradas e sadas, sendo ela
chamada de tabela verdade.
Circuitos combinacionais so os que apresentam sadas definidas em funo
das entradas independente da ordem com que as entradas mudam. Circuitos
sequenciais, por sua vez, dependem da ordem com que as entradas so acionadas
para definir sua sada. Circutos que realizam a converso de sinais digitais em
sinais analgicos so conhecidos por conversores D/A, e os que realizam a
converso de sinais analgicos em digitais so conhecidos por conversores A/D.
Na automao industrial, circuitos combinacionais podem ser utilizados para
realizar converses, codificar e decodificar sinais, aumentar as possibilidades
de leitura de sinais atravs de tcnicas de multiplexao e demultiplexao, e
permitir a construo de sistemas de controle programveis atravs de circuitos
digitais sequenciais, como microcontroladores e microprocessadores.
4 Sistemas digitais
199

Anotaes:
Microcontroladores

5.1 Sistemas embarcados na automao industrial

Automao uma palavra derivada do latim (Automatus), e significa mover-se por


si mesmo. Um sistema automtico, portanto, o que consegue realizar uma tarefa
(geralmente associada a movimento e transformao de energia) sem a necessidade de
interferncia humana.
A Automao Industrial estuda justamente estes sistemas aplicados aos processos
industriais. Uma fbrica automatizada a que possui equipamentos automatizados em
seus processos, e um equipamento automatizado o que realiza tarefas sem a necessidade
da constante interferncia humana.
Embora o homem tenha inventado e produzido mquinas autnomas no passado
(como moinhos, sistemas de irrigao, mquinas movidas a vapor), relativamente
recente o uso de sistemas eltricos para o controle de equipamentos automatizados.
Por muito tempo, os sistemas automatizados eram geridos por cadeia de eventos
eltricos e mecnicos. Em uma mquina de lavar roupas de algumas dcadas atrs, a
sequncia de eventos realizados pelo equipamento era determinada pelos contatos
mecnicos de um cilindro de contatos. Este tambor era rotacionado por um pequeno
motor de baixa rotao, e demorava alguns minutos (ou horas) para executar um giro
completo. Dependendo da posio do tambor de contatos, algumas chaves mecnicas
eram acionadas, disparando um comportamento distinto no eletrodomstico (agitar,
centrifugar, encher, esvaziar etc.).
Na indstria, eram comuns automaes similares, onde um sensor era usado como
acionamento direto de um atuador. medida que os sistemas eram interligados, uma
reao especfica era obtida. Processos de automao mais complexos eram difceis de
ser implementados e dependiam de componentes externos, como temporizadores, rels
especiais e contadores mecnicos, dentre outros equipamentos caros, grandes, lentos e
com grande consumo de energia.
AUTOMAO INDUSTRIAL
202

Com o advento da Eletrnica, principalmente a Eletrnica Digital, o


desenvolvimento de tcnicas, a necessidade de diminuio de custos de
fabricao e a miniaturizao de componentes complexos, evolumos para
sistemas onde uma automao mais complexa geralmente dividida em
duas partes: o hardware e o software.
Milhes de transistores miniaturizados fazem parte de milhares ou
milhes de circuitos digitais que, por sua vez, esto integrados em circuitos
com alguns milmetros quadrados.
Hoje, uma mquina de lavar roupas moderna possui seus sensores e
atuadores interligados a um computador central, na forma de uma placa
de circuito impresso com alguns componentes pequenos e de baixo custo.
Praticamente no h trabalho mecnico nesta placa. A sequncia das
atividades determinada por um programa (software) gravado em circuitos
computacionais baratos, permitindo muito mais flexibilidade aos sistemas,
agregando funcionalidades que antes no existiam, de menor tamanho,
menor consumo de energia, mais rpidos, diminuindo tambm, na maioria
dos casos, o custo de fabricao.
Na indstria, sistemas computacionais so utilizados nos mais diversos
segmentos, desde controlar o movimento de uma esteira para que ela mantenha
uma velocidade constante at grandes sistemas logsticos que regulam o fluxo de
matria-prima e produtos de forma a otimizar o transporte e economizar energia.
Portanto, a Automao Industrial moderna dependente de circuitos
computacionais compostos de pequenos componentes eletrnicos, onde
so ligados os sensores e atuadores, e onde instalamos o programa (software)
que determinar as regras de funcionamento.
Inicialmente, estes circuitos eram produzidos sob medida, dependendo
das necessidades de cada automao. Com o tempo, alguns fabricantes
passaram a produzir sistemas padronizados de automao. Hoje, os PLCs
(ou CLPs) so equipamentos que seguem alguns padres, sendo oferecidos
em vrias verses, variando conforme a quantidade e os tipos de entradas e
sadas, a capacidade de processamento, a velocidade e outras caractersticas.
Embora sejam largamente usados, os CLPs so relativamente caros e
podem apresentar limitaes de velocidade e tamanho. Nestes casos, ainda
so necessrias implementaes de sistemas automatizados sob medida.

5.1.1 Microprocessadores na Automao Industrial

Antes de entender a aplicao dos microcontroladores na automao,


precisamos conhecer um pouco mais sobre eles.
5 Microcontroladores
203

Inicialmente, os sistemas automatizados eram independentes de software


e seu comportamento era dado pela interligao dos componentes eltricos,
mecnicos e eletrnicos. A Eletrnica Analgica era largamente empregada, os
sistemas eram difceis de ser implementados e bastante inflexveis.
Com o surgimento da Eletrnica Digital, manipular informao em nvel
eltrico ficou mais fcil. Porm, foi com o surgimento dos processadores que
houve um grande salto. A partir deste momento, um circuito integrado poderia
ser usado para controlar o funcionamento de vrios sistemas distintos. O
mesmo processador utilizado para automatizar uma mquina de fabricao
de robs era utilizado para a automao de alguns eletrodomsticos (como
mquinas de lavar roupas), ou, ainda, em telefones pblicos, em pequenos
computadores pessoais, em videogames e em sistemas automotivos. Um
exemplo clssico o processador Z80, da Zilog, que equipava os painis
de controle de grandes mquinas de fabricao, centrais telefnicas,
eletrodomsticos e at videogames.

SAIBA Pesquisando na internet sobre a aplicao dos


MAIS microprocessadores 8080 e Z80, e a diferena entre eles.

Mas, como um mesmo componente poderia ser to verstil? Como


um mesmo processador poderia ser usado em equipamentos com
funcionalidades to diferentes? O microprocessador, de forma geral, um
componente eletrnico capaz de ler e gerar sinais eltricos de acordo com
uma lista de instrues conhecida como programa, e os equipamentos
automatizados so basicamente compostos de sensores e atuadores. Como
a automao destes equipamentos definida pelas aes efetuadas nos
atuadores em funo das informaes coletadas pelos sensores, bastava
realizar a integrao do microprocessador com estes sensores e atuadores e
program-lo com o comportamento necessrio.
Analisando assim at parece fcil. O problema que, para criar um sistema de
automao, so necessrias algumas capacidades ao ser humano:
Conhecer Eletrnica Analgica e Digital.
Conhecer tcnicas de programao. Criar programas eficientes e sem falhas.
Ser capaz de integrar os sensores e atuadores (seus sinais, nveis de tenso,
corrente etc.) aos circuitos computacionais.
Ser
capaz de implementar circuitos de apoio, utilizados para temporizar,
converter sinais, codificar sinais etc.
AUTOMAO INDUSTRIAL
204

J vimos um pouco dos conceitos mais importantes da Eletrnica


Analgica e Digital, e conhecemos alguns sensores e algumas estratgias
de acionamento que podem ser utilizadas por circuitos de controle. Vimos
tambm alguns circuitos digitais que podem ser utilizados com circuitos de
apoio, como codificadores, multiplexadores, conversores etc.
Neste captulo vamos percorrer mais uma parte deste caminho e, junto
aos contedos estudados em outros captulos e unidades curriculares,
buscaremos um entendimento mais amplo sobre o tema. Nosso foco ser
no estudo de tcnicas de programao, voltado ao desenvolvimento de
sistemas de automao utilizando microcontroladores.

5.2 Microcontrolador

Com o passar dos anos, os circuitos computacionais ficaram cada vez


mais baratos, rpidos e poderosos. Os microprocessadores acabaram sendo
aplicados cada vez mais em sistemas onde o processamento da informao
e clculos complexos eram seu principal objetivo, sendo empregados
em equipamentos onde a informao o foco principal. Um computador
moderno utiliza mais de um processador para realizar suas tarefas de forma
eficiente. Aparelhos de telefonia mvel so verdadeiros computadores de
bolso, agregando muitas funcionalidades.
Alguns microprocessadores, no entanto, evoluram com foco no controle,
agregando funcionalidades relativas aos sinais digitais e analgicos. Com
menor poder computacional, mas com mais funes relativas ao controle
de dispositivos, estes passaram a ser chamados de microcontroladores.
Geralmente, microcontroladores so microprocessadores com funes
de controle embutidas, podendo possuir memria interna, conversores,
codificadores, timers e outros recursos j integrados no prprio componente.
Antes de tudo, vamos esclarecer que um microcontrolador algo muito
mais elaborado do que um microprocessador. Um microprocessador
(conhecido pela sigla MPU) um circuito integrado destinado a processar
dados, fazendo essencialmente clculos matemticos e lgicos. J um
microcontrolador (conhecido pelo termo MCU) possui, integrado ao seu
ncleo, um microprocessador, onde, atravs de uma CPU - Central Processing
Unit, ou unidade central de processamento, so realizadas operaes lgicas
e aritmticas e o processamento das instrues. Dentro do microcontrolador
ainda h uma pequena quantidade de memria para armazenar o programa
e variveis usadas para clculos e armazenamento de dados, conversores
A/D, contadores, interfaces de comunicao padronizadas para realizar a
integrao com dispositivos externos, dentre outros possveis recursos no
existentes em um microprocessador.
5 Microcontroladores
205

Alguns chamam os microcontroladores de computadores em um chip,


devido ao seu alto grau de integrao, unindo vrios perifricos, memria
RAM, ROM e CPU em um nico dispositivo.
De fato, esta integrao traz vantagens e desvantagens. Como
desvantagem, o fato de no poder modificar um elemento do processo, e
o menor poder de processamento se comparado com microprocessadores.
Isso compensado pelo grande nmero de alternativas do mercado e pela
versatilidade e diminuio de tamanho e custo.
Por isso os microcontroladores so to versteis. Esto presentes em
quase todos os produtos de nosso dia a dia.
Exemplo de produtos que utilizam microcontroladores e suas aplicaes:
1) Forno de micro-ondas: o microcontrolador controla o painel, o
funcionamento dos atuadores internos responsveis pelo aquecimento,
gerenciando o funcionamento do equipamento.
2) Controlador de semforo: MCUs so usadas para controlar os sinais
de trnsito, atuando de forma integrada, comunicando-se um com o outro,
permitindo controle centralizado para um melhor fluxo de veculos.
3) Automveis: a rea automotiva grande consumidora de
microcontroladores, que so usados para gerenciar o funcionamento
do motor, em sistemas e alarme, computadores de bordo, sistemas de
abertura e fechamento dos vidros, dentre outras funcionalidades. Em alguns
automveis modernos so usadas algumas dezenas de microcontroladores
para as mais diversas funes, desde funes de conforto (como climatizao
e programao de ajustes ergonmicos) at funes de segurana (como
controle de estabilidade e frenagem ABS).
4) Sistemas de controle de acesso: desde o relgio ponto, que realiza o
controle do horrio da entrada e sada de um funcionrio de uma empresa,
at sistemas que liberam acesso a portas e cofres atravs da digitao de
senhas, ou reconhecimento biomtrico.
5) Controladores de temperatura: dispositivos independentes providos
de uma lgica que permite ativar ou desativar alguns dispositivos em funo
da leitura de sensores especficos.
6) Contadores: dispositivos que permitem a contagem de pulsos
provenientes de uma entrada. Podem possuir sadas digitais configurveis
para serem acionadas quando um determinado nmero de pulsos for atingido.
7) Timers e hormetros: temporizadores que podem funcionar como
contadores progressivos ou regressivos e podem ser configurados para
realizar acionamentos em funo do tempo.
AUTOMAO INDUSTRIAL
206

Quanto aos fabricantes de microcontroladores, hoje existem dezenas de


fabricantes, dentre os quais podemos citar os mais famosos:
INTEL A pioneira em microprocessadores fabricou o microcontrolador
8051, que fez muito sucesso na dcada de 80 e 90 no Brasil. Ainda hoje
utilizado em suas verses, e tem grande validade didtica devido
quantidade de informao relativa ao seu uso.
ATMEL Seu forte so microcontroladores ATMega, de 8 bits, similares
ao 8051, e de baixo custo.
MICROCHIP Fabricante do famoso PIC, um microcontrolado bastante
verstil e de baixo custo, bastante difundido.
FREESCALE Surgiu como diviso de semicondutores da Motorola.
NXP Antiga Philips Semiconductor, referncia na produo de
microcontroladores de alto desempenho.
TEXAS INSTRUMENTS Dentre seus produtos de sucesso podemos citar
os microcontroladores MSP.
ZiLOG Fabricante do antigo processador Z80, mas ainda um forte
atuante em sistemas embarcados com seus microcontroladores eZ80.
Dentre tantos fabricantes, citamos alguns. Cada um deles, produz uma
quantidade considervel de modelos e variantes de microcontroladores.
Vamos nos ater a um fabricante. Devido a sua larga utilizao, custo
baixo e abrangncia das ferramentas existentes no mercado, utilizaremos os
microcontroladores da MICROCHIP como nosso objeto de estudo.
Devemos ressaltar que os contedos aqui abordados podero ser aplicados
em modelos de outros fabricantes, em alguns casos com algumas modificaes.

5.3 Microcontrolador MICROCHIP PIC

Microcontroladores PIC so os produtos fabricados pela Microchip


Technology, disponveis em famlias e modelos que podem atuar com dados
a 8, 16 e 32 bits. O nome PIC significa Programmable Interface Controller
(Controlador de Interface Programvel) e conta com uma grande e variada
lista de modelos, cada um com diferentes caractersticas de capacidade de
memria e perifricos.
Como o processamento da informao (dados) e das instrues ocorre de
forma conjunta, um processador de 8 bits pode ocorrer em 12, 14 ou 16 bits, sendo
que os bits adicionais so reservados para indicar a instruo que ser utilizada.
5 Microcontroladores
207

Importante: Da mesma forma que podemos realizar multiplicao


usando somas sucessivas, um microcontrolador com menos instrues pode
realizar instrues mais complexas atravs da execuo de vrias instrues
mais simples. Isso, porm, toma tempo e memria. Esta a vantagem de
microcontroladores com mais instrues. (Figura 223)

bits
32-
PIC32
dsPIC33
b its
16- dsPIC30
Funcionalidade

PIC24H
PIC24F
s
8-bit PIC18
PIC16
PIC12
PIC10

Performance

Figura 223 - Grfico de Aplicaes de microcontroladores PIC por famlia


Fonte: www.microchpp.com, acesso em 28 mar. 2012

Podemos separar as famlias de microcontroladores PIC em:


Famlias 8 bits: PIC10, PIC12, PIC16 e PIC18
Famlias 16 bits: PIC24F, PIC24H, dsPIC30, dsPIC33
Famlias 32 bits: PIC32
Assim como outros componentes eletrnicos, os microcontroladores
podem ser oferecidos em encapsulamentos diferentes. Isso significa que o
formato fsico externo pode variar de acordo com a forma de montagem do
componente. Embora o encapsulamento possa mudar, um mesmo modelo
de microcontrolador manter as caractersticas internas independentemente
do seu formato externo.
Para efeito didtico, em atividades prticas recomendado estudar o
microcontrolador no formato DIP.
Da mesma forma que em um modelo de automvel, onde podemos ter
vrias verses (dependendo dos opcionais, potncia do motor etc.), nos
microcontroladores PIC, em uma mesma famlia, vamos encontrar diversas
verses, variando em recursos, quantidade de entradas e sadas e quantidade
de memria, dentre outros.
AUTOMAO INDUSTRIAL
208

5.3.1 Recursos de um microcontrolador PIC

Dada a diversidade de modelos, vamos listar os recursos inerentes aos


microcontroladores e suas respectivas definies.
Memria ROM: Um dos principais recursos de um microcontrolador,
a memria onde gravamos o programa. Embora a sigla ROM signifique
READ ONLY MEMORY (memria somente de leitura), em alguns modelos
esta memria pode ser apagada e regravada durante o procedimento
de programao do microcontrolador. Modelos de menor custo
permitem que esta memria s seja gravada uma nica vez. Felizmente,
os microcontroladores PIC que possuem F no nome (como PIC16F877A,
PIC18F4520, PIC16F628) podem ser gravados e regravados uma grande
quantidade de vezes.
Memria RAM: Responsvel pelo armazenamento temporrio de dados,
esta memria armazena variveis com dados e informaes. uma
memria de acesso rpido, porm voltil; ou seja, seu contedo perdido
quando o microcontrolador desligado. Enquanto computadores
possuem gigabytes de memria RAM, um microcontrolador possui,
internamente, alguns bytes (podendo chegar a alguns Kbytes em
modelos maiores).
Entradas e sadas digitais (I/Os): As entradas e sadas digitais so os pinos
que podem ser usados como sada (outputs), podendo ser ativados ou
desativados pelo programa durante sua execuo, ou pelas entradas
(inputs) onde devero estar conectados os perifricos de entrada
(sensores). Geralmente um microcontrolador bastante flexvel neste
ponto, onde um terminal (pino) pode ser configurado como entrada
ou como sada, podendo ainda variar seu comportamento durante a
execuo do programa. Alguns microcontroladores possuem mais IOs
(leia ais, que significa Inputs/Outputs = entradas/sadas) do que
outros, sendo importante observar o nmero necessrio e as estratgias
de conexo com os perifricos para escolher um microcontrolador que
oferea uma boa relao custo/benefcio.
Conversor A/D: Como os j estudados conversores digitais,
geralmente um microcontrolador pode ter este recurso integrado no
prprio componente, podendo ainda estar associado a um circuito
multiplexador, permitindo que vrios pinos sejam utilizados para a
leitura de sinais analgicos. Alguns microcontroladores podem diferir
de outros em questes de velocidade e resoluo da converso, e
tambm no nmero de entradas e de canais multiplexados.
5 Microcontroladores
209

Sadas PWM (Pulse Wide Modulation): So destinados a gerar, atravs


de onda quadrada pulsante, sinais onde o tempo do sinal em nvel
alto varia de forma inversamente proporcional ao sinal de nvel baixo,
mantendo uma sada com frequncia constante, porm com tenso
mdia varivel. Desta forma, em altas frequncias de trabalho podemos
usar um microcontrolador e sua sada PWM para o controle de motores
de corrente contnua e controle de luminosidade, dentre outros.
Barramento de comunicao: So entradas e sadas digitais que atuam
em conjunto, de forma a atender um determinado padro (protocolo)
de comunicao em meio fsico. So exemplos de barramentos de
comunicao: CAN, USB, LIN, SPI, USART, I2C. Um dos barramentos mais
utilizados o USART, geralmente disponvel nos microcontroladores,
permitindo uma comunicao com perifricos atravs de portas seriais,
como RS232. CAN muito utilizado na indstria automotiva. SPI e I2C
so muito usados para comunicar com outros circuitos integrados,
como, por exemplo, para fazer com que o microcontrolador troque
dados com uma memria externa.
Timers: So temporizadores, que consistem em reas de memria cujos
dados aumentam ou diminuem sequencialmente com uma velocidade
constante, geralmente configurvel. Sabendo a velocidade em que estes
dados mudam, possvel criar linhas de programa onde pode ser feita a
comparao de valores com estes dados, de forma a detectar quando um
determinado perodo de tempo passou, ou de medir tempo entre dois
eventos distintos. Para uso dos timers so necessrios conhecimentos
especficos de programao e das caractersticas do recurso fsico, que
podem variar conforme o modelo de microcontrolador utilizado.
EEPROM: Da mesma forma que a memria ROM, esta memria no-voltil
e os dados nela armazenados no so perdidos quando o microcontrolador
desligado. Existe um limite de gravaes relacionado vida til desta
memria, mas geralmente a quantidade de gravaes elevada.
Nem todos os microcontroladores possuem todas as funes acima citadas.
Cabe ao desenvolvedor escolher um microcontrolador adequado,
analisando tambm o custo e a disponibilidade do componente.
Devido ao custo, disponibilidade, e quantidade de recursos,
utilizaremos o microcontrolador PIC16F877A em nosso percurso de estudo.
Suas principais caractersticas so:
AUTOMAO INDUSTRIAL
210

Memria ROM: Flash, regravvel, de 8 mil linhas de instrues + dados


(cada instruo + dado = 14 bits). Tem capacidade de operar a 20MHz,
conseguindo at 5MIPS (5 milhes de instrues por segundo). Possui
RAM de 368 bytes, EEPROM de 256 bytes, Interface USART, SPI, I2C. Possui
comparador e duas sadas PWM com 10 bits de resoluo, dois timers de 8
bits, e um timer de 16 bits, sendo que um timer de 8 bits pode ser usado
com a funo de contador rpido. Possui um conversor AD com 8 canais e
limite de corrente de 25mA por pino de I/O. Permite depurao no circuito,
e que o programa acesse a prpria rea de programa, tornando possvel a
autoprogramao usada em sistemas de bootloader.
O microcontrolador PIC16F877A apresentado fisicamente em configurao
de 40 pinos. Pode ser encontrado em diversos encapsulamentos: (Figura 224)

QFP PLCC

PDIP

Figura 224 - Encapsulamentos do microcontrolador PIC16F877A


Fonte: Autor

Como citado anteriormente, vamos nos ater verso DIP (ou PDIP), mais
fcil de manipular e que permite uso em placas prottipos, sendo tambm
mas facilmente encontrada em lojas de componentes eletrnicos. (Figura 225)
5V (RUN)
PROG (13,4V)
CRISTAL RESET (OV)
5V
(MHz)
PORTC PORTE PORTA
E2
E1
E0
A5
A4
A3
A2
A1
A0
D1
D0
C3
C2
C1
C0
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1

PIC16F877
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
D2
D3
C4
C5
C6
C7
D4
D5
D6
D7

B0
B1
B2
B3
B4
B5
B6
B7

PORTC PORTB
PORTD 5V

Figura 225 - Microcontrolador PIC16F877A I/P e seus principais pinos de alimentao, conexo e I/O
Fonte: Autor
5 Microcontroladores
211

Em um circuito integrado, devemos procurar a sinalizao de referncia


para numerao dos pinos. No caso do encapsulamento PDIP, acima
representado, observamos a salincia em formato de U ou de um ponto em
um dos lados do componente. Ento, devemos realizar a numerao dos
pinos em sentido anti-horrio.
PINO 1: Suporta 3 nveis de tenso. Quando este pino for submetido
a tenso de 5V, o microcontrolador entra em modo de execuo,
rodando o programa armazenado em sua memria interna (ROM). Para
realizar um reset, reiniciando a execuo do programa (como desligar
e religar o equipamento, porm de forma mais rpida), basta submeter
um pulso de 0V neste pino. Por ltimo, quando este pino for submetido
a tenso de 13,4V, o PIC entra em modo de gravao, permitindo que os
dados sejam enviados (bit a bit) pelos pinos de gravao atravs de um
protocolo (conjunto de regras de transferncia de dados) especfico.
Este recurso conhecido por ICSP.
PINOS 11 e 32: Alimentao (mximo 5V). Em alguns modelos so tolerados
picos de tenso de at 8V; aps, h dano permanente. Em outros modelos
(que possuem LF no nome, como o PIC16LF877A), o funcionamento pode
ocorrer com tenses de 3V. Isso bastante til em sistemas alimentados
por baterias. So dois pinos de alimentao e dois de GND neste modelo,
pois o barramento interno fica melhor equilibrado em termos de corrente
atravs destes dois pontos de alimentao. importante ressaltar que a
fonte de alimentao para estes dois pinos deve ser a mesma, evitando
diferenas de potencial entre eles.
PINOS 12 e 31: Referncia (GND). importante que estes dois pinos
sejam externamente ligados entre si e com a referncia de tenso.
PINOS 13 e 14: Neles estar ligado o ressonador externo (cristal de clock),
um componente necessrio neste modelo, sendo opcional em outros.
Recomendamos o o uso de um cristal de clock de 20MHz. Caso deseje
usar velocidades inferiores, no h problema, porm a velocidade de
execuo dos programas ser menor.
Os demais pinos so conhecidos por I/Os (leia Aius, que vem do ingls
Inputs/Outputs, que significa entradas/sadas). Estas I/Os so agrupadas em
PORTs (portos) de no mximo 8 pinos cada (limitao do microcontrolador
de 8 bits). H um total de 33 I/Os disponveis, que podem ser configuradas
como entradas ou sadas em tempo de execuo.
Quando um pino configurado como ENTRADA, ele pode ser conectado a
algum sensor para detectar sinais digitais atravs de variao da tenso de 0 e 5V;
quando configurado como sada, o programa poder acion-lo, e com isso gerar
uma corrente baixa (max. 25 mA) com os nveis de tenso de 0V ou 5V.
AUTOMAO INDUSTRIAL
212

Enquanto na Automao Industrial a maior parte dos


FIQUE dispositivos sensores e atuadores atuam em padres
ALERTA digitais de tenso 24V, nos microcontroladores os nveis
de tenso no podem ultrapassar 5V, sob risco de danos
permanentes ao componente.

As entradas/sadas digitais do PIC16F877A obedecem s seguintes propriedades:


1) So nominadas por uma letra e um nmero. Cada agrupamento de pinos
da mesma letra denominado PORTO (ou PORT). No microcontrolador PIC16F877A
temos o PORTA, PORTB, PORTC, PORTD e PORTE.
2) Um PORTO pode ter at 8 I/Os, embora haja alguns com menos.
3) Quando uma I/O configurada como sada, o microcontrolador tenta manter
o nvel lgico da sada, aplicando uma corrente de at 25mA no nvel de tenso
desejado pelo programa.
4) Quando uma I/O configurada como entrada, o microcontrolador deixa o
nvel de tenso do pino flutuar, variando conforme estmulos externos. Neste caso,
importante observar a necessidade de aplicao de resistores de pull-ups ou pull-
downs para definir um nvel de tenso padro, evitando rudo e falsas leituras.
5) As instrues so executadas na velocidade de operao do microcontrolador.
A 20MHz, cada instruo (em linguagem de mquina) executada em 200
nanosegundos, ou seja, um quinto de um milionsimo de segundo.
Alguns pinos podem ainda ser associados a outras funes alm de serem
entradas ou sadas digitais. No caso do microcontrolador PIC16F877A, vamos nos ater
s principais funes de apoio, como entradas analgicas, contador rpido, sadas
PWM, comunicao RS232 (USART) e pinos de gravao ICSP. Outras funes podem
existir e devem ser estudadas de forma mais aprofundada no momento que voc se
sentir mais confiante. (Figura 226)
5V (RUN)
PROG (13,4V)
5V RESET (OV)
CRISTAL(MHz)
PWM

CONT
AN7
AN6
AN5
AN4

AN3
AN2
AN1
ANO
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1

PIC16F877
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
GRAVADOR
TX (RS232)
RX (RS232)

5V
ICSP

Figura 226 - Microcontrolador PIC16f877A e alguns dos terminais de funes especiais


Fonte: Autor
5 Microcontroladores
213

Na figura acima, podemos observar que os pinos 2 a 10 (exceto o pino 6)


so entradas analgicas(AN), e podem ser usados para detectar uma variao
de tenso entre 0V e 5V, transformando esta variao em uma informao
binria de 10 bits.
Os pinos 39 e 40 so os pinos usados na gravao do microcontrolador
atravs do mtodo ICSP, que ser estudado a seguir. Estes pinos so utilizados,
junto ao pino 1, para programar o microcontrolador.
Os pinos 25 e 26 (RX, TX) so usados para comunicao SERIAL padro RS232.
Os pinos 16 e 17 so pinos geradores PWM, que similar a uma sada
analgica. Muito til para controle de velocidade de motores, por exemplo.
O pino 6 um pino usado para contagem rpida, sendo configurvel para
realizar o incremento de um timer interno atravs da deteco de pulsos.
Tradicionalmente, conhecemos os pinos do microcontrolador NO POR
SEU NMERO, mas sim por sua IDENTIFICAO DE I/0.
Se ligarmos uma chave tctil ao pino 20, e um LED ao pino 21, podemos
dizer que temos a I/O D1 (ou RD1) configurada como entrada, conectada
chave tctil, e o pino D2 (ou RD2) configurado como sada conectado ao LED.

A letra F presente no nome do microcontrolador PIC


FIQUE identifica que o microcontrolador em questo utiliza a
ALERTA tecnologia FLASH, ou seja, pode ser regravado. Alguns
modelos (que utilizam a letra C no nome, como o
PIC16C877) s podem ser gravados uma nica vez.

5.4 Arquivos executveis para microcontrolador

Para programar um microcontrolador, faz-se necessrio um mecanismo de


transferncia e de um programa a ser gravado. O mecanismo de transferncia
dado pelo conjunto de hardware (placas, cabos, conversores, circuitos de
apoio) e software (programas usados para enviar os dados pela porta serial,
paralela, USB etc.); j o programa a representao das instrues a serem
executadas, geralmente em um padro hexadecimal, que convertido em
sinais binrios durante a transferncia. Devido a esta representao em base
hexadecimal utilizada em programas dos primeiros microcontroladores,
estabeleceu-se o padro INTEL HEX de representao do programa. Por
isso, quando temos que transferir um programa para ser executado pelo
microcontrolador, geralmente isso realizado transferindo-se o arquivo HEX
presente em alguma unidade de armazenamento digital de um computador
(pendrive, disco rgido etc.). Portanto, para o microcontrolador, o programa
em linguagem de mquina o ARQUIVO HEX.
AUTOMAO INDUSTRIAL
214

Quando transferimos o arquivo HEX, ele armazenado na memria ROM


do microcontrolador, e quando o microcontrolador configurado para o
modo execuo (com 5V no pino 1), o programa passa a ser executado. Ao
se transferir um programa para um microcontrolador, ele permanecer l at
que seja reprogramado, no sendo os dados do programa perdidos em caso
de falta de energia ou desligamento. (Figura 227)

Programa executvel
em linguagem de mquina
Compilador
*.HEX
Software programador
Programa fonte PIC
C++
Compter

PIC
*.C
Circuito programador
Microcontrolador Aplicao

*** ***

PC
Programador

Figura 227 - Diagrama que demonstra o caminho percorrido por um programa, desde sua criao at a gravao no microcon-
trolador de destino, e seu uso no equipamento
Fonte: Autor

5.5 Transferindo o programa

Os microcontroladores da Microchip tm uma programao facilitada por


contar com o recurso conhecido como ICSP. Mas, o que ICSP?
Para facilitar o entendimento, vamos imaginar que o PIC16F877A seja utilizado
em um controlador de temperatura, similar ao da Figura 228:

QUIT MAN AL1 AL2

QUIT MAN AL1 Black


AL2
novus N1100

Figura 228 - Controlador multifuno


Fonte: Autor

A empresa que produz este equipamento deve fabricar (montar) as placas


de circuito impresso e seus componentes. Devido quantidade de produtos, o
processo automatizado.
5 Microcontroladores
215

Porm, o microcontrolador que definir as funcionalidades do produto


precisa ser programado. Programar estes microcontroladores antes da
montagem um processo que envolve a manipulao do componente e
pode gerar erros e atrasos no processo produtivo.
Para estes casos, a disponibilizao dos pinos de gravao em um conector
especial na placa de circuito impresso principal do produto permite que o
microcontrolador seja instalado no equipamento, recebendo os dados do
programa em uma etapa posterior.
Uma das principais vantagens a possibilidade de transferir programas
diferentes sem a necessidade de remoo do microcontrolador do
equipamento, tornando mais fcil a manuteno do produto.
A tecnologia que permite esta gravao no circuito chamada de In-
Circuit Serial Programming (ICSP).
Porm, para realizar esta gravao no PIC16F877A, precisamos conectar
os pinos 39 e 40 (PGD e PGC) e o pino 1 (MCLR) ao computador, atravs de
um circuito de interface. O circuito de interface deve realizar o transporte
dos dados digitais, sendo controlado por um programa existente no
computador de origem, oferecendo segurana para evitar que a conexo
entre o microcontrolador e o PC possa danificar um dos equipamentos.
Alguns fabricantes disponibilizam equipamentos prontos, sendo a
soluo completa para a programao de microcontroladores, atravs de
um conjunto de hardware e softwares adequados.
Algumas destas solues permitem ir alm da gravao do
microcontrolador, permitindo a depurao, que o ato de controlar as
instrues e ler os dados do microcontrolador em tempo de execuo.
Esta estratgia muito interessante quando estamos desenvolvendo uma
aplicao, pois permite ao desenvolvedor observar por quais linhas do
programa o fluxo de execuo est passando, inserir pontos de parada
(breakpoints) para que o programa pare quando chegar em determinada
linha, ou, ainda, verificar o valor de variveis durante sua execuo.
Como grande parte destas solues oferecem custos que podem ser
considerados altos para alguns estudantes, algumas pessoas acabaram
criando softwares e circuitos de gravao e disponibilizando estes circuitos
em pginas na internet.
Dentre estes circuitos de gravao, podemos citar o gravador TAIT, cujo circuito
desenvolvido em 1996 permitiu a muitos estudantes construrem gravadores
de baixssimo custo (menos de 10 dlares), e atravs de programas instalados
em PCs (computadores pessoais) tornou-se vivel o uso de microcontroladores
PIC em projetos de estudantes com um investimento inicial baixo. (Figura 229)
AUTOMAO INDUSTRIAL
216

Computador

Circuito de gravao TAIT clssico utiliza uma porta


paralela fsica, antigamente disponvel em computadores
pessoais, mas que hoje cada vez mais rara.

DB 25 FMEA PORTA
PARALELA FSICA
D1 Programador TAIT, criado por David Tait em 1996
>+17V 1N4001
IN U1 OUT +5V
7805 14
PL1 C1 C2 C3 C4
COM U3
10u 100n 100n 7 100n
U3d R5
PL2 7407 10k
1 9 8 R4 Q1
14 PNP
2 D0 4k7
15 IN U2 OUT +13V R6
3 D1 78L12 C6
1b 1k2
4 D2 COM 100n D4 R8 U3a
17 D2 R10
D3 1N4148 10k 7407
5 10k
18 D3 2 1 D0
6
19 1N4148 MCLR
U3c R2 MCLR
7 7407
20 10k GND 5V RB7 11 10 ACK
8 5 6 R1 PGD
21
Q2 PGC
9 4k7 PIC U3e
22 PNP 7407
10 ACK 13 12 VDD R9
23 R3 C5 R7 10k U3b
11 7407
24 U3f 10k 100n 10k
12 7407 RB6 4 3 D1
25
13

DB25F

Figura 229 - DB25 femea porta paralela fsica


Fonte: Autor

Em computadores modernos, e principalmente computadores portteis, a


interface paralela (utilizada pelo circuito programador TAIT) cada vez mais difcil
de ser encontrada. Circuitos alternativos surgiram, dentre os quais um processo
bastante utilizado para fins didticos, o BOOTLOADER, que ser visto em seguida.
Portanto, vimos que, para programar um microcontrolador PIC, necessitamos
de um computador com um software de programao, um hardware (circuito)
programador, o prprio PIC e o programa a ser transferido.

5.5.1 BOOTLOADER Tcnica para autoprogramao

Nem sempre podemos contar com o circuito programador adequado, pois


existem problemas relativos ao custo, dificuldade em implementar o circuito
ou falta de interfaces compatveis. Nestes casos, h uma tcnica que pode
ser usada, principalmente para fins didticos, conhecida como BOOTLOADER.
Implementar um circuito de comunicao, ligando a porta serial ou USB
de um microcontrolador ao PC, geralmente bem menos complexo do que
construir circuitos de gravao ICSP.
Neste sentido, utilizamos um programador ICSP somente uma nica vez,
programando-o com um programa que chamamos de FIRMWARE DE BOOTLOADER.
5 Microcontroladores
217

O FIRMWARE um pequeno programa residente que consome um


pequeno percentual da memria ROM do microcontrolador. Durante a
inicializao, este programa verifica se o PC est tentando enviar um arquivo
HEX pela porta de comunicao. Se for o caso, o FIRMWARE DE BOOTLOADER
receber os bits relativos ao arquivo HEX, armazenando-os na memria ROM
livre e, por fim, executando o programa.
A grande vantagem a simplicidade do processo de gravao. As
desvantagens, por outro lado, so a necessidade de uma primeira gravao
do microcontrolador com o FIRMWARE DE BOOTLOADER e a perda de um
pequeno percentual de memria ROM que ficar ocupada por ele.

pesquisando sobre circuitos gravadores para


SAIBA microcontroladores na internet. Verifique que alguns
MAIS circuitos oferecem a opo de depurao, enquanto outros
oferecem um circuito simplificado e de custo reduzido.

5.6 Algoritmos

Algoritmos o termo usado para definir uma sequncia finita de


instrues que pertencem a um conjunto tambm finito e no ambguo. As
instrues devem ser executadas em um perodo de tempo finito e com uma
quantidade finita de esforo.
Em outras palavras, algoritmo uma lista de procedimentos bem definidos
que devem ser executadas por algo.
Muito importante: as instrues usadas em um algoritmo devem ser no-
ambguas. Existe ambiguidade quando uma determinada informao tem
mais de um sentido, podendo ser interpretada de vrias formas diferentes.
Por exemplo, se voc ouvir algum falando a frase prefiro lima, o que voc pensa?
Bom... se a pessoa que falou isso estiver na frente de uma banca de frutas?
E se a pessoa estiver na frente de uma agncia de turismo, olhando pacotes
de viagens para o exterior? Ou, ainda, se estiver na frente de uma ferragem,
escolhendo ferramentas? Ou de uma loja de tintas, escolhendo a cor para
pintar uma parede?
Pois bem. O termo lima pode definir uma cor, uma ferramenta, uma fruta,
uma cidade, dentre outras coisas que pode significar. Os seres humanos
utilizam o contexto para captar o sentido da frase, observando onde a pessoa
est, sobre o que est falando etc.
AUTOMAO INDUSTRIAL
218

Os computadores ainda no so capazes de fazer isso, e mesmo que


fossem, sempre h margem para uma interpretao equivocada. Como os
computadores no podem errar, a linguagem utilizada para program-los
no pode ser ambgua. Portanto, em um algoritmo cada instruo realizar
uma ao de forma determinada, e sabemos qual ser o resultado desejado
em cada situao, independente do contexto.
Os algoritmos so receitas de como um determinado resultado deve ser
obtido. Eles podem possuir estruturas de controle de fluxo, que permite tomar
caminhos de execuo diferentes dependendo da anlise de informaes.
importante observar que um algoritmo no um programa de
computador e, sim, os passos necessrios para realizar uma tarefa. Os
algoritmos surgiram antes dos computadores e eram usados por matemticos
e engenheiros como roteiro para a execuo de atividades complexas usando
sequncias controladas de atividades mais simples.
Para exercitar isso, vamos executar um algoritmo. Tente executar, com
bastante calma, o algoritmo abaixo, realizando cada tarefa com cuidado
para no errar nenhum passo. Para criar uma varivel, simplesmente destine
um espao em um caderno e anote o valor inicial da varivel. (Tabela 25)
Tabela 25: Execuo de uma algoritmo
Passo Instruo
1 Anote um valor numrico, positivo e inteiro, no superior a 100. Vamos chamar este
valor de T.
2 Crie uma varivel chamada V1, com valor inicial de zero.
3 Crie uma varivel chamada V2, com valor inicial de zero.
4 Crie uma varivel chamada V3, com valor inicial de zero.
5 Crie uma varivel chamada V4, com valor inicial de zero.
6 Crie uma varivel chamada V5, com valor inicial de zero.
7 Crie uma varivel chamada V6, com valor inicial de zero.
8 Se T for inferior a 50, pule para o passo 12.
9 Subtraia 50 de T.
10 Adicione 1 a V1.
11 Volte para o passo 8.
12 Se T for inferior a 20, pule para o passo 16.
13 Subtraia 20 de T.
14 Adicione 1 a V2.
15 Volte para o passo 12.
16 Se T for inferior a 10, pule para o passo 20.
17 Subtraia 10 de T.
18 Adicione 1 a V3.
19 Volte para o passo 16.
20 Se T for inferior a 5, pule para o passo 24.
5 Microcontroladores
219

Continuao: Tabela 25: Execuo de uma algoritmo


Passo Instruo
21 Subtraia 5 de T.
22 Adicione 1 a V4.
23 Volte para o passo 20.
24 Se T for inferior a 2, pule para o passo 28.
25 Subtraia 2 de T.
26 Adicione 1 a V5.
27 Volte para o passo 24.
28 Se T for inferior a 1, pule para o passo 32.
29 Subtraia 1 de T.
30 Adicione 1 a V6.
31 Volte para o passo 28.
32 Anote os valores de V1, V2, V3, V4, V5 e V6 em sequncia, separados por espaos.
33 Fim do algoritmo
Fonte: Autor

Note que todas as instrues, embora estejam escritas em descrio narrativa, so


instrues bem definidas, com uma interpretao que no remete ambiguidade.
Se voc executou o algoritmo todo, deve ter agora 6 valores anotados. E
o que estes valores significam?
O algoritmo tem o objetivo de calcular a menor quantidade de cdulas e
moedas para troco. O valor informado no incio o valor total do troco. Para o
troco, sero necessrias V1 cdulas de R$ 50,00, V2 cdulas de R$ 20,00, V3 cdulas
de R$ 10,00, V4 cdulas de R$ 5,00, V5 cdulas de R$ 2,00, e V6 moedas de R$ 1,00.
Talvez, na sua opinio, existam formas mais fceis de realizar este clculo,
mas o procedimento acima na forma de um programa foi feito para que o
resultado seja obtido seguindo-se passos mais simples.
Um computador ou circuito computacional geralmente executa estes
passos de forma bastante veloz, na maioria dos casos em menos de um
milhonsimo de segundo para cada tarefa. Se pudssemos executar na
mesma velocidade que um computador, certamente o resultado seria obtido
em menos de um milsimo de segundo.
Outra questo a ser considerada que um computador um equipamento
projetado para ser estvel e preciso, no cometendo erros que os seres
humanos podem cometer.
O algoritmo descrito acima a representao textual (em uma linguagem
no computacional), mas com a possibilidade de ser traduzido para uma
linguagem de computador. Ele expressa os passos detalhados e no
ambguos que devem ser efetuados para obter um resultado final.
Um algoritmo pode ser escrito de vrias formas, podendo ser textual,
grfico ou cdigo especiais.
AUTOMAO INDUSTRIAL
220

5.7 Fluxograma

Dizem que uma imagem pode valer mais do que mil palavras.
Geralmente, atravs de um grfico ou esboo de um desenho, podemos
passar mais informao do que em vrias linhas de texto. Quando se trata
de programao, isso no diferente; Costumamos usar diagramas para
expressar o funcionamento de um software.
Recentemente, em desenvolvimentos de alto nvel, utilizamos linguagens
de modelagem relacionadas a conjuntos de diagramas que podem expressar
sequncia, relacionamento entre os dados, interaes com os usurios e
com outros softwares e estruturas hierrquicas dos dados, dentre outros.
A linguagem UML composta de diversos diagramas e pode definir com
riqueza de detalhes como as diversas partes de um complexo sistema
computacional so formadas e como e quando iro interagir entre si.
No caso dos sistemas embarcados mais simples, pode ser desnecessrio
dispender muito tempo neste tipo de programao.
Nestes casos, recomendado criar ao menos um FLUXOGRAMA, que
um diagrama mais simples e tradicional, onde o principal foco est na
SEQUNCIA DOS EVENTOS influenciada pelas decises durante o processo.
Um fluxograma pode ser escrito em diversos nveis de profundidade.
Alguns compiladores ainda permitem que um programa seja escrito
atravs de fluxogramas, permitindo gerar cdigo executvel diretamente
a partir do diagrama. Embora isso seja possvel, no recomendado para
aplicaes mais complexas, pois um fluxograma toma bastante espao para
a representao das estruturas e pode ser mais difcil de ser criado do que
linhas de programa textuais geradas por um programador mais experiente.
Vamos a um fluxograma aplicado a uma simples situao de controle na
automao industrial: (Figura 230)
inicio

obter
temperatura

SIM ligar
temperatura
ventilao
>45C?
NO
temperatura SIM ligar
<40C? aquecimento
NO
desligar
ventilao

desligar
aquecimento

Figura 230 - Fluxograma


Fonte: Autor
5 Microcontroladores
221

Observando o fluxograma, podemos chegar rapidamente a algumas


concluses:
1) Trata-se de um controlador de temperatura.
2) Podemos observar que h o controle de atuadores de ventilao e de
aquecimento.
3) O sistema busca manter a temperatura em uma faixa fixa de 40C a 45C.
4) No h histerese (caso no conhea esta palavra, pesquise a respeito.).
Como visto anteriormente, os algoritmos devem ser elaborados de forma
a no haver ambiguidade. No caso do diagrama acima, para transformar em
uma linguagem computacional seria necessrio descrever melhor o processo,
definindo o que seria ligar e desligar, o que seria obter temperatura, e saber
se a temperatura obtida j ser expressa em C. Caso contrrio, no h como
proceder comparao como sugerido. Estes detalhes geralmente so
observados durante a escrita do programa propriamente dito.

5.8 Compilador

Todo microcontrolador ou microprocessador executa programas em


linguagem de mquina, tambm chamada de linguagem binria. Chamamos
assim porque a representao das instrues e dados feita em binrio e
est diretamente relacionada com os circuitos lgicos internos que realizam o
processamento. Um determinado agrupamento de 2 bytes (16 bits), por exemplo,
que em um microcontrolador PIC da famlia 18 pode executar o acionamento de
uma sada digital, em outro microcontrolador de outro fabricante pode realizar
uma tarefa totalmente diferente, como movimentar um dado na memria,
realizar uma soma ou ativar algum perifrico. As instrues mudam conforme
o microcontrolador, podendo existir mudanas significativas entre modelos de
microcontroladores de um mesmo fabricante.
At possvel programar diretamente em linguagem de mquina, mas
isso requer um profundo conhecimento sobre as instrues (expressas
em binrio) de cada processador. Para isso, o programador deve escrever
cada instruo diretamente em binrio (ou hexadecimal, dependendo do
equipamento de programao). Isso trabalhoso, demorado e exige muito
cuidado, pois erros podem demandar muito tempo para correes. Este
processo era comum na programao dos primeiros microcontroladores, at
que surgiram ferramentas computacionais que permitem o uso de tcnicas
de programao mais eficientes e que otimizaram tempo e recursos.
AUTOMAO INDUSTRIAL
222

Uma das primeiras ferramentas (software) utilizadas para programar


eram os programas montadores (assemblers), que consistiam em programas
capazes de realizar a traduo de smbolos textuais diretamente para a
linguagem de mquina. Estes programas facilitavam a abstrao em relao
a endereos de memria e nome das instrues, porm continuavam a ter
uma relao direta com o modelo de hardware a ser programado, exigindo
do programador ainda um grande esforo para a construo de programas
mais complexos. (Tabela 26)
Tabela 26: Programa escrito em assembly, e a representao de
instrues em linguagem binria. Cdigo binrio tem carter ilustrativo,
podendo haver variaes
Liguagem Assembly Intrues em ling. de
mquina (14bits)
movlw 0x0A ; carrega w com 10 00110100001010
movwf VAR2 ; carrega VAR2 com valor de w (10) 01110101010101
movlw 0x00 ; zera w 00110010000000
addwf VAR1,w ; adiciona VAR1 em w 01101001010101
decfsz VAR2 ; decrementa VAR2 e pula se =0 00101011011111
goto $-2 ; volta duas linhas 11110101010010
movwf VAR3 ; joga w em VAR3 10100101111010
Fonte: Autor

Quem desenvolve programas em assembly deve conhecer tcnicas, limitaes


e o conjunto de instrues do microcontrolador a ser programado, alm de
manter o foco no desenvolvimento das funcionalidades e nos demais requisitos
do programa a ser desenvolvido. Isso bastante complexo e pouco produtivo,
pois exige muita experincia, alm de muitas horas de implementao e testes.
Como vantagem, um programa escrito em assembly tende a ser
extremamente eficiente, consumindo somente os recursos de memria que
o programador achar necessrios.
No trecho de programa assembly citado no exemplo acima ocorre a
multiplicao e uma varivel por 10 utilizando-se somas sucessivas. Voc
pode se perguntar por que somar 10 vezes um nmero. No seria mais fcil
multiplic-lo por 10?
Como o microcontrolador PIC16F877A no possui a instruo de
multiplicao, faz-se necessrio o uso desta estratgias para obter o resultado
esperado. Por isso dizemos que este microcontrolador no foi criado para
processamento matemtico, e que seu principal foco o controle.
Portanto, um programador assembly, ao programar um PIC16F877A,
deve lidar com poucas instrues para resolver problemas por vezes mais
complexos. como utilizar calculadoras de quatro operaes para resolver
equaes complexas. No impossvel, s mais difcil e demorado.
5 Microcontroladores
223

Como um microcontrolador muito mais rpido do que somos, e ainda


no conta com a grande possibilidade de erro atribuda aos seres humanos,
decompor atividades mais complexas em situaes mais simples bastante
comum em atividades de programao. O complicado para um programador
que escreve em linguagem de mquina a quantidade de elementos
que devem ser controlados: reas de memria, nome dos elementos,
instrues de nomes difceis de lembrar e tcnicas que variam conforme o
microcontrolador, dentre outros.
Felizmente, surgiram linguagens de programao de alto nvel que nos
permitem desenvolver aplicaes sem nos preocuparmos tanto com as
caractersticas limitadoras do hardware.
Uma grande vantagem destas linguagens a portabilidade dada ao
fato de haver um padro de programao independente do equipamento
a ser programado. Programar um microcontrolador PIC em linguagem
C relativamente similar a programar um microcontrolador MSP (Texas
Instruments), ou um LPC (da fabricante NXP). Outra grande vantagem
o fato de que certas estruturas mais complexas ligadas aos comandos da
linguagem so traduzidas para comandos mais simples. (Tabela 27)
Tabela 27: Comando executado em linguagem C, e a produo (em
cdigo executvel) gerada pela instruo
Liguagem C Intrues em ling. de
mquina (14bits)
00110100001010
01110101010101
00110010000000
VAR1 = VAR2 * 10; 01101001010101
00101011011111
11110101010010
10100101111010
Fonte: Autor

Na tabela acima, uma expresso est multiplicando a varivel VAR2 por 10,
armazenando o valor obtido na varivel VAR1. Como visto anteriormente, isso
realizado atravs de somas sucessivas, mas em linguagem C o programador no
precisa se preocupar com isso, pois o compilador gera a sequncia de instrues
necessrias, tornando a operao transparente. Isso faz com que o programador
no necessite conhecer ou aplicar as tcnicas relativas a cada microcontrolador,
pois estas j esto expressas nas regras de traduo do compilador, que ler o
programa escrito em uma linguagem mais prxima da linguagem humana (alto
nvel) e traduzir isso para linguagem de mquina.
Outra vantagem que no processo de compilao so detectados alguns
erros que podem ter sido gerados no programa fonte devido a erros de digitao,
desconhecimento da linguagem, esquecimentos.
AUTOMAO INDUSTRIAL
224

5.8.1 Erros de compilao

Na primeira etapa da compilao, o programa compilador realizar a


ANLISE LXICA. Nesta etapa, o compilador l todas as palavras do programa
fonte, verificando se consegue identificar todas.
Na linguagem C, por exemplo, necessrio declarar funes e variveis
que so utilizadas no programa. Se o programador, por exemplo, declarar
a varivel chamada CONTADOR em seu programa, porm no meio do
programa, devido a um erro de digitao, escrever uma expresso usando o
nome CONTADRO, haver uma mensagem de erro, pois o nome da varivel,
embora muito parecido, no o mesmo.
Na segunda etapa ocorre a ANLISE SINTTICA. Neste momento, o principal
objetivo verificar como os comandos e smbolos usados no microcontrolador
so encadeados para obter um objetivo comum. O foco nesta etapa da
compilao detectar a falta de algum elemento, ou a ordem inadequada dos
comandos. Erros de sintaxe so bastante comuns quando no conhecemos as
estruturas de controle e os comandos da linguagem que estamos utilizando.
Por fim, ocorre a gerao de cdigo intermedirio, a otimizao e a
gerao de cdigo final. O produto gerado por esta etapa um programa
escrito em uma linguagem muito prxima da linguagem de mquina,
faltando algumas etapas de otimizao e ligaes com bibliotecas externas.
Isso tudo gerido pelo compilador, e nesta etapa podem surgir erros devido
a fatores de limitaes de memria ou nome de arquivos.
Em compiladores usados em microcontroladores, nesta etapa ocorre a
gerao do arquivo HEX, que ser posteriormente transferido para a memria
ROM do microcontrolador.
Alguns compiladores podem oferecer otimizaes de memria mais
eficientes, fazendo com que a linguagem de mquina gerada seja mais
enxuta, evitando comandos desnecessrios e desperdcio de memria.
Outros compiladores suprimem esta etapa de otimizao em verses
gratuitas ou de demonstrao, gerando um cdigo final que pode ser
relativamente maior e mais lento, porm igualmente funcional.

5.9 Linguagem C

Embora no seja a nica, esta , incontestavelmente, a linguagem


compilada mais popular para microcontroladores. Foi criada por Dennis
Richie, em 1972, no laboratrio AT&T Bell Labs, com o intuito de ser a
linguagem de aprimoramento e desenvolvimento do sistema operacional
UNIX, que foi originalmente escrito em Assembly.
5 Microcontroladores
225

Hoje, grande parte dos sistemas operacionais (como Microsoft Windows,


Linux, Android) so escritos em linguagem C, ou ao menos tm grandes
partes geradas em linguagem C.
Faz alguns anos que esta linguagem passou a receber compiladores
capazes de gerar cdigo para microcontroladores, e ainda no so muitos os
fabricantes e as verses existentes.

Para os microcontroladores da microchip, podem ser obtidos


os seguintes compiladores:
1) MPLAB + Hitech. Disponvel no prprio site da microchip
(www.microchip.com), disponibilizado em uma verso
gratuita, mas com limitaes de otimizao. Obedece ao
padro C ANSI, facilitando a portabilidade (migrao entre
microcontroladores). No existem muitas funes prontas,
e o programador deve criar algumas funes e sub-rotinas.
O ambiente de desenvolvimento (MPLAB) bastante rico
em recursos, mas pode ser um pouco complicado e confuso
para quem est iniciando.
2) MPLAB + C18. Compilador tambm disponibilizado pela
microchip, mas para PICs da famlia 18. Na verso gratuita,
conta com limitaes de otimizao.
3) SDCC: Small Device C Compiler Gratuito e de cdigo
aberto (open-source). O problema que para PIC ainda
SAIBA est em desenvolvimento, e necessrio integrar a
MAIS uma ferramenta de desenvolvimento como o MPLAB.
No recomendado para quem est iniciando devido
complexidade de instalao e uso.
4) MikroC. Este compilador conta com verses de
demonstrao que compila cdigos de at 2K. Embora haja
limitaes quanto ao uso gratuito, recomendado devido
riqueza de recursos e interface intuitiva e amigvel.
5) SOURCEBOOST. Compilador pago, porm de menor custo.
Possui suporte a microcontroladores PIC das famlias 10, 12,
16 e 18.
6) CCS: Um dos mais populares, embora no seja padro
C ANSI. Suas funes embutidas permitem gerar cdigo
de forma mais simplificada, e a interface relativamente
amigvel. Os programas existentes neste material utilizaro
este compilador como referncia, e todos sero compilados
na verso gratuita disponvel no site www.ccsinfo.com.

5.9.1 Criao de um programa

Aps instalar e executar o compilador (PIC C Compiler), clique em FILE (ou no


smbolo circular do canto superior esquerdo da janela), posteriormente em NEW
(novo arquivo) e, aps, SOURCE FILE (arquivo fonte). (Figura 231)
AUTOMAO INDUSTRIAL
226

Figura 231 - Janela de novo aquivo


Fonte: Autor

Aps, uma janela ser aberta solicitando o nome do arquivo fonte


(programa em linguagem C). Recomendamos que voc grave o arquivo em
uma pasta de fcil acesso, pois nela posteriormente o compilador gerar o
arquivo em linguagem de mquina (arquivo HEX).
Outro detalhe importante: o nome de um programa fonte em linguagem C deve ser
finalizado por .C, desta forma sendo diferenciado dos demais arquivos. Gerar um arquivo
com outro nome pode incorrer em erros na fase final de compilao. (Figura 232)

Figura 232 - Tela Salvar Como, que aparece ao se iniciar um novo programa
Fonte: Autor
5 Microcontroladores
227

Observe o nome do arquivo (com extenso C) e a


FIQUE pasta onde ele ser gravado. nesta pasta que, aps a
ALERTA compilao, ser encontrado um arquivo com mesmo
nome, porm com extenso .HEX.

Para este exemplo, vamos criar o arquivo PROG1.C. Ao clicar em SALVAR, uma
rea de edio disponibilizada, permitindo escrever o programa.

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funao principal


{
output_high(PIN_C0); // PINO C0 para nvel alto
delay_ms(1000); // atraso (delay) de 1000 ms
output_low(PIN_C0); // PINO C0 para nvel baixo
delay_ms(1000); // atraso (delay) de 1000 ms
}

O programa no exemplo acima possui algumas palavras que, ao digitar,


ficaro em cores diferentes. Na instalao padro, o compilador CCS
diferencia as diretivas (que esto em vermelho), informaes numricas
(em verde), palavras reservadas, ou comandos, em azul. Itens em cinza so
trechos de texto chamados de comentrios, e iniciam pelo smbolo // (duas
barras seguidas), estendendo-se at o final da linha. Os demais itens em
preto so smbolos que sero identificados durante a compilao.

5.9.2 Como compilar

Aps digitar o arquivo, observe no canto inferior direito o nome do


arquivo que voc vai compilar. Caso no esteja aparecendo o nome correto,
feche todos os arquivos (e projetos, se for o caso) abertos no compilador, e
abra o arquivo C desejado novamente.
Uma vez aberto, clique em COMPILE -> compile. A compilao ir
ocorrer, inicialmente localizando por erros de digitao ou de sintaxe.
Posteriormente, surgir uma janela indicando o erro, ou se o programa foi
corretamente compilado. (Figura 233 e Figura 234)
AUTOMAO INDUSTRIAL
228

Figura 233 - Demonstrando a opo para compilao (pode ser obtida pela tecla de atalho F9)
Fonte: Autor

Figura 234 - Demonstrando a compilao em processo


Fonte: Autor

Aps efetuar a compilao, uma janela surgir momentaneamente


demonstrando a quantidade de memrias RAM e ROM ocupadas pelo
programa. Note que o programa em questo ocupa uma quantidade muito
pequena de memria devido a sua simplicidade.
Vamos estudar o programa que foi compilado, linha a linha. Aproveite
para verificar o contedo digitado e a pontuao em caso de erro. Caso a
janela acima no tenha surgido, provvel que algum pequeno erro esteja
impedindo a compilao.
#include <16f877.h> // inclui arquivo de cabealho
5 Microcontroladores
229

Esta linha serve para incluir, no incio do programa, um arquivo j


existente, conhecido como HEADER FILE (arquivo de cabealho). Este
arquivo fornecido pelo fabricante do compilador, mas tambm pode ser
construdo por um programador experiente. Nele h definies importantes
sobre o microcontrolador que ser usado, como endereamento dos pinos
de entrada e sada e informaes sobre recursos existentes.
Caso voc venha a gerar um programa para outro microcontrolador,
mude esta linha para o microcontrolador correspondente.
No exemplo acima, usamos o arquivo 16f877.h, mas poderia tambm ser
o 16f877a.h, pois estes so equivalentes.
#use delay (clock=20000000) // define valor de clock para delays
Linha utilizada para informar ao compilador qual a velocidade do cristal de
clock usada pelo microcontrolador alvo. Caso esta linha no seja corretamente
definida, teremos problemas relativos execuo, onde os tempos definidos
na funo embutida delay_ms no sero mais respeitados. Em poucas
palavras, ela informa a velocidade do microcontrolador para o compilador.
void main(void) // funo principal
Esta linha identifica uma funo chamada MAIN (principal). A funo
principal a nica funo que tem nome fixo e deve existir obrigatoriamente
em um programa C executvel. Outras funes (sub-rotinas) podem ser
escritas em um programa C, mas ao menos uma deve se chamar MAIN, da
qual parte a execuo do programa.
{
O abrir chaves ({) usado para definir o incio de algo. Neste caso, estamos
iniciando a funo principal (indicada na linha anterior).
output_high(PIN_C0); // PINO C0 para nvel alto
Esta uma funo embutida do compilador CCS. Em poucas palavras, esta
linha, ao chamar a funo embutida output_high, define o pino (no caso
pino C0) como sada, pondo tambm seu nvel de tenso em 5V (nvel alto).
delay_ms(1000); // atraso(delay) de 1000 ms
Linha utilizada para causar um atraso (tempo) no programa. Se esta linha
no existisse, a prxima instruo seria executada aps alguns microsegundos.
Com ela, ocorre um atraso de 1000 milissegundos (um segundo).
output_low(PIN_C0); // PINO C0 para nvel baixo
Instruo que, atravs da funo embutida output_low, determina que o
pino C0 (definido como sada) v para nvel lgico baixo (0V).
delay_ms(1000); // atraso(delay) de 1000 ms
AUTOMAO INDUSTRIAL
230

Outra execuo da instruo de tempo, fazendo com que o programa tenha


uma pausa de um segundo.
}
Finalizao do programa principal. Sinais de chaves so usados para indicar o
incio e o final dos blocos de instrues na linguagem C.
// ========== fim do programa ==============
Esta linha de comentrio, sem nenhum comando ou instruo. Comentrios
no influenciam no tamanho do arquivo em linguagem de mquina (HEX) gerado
e so muito teis para melhorar a manutenibilidade do programa, facilitando
modificaes e entendimentos futuros sobre o programa atravs de anotaes.
Em linguagem C, comentrios podem ser gerados atravs do uso de duas barras
seguidas (o comentrio, neste caso, ir at o final da linha), ou atravs dos smbolos
de /* e */. Neste caso, barra asterisco inicia o comentrio, podendo se estender
por quantas linhas for necessrio, sendo finalizado por asterisco barra.

5.9.3 Transferindo o programa HEX

Aps a compilao, devemos encontrar o arquivo HEX na mesma pasta onde o


arquivo .C est salvo. Importante salientar que isso s ocorre se a compilao tiver
se dado sem ocorrncia de erros. Este arquivo HEX que deve ser transferido para
a memria do microcontrolador. Como j estudado anteriormente, necessrio o
uso de uma ferramenta de hardware e software para transferir o programa.
Usando um programa especfico para transferncia, transfira o arquivo HEX
para o microcontrolador. Verifique a documentao adequada do sistema de
transferncia, se necessrio.
Vamos adotar o hardware abaixo (criado em um simulador de circuitos eletrnicos).

D1
R = 470 ohms LED-RED
RB0/INT 33
RB1 34
RB2 35
RB3/PGM 36
RB4 37
RB5 38
RB6/PGC 39
RB6/PGD 40

RC0/T1OSO/T1CKI 15
RC1/T1OSI/CCP2 16
RC2/CCP1 17
RC3/SCK/SCL 18
23
24
25
26

19
20
21
22
27
28
29
30
RC4/SDI/SDA
RC5/SDO

RC7/RX/DT

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7
RC6/TX/CK

PROGRAM=PROG1.HEX.
RA2/AN2/VREF-/CVREF

RA5/AN4/SS/C2OUT
RA4/TOCKI/C1OUT
RA3/AN3/VREF+

MCLR/Vpp/THV

PIC 16F877A
OSC2/CLKOUT

RE1/AN6/WR
RE0/AN5/RD
OSC1/CLKIN

10 RE2/AN7/CS
RA0/AN0
RA1/AN1
13

14

9
8
2
3
4
5

1
6

Figura 235 - Hardware criado em um simulador de circuitos eletrnicos


Fonte: Autor
5 Microcontroladores
231

Ao executar o programa, voc deve observar que o LED conectado ao pino


C0 do microcontrolador LIGAR, permanecendo ativado por 1 segundo, e
posteriormente desligar.
Ele no piscar, pois nosso programa no mandou repetir as instrues,
gerando somente uma execuo.
Se o microcontrolador for REINICIADO, o programa recomear, com mais um
nico pulso no pino C0 do microcontrolador.

Procure adicionar linhas para realizar outros acionamentos,


mudando tambm os tempos, sempre lembrando de
SAIBA compilar e transferir novamente o programa para realizar
MAIS novos testes. Usando o HELP do compilador (tecla F1), tente
descobrir e utilizar outras funes embutidas do compilador.

5.9.4 Lao infinito

Em programas para microcontroladores, comum desejamos que um


programa nunca pare, pois, na maioria dos casos, se trata do nico programa
presente na memria, e se este parar, o funcionamento do sistema controlado
pelo microcontrolador tambm parar.
No exemplo estudado anteriormente, o programa apresentado (muito simples)
realizava o acionamento de um LED (pondo uma sada digital em nvel alto) por
um segundo. Para que pisque este LED pisque, teremos que fazer com que um
trecho do programa seja repetido.
Vamos analisar o programa abaixo:

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funo principal


{
output_high(PIN_C1); // PINO C1 para nvel alto
delay_ms(1000);
output_low(PIN_C1); // PINO C1 para nvel baixo
retorno: // define um rtulo chamado retorno
output_high(PIN_C0); // PINO C0 para nvel alto
delay_ms(1000); // atraso(delay) de 1000 ms
output_low(PIN_C0); // PINO C0 para nvel baixo
delay_ms(1000); // atraso(delay) de 1000 ms
goto retorno; // volta para retorno
}

// ========================= fim do programa ==========================

No programa acima, observamos que so controlados dois pinos, o C0 e C1.


AUTOMAO INDUSTRIAL
232

C1 ligado e desligado no incio do programa. Posteriormente, um ponto do


programa chamado de retorno criado. Chamamos este tipo de marcao de rtulo,
que define um local para onde, em algum dado momento, o programa ser desviado.
Na sequncia, o pino C0 ligado e desligado e, posteriormente, surge a instruo
goto retorno, que desvia o fluxo de execuo para o rtulo previamente definido.
(Figura 236)
3 RB4 37
RA1/AN1 Este LED ficar piscando
4
RA2/AN2/VREF-/CVREF RB5 38
5 RA3/AN3/VREF+ RB6/PGC 39
6 RA4/TOCKI/C1OUT RB6/PGD 40
7
D1
RA5/AN4/SS/C2OUT
R1
RC0/T1OSO/T1CKI 15
RC1/T1OSI/CCP2 16 470
8 RE0/AN5/RD
LED - RED Este LED ir LIGAR e
RC2/CCP1 17
9 RE1/AN6/WR DESLIGAR uma vez incio
RC3/SCK/SCL 18
10 RE2/AN7/CS 23
D2
RC4/SDI/SDA
R2
RC5/SDO 24
RC6/TX/CK 25 330
1 MCLR/Vpp/THV RC7/RX/DT 26
LED - BLUE
RD0/PSP0 19
RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28

Figura 236 - Esquema Eltrico


Fonte: Autor

Embora esta possa parecer a melhor forma de fazer um trecho de programa


repetir, no a melhor. Muitos autores abominam o uso do goto, pois o
comando remete construo de programas no-estruturados, permitindo que
o programador crie emaranhados difceis de serem analisados. Surgem, ento, as
estruturas de repetio, que so estruturas de controle de fluxo que determinam
para onde e o que o programa deve executar.
Uma estrutura muito usada para criar o lao de repetio infinita o comando while.

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funo principal


{
output_high(PIN_C1); // PINO C1 para nvel alto
delay_ms(1000);
output_low(PIN_C1); // PINO C1 para nvel baixo
while(true) // estrutura de repetio incondicional
{
output_high(PIN_C0); // PINO C0 para nvel alto
delay_ms(1000); // atraso(delay) de 1000 ms
output_low(PIN_C0); // PINO C0 para nvel baixo
delay_ms(1000); // atraso(delay) de 1000 ms
}
}
// ==================== fim do programa =======================
5 Microcontroladores
233

No programa acima, o trecho que ser repetido (em destaque) est contido
na estrutura de repetio WHILE, sem o uso desnecessrio de rtulos. O comando
WHILE repete as instrues existentes entre suas chaves enquanto a expresso entre
os parnteses for verdadeira. Como, entre os parnteses do while, h a expresso
true, que significa verdadeiro, o lao no interrompido, tornando-se um lao
infinito. O mesmo efeito pode ser obtido substituindo a linha while(true) por:
while(1)
ou
for(;true;)(este comando veremos adiante)

5.9.5 Cuidados com pontuao e alinhamento

Observando os exemplos acima, natural haver um certo desconforto em


relao pontuao: onde usamos e onde no usamos um ponto e vrgula? E
quando teremos que abrir e fechar chaves?
Estas so as dvidas que vamos tentar esclarecer agora.
As chaves, em C, servem para indicar O INCIO ( { ) e O FINAL ( } ) de um
determinado bloco de instrues. E o que um bloco de instrues? Bloco de
instrues um agrupamento de linhas que deve ter um sentido nico.
Sem estas sinalizaes, um programa pode se tornar ambguo, ter duplo
sentido e, portanto, no pode ser resolvido por um sistema computacional como
linguagem de programao.
Para exemplificar, analise o trecho de descrio narrativa que segue:

ir at a sala
abrir a janela
se estiver chovendo
pegar o guarda-chuva
comprar po e leite
...

Sabemos que no se trata de linguagem de programao, mas de um esboo


de aes relacionadas a uma condio, expresso em descrio narrativa. Porm,
observando o texto acima, duas interpretaes so possveis:
Interpretao 1: comprar po e leite somente se chover. Neste caso, entendemos
que o se estiver chovendo tem efeito em todas as oraes que o seguem, como
pegar o guarda-chuva e comprar po e leite.
AUTOMAO INDUSTRIAL
234

Interpretao 2: comprar po e leite, independente se chove ou no. Neste caso,


a orao se estiver chovendo est ligada somente primeira orao que a segue:
pegar o guarda-chuva. A outra orao deve ser feita independente do resultado.
J vimos que, em um sistema computacional, no pode haver margem para
dupla interpretao.
Como resolver isso?
Vamos ao texto novamente, adicionando algumas marcaes de incio e fim:

ir at a sala
abrir a janela
se estiver chovendo
incio
pegar o guarda-chuva
comprar po e leite
fim

Com a marcao de incio e fim, temos agora uma interpretao facilitada usando
o conceito de subprograma: um pequeno trecho de instrues ligado a alguma
instruo ou condio, em forma de bloco e demarcado por um incio e um fim.
O alinhamento com recuos (tambm chamado de indentao) permite
visualizar melhor esta hierarquia, tornando mais fcil identificar a conexo das
instrues e dos blocos.
Na linguagem C, o incio e o final de um bloco delimitado por sinais de
chaves, sendo o abrir chaves ({) o sinal de incio, e o fechar chaves (}) o sinal de
fim. A indentao (alinhamento com recuos) facultativa na linguagem C, porm
extremamente recomendada. Um programa mal-alinhado fica mais difcil de ser
interpretado e corrigido.
No trecho de programa C que estudamos antes, existe a demarcao de um
incio e um fim, dada a funo main.
Portanto, todo programa em C, aps as necessrias diretivas de compilao
(dada pelas linhas com sustenido, como os #include, #use, #define...), deve ter ao
menos uma funo principal, com seu incio e fim demarcados.
#...
void main(void)
{
// linhas da funo principal
}
Note que, antes desta demarcao de incio, no usamos ponto e vrgula, para
no quebrar a conexo da linha com o bloco de instrues nela contido.
No trecho estudado anteriormente
5 Microcontroladores
235

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funo principal


{
output_high(PIN_C1); // PINO C1 para nvel alto
delay_ms(1000);
output_low(PIN_C1); // PINO C1 para nvel baixo
while(true) // estrutura de repetio incondicional
{
output_high(PIN_C0); // PINO C0 para nvel alto
delay_ms(1000); // atraso(delay) de 1000 ms
output_low(PIN_C0); // PINO C0 para nvel baixo
delay_ms(1000); // atraso(delay) de 1000 ms
}
}

// ================== fim do programa ========================

Note que as chaves so usadas para delimitar o contedo dentro da


funo principal (primeira e ltima chave), e um outro bloco delimitado mais
interno, que est dentro do while (true). Nas linhas que antecedem o abrir
chaves no h ponto e vrgula, pois isso quebraria a conexo entre a linha e
o bloco de instrues.
Instrues internas aos blocos e caracterizadas por uma expresso ou
chamadas a funes devem ser finalizadas pelo sinal de ponto e vrgula. Caso
este seja esquecido, durante a compilao natural ocorrer a mensagem de erro
expect ;, geralmente apontado no prximo caractere de programa existente
aps o local onde o sinal deveria estar.
A indentao facilita identificar o bloco interno ao while (true), e ao void
main(void), indicando tambm que o while (true) est interno ao bloco do
void main (void). Lembre-se, no entanto, que a indentao (alinhamento)
no interfere na compilao do programa, e seu objetivo facilitar a
interpretao por parte do programador.

Um programa bem organizado, alinhado e com


FIQUE comentrios facilita modificaes e testes, evitando perda
de tempo e facilitando o trabalho em equipes, onde mais
ALERTA de um programador deve trabalhar em um mesmo sistema
ou programa.
AUTOMAO INDUSTRIAL
236

A falta ou a adio desnecessria de um ponto e vrgula pode trazer resultados


inesperados na execuo do programa. Caso um ponto e vrgula seja adicionado
na linha while(true), a estrutura de repetio ser truncada, fazendo com que
o lao de repetio obtido no abranja o contedo das chaves, criando o que
chamamos de lao vazio incondicional. Em outras palavras, o ponto e vrgula em
um while(1) antes do abrir chaves trava a execuo do programa principal.

5.9.6 Comandos para acionamento das sadas digitais

Uma sada digital pode ser tratada individualmente ou em grupo. Quando


tratada individualmente, usamos regras para determinar o nvel de tenso (alto
ou baixo) em cada sada, no interferindo nas demais.
possvel tambm acessar o porto inteiro (PORT), podendo enviar uma
informao binria combinada, fazendo com que todas as sadas do porto sejam
modificadas no mesmo momento, economizando instrues e deixando o
programa mais rpido.
Na linguagem C padro CCS, podemos usar as instrues para manipulao
das I/Os diretamente atravs de funes embutidas. Estas funes facilitam a vida
do programador. Caso elas no existissem, o procedimento de controle das sadas
digitais deveria levar em considerao a programao de registradores de direo
antes de cada acionamento, determinando se o pino que est sendo acessado
deve ter comportamento de entrada ou de sada.
As funes embutidas do compilador CCS para acionamento das sadas digitais so:
output_high(PIN_xx); -> Leva o nvel de tenso do pino para nvel alto
(normalmente 5V)
output_low(PIN_xx); -> Leva o nvel de tenso do pino para nvel baixo (0V)
output_float(PIN_xx); -> Deixa o pino flutuando, sem tentar manter nvel de tenso
Nas instrues citadas acima, substitua a palavra PIN_xx pelo pino
correspondente, como, por exemplo:
output_high(PIN_C0);
output_low(PIN_A2);
output_float(PIN_E1);
Exemplo de uso:
Segue o exemplo de um semforo simples, composto de dois sinaleiros com
trs cores cada. (Figura 237)
5 Microcontroladores
237

14 OSC2/CLKOUT

13
6
10 RE2/AN7/CS
1

5
4
3
2
8
9
PIC 16F877A

RE1/AN6/WR
RE0/AN5/RD
MCLR/Vpp/THV

RA5/AN4/SS/C2OUT
RA4/TOCKI/C1OUT
RA3/AN3/VREF+
RA2/AN2/VREF-/CVREF
RA1/AN1
RA0/AN0

OSC1/CLKIN
RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2
RC3/SCK/SCL
RC4/SDI/SDA
RC7/RX/DT
RC6/TX/CK

RC2/CCP1
RD7/PSP7
RD6/PSP6
RD5/PSP5
RD4/PSP4
RD3/PSP3
RD2/PSP2
RD1/PSP1
RD0/PSP0

RB3/PGM
RC5/SDO

RB6/PGD
RB6/PGC

RB0/INT
RB5
RB4

RB2
RB1
30
29
28
27
22
21
20
19

26
25
24
23
18
17
16
15

40
39
38
37
36
35
34
33
R6

R5

R4

R3

R2

R1
330

330

330

330

330

330

LED_VERMELHO 1
LED_AMARELO 2

LED_VERMELHO 2

LED_VEDE1

LED_AMARELO 1
LED_VEDE 2

Figura 237 - Comandos para acionamento das sadas digitais


Fonte: Autor

Nesta aplicao, acionaremos LEDs devido ao limite de corrente e tenso


das sadas do microcontrolador, mas nada impede que estes sinais sejam
amplificados por transistores, acionando comutadores a rel para ativar e
desativar sinaleiros reais.
Do ponto de vista da programao, nossa meta ser construir um programa
que atenda aos seguintes requisitos funcionais:
1) Nenhum semforo pode ficar sem uma indicao.
2) Nenhum semforo pode ficar com mais de uma indicao.
3) Sempre deve haver ao menos um dos semforos em vermelho.
4) O tempo dos semforos abertos deve ser de 30 segundos, com mais 10
segundos de advertncia (luz amarela).
Segue o programa sugerido:
AUTOMAO INDUSTRIAL
238

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funo principal


{
output_c(0b00001001); // vermelho nos dois semforos
delay_ms(10000); // 10 segundos
while(true) // define um rtulo chamado retorno
{
output_c(0b00001100); // abre semforo 1
delay_ms(30000); // 30 segundos
output_c(0b00001010); // amarelo no semforo 1 (c3 liga)
delay_ms(10000); // 10 segundos
output_c(0b00100001); // vermelho no semaf.1, e verde no semaf.2
delay_ms(30000); // 30 segundos
output_c(0b00010001); // amarelo no semaf. 2
delay_ms(10000); // 10 segundos
}
}

// ======================== fim do programa ==========================

Observe o uso da funo OUTPUT_C. Ela permite enviar uma informao


numrica (de um byte) para o PORTC. Os valores informados entre os
parnteses so constantes numricas.
Quando a instruo output_c(0b00001010) for executada, os pinos C1 e C3
sero postos em nvel alto (5V), enquanto C0, C2, C4, C5, C6 e C7 sero postos
em nvel baixo (0V). Isso mais eficiente do que usar instrues output_high()
e output_low() para definir o estado dos pinos, pois esta instruo causa uma
alterao (neste programa) em dois pinos, e seriam necessrias duas instrues
para fazer o papel da funo output_c neste contexto.
O valor expresso, que inicia em 0b, est em binrio. Se desejar expressar
o valor em decimal, basta no adicionar o prefixo 0b ao valor.
Por exemplo, output_c(10) equivale a output_c(0b00001010), pois
00001010 em binrio equivale a 10 em decimal. J, se desejar expressar o
valor em hexadecimal, adicione o prefixo 0x ao valor.
Exemplo: output_c(0x0A).
As formas de representao podem variar conforme a necessidade, porm
evite adicionar zeros a esquerda ao usar a representao decimal (sem o prefixo).
Alguns compiladores interpretam o valor na base octal, muito pouco utilizada,
porm ainda suportada por alguns fabricantes e pelo padro C ANSI.
5 Microcontroladores
239

5.9.7 Comandos para leitura das Entradas digitais

Entradas digitais geralmente so usadas em combinao com estruturas


condicionais ou de repetio, fazendo com que o programa execute percursos
diferentes em funo da variao de estado das entradas, geralmente conectados
a sensores ou dispositivos de comunicao.
Para exemplificar o uso, vamos a uma aplicao onde um motor de passo
controlado por um microcontrolador, gerando movimentos no sentido horrio ou anti-
horrio de acordo com duas entradas digitais conectadas a chaves tcteis (botes).
Microcontrolador conectado a um motor de passo unipolar e a duas
chaves tcteis. (Figura 238)
1N4007

12V
BoT1

BoT2

5V 5V +12V
TIP 122
1k
1N4007

12V

TIP 122
C0 1k
1N4007

C1 12V
C2
C3
D0
D1
TIP 122
10k 10k 1k
1N4007

12V

TIP 122
1k

Figura 238 - Controle de motor de passo unipolar


Fonte: Autor

Observe que o motor de passo em questo um atuador que possui 4 bobinas.


Acionando cada uma das bobinas em sequncia, possvel obter um movimento
controlado, gerando um pequeno passo (da o nome motor de passo). Como
grande vantagem, o motor de passo permite um posicionamento facilitado,
podendo ser controlada tambm a velocidade atravs do aumento ou diminuio
do tempo de transio de um para outro passo.
Segue o programa que utiliza as entradas digitais onde esto conectadas as
chaves BOT1 e BOT2. Estas chaves tcteis sero usadas no programa para definir o
sentido de rotao do motor (horrio ou anti-horrio).
AUTOMAO INDUSTRIAL
240

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funo principal


{
output_c(0); // pe todo o PORTC em nvel baixo
while(true) // define um rtulo chamado retorno
{
if (input(PIN_D0)) // se BOT2, conectado a D0, for acionado
{ // incio
output_high(PIN_C0); delay_ms(40); output_low(PIN_C0); // BOBINA 1
output_high(PIN_C1); delay_ms(40); output_low(PIN_C1); // BOBINA 2
output_high(PIN_C2); delay_ms(40); output_low(PIN_C2); // BOBINA 3
output_high(PIN_C3); delay_ms(40); output_low(PIN_C3); // BOBINA 4
} // fim
if (input(PIN_D1)) // se BOT1, conectado a D1, for acionado
{ // incio...
output_high(PIN_C3); delay_ms(40); output_low(PIN_C3); // BOBINA 4
output_high(PIN_C2); delay_ms(40); output_low(PIN_C2); // BOBINA 3
output_high(PIN_C1); delay_ms(40); output_low(PIN_C1); // BOBINA 2
output_high(PIN_C0); delay_ms(40); output_low(PIN_C0); // BOBINA 1
} // fim
}
}

// ========================== fim do programa =========================

A estrutura condicional IF (que ser estudada de forma mais aprofundada)


deve conter, entre os parnteses que a sucedem, uma condio que pode
ser verdadeiro ou falso. No caso, a funo input(...) pode resultar nestes
sinais lgicos, podendo ser verdadeiro (caso a entrada em questo esteja
em nvel alto) ou falso (caso esteja em nvel baixo). Desta forma, podemos
usar a funo embutida do compilador CCS chamada input para verificar o
estado lgico do pino em questo.
Como j estudado, as chaves que sucedem a linha do IF so usadas para
determinar o incio e o final do bloco de instrues que ser executado caso
o IF tenha uma condio verdadeira.
Da mesma forma que com os comandos de sada digital, existem
comandos de entrada digital que permitem ler um PORT inteiro, retornando
os 8 bits possveis existentes em um PORT.
A instruo
CODIGO = input_d();
L todo o PORTD, armazenando o valor lido na varivel CODIGO. Esta
varivel deve ser previamente declarada, com o tipo INT ou superior.
Declarao de variveis ser estudado em seguida.
5 Microcontroladores
241

5.9.8 Tipos de dados

Embora no seja a principal funo dos microcontroladores, o


processamento de dados tambm um recurso a ser explorado neste tipo
de hardware. Ao manipular informaes, contando, acumulando, calculando e
realizando operaes lgicas, podemos agregar funcionalidades interessantes
aos equipamentos atravs de algumas linhas de programao.
Os dados processados consistem em informaes binrias armazenadas
em uma memria temporria, conhecida como memria RAM. Porm,
esta memria, alm de finita, bastante limitada quando falamos em
microcontroladores.
Enquanto em um computador pessoal existem alguns Gigabytes de
memria RAM disponveis para o processamento da informao, que hoje
em dia apresentada das mais diferentes formas, como arquivos multimdia,
som, vdeo etc., nos microcontroladores so reservadas algumas centenas (ou
dezenas) de bytes, exigindo um maior cuidado por parte do programador.

Pesquisando sobre a quantidade de memria RAM e


SAIBA ROM disponvel em microcontroladores da Microchip
MAIS acessando o site www.microchip.com e pesquisando sobre
microcontroladores PIC.

funo do programador definir a quantidade de memria que ser


usada por uma varivel, bem como inicializar (dar um valor inicial) a este
espao de memria.
Saber DECLARAR uma varivel importante para utilizar, de forma mais
adequada, a memria disponvel. Dependendo do dado a ser armazenado,
pode ser alocada uma rea maior ou menor de memria, variando tambm
conforme a forma de representao para o valor armazenado.
Outro fator importante o ESCOPO da varivel. Quando criamos variveis
globais, estas ocupam a memria durante todo o tempo de execuo do
programa, mantendo os dados armazenados enquanto o microcontrolador
estiver em modo execuo. J variveis locais tm um tempo de vida mais
curto, liberando a memria quando a funo (sub-rotina) onde esta varivel
est declarada deixa de ser executada.
Em um sistema onde precisamos calcular, quantificar, acumular, contar, enfim,
processar dados sero necessrias variveis, que consistem nas estruturas que
armazenaro a informao durante a execuo do programa.
Vejamos a primeira verso do programa criado procurando identificar as
variveis existentes:
AUTOMAO INDUSTRIAL
242

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void) // funo principal


{
int amostras = 0; // declara varivel de 8 bits p/ inteiros
long contaparcial = 0; // declara varivel de 16 bits p/ inteiros
long contatotal = 0; // declara varivel de 16 bits p/ inteiros
while(true) // lao principal
{
while(!input(PIN_D0)); // repete linha enquanto no houver sinal em D0
delay_ms(10); // tempo de 10 ms
while(input(PIN_D0)); // repete linha enquanto D0 estiver acionado
delay_ms(10); // tempo de 10 ms
contaparcial ++; // aumenta varivel contaparcial
if (contaparcial >= 1000) // se contador for superior ou igual a 1000
{ // incio
output_high(PIN_C0); // liga C0 (cilindro de remoo da amostra)
amostras ++; // conta amostra
if (amostras == 5) // se for a quinta amostra
{ // incio
output_high(PIN_E2); // liga sirene
amostras = 0; // zera contador de amostras
} // fim
contaparcial = 0; // zera contador parcial
} // fim
else // seno (se contaparcial for inferior a 1000)
{ // incio
output_low(PIN_E2); // desliga sirene
output_low(PIN_C0); // desliga cilindro de remoo da amostra
} // fim
contatotal ++; // contador total incrementado uma unidade
}
}

// ========================= fim do programa ==========================

Vamos a um exemplo de programa que utiliza variveis, iniciando por um


estudo de caso:

CASOS E RELATOS

Uma olaria do interior do Paran desenvolveu um sistema automatizado


para melhorar a qualidade e a produtividade. Uma esteira transportadora
realiza a movimentao de tijolos produzidos, e processos internos de
qualidade determinam que, a cada 1000 tijolos, um deve ser examinado
em testes de qualidade. Como cada lote constitudo de 5000 tijolos,
so cinco amostras por lote.
5 Microcontroladores
243

Evitando confuses relativas a uma possvel reprovao de um lote, Mnica,


uma tcnica em automao industrial com grande aptido para sistemas
embarcados, desenvolveu um circuito microcontrolado onde os tijolos so
contados, e a cada 1000 peas uma destacada automaticamente atravs do
acionamento de um cilindro pneumtico instalado perpendicularmente ao
plano da esteira. A cada 5 amostras coletadas, uma sirene acionada, informando
ao departamento de controle de qualidade que as amostras podem ser
coletadas para teste. Mnica tambm implementou um sistema de contagem
de tijolos produzidos. Aps alguns dias, percebeu-se que o contador no estava
funcionando direito. Alm de contagem de tijolos ser perdida quando o sistema
era desligado, a contagem no passava de 65535 tijolos. Com o emprego de
outro tipo de dados na declarao da varivel de contagem, e do uso de uma
tcnica de gravao em EEPROM, os problemas foram solucionados.

No exemplo acima exitem trs variveis declaradas. Todas foram declaradas dentro da
funo principal (interno s chaves de void main (void)) e, portanto, so variveis locais.
Se houvesse outras funes neste programa, elas no teriam acesso a estas trs variveis.
Quanto ao tipo, foram usados dois tipos de dado diferentes. Vamos analisar
linha a linha:
int amostras = 0;
Esta linha declara a varivel chamada amostra. A palavra int no incio da
linha identifica o tipo de dado da varivel. Este tipo de dado consiste em gerar
uma varivel para armazenar nmeros inteiros no tamanho padro que, para
microcontroladores PIC da famlia 16 e 18, de 8 bits. Portanto, amostras uma
varivel inteira de 8 bits, que consegue armazenar nmeros inteiros entre 0 e
255 (valores limites para representao com 8 bits). Observe tambm o = 0, que
identifica que a varivel ser inicializada com zero.
long contaparcial = 0;
Nesta linha, declarada uma varivel chamada contaparcial. O tipo de dado
escolhido long, identificando a varivel com o dobro do tamanho alocado em
relao ao int, portanto de 16 bits, podendo comportar nmeros inteiros positivos,
entre 0 e 65535, lembrando que a possibilidade de combinaes com 16 bits de
216, ou seja, 65536 combinaes.
long contatotal = 0;
Da mesma forma que na declarao anterior, a varivel contatotal ser declarada
com varivel de 16 bits, com capacidade para nmeros inteiros positivos at 65535.
Este era o problema inicial que havia com este contador e, para estender a capacidade
da varivel, sugerido o uso de um tipo de dado mais abrangente, tambm para
nmeros inteiros, que pode ser feito atravs de uma das linhas que segue:
AUTOMAO INDUSTRIAL
244

int32 contatotal = 0; ou long long contatotal = 0;


No CCS, o tipo de dado int32 (ou long long) permite declarar variveis para
armazenamento de nmeros inteiros de 32 bits. Como 232 = 4.294.967.296, o
limite para este tipo de dado dificilmente ser alcanado. (Figura 239)

int iA, iB;


long IVAR;
00110100 int32 dAUX;
10010010 float fVLR;
10100101
10111101 iA
10101110 int = 8bits. Inteiros de 0 a 255 ou -128 e 127
iB
10101011
10101010
IVAR long = 16bits. Inteiros de 0 a 65535 ou -32768 a 32767
10101011 dAUX int32 = 32bits. Inteiros de 0 a 4.294.967.295 ou
10101001 fVLR -2.147.483.648 a 2.147.483.647
01010101 float = 32bits. Ponto flutuante (valores com virgula). Funciona
10111101
10101010
como notao cientcica. Possui grande abrangncia, mas no
10101111 garante preciso.
10101010
10101010

Figura 239 - Comandos para leitura das sadas digitais 1


Fonte: Autor

Portanto, observamos que para utilizar as variveis, antes de tudo precisamos conhecer:
1) os tipos de dados existentes, que definem quanta memria a varivel ir
ocupar, e como ser a informao que ela ir armazenar;
2) que nomes podem ser dados a estas variveis; e
3) onde podemos declarar as variveis.
Quanto aos tipos de dados, para armazenar valores inteiros e positivos em um
microcontrolador de 8 bits podemos usar: (Tabela 28)
Tabela 28: Tipos de dados para armazenar valores
Tipo de dado/ Quantidade Menor Maior
Nome alocada em valor valor
alternativo bits suportado suportado
short 1 0 1
int1
boolean

int 8 0 255
int8
long 16 0 65.535
int16
long long 32 0 4.294.967.295
int32
Fonte: Autor
5 Microcontroladores
245

Para declarar variveis que suportem nmeros inteiros negativos, faz-se


necessria (no CCS) a adio de um prefixo na declarao das variveis. Neste
caso, temos: (Tabela 29)
Tabela 29: Prefixo de declarao das variveis
Tipo de dado/ Quantidade Menor Maior
Nome alocada em valor valor
alternativo bits suportado suportado
signed int 8 -128 127
signed int8
signed long 16 -32.768 32.767
signed int16
signed long long 32 -2.147.483.648 2.147.483.647
signed int32
Fonte: Autor

Em alguns casos, existe a necessidade de declarar variveis que suportem


nmeros reais. Devido a sua natureza discretizada e finita, os sistemas
computacionais no podem representar nmeros com infinitas casas decimais,
e usamos estratgias para promover o armazenamento de forma mais eficiente,
buscando melhor equilbrio entre o espao de memria ocupada, a preciso da
informao representada e a faixa de representao.
Para representar nmeros muito grandes, costumamos utilizar abreviaes ou
notao cientfica.
Por exemplo, uma folha de papel geralmente tem espessura de um dcimo
de milmetro, ou seja, 1,00 x 10-4 metros; j a distncia entre a Lua e a Terra de
aproximadamente 384.405 Km, ou seja, aproximadamente 3,84 x 108 metros. Observe
que as informaes so muito diferentes. Comparar a espessura de uma folha de
papel com distncias usadas no espao aparenta um contraste muito grande para
ser representado numericamente usando a mesma unidade de medida. No entanto,
quando expressamos os valores em notao cientfica, utilizada uma quantidade
relativamente pequena e muito prxima de dgitos.
Isso tambm ocorre quando usamos tipos de dados no formato de ponto flutuante.
Pontos flutuantes so tipos de dados compostos similares notao cientfica, porm
com representao na base binria.
Ao programador, esta representao totalmente transparente, mas, a exemplo
da notao cientfica, quando usamos uma varivel do tipo ponto flutuante, podem
ocorrer imprecises nos valores armazenados, pois parte menos significativa dos dados
desprezada durante o armazenamento.
Para declarar variveis deste tipo, usamos o seguinte tipo de dado:
Tipo de dado Quantidade alocada em bits
float 32
AUTOMAO INDUSTRIAL
246

Quanto aos limites de um float, so bastante amplos, podendo chegar a dezenas


de casas decimais. A preciso pode variar conforme os valores armazenados.
Quando um valor muito grande for representado, partes menos significativas so
eliminadas, causando pequenas alteraes. Por exemplo, em uma varivel do tipo
FLOAT possvel armazenar a espessura em metros de uma folha de papel, e a
distncia em metros entre a Terra e a Lua; porm, caso uma seja somada outra,
a informao menos significativa ser perdida.
Alm dos tipos de dados numricos, podemos declarar variveis para uso com
caracteres. Neste caso, o tipo de dados usado CHAR e permite armazenar em at
8 bits os caracteres, codificados no sistema ASCII.
Tipo de dado Quantidade alocada em bits
char 8
Em certos casos, os tipos de dados podem ser suprimidos, no ao declararmos
uma varivel, mas ao identificarmos funes (sub-rotinas).
Uma funo pode receber dados entre os parnteses, e tambm retornar
dados ao ser chamada. Porm, se isso no ocorrer, utilizamos um tipo de dado
vazio, que no aloca nenhuma memria. Este tipo de dado o VOID.
Tipo de dado Quantidade alocada em bits
void 0

5.9.9 Nome das variveis

Uma varivel deve, obrigatoriamente, ter um nome nico. No podemos


usar uma palavra reservada, como nome de instruo ou de funo embutida,
para uma varivel. O nome da varivel tambm deve ser uma nica palavra, que
pode conter letras, nmeros e alguns smbolos, como o underline (_), porm o
primeiro caractere da varivel no pode ser numrico.
Exemplo de nomes NO VLIDOS para variveis:
contador de pecas (mais de uma palavra. Sugerido: contador_de_pecas)
123aux (iniciado por nmero. Sugerido: aux123)
main (palavra reservada. Sugerido: principal)
peas (uso de smbolo especial cedilha. Sugerido: pecas)

5.9.10 Local da declarao de variveis

Variveis podem ser usadas dentro de uma funo, para um clculo local e temporrio
durante a execuo do programa. Tambm podem ser usadas para um armazenamento
mais abrangente, com validade durante toda a execuo do programa.
5 Microcontroladores
247

Tambm podemos usar estas variveis para trocar dados entre as funes,
usando-as para envio de dados durante a chamada de uma sub-rotina.
Portanto, em um programa C ANSI h trs lugares nos quais podemos declarar
variveis. O primeiro fora de todas as funes do programa (funes sero vistas
em breve). Estas variveis so chamadas variveis globais e podem ser usadas a
partir de qualquer lugar no programa. Podemos dizer que, como elas esto fora
de todas as funes, todas as funes as veem.
O segundo lugar no incio de um bloco de cdigo. Estas variveis so chamadas
locais e s tm validade dentro do bloco no qual so declaradas, isto , s a funo qual
ela pertence sabe da existncia desta varivel, dentro do bloco no qual foram declaradas.
importante observar que a maioria dos compiladores exige que a declarao da
varivel ocorra no incio do bloco da funo, no podendo ser feita depois que uma linha
de instruo for executada. Se isso no for respeitado, so exibidos erros de compilao.
O terceiro lugar onde podemos declarar variveis na lista de parmetros de
uma funo. Apesar de estas variveis receberem valores externos, so conhecidas
apenas pela funo onde so declaradas.
Segue um pequeno exemplo, com as variveis em destaque:
#include <16f877.h> // inclui arquivo de cabealho
#use delay (clock=20000000) // define valor de clock para delays

int total = 100; // declara varivel global

void pisca(int qtde) // declara funo chamada PISCA com 1 parmetro


{ // inicio da funo
while(qtde > 0) // enquanto qtde for > que 0 ...
{ // incio
output_high(PIN_C0); delay_ms(total); // nvel alto em C0 e tempo de total ms
output_low(PIN_C0); delay_ms(total); // nvel baixo em C0 e tempo de total ms
qtde --; // decrementa qtde
} // fim do while
} // fim da funo PISCA

void main(void) // funo principal


{ // incio da funo principal
long aux = 0; // declara varivel local, s visvel em main
while(1) // lao infinito
{ // incio do lao infinito
aux ++; // incrementa aux uma unidade
output_high(PIN_D0); delay_ms(100); // nvel alto em D0, tempo de 100ms
output_low(PIN_D0); delay_ms(100); // nvel baixo em D0, tempo 100ms
if (aux > 1000) // se aux for superior a 1000
{ // incio
aux = 0; // aux zerado
pisca(10); // dispara PISCA passando 10 para qtde
total ++; // aumenta varivel global
} // fim do bloco condicional
} // fim do lao infinito
} // fim da funo principal
// ========================= fim do programa ============================
AUTOMAO INDUSTRIAL
248

No programa acima foram declaradas trs variveis: total, qtde e aux.


A varivel total do tipo int, e foi declarada como global. Suporta nmeros
inteiros de 8 bits (0 a 255) e pode ser vista e manipulada diretamente por
qualquer funo do programa. No caso deste programa, tanto a funo main
como a funo pisca a utilizam.
J a varivel aux local, declarada dentro da funo main, e somente esta
funo pode utiliz-la. Caso uma referncia a esta varivel seja feita dentro da
funo pisca, ou de qualquer outra funo que venha a ser construda, ocorrero
erros durante a compilao.
A varivel qtde um parmetro da funo PISCA, e seu comportamento de
uma varivel local, existindo somente enquanto a funo estiver sendo executada.

5.9.11 Tipos de dados complexos

Em algumas situaes pode ser necessrio o uso de vrias ocorrncias de uma


mesma varivel. Isso pode exigir do programador a criao de estruturas de dados
mais complexas como, por exemplo, a declarao de matrizes.
Vamos analisar o uso de uma matriz para o hardware proposto abaixo:
(Figura 240)

U1
13 OSC1/CLKIN RB0/INT 33
R1 330
14 RB1 34
OSC2/CLKOUT
RB2
R2 330
35
2 RB3/PGM 36 R3 330
RA0/AN0
3 RA1/AN1
RB4 37 R4 330
4 RB5 38
RA2/AN2/VREF-/CVREF R5 330
5 RA3/AN3/VREF+ RB6/PGC 39
R6 330
6 RA4/TOCKI/C1OUT RB6/PGD 40
7 RA5/AN4/SS/C2OUT R7 330
RC0/T1OSO/T1CKI 15
RC1/T1OSI/CCP2 16
8 RE0/AN5/RD
RC2/CCP1 17
9 RE1/AN6/WR 18
RC3/SCK/SCL
10 RE2/AN7/CS RC4/SDI/SDA 23
RC5/SDO 24
RC6/TX/CK 25
1 MCLR/Vpp/THV 26
RC7/RX/DT BOT +

RD0/PSP0 19
RD1/PSP1 20
RD2/PSP2 21
BOT -
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28
RD6/PSP6 29
RD7/PSP7 30
PIC 16F877A
PROGRAM = 7 SEGMENTOS.cof

Figura 240 - Tipos de dados complexos


Fonte: Autor
5 Microcontroladores
249

No hardware acima, o microcontrolador controla diretamente um display de 7


segmentos, onde 7 leds dispostos em segmentos permitem exibir representaes
numricas. Para cada nmero a ser representado, deve ser realizada uma
combinao certa de acionamentos (no PORTC).
Segue um programa que utiliza uma matriz de 10 posies, onde ficam
armazenadas as combinaes para cada um dos 10 possveis dgitos (0 a 9) que
possam existir para este display.
A matriz declarada na funo digito, e seus valores so expressos em binrio.
#include <16f877.h> // inclui arquivo de cabealho
#use delay (clock=20000000) // define valor de clock para delays

void digito(int x) // declara funo chamada DIGITO com 1 parmetro


{ // inicio da funo
/* abaixo, declarao de uma matriz de 10 posies (0 a 9), com mscaras
binrias que definem qual segmento do display deve ser ligado para cada nro */
int mascara[10]={0b00111111, 0b00000110, 0b01011011, 0b01001111, 0b01100110,
0b01101101, 0b01111100, 0b00000111, 0b01111111, 0b01100111};
output_c(mascara[x]); // joga valor da matriz na posio x em PORTC
} // fim da funo DIGITO

void main(void) // funo principal


{ // incio da funo principal
signed int nro = 0; // declara varivel local, s visvel em main
while(1) // lao infinito
{ // incio do lao infinito
if (input(PIN_D0)) // se D0 (BOT+) estiver em nvel alto...
{ // incio
nro ++; // incrementa nro
delay_ms(300); // delay de 300 ms
} // fim bloco condicional
if (input(PIN_D1)) // se D1 (BOT-) estiver em nvel baixo...
{ // incio
nro --; // incrementa nro
delay_ms(300); // delay de 300 ms
} // fim bloco condicional
if (nro < 0) nro = 9; // se nro for menor que 0, atribui 9 a nro
if (nro > 9) nro = 0; // se nro for maior que 9, atribui 0 a nro
digito(nro); // chama funo digito, passando nro como parmetro
} // fim do lao infinito
} // fim da funo principal

// ========== fim do programa ==============

Neste programa, a varivel mascara (mscara) dada por um int (8 bits),


porm a indicao entre os colchetes identifica a quantidade de repeties em
memria desta varivel. como se houvesse 10 variveis com o mesmo nome.
Isso realizado pela linha:
int mascara[10];
AUTOMAO INDUSTRIAL
250

A inicializao tambm realizada durante a declarao da varivel, dando-lhe


um valor inicial. Isso obtido usando o smbolo de atribuio, e com os valores de
inicializao expressos entre sinais de chaves, e separados por vrgula. Como so
10 posies na matriz mascara (mscara), so 10 valores de inicializao.
int mascara[10]={0b00111111, 0b00000110, 0b01011011, 0b01001111, 0b01100110,

0b01101101, 0b01111100, 0b00000111, 0b01111111, 0b01100111};

Os valores foram expressos em binrio, para facilitar a implementao. Cada


bit definir o estado do dgito de 7 segmentos em sua ocorrncia. Por exemplo, nas
ocorrncias 0, 2, 3, 5, 7, 8 e 9, o bit menos significativo ser ligado. Este bit ser relacionado
a um dos segmentos comuns que compem a representao destes nmeros.
No programa principal, podemos observar que, toda vez que o boto conectado
ao pino D0 for pressionado, o valor exibido no display ser incrementado. D1
usado para decrementar. Testes foram adicionados para evitar que os valores
mximo e mnimo sejam ultrapassados, o que poderia gerar inconsistncias e
erros de funcionamento.
Observe que mascara (mscara) no uma varivel, mas uma sequncia
de 10 variveis, indexadas por um valor constante ou varivel entre colchetes;
mascara[0] (mscara) contm um valor, mascara[1] (mscara) pode conter outro,
e assim sucessivamente. No exemplo acima, uma varivel utilizada entre os
colchetes, e isso permite que o programa mude sua ocorrncia e facilite o uso de
outras posies.
Geralmente, estruturas de dados mais complexas no so usuais em
microcontroladores de 8 bits, pois sua memria limitada no favorece seu uso.

Faa uma busca na internet sobre o uso de matrizes


SAIBA bidimensionais e estruturas (structs) em linguagem C.
MAIS Pesquise sobre o uso de ponteiros em variveis e matrizes,
suas vantagens e desvantagens.

5.9.12 Operadores

Na linguagem C, os operadores so os smbolos usados para realizar operaes


lgicas e aritmticas, estabelecendo tambm a prioridade e o formato destas
operaes. Quando um programa realiza uma operao aritmtica, ocorre uma
srie de procedimentos, desde a definio da precedncia (que define qual parte
da expresso ser feita primeiro) at a forma com que os dados sero manipulados
em memria, consumindo mais ou menos bits.
Iniciaremos o estudo deste tpico estudando os operadores separados em
categorias, com alguns exemplos de uso. (Tabela 30)
5 Microcontroladores
251

Tabela 30: Operadores


Categoria Operador Ao Exemplos Obs.

= Atribuio int x = 5; A atribuio simbolizada por um nico sinal


de igual, e indica que tudo o que est a sua
(recebe) x = 20;
Atribuio e prioridade

direita ser computado, resolvido e a soluo


a = x + y / 2; obtida ser armazenada na rea de memria
(varivel) indicada a sua esquerda. Recomen-
x=y=z=105;
damos ler este sinal como RECEBE. Portanto,
leia a linha var2 = 20 como var2 recebe 20.
() Prioridade x = 20 * (y Em uma expresso, os parnteses indicam
o que ser executado prioritariamente. No
+ 1);
exemplo citado, caso no fossem utilizados, a
multiplicao ocorreria antes da soma.
+ Soma x = a + b; Retorna a soma de dois elementos.
- Sub- x = a b; Subtrao ou inverso de sinal.
trao ou x = -x;
Inverso
de sinal
* Multipli- x = a * b; Multiplicao. Assim como a diviso, tem
prioridade sobre a soma e a subtrao.
cao

/ Diviso x = a / b; Diviso. Quando feita com valores inteiros, o


resultado tambm um inteiro. Por exemplo,
20 dividido por 6 3 (valor inteiro). No h
arredondamento. O valor simplesmente
truncado para seu valor inteiro. Quando o
operador utilizado com valores reais (float),
a diviso real.
% Resto de x = a % b; Somente para valores inteiros, retorna o
Aritmticos

resto da diviso do primeiro termo pelo


diviso
segundo. Por exemplo, o resto da diviso
(somente de 20 por 6 2.
inteiros)
++ Incre- x ++; Operador que atua em um nico oper-
ando. Ao ser escrito ao lado direito de uma
mento y = ++ x * 5;
varivel, esta ser incrementada ao final da
linha de instruo, aumentando seu valor
em uma unidade. Ao ser escrito ao lado
esquerdo de uma varivel, esta ter seu
valor incrementado em uma unidade antes
de ser utilizada. Este operador se restringe
a tipos de dados inteiros, como short, int,
long e long long (int32).
-- Decre- x --; Operador que atua em um nico operando,
similar ao ++, porm decrementando a var-
mento y = x -- / 9;
ivel no lugar de increment-la. O uso antes
ou depois da varivel a ser decrementada
(diminuida em uma unidade) identifica que o
valor da varivel ser diminuido antes ou de-
pois de ser utilizada na expresso. Operador
restrito ao uso com tipos de dados inteiros,
como int, long, shor, long long.
AUTOMAO INDUSTRIAL
252

Continuao Tabela 30: Operadores


Categoria Operador Ao Exemplos Obs.

> Maior que if (a > b) ...; Assim como outros operadores relacionais,
retorna verdadeiro (1) ou falso (0). Retorna
x = a > b;
(1) se o primeiro operando for maior que o
segundo, e (0) caso contrrio.
>= Maior ou if (a >= b) ...; Retorna (1) se o primeiro operando for
maior ou igual ao segundo. Caso contrrio,
igual a x = a >= b;
retorna (0).
< Menor if (a < b) ...; Retorna (1) se o primeiro operando for menor
Relacionais

que o segundo, e (0) caso contrrio.


que x = a < b;
<= Menor ou if (a <= b) ...; Retorna (1) se o primeiro operando for
menor ou igual ao segundo. Caso contrrio,
igual a x = a <= b;
retorna (0).
== Igual if (a == b) ...; Retorna (1) se o primeiro operando for igual
ao segundo, e (0) se for diferente.
x = a == b;
!= Diferente if (a != b) ...; Retorna (1) se o primeiro operando for difer-
ente que o segundo, e (0) se for igual.
x = a != b;
&& E (AND) if ((a > b) && Retorna verdadeiro (1) somente se o primeiro
operando for verdadeiro e o segundo oper-
(a > c)) ...;
ando tambm for verdadeiro.
x = (a && c);
|| OU (OR) if ((a > b) || (a Retorna verdadeiro (1) se pelo menos um dos
operandos for verdadeiro. Se ambos forem
Lgicos

> c)) ...;


falso (0), o valor retornado ser falso (0).
x = (a || c);
! NO if Retorna o valor lgico invertido. O operador
NO inverte o valor lgico em um teste. Se o
(NOT) (!input(PIN_
operando for diferente de zero (verdadeiro),
D3))...; o operador retorna falso. Se for igual a zero
(falso), o operador retorna verdadeiro.
x = !a;
& AND (E) x = a & b; Operao binria E entre cada bit de dois
nmeros binrios. Se o bit n de ambos os
operandos estiver em 1, o bit n do resultado
tambm estar ligado. 01011010 & 10010110
= 00010010 Este operador pode ser til
quando desejamos manipular bits de um
byte. Exemplo: para zerar somente os trs
bits menos significativos de um byte, basta
aplicar: x = x & 0b11111000
Bit a Bit

| OR (OU) x = a | b; Operao binria OU entre os bits de dois


nmeros binrios. Se o bit n do primeiro valor,
ou do segundo valor, ou de ambos estiver
ligado, o bit n do resultado tambm estar
ligado. 01011010 | 10010110 = 11011110 Este
operador pode ser til quando desejamos
manipular bits de um byte. Exemplo: para ati-
var somente os quatro bits mais significativos
de um byte, basta utilizar da seguinte forma:
x = x | 0b11110000
5 Microcontroladores
253

Continuao Tabela 30: Operadores


Categoria Operador Ao Exemplos Obs.

^ XOR (OU x = a ^ b; Operao binria OU EXCLUSIVO entre os


bits de dois nmeros binrios. Se o bit n
exclu-
do primeiro valor estiver ligado e o bit n
sivo) do segundo valor desligado, ou se o bit n
do primeiro valor estiver desligado e o do
segundo valor ligado, o bit n do resultado
estar ligado. 01011010 ^ 10010110 =
11001100 Este operador pode ser utilizado
para inverter o valor de alguns bits de um
byte, como no exemplo que segue: x = x ^
0b11110000 // somente os quatro bits mais
significativos sero invertidos.
~ NOT x = ~a; Inverte o valor de todos os bits.~ 01100101
= 10011010 x = ~x equivale a x = x ^
Bit a Bit

(NO)
0b11111111.
>> RIGHT x = a >> 1; Desloca os bits para a direita, um determina-
SHIFT do nmero de casas. til para realiar rotaes
x = a >> b;
(Deslo- binrias em PORTs conectados a dispositivos
camento que precisam ser acionados em sequncia,
de bits como motores de passo. 11000101 >> 1 =
para 01100010 11000101 >> 2 = 00110001
direita)
<< LEFT x = a << 1; Desloca os bits para a esquerda, um deter-
SHIFT minado nmero de casas. Da mesma forma
x = a << 2;
(Deslo- que o RIGHT SHIFT, o LEFT SHIFT pode ser
camento til para rotaes binrias em acionamentos
de bits realizados sequencialmente, como mo-
para es- tores de passo. 11000101 << 1 = 10001010
querda) 11000101 << 2 = 00010100
Fonte: Autor

Operadores avanados:

Na forma contracta, alguns operadores podem otimizar a execuo do


programa e o consumo de memria, gerando cdigo HEX um pouco mais
eficiente, variando conforme otimizaes de alguns compiladores.
O uso realizado antecipando o operador para antes do sinal de atribuio
e suprimindo o primeiro operador, que deve ser o mesmo da varivel de
destino. (Tabela 31)
Tabela 31: Operadores avanados
+= Incremento x += 10; O exemplo equivale a x = x + 10;

-= Decremento x -= 10; O exemplo equivale a x = x 10;


*= Produto x *= 10; O exemplo equivale a x = x * 10;
/= Diviso x /= 10; O exemplo equivale a x = x / 10;
%= Resto da diviso x %= 10; Equivale a x = x % 10;
<<= Rotao esquerda x <<= 1; Equivale a x = x << 1;
>>= Rotao direita x >>= 1; Equivale a x = x >> 1;
Fonte: Autor
AUTOMAO INDUSTRIAL
254

Lembramos que os operadores supracitados so da linguagem C, e no do


microcontrolador. Operadores como multiplicao e diviso so implementados
atravs de repeties de somas e subtraes, gerando mais de uma instruo
em linguagem de mquina. Embora isso seja transparente ao programador,
importante lembrar que realizar operaes com tipos de dados maiores, como
long ou float, pode consumir muito mais instrues do que operaes mais simples
com tipos de dados mais compactos. Portanto, evite desperdiar memria e ciclos
de processamento gerando programas que sejam o mais eficientes possvel.
Por exemplo, se for necessrio armazenar a informao da altura de uma pessoa,
um programador pode optar por um tipo de dado FLOAT (32 bits), armazenando
a altura em metros, porm consumindo muitos ciclos de processamento nas
expresses que envolvem esta varivel, ou pode optar por armazenar a altura em
centmetros, utilizando um INT (8 bits), e deixar o cdigo muito mais eficiente.
Outro fator importante observar a aplicao correta dos operadores. Um
operador que no existe (por exemplo, uso do smbolo <> para o diferente, no
lugar do !=) gera um erro de compilao. Porm, o uso de um operador vlido,
porm inadequado, no gera tal erro de compilao, e o efeito muitas vezes
s percebido durante a execuo do programa. Se uma etapa de testes no
identificar o erro, alguns programas podem ser implantados e utilizados com a
falha, conhecida por bug de programao.
Dentre os principais problemas enfrentados com o uso dos operadores,
podemos citar:
1) Uso inadequado do operador de comparao e atribuio.
if (x = 10)
{
...
}

o correto seria:
if (x == 10)
{
...
}

O problema no trecho de programa acima est na utilizao do operador de atribuio


(=) no lugar do operador de comparao (==). Esta linha de cdigo vlida e, portanto, no
gera erro de compilao, porm deve gerar um efeito totalmente diferente do desejado.
Como esta operao usando o sinal de atribuio (=), a varivel x receber o valor de 10,
e como 10 diferente de zero, considerado um valor lgico verdadeiro, fazendo com
que as instrues contidas no IF sejam sempre executadas, independente do valor inicial
da varivel x. Portanto, neste caso, alm de mudar o valor da varivel para 10, o bloco de
instrues sempre ser executado, independente do valor inicial da varivel.
2) Uso inadequado de tipos de dados, gerando a possibilidade de
5 Microcontroladores
255

... // na declarao das varivies:


long A;
int B, X;
// no meio do programa, aps algumas instrues
// modificarem os valores de A e B :
X = A * B;

No trecho de programa acima, uma operao de multiplicao efetuada


entre duas variveis e o resultado armazenado em uma varavel (chamada X)
do tipo INT. importante lembrar que um INT define uma varivel de 8 bits em
compiladores para microcontroladores com esta largura de processamento, e,
portanto, podem armazenar valores inteiros positivos entre 0 e 255. O resultado
da expresso de multiplicao pode gerar um valor superior a 255, e neste caso o
programador deve estar atento, pois, se esta situao ocorrer, haver estouro na
capacidade da varivel (conhecido pelo termo overflow), podendo ocorrer efeitos
indesejveis, j que este tipo de situao no previsto pelo compilador como um
erro. Se isso ocorrer, o valor que a varivel X armazenar a parte binria menos
significativa resultante. Por exemplo, digamos que o valor gerado pela expresso
de multiplicao seja 300. Em binrio, 300 representado por 100101100 (so
necessrios 9 bits). Neste caso, a partir do oitavo bit mais significativo, os valores
sero truncados. A varivel conter ento o valor 00101100 em seus 8 bits que,
traduzidos para decimal, resultam em 44, valor muito diferente dos 300 iniciais.
3) Mquina de clculo inadequada
// na declarao das varivies:
long X;
int A, B;
// no meio do programa, aps algumas instrues
// modificarem os valores de A e B:
X = A * B;

A princpio, parece que para os trechos de programa acima no haver nenhum


problema. As variveis A e B so inteiras de 8 bits, e a varivel X, de 16 bits, pode
comportar o valor mximo gerado pela expresso de multiplicao, no incorrendo em
estouro (overflow). Porm, um detalhe caracterstico da linguagem C (padro ANSI)
realizar clculos da forma mais eficiente possvel, usando reas temporrias de memria
para as operaes e instrues de clculo diferentes e adequadas para cada realidade.
Se a operao envolver somente variveis do tipo INT, a mquina de clculo
escolhida para a operao durante a execuo do programa tambm ser
adequada para INTs, e o valor resultante em reas temporrias de armazenamento
tambm ser um INT, podendo ocorrer overflow nesta rea temporria. Mesmo
que a varivel de destino seja um tipo de dado maior, o valor que ela receber
vem desta rea de memria temporria, e portanto, o valor pode vir truncado.
AUTOMAO INDUSTRIAL
256

variveis do
varivel do tipo INT
tipo LONG 8bits
16bits X = A * B;

rea temporria,
X= 01011010
de 8bits

Figura 241 - Mquina de clculo inadequada


Fonte: Autor

Para evit-lo, podemos utilizar MODELADORES, que so formas de especificar


o comportamento de uma varivel em uma expresso.
Na Figura 241, as variveis A e B so variveis do tipo INT, e a rea temporria, onde o
produto ser armazenado temporariamente, tambm tem comportamento de um INT.
Um modelador pode ser usado para mudar o comportamento de uma das variveis (ou
das duas), fazendo com que a expresso tenha tipos de dados mais complexos (long,
int32, float...) e desta forma o clculo seja feito usando reas temporrias mais complexas,
capazes de manter o dado calculado at ser armazenado na varivel de destino.
modelador faz com que a varivel se
comporte como LONG durante a resoluo
variveis do
varivel do tipo INT
tipo LONG
16bits X = (long)A * B; 8bits

rea temporria,
X= 0101101001011010
de 16bits

Figura 242 - Mquina de clculo inadequada 1


Fonte: Autor

Mas na Figura 242, a presena de um modelador (tambm conhecido por


casting) faz com que a varivel A, embora sendo um INT, se comporte como um
LONG na expresso, forando o programa a gerar uma rea de clculo temporria
de 16 bits, capaz de comportar o resultado da expresso.
Outros exemplos de uso de modeladores (casting):
float VLR; // vamos supor a declarao de VLR, do tipo FLOAT (nros reais)
int A; // e uma variveis INT de 8 bits, chamadas A
...
A = 7; // em algum momento do programa, A atribudo com o valor numrico 7
...
VLR = A / 2; // em outro ponto do programa ocorre esta operao.
Embora VLR suporte nmeros reais, admitindo valores com vrgula, a expresso
realizada entre A (um INT de 8 bits) e 2 (uma constante numrica inteira tambm
representvel em 8 bits). Desta forma, o compilador escolher implementar a mquina
de clculo de inteiros de 8 bits. O resultado da diviso inteira de 7 (valor de A) por 2 ser: 3.
Isso mesmo... no ser 3,5 porque a diviso que est sendo realizada uma diviso inteira.
5 Microcontroladores
257

Se a expresso fosse, VLR = (float)A / 2; o resultado seria outro, pois a varivel A,


embora sendo um INT, se comportar como um float, fazendo com que o compilador
implemente uma estratgia de clculo que considere valores com vrgula.
VLR = A / 2.0;
Esta outra forma de resolver o problema acima, pois o valor 2.0 determina
uma constante do tipo FLOAT, devido ao ponto. Basta um dos operadores da
expresso ser de um tipo de dado FLOAT para que o compilador escolha um
mecanismo de clculo adequado.

O uso de modeladores permite ao operador definir


FIQUE comportamentos distintos s variveis durante a execuo.
ALERTA Evite declarar variveis com tipos de dados muito complexos
ou que consumam mais memria do que o necessrio.

5.9.13 Paradigmas de programao

Podemos definir que programar estabelecer um conjunto de regras,


que sero executadas por um equipamento para a obteno de um
determinado resultado.
Existem, porm, vrias formas de faz-lo. No estamos falando das
diversas linguagens existentes, e sim de algo muito mais abrangente:
paradigmas de programao.
Um paradigma de programao fornece e determina a forma como o
programador v seu programa em relao a sua execuo. No paradigma
de programao orientada a objeto, o programador deve manter o foco
nos objetos, que so os elementos controlados pelo programa. Objetos so
colees de dados e rotinas agrupadas sob um mesmo aspecto, facilitando
a abstrao para a criao de programas de grande complexidade, porm
com alto nvel de organizao. J a programao estruturada entende que as
estruturas de controle de fluxo determinaro a sequncia de aes a serem
realizadas, uma a uma.
Em linguagem LADDER (PLCs), por exemplo, o programador estabelece uma
relao entre as entradas (sensores) e as sadas (atuadores), combinando as
funes internas (blocos lgicos) para determinar o funcionamento do programa.
A ordem em que as ligaes ocorrem no so o principal foco da programao, e
sim como elas so interligadas.

Pesquise sobre compiladores ladder para microcontroladores


SAIBA na internet. Compare trechos de programas escritos em
MAIS ladder com programas escritos em linguagem C, e aponte
vantagens e desvantagens de cada linguagem.
AUTOMAO INDUSTRIAL
258

No paradigma de programao estruturada, o programador deve


observar, com muita ateno, a ordem em que as instrues so dadas.
Esta ordem, junto s estruturas de repetio e deciso, determina o fluxo
de execuo do programa.

5.9.14 Estruturas de controle de fluxo

Na programao estruturada, o fluxo de execuo das instrues determinado


por sua ordem. Por exemplo, no trecho de programa abaixo
...
output_high(PIN_C2); // C2 em nvel alto
delay_ms(1000); // tempo de 1 segundo
output_low(PIN_C2); // C2 em nvel baixo
...

as linhas sero executadas em sequncia. Inicialmente, o pino C2 ser definido


para nvel alto (5V), aps o programa ficar parado por um segundo (devido
instruo delay_ms), e, em seguida, o pino C2 ser definido para nvel baixo (0V).
Se trocarmos a ordem das linhas, o efeito ser diferente.
Para controlar o fluxo de execuo do programa, o programador deve
definir o caminho por onde as instrues iro passar, determinando tambm
as regras que definem, durante a execuo, se um programa deve seguir por
um ou por outro caminho.
Fluxogramas so usados para representar estes caminhos e os pontos de
bifurcao e convergncia. Estes diagramas so utilizados para o estudo lgico dos
procedimentos que devem ser seguidos tanto por processos mais abrangentes
quanto em pequenos programas computacionais. (Figura 243)

inicio

obter
temperatura

SIM ligar
temperatura
ventilao
>45C?
NO
temperatura SIM ligar
<40C? aquecimento
NO
desligar
ventilao

desligar
aquecimento

Figura 243 - Fluxograma


Fonte: Autor
5 Microcontroladores
259

Fluxogramas so diagramas muito amplos e difceis de serem construdos devido


a sua caracterstica grfica, porm facilitam a interpretao e a visualizao do fluxo
de execuo. Para representar o fluxo de execuo de forma textual, so necessrias
algumas regras e instrues de controle de fluxo, muito comuns em todas as linguagens.

5.9.15 GOTO (v para...)

Sintaxe:
goto nomerotulo;
Onde nomerotulo um nome nico que identifica um rtulo, ou seja, um
ponto nico do programa. Este nome (rtulo) deve ser identificado no programa
atravs do nome, seguido por DOIS PONTOS.
Na linguagem C, a instruo de desvio incondicional GOTO pode realizar
desvios incondicionais, fazendo com que o programa tenha sua sequncia de
execuo interrompida.
Segue um exemplo de um trecho de programa:

main()
{
volta: output_high(pin_C0);
delay_ms(1000);
output_low(pin_C0);
delay_ms(1000);
goto volta;
}

Embora abominado pelos seguidores mais fiis da programao estruturada,


o goto permite realizar desvios fceis em um programa escrito em linguagem
C. Associado a estruturas condicionais, permite tambm a criao de desvios
condicionais, como abaixo representado:
main()
{
int aux = 0;
volta: output_high(pin_C0);
delay_ms(1000);
output_low(pin_C0);
delay_ms(1000);
aux ++;
if (aux == 10) goto segue;
goto volta;
segue: output_high(PIN_C1);
delay_ms(100);
output_low(PIN_C1);
aux = 0;
goto volta;
}
AUTOMAO INDUSTRIAL
260

Observe que, no programa acima, uma condio (IF) est associada a uma
instruo de desvio incondicional (goto), gerando o comportamento de desvio
condicional. O goto segue s ser executado caso a varivel aux atinja o valor
equivalente a 10.

5.9.16 IF (condio se...)

Sintaxe:

if (condio)
{
instrues...
}
else
{
instrues...
}
if (condio)
{
instrues
}
if (condio) instruo;

A estrutura condicional construda por um IF pode ser apresentada de duas


formas distintas: com e sem a contracondio ELSE.
If, em lngua inglesa, significa SE. ELSE, por sua vez, significa SENO.
Para todo SENO deve haver um SE, porm nem para todo SE h um SENO.
Lembre tambm que possvel suprimir as chaves, substituindo todo o bloco
de instrues que seria por elas delimitado por uma nica instruo.
Largamente usada na programao, IF a estrutura condicional mais
importante em um programa. Usamos IFs para criar pontos de desvio em um
programa, geralmente avaliando expresses, variveis e sinais de entrada, tanto
digitais quanto analgicos.
Seguem trechos de programa com IFs vlidos:

if (var1 > 10)
{
output_high(PIN_C0);
output_low(PIN_C7);
var2 = 10;
}
var1 ++;

5 Microcontroladores
261

No trecho anterior, um IF simples, com um bloco de instrues. A expresso


utilizada a comparao de uma varivel, e o trecho de programa entre as chaves
do IF s ser executado quando o resultado da expresso for verdadeiro, ou seja,
quando o valor de var1 for superior a 10. A linha que segue o fechar chaves do
IF ser executada, independente da condio, pois est fora da abrangncia da
estrutura condicional.


if (var1 > 10 && var2 < 40)
{
output_low(PIN_C1);
var2 = 50;
}
else
{
output_high(PIN_C1);
var2 ;
}

Para o trecho anterior, a expresso (em destaque) ser vlida quando o valor
de VAR1 for maior que 10 e o valor de VAR2 for menor que 40. Caso a condio
seja satisfeita, ser executado o primeiro bloco de instrues, delimitados pelas
chaves logo aps a linha do IF. Caso a expresso resulte em valor lgico FALSO,
o ELSE ser executado, com o fluxo de execuo pulando da linha do IF para as
instrues contidas no bloco de instrues contidos aps o ELSE.


if (input(PIN_A1) == 0)
output_high(PIN_C0);
X ++;

O teste acima est associado a uma nica instruo e, portanto, as chaves


puderam ser suprimidas. Observe que a nica instruo ligada condio est
recuada (indentao), dada pela linha que pe o pino C0 em nvel alto. A linha que
incrementa a varivel X (X++) ser executada independente do resultado do IF.

if (input(PIN_A1))
output_high(PIN_C0);
else
{
output_low(PIN_C0);
delay_ms(100);
var1 ++;
}

No teste anterior, as chaves do IF foram suprimidas devido ao uso de uma nica


instruo. No ELSE, devido ao uso de mais de uma instruo, as chaves so necessrias.
AUTOMAO INDUSTRIAL
262

So comuns os erros de programao onde programadores pouco experientes


inserem PONTO E VRGULA separando a condio (IF) da ao a ser executada
(instrues). Neste caso, podem ocorrer erros de compilao (casos em que
um ELSE utilizado), ou erros de execuo (no h erro de compilao, mas o
programa no funciona adequadamente).

FIQUE No adicione o sinal de ponto e vrgula aps o fechar


parnteses da condio do IF. Isso trunca a instruo,
ALERTA quebrando a conexo entre ela e a condio que segue.

5.9.17 SWITCH / CASE (escolha)

Switch em ingls significa ESCOLHA. Assim como o if - else, o switch utilizado


em estruturas de deciso.
Este recurso pode facilmente substituir uma cadeia de IFs encadeados
(aninhados), o que resulta em um cdigo mais limpo e de fcil entendimento. O
switch prprio para testar uma nica varivel inteira em relao a diversos valores.
A forma geral (sintaxe) deste comando :

switch (varivel)
{
case constante_1: linhas de programa ...;
break;
case constante_2: linhas de programa ...;
break;
.
.
.
case constante_n: linhas de programa ...;
break;
default : linhas de programa ...;
}

A estrutura switch estabelecer uma comparao entre uma varivel


e as constantes que aparecem depois da palavra case. Aps a utilizao
do comando switch (varivel), devemos utilizar delimitadores (chaves)
para melhor organizar o bloco de instrues que segue. Entre as chaves,
utilizamos o comando case (constante) para identificar o valor a ser
comparado com a varivel. Caso a expresso constante seja igual ao valor
da varivel anteriormente referenciada, ser executada a operao descrita
aps o sinal de dois pontos (:).
5 Microcontroladores
263

Observe, no entanto, que, se uma condio for satisfeita, todas as declaraes


abaixo tambm sero executadas; ou seja, se a condio satisfeita para um caso
(case), os cases subsequentes tambm sero executados. Para interromper
o switch, neste caso, devemos utilizar o comando break, fazendo com que o
fluxo de execuo seja desviado para o trmino (fechar chaves) do bloco de
instrues do switch.
Se no desejamos interromper a execuo, o break pode ser suprimido.
Devemos, no entanto, observar que, aps um CASE ser executado, todas as
condies restantes tambm sero executadas at que seja encontrado um break,
ou at que o bloco de instrues do switch seja finalizado.
A opo default permite que um determinado bloco seja executado no caso
de nenhuma condio anterior ter sido executada.
Exemplo de uso do comando em um programa que utiliza o SWITCH para o
hardware que segue: (Figura 244)

U1
13 OSC1/CLKIN RB0/INT 33
R1
14 RB1 34
OSC2/CLKOUT
RB2 35 330
2 RB3/PGM 36
3
RA0/AN0
RB4 37 R2
RA1/AN1
5V C. C. 4 RB5 38
RA2/AN2/VREF-/CVREF
39
330
5 RA3/AN3/VREF+ RB6/PGC
6 RA4/TOCKI/C1OUT RB6/PGD 40
R3
7 RA5/AN4/SS/C2OUT
RC0/T1OSO/T1CKI 15 330
RC1/T1OSI/CCP2 16
8 RE0/AN5/RD
9 RE1/AN6/WR
RC2/CCP1 17
R4
RC3/SCK/SCL 18
10 RE2/AN7/CS RC4/SDI/SDA 23 330
RC5/SDO 24
RC6/TX/CK 25 R5
1 MCLR/Vpp/THV 26
RC7/RX/DT
330
RD0/PSP0 19
RD1/PSP1 20 R6
RD2/PSP2 21
RD3/PSP3 22 330
RD4/PSP4 27
RD5/PSP5 28 R7
RD6/PSP6 29
RD7/PSP7 30 330
PIC 16F877A
PROGRAM = 7 SEGMENTOS.cof R8
BOT - 330

R10
10K

R9
BOT +
10K

Figura 244 - Hardware


Fonte: Autor

O hardware controlado pelo programa dado por um microcontrolador


conectado a 8 sinalizadores LED e a duas chaves tcteis que sero usadas para
mudar o padro de acionamentos dos LEDS.
AUTOMAO INDUSTRIAL
264

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void main(void)
{
int menu = 0; // declara varivel de 8 bits
short flag = 1; // declara varivel de 1 bit
while(true) // lao infinito
{
if (input(PIN_D0) && flag) // se BOT + for pressionado ...
{
menu ++; // incrementa varivel
flag = 0; // registra que j processou
}
if (input(PIN_D1) && flag) // se BOT - for pressionado ...
{
menu --; // decrementa varivel
flag = 0; // registra que j processou
}
if (!input(PIN_D1) && !input(PIN_D0))
flag = 1; // caso nenhum boto pressionado, reseta flag
switch(menu) // ESCOLHA com base na varivel MENU
{
case 0 : menu = 6; // caso = 0, atribui valor mximo (6)
break; // e interrompe o switch
case 1 : output_c(0b00000000); // caso = 1, zera todo portc
break; // e vai para final do switch
case 2 : output_c(0b10000001); // caso = 2, habilita + e - significativos
break; // e vai para final do switch
case 3 : output_c(0b11111111); // caso = 3, habilita todo PORTC
break; // e vai para final do switch
case 4 : output_c(0b11100111); // caso = 4, habilita 6 bits de PORTC
break; // e vai para final do switch
case 5 : output_c(0b01010101); // caso = 5, habilita bits impares
delay_ms(300); // e realiza parada de 300 ms
case 6 : output_c(0b10101010); // caso = 5 ou = 6, habilita bits pares
break; // e vai para final do switch
default: menu = 1; // caso seja qualquer outro valor, atribui 1
}
delay_ms(300); // tempo
output_c(0b00000000); // pe todo PORTC em nvel baixo
delay_ms(300); // tempo
}
}

No exemplo acima, a estrutura condicional definida pelo SWITCH / CASE est


em destaque. Atente para o uso do CASE que define o ponto de entrada em
funo do valor da varivel, e para o uso do BREAK (no usado em todos os cases)
que desvia o fluxo de execuo para o final (fechar chaves) do switch. O uso do
rtulo DEFAULT dentro do switch permite que o fluxo de execuo seja desviado
para esta linha se nenhuma situao anterior tiver sido atendida.
5 Microcontroladores
265

5.9.18 WHILE Estrutura de repetio

WHILE significa enquanto, e sua sintaxe na linguagem C :



while (condio)
{
instrues ...
}

While uma instruo responsvel por repetio, sendo bastante verstil. O


teste que garante que cada repetio das instrues ser executado realizado
no incio de cada ciclo. (Figura 245)
void main(void)
{
int x;
while (true)
repetir {
incondicionalmente while (!input(PIN_D0));
x = 0;
while (x < 12)
ficar repetindo enquanto {
o valor de X for inferior a 12 output_high(PIN_E 0);
delay_ms(100);
output_low(PIN_E 0);
ficar repetindo enquanto delay_ms(100);
no houve nvel alto em D0 x++;
}
}
}

Figura 245 - Fluxo de execuo em um programa com estruturas de repetio while


Fonte: Autor

Sua versatilidade demonstrada pela figura anterior, onde o while utilizado


de trs diferentes formas. Na primeira (lao vermelho), o while (true) usado para
definir um bloco de repetio que ficar sendo executado incondicionalmente.
A condio (true) sempre verdadeira, fazendo com que o lao aja como um
lao infinito. J o segundo while (lao em verde) um lao vazio. Ele pode ser
assim chamado por no possuir nenhuma instruo aps seu teste condicional.
importante observar que, neste tipo de teste, o ponto e vrgula se faz presente
aps a condio, indicando que, interno ao lao, nenhuma instruo ser realizada.
Em outras palavras, somente o teste realizado, ficando o programa dedicado
ao constante teste da expresso interna aos parnteses. Quando a condio no
for mais satisfeita, o while ser interrompido, seguindo com a execuo a partir
da prxima instruo aps o ponto e vrgula. Este tipo de teste no comum
em sistemas de processamento de dados, pois os dados no tendem a mudar
de estado sem a interferncia do prprio programa, porm funcionam muito
bem em microcontroladores para testes de entradas digitais, pois elas podem
mudar de estado, refletindo o comportamento de um sensor ou outro elemento
conectado s entradas digitais.
AUTOMAO INDUSTRIAL
266

Por fim, em azul, um lao que utiliza a comparao de uma varivel com
uma constante para causar a repetio controlada, por uma quantidade
determinada de vezes, de um bloco de instrues. Observe que a varivel
de controle foi inicializada (x=0) antes do incio do lao, e que interior (ou
anterior?) a ele uma linha (x++) responsvel pela mudana da varivel X a
cada ciclo. Sem esta ltima instruo, a varivel X no teria seu valor alterado
e, consequentemente, o lao no teria fim.
Como interromper um while: No somente o while, mas qualquer estrutura
de repetio pode ser interrompida se executada a instruo break.
J a instruo continue promove um reinicio do lao, ignorando o restante das
instrues compreendidas no bloco definido pela estrutura de repetio.
Vejamos um exemplo:

...
while(!input(PIN_D0)) //enquanto D0 no estiver em nvel alto
{ //inicio da estrutura de repetio
output_high(PIN_C0); //pe C0 em 5V
delay_ms(100); //tempo
output_low(PIN_C0); //C0 em 0V
if (input(PIN_D1)) //se D1 for para nvel alto...
{ //
x = 0; //zera x
break; //sai da estrutura de repetio, interrompe while
} //
if (input(PIN_D2)) //se D2 for acionado
continue; //volta ao incio da estrutura de repetio
x ++; //aumenta X
output_high(PIN_C1); //pe C1 em 5V
delay_ms(100); //tempo
output_low(PIN_C1); //C1 em 0V
} //final da estrutura de repetio
...

O lao descrito anteriormente continuar a ser executado at que o pino D0


esteja em nvel alto. Porm, se o pino D1 for posto em nvel alto, o lao tambm
ser interrompido, mas pela instruo BREAK. Neste caso, antes da interrupo
atribudo um valor para a varivel X antes de sair da execuo do lao.
Caso o pino D2 esteja em nvel alto, o programa continuar executando o
lao, porm no far o incremento de X e nem mudar o estado do pino C1, pois
a instruo CONTINUE faz com que o lao seja reiniciado, fazendo com que a
execuo do programa volte ao incio do bloco de instrues, refazendo tambm
o teste de condio do lao.
5 Microcontroladores
267

5.9.19 DO WHILE (faa/enquanto)

Esta outra forma de escrever uma estrutura de repetio, sendo o grande


diferencial do DO/WHILE o emprego do teste na parte final do lao. Sua sintaxe :

do {
instrues;
} while (condio);

Lembre tambm que uma linha de instrues sempre terminada por um


ponto e vrgula (;), e um bloco de instrues delimitado por chaves ({ ... }). Assim
como no WHILE, o comando BREAK pode ser usado para interromper um DO/
WHILE, e o comando CONTINUE far com que o lao reinicie.
Segue um trecho de programa onde fazemos o uso de um do/while:

do {
printf(\r\nPressione S/N);
dado = getch(); //busca valor UART, armazenando na varivel dado
} while(dado != S && dado != N);

No trecho acima, ser enviada uma mensagem atravs da porta serial.


Em seguida, uma varivel (provavelmente do tipo CHAR) receber o valor do
caractere recebido pela porta serial (que ser enviado pelo equipamento ou
terminal conectado porta serial). Ao receber este dado, ele ser comparado
com o caractere S e N. Caso seja diferente de ambos, todo o bloco ser
repetido, reiniciando o lao.
Caso seja representado atravs de um while, mais linhas sero necessrias para
o mesmo efeito.

5.9.20 FOR (para)

For significa PARA (preposio). uma estrutura de repetio bastante prtica


e voltada realizao de contagens ou de iteraes de um lao, relacionadas a
uma varivel de controle.

for ( expresso_inicial; condio_para_repetio; expresso_auxiliar)


{
linha ou bloco de instrues a repetir...
}

AUTOMAO INDUSTRIAL
268

Observe que, entre os parnteses deste comando, so inseridos trs itens:


a expresso_inicial geralmente utilizada para inicializar uma varivel de
controle, determinando qual o seu valor inicial. A condio_para_repetio
a condio para ocorrer a repetio. Quando esta condio for falsa, o for ser
interrompido, seguindo para a prxima instruo aps o bloco de instrues.
A expresso_auxiliar geralmente utilizada para realizar um incremento ou
decremento na varivel de controle, ou seja, na varivel que utilizada para
determinar quantas interaes o lao deve executar.
Vamos a um exemplo. Se desejarmos que algo seja repetido 10 vezes para
evitar escrever este trecho 10 vezes, podemos usar uma varivel e uma estrutura
de repetio. Veja o exemplo com um while:

...
int AUX; // varivel declarada
...
AUX = 0; // varivel deve ser inicializada
while(AUX < 10) // enquanto valor de AUX for < que 10
{T
output_high(PIN_D0);
delay_ms(100);
output_low(PIN_D0);
delay_ms(100);
AUX ++; // AUX incrementado
}
output_high(PIN_C4);

Vejamos o mesmo exemplo com o uso da estrutura FOR.

...
int AUX;
...
for (AUX=0; AUX<10; AUX ++) // inicializao; teste; incremento
{
output_high(PIN_C0);
delay_ms(100);
output_low(PIN_C0);
delay_ms(100);
}
output_high(PIN_C4);
...

Para o exemplo acima, a varivel X comear valendo zero (X=0). A cada interao
do lao, a varivel testada e, se seu valor for menor que 10, continuar a repetio
(X<10). Ao final de cada interao, a varivel ser incrementada (X++). Desta forma,
o que est entre as chaves (bloco de instrues) do for ser repetido 10 vezes.
O FOR permite realizar estruturas de repetio relacionadas s variveis de controle
de forma mais compacta, facilitando o entendimento e a manuteno do programa.
5 Microcontroladores
269

5.9.21 Chamadas a funes / sub-rotinas

Sub-rotinas, ou funes (como so chamadas na linguagem C), so trechos de


programas relativamente independentes, e que podem ser disparados a partir de
um chamado realizado pelo prprio programa, ou ainda por sinais de interrupo.
Na programao estruturada, as sub-rotinas so usadas com os seguintes objetivos:
1) Fragmentao dos problemas: A melhor forma de resolver um problema grande
dividi-lo em problemas menores, resolvendo parte por parte, at solucionar o todo.
Escrever programas grandes demais, sem fragment-los, exige muito tempo e gera
um cdigo muito amplo e difcil de ser interpretado, dificultando tambm os testes.
Resolver o problema em partes facilita a abstrao, permitindo com que o foco seja
mantido em uma parte do problema em cada etapa da implementao.
2) Reaproveitamento de cdigo: Ao fragmentar um problema, talvez seja possvel
observar que, em muitos casos, uma mesma sequncia de comandos deve ser executada
em pontos diferentes do programa. O uso de sub-rotinas permite executar esta sequncia
de comandos a partir de pontos diferentes, melhorando a organizao do programa.
Muitas vezes, sub-rotinas podem ser reaproveitadas em mais de um programa.
3) Otimizao de memria: Variveis locais so variveis que possuem escopo
limitado funo onde so declaradas, porm seu tempo de vida se limita ao
tempo de execuo da funo, sendo a memria por elas alocada liberada quando
a funo deixa de ser executada. Isso otimiza o consumo de memria RAM.
Vamos ao uso de sub-rotinas com o exemplo de hardware abaixo: (Figura 246)

13 OSC1/CLKIN RB0/INT 33 R1
14 RB1 34
OSC2/CLKOUT
RB2 35 330
2 RB3/PGM 36
3
RA0/AN0
RB4 37
R2
RA1/AN1
4
RA2/AN2/VREF-/CVREF RB5 38
330
5 RA3/AN3/VREF+ RB6/PGC 39
R4 6 RA4/TOCKI/C1OUT RB6/PGD 40 R3
7 RA5/AN4/SS/C2OUT
1K RC0/T1OSO/T1CKI 15 330
RC1/T1OSI/CCP2 16
8 RE0/AN5/RD
RC2/CCP1 17
9 RE1/AN6/WR 18
RC3/SCK/SCL
10 RE2/AN7/CS RC4/SDI/SDA 23
R5 RC5/SDO 24
RC6/TX/CK 25
1 MCLR/Vpp/THV
10K RC7/RX/DT 26

RD0/PSP0 19
RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28
RD6/PSP6 29
RD7/PSP7 30
PIC 16F877A
PROGRAM = sonoro-hex
BOT 2
R10
10K

R9
BOT 1
10K

Figura 246 - Chamadas a funes/sub-rotinas


Fonte: Autor
AUTOMAO INDUSTRIAL
270

Observe a conexo de um SPEAKER (alto-falante) em srie com um transistor.


Quando o transistor mudar seu estado de corte para conduo, ou de conduo
para corte, ocorrero vibraes no SPEAKER, produzindo sons. Por se tratar de um
alto-falante convencional, no basta energizar sua bobina para produzir som:
necessrio vibr-la (pulsar) para produzir sons em determinadas frequncias.
Veja, no programa a seguir, o uso de uma sub-rotina criada com o nome BEEP,
que ativa / desativa o pino E2 para gerar vibraes no alto-falante. Observe como
ela disparada de diversos pontos distintos a partir da funo principal:

#include <16f877.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays

void beep(void) // criao de uma funo chamada BEEP


{
int aux; // declarada varivel global
output_high(PIN_C2); // habilitado C2 (LED)
for (aux = 0; aux < 100; aux ++) // repete 100 vezes ...
{
output_high(PIN_E2); delay_ms(1); // ativa E2 (speaker)
output_low(PIN_E2); delay_ms(1); // desativa E2 (speaker)
}
output_low(PIN_C2); // desabilitado C2 (LED)
}

void main(void)
{
int conta = 0; // declara varivel de 8 bits
while(true) // lao infinito
{
if (input(PIN_D0)) // se BOT1 ...
{
beep(); // chama subrotina BEEP
conta = 0; // zera varivel
}
if (input(PIN_D1)) // se BOT2 ...
beep(); // chama subrotina BEEP
conta ++; // incrementa varivel
if (conta == 100) // se varivel for igual a 100
{
beep(); // chama subrotina
conta = 0; // zera varivel
}
else // seno
{
output_high(PIN_C0); // pisca C0 (LED)
delay_ms(100);
output_low(PIN_C0);
delay_ms(400);
}
}
}
5 Microcontroladores
271

O programa iniciar sua execuo no momento em que o microcontrolador


for energizado e estiver corretamente configurado para execuo, sempre a
partir da funo principal (main). Ao executar a linha de chamada da funo
(em vermelho), a execuo do programa principal interrompida, gerando
uma marcao na linha onde a chamada ocorre, e entregando o controle
funo chamada. As instrues internas da funo so ento executadas. Ao
finalizar a funo atravs do fechar chaves do bloco da funo, ou atravs da
instruo RETURN, o programa principal volta a ter o controle, reassumindo
a partir da marcao que havia sido realizada na chamada da funo.
Consideraes importantes sobre funes:
Voc pode realizar chamadas de funes a partir de qualquer ponto do
programa principal ou de outras funes.
Recursividade um recurso que permite que a funo chame a ela
mesma, devendo haver alguma forma de controle para interromper
a recurso a partir de uma determinada quantidade de vezes. uma
tcnica bastante utilizada na programao em computadores, onde
a quantidade de memria de pilha e de memria RAM no um
problema. Em microcontroladores, por outro lado, h uma limitao
neste sentido, e alguns compiladores bloqueiam a possibilidade do uso
de recursividade. O CCS no permite, at verses mais recentes, o uso
de recursividade, gerando erros no momento da compilao.
Variveis
locais de uma funo so descartadas quando a funo
interrompida, e os dados nelas contidos podem ser alterados ou perdidos.
Funes podem retornar informaes atravs de um tipo de dado, ou
atravs do acesso a reas de dados (variveis globais ou endereo de
memria de variveis locais da funo que realizou a chamada).

5.9.22 Passagem de parmetros

Vimos que sub-rotinas podem facilitar o processo de programao, uma


vez que fragmentamos o problema em partes menores, reaproveitando
trechos de programa em vrias partes dele. Porm, em muitos casos vamos
precisar enviar informaes s funes, ou buscar respostas que podem
ser enviadas por elas. A troca de mensagens existente em funes dos
programas muito til e importante para garantir a melhor organizao e
eficincia do software produzido.
AUTOMAO INDUSTRIAL
272

LCD2
LM016L

VDD
VSS

VEE

RW

D0
D1
D2
D3
D4
D5
D6
D7
RS

11
13
10
12
14
7
1
2

5
3
4
6

8
9
U1

13 OSC1/CLKIN RB0/INT 33

14 RB1 34
OSC2/CLKOUT
RB2 35
2 RA0/AN0 RB3/PGM 36 VDD 24V
+ -
3 RB4 37
RA1/AN1
VDD 4
RA2/AN2/VREF-/CVREF RB5 38

5 RA3/AN3/VREF+ RB6/PGC 39
6 RA4/TOCKI/C1OUT RB6/PGD 40
7 RA5/AN4/SS/C2OUT
RC0/T1OSO/T1CKI 15
R3
1K
8 RE0/AN5/RD
RC1/T1OSI/CCP2 16
17 VDD
R1
RC2/CCP1
9 RE1/AN6/WR 18
RC3/SCK/SCL 470K
10 RE2/AN7/CS RC4/SDI/SDA 23
RC5/SDO 24
RL1
RC6/TX/CK 25 5V
1 MCLR/Vpp/THV RC7/RX/DT 26

D1
RD0/PSP0 19
LED-BLUE
RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28 Q1
RD6/PSP6 29 BC542
RD7/PSP7 30
PIC 16F877A
PROGRAM = sonoro-hex
R2 MOTOR DA ESTEIRA
10K

R6 R4 R5
10K 10K 10K

Figura 247 - Esquema de ligao de um microcontrolador PIC16F877A


Fonte: Autor

A Figura 247 mostra o esquema de ligao de um microcontrolador PIC16F877A


a um display de caracteres (LCD) de 16 colunas e 2 linhas, a dois botes (chaves
tcteis), um rel que controla um motor e um sensor indutivo, ajustado para
detectar um pino metlico preso polia de um equipamento. Trata-se do controle
de posicionamento de uma esteira.
O microcontrolador possui as chaves tcteis ligadas em D0 e D1. O programa
determina que, quando a chave tctil conectada a D1 acionada, o motor da
esteira ativado at que a polia sofra trs revolues completas. Quando D2
acionado, sero realizadas sete revolues nesta polia.
O procedimento de contar voltas atravs do sensor conectado em D7 o
mesmo para ambas as formas, porm a quantidade de revolues diferente.
Usando a passagem de parmetros, possvel enviar esta quantidade funo,
usando esta informao internamente funo para realizar os procedimentos
atravs do mesmo trecho de programa.
5 Microcontroladores
273

Segue o programa sugerido:


#include <16f877.h> // inclui arquivo de cabealho
#use delay (clock=20000000) // define valor de clock para delays
#define use_portb_lcd true // define que ser usado display no PORTB
#include <lcd.c> // inclui biblioteca de uso do LCD 16x2 da CCS

void gira(int qtde) // declara funo chamada GIRA, que recebe um parmetro (int)
{
output_high(pin_c0); // liga motor da esteira
while(qtde > 0)
{
printf(lcd_putc,\fGirando: %u, qtde); // escreve qtde no display
while(input(PIN_D7)); // aguarda sensor da polia enviar sinal 0
while(!input(PIN_D7)); // aguarda sensor da polia enviar sinal 1
qtde --; // diminui varivel recebida como parmetro
}
output_low(pin_c0); // desliga motor da esteira
}

void main(void)
{
lcd_init();
while(1)
{
printf(lcd_putc,\fBOT1 = 3 giros\nBOT2 = 15 giros);
if (input(PIN_D0)) gira(3); // se boto1 pressionado, chama GIRA com parmetro = 3
if (input(PIN_D1)) gira(15); // se boto2 pressionado, chama GIRA com parmetro = 15
delay_ms(100);
}
}

Neste exemplo, a passagem ocorre somente com um parmetro, que do tipo


INT, porm so permitidos os parmetros que forem necessrios, podendo tambm
ser de qualquer tipo de dado que julguemos adequado ao comportamento da
varivel, bastando declar-los entre os parnteses da funo, tomando o cuidado
de separ-los por vrgula.
Exemplos de trechos de programas

void MOTOR (int velocidade, long posicao)


{
...
}

Uma funo chamada MOTOR, que recebe como parmetro duas variveis
inteiras, sendo uma de 8 bits e outra de 16 bits. Estas variveis devem ser usadas
no corpo da funo e tm comportamento de variveis locais.
AUTOMAO INDUSTRIAL
274

A chamada desta funo pode ocorrer em qualquer outra funo descrita aps ela,
podendo ser passada como parmetros, valores constantes ou valores de variveis.
Exemplo de passagem de parmetros usando constantes durante a chamada
da funo:


MOTOR (10, 3000);

A funo MOTOR ser executada, sendo passadas como parmetro duas


constantes. Observe que o valor enviado deve ser comportado pelos tipos de
dados declarados na funo.
Outra forma de realizar a chamada de uma funo passando informaes o
envio de dados contidos em variveis:


MOTOR (X, POS);

Desta forma, o contedo de X ser armazenado no primeiro parmetro


(velocidade), e POS no segundo parmetro (posicao). As variveis X e POS devem
ser de tipos de dados compatveis, podendo ser de tamanhos (em bits) iguais ou
inferiores aos tipos usados pelos parmetros da funo, sob risco de haver perda
ou alteraes nos dados.
Neste caso, tambm importante observar que os valores enviados para a
funo MOTOR sero cpias dos contedos de X e POS, sendo que as alteraes
sofridas pelos parmetros internos funo no so refletidas nestas variveis.

A informao passada funo durante a passagem de


FIQUE parmetros por contedo somente o contedo. Alterando
ALERTA o valor do parmetro dentro da funo, no alteramos o valor
das variveis que foram usadas durante a chamada da funo.

possvel tambm realizar chamadas funo passando como parmetros dados


de variveis combinados com constantes, ou at mesmo resultado de expresses.
Seguem chamadas vlidas para a funo anteriormente declarada:


MOTOR (X + Y, 4000);

MOTOR (A / 2, POS);

5 Microcontroladores
275

5.9.23 Passagem de parmetros por referncia

Quando for necessria a alterao do contedo da varivel passada como


parmetro por parte da funo chamada, uma das alternativas ser a passagem
do ENDEREO da varivel no lugar de seu contedo.
Segue um exemplo:

void ORDENA( int * V1, int * V2)


{
int TEMP;
if (*V1 > *V2)
{
TEMP = *V2;
*V2 = *V1;
*V1 = TEMP;
}
}

Na funo criada, os parmetros (dados pelo tipo de dados seguido pelo


asterisco) so ponteiros, ou seja, apontadores de memria. O uso do asterisco
antecedendo o nome dos parmetros permite acessar o contedo apontado
pelos ponteiros V1 e V2, manipulando os dados passados na chamada da funo.
Durante a chamada, devemos informar o endereo das variveis que
sero manipuladas:

int X, Y;
X = 10;
Y = 5;

ORDENA (&X, &Y);

Aps esta linha, a varivel X conter o menor valor (5), e Y o maior (10). O uso
do smbolo & antes da varivel obrigatrio, e faz com que a funo seja chamada
passando-lhe os endereos de X e Y na memria.

Embora no seja muito comum em estudos iniciais


com linguagens de programao, o uso de ponteiros
FIQUE na linguagem C pode tornar os programas muito mais
ALERTA eficientes, porm, em caso de erro, podemos alterar valores
em outras reas de memria, causando efeitos inesperados
durante a execuo do programa.
AUTOMAO INDUSTRIAL
276

5.9.24 Retorno de dados

Uma funo pode ser interrompida atravs da instruo RETURN, e tambm


pode retornar um valor que ir substituir a chamada da funo em uma expresso.
Vejamos, como exemplo, um trecho de programa onde uma funo utilizada
para realizar um clculo, retornando mdia dos dois maiores valores recebidos
dentre trs parmetros.


long media (long A, long B, long C)
{
long R;
if (A <= B && A <= C)
{
R = (B + C)/2;
}
else
if (B <= A && B <= C)
{
R = (A + C)/2;
}
else
{
R = (A + B) / 2;
}
return(R);
}

Para o trecho de programa anterior, a instruo RETURN utilizada, retornando


o valor de uma varivel de 16 bits, chamada R. Durante a chamada da funo:


VALOR = MEDIA(X, 50, Z);

Ao realizar a chamada da funo, um valor retornado e ser utilizado na


expresso, atribuindo o valor de retorno na varivel de destino, neste caso
chamada VALOR.

5.9.25 Uso de display alfanumrico

Para usar o LCD (padro HD44780, 16 colunas, 2 linhas, modo texto) como
perifrico de sada, adotaremos neste material a biblioteca LCD.C fornecida de
forma integrada ao compilador CCS e includa no cabealho de nossos programas.
Esta biblioteca utiliza um LCD 16x2 conectado a 4 + 3 fios no PORTB ou PORTD.
Utilizaremos a ligao via PORTB, usando o esquema que segue: (Figura 248)
5 Microcontroladores
277

5V

14
1
B7 D7
B6 D6
B5 D5 CONTRASTE
B4 D4
B3 0 ... 5V
B2 RW
B1 RS
B0 EN

Figura 248 - Display alfanumrico


Fonte: Autor

Esta ligao utiliza um display de caracteres em modo 4 + 3 fios. Observe que


so utilizadas sete ligaes para enviar dados ao LCD, sendo que trs so para
controle (EM, RS e RW) e quatro so para os dados (um nibble por vez).
Para que o DISPLAY aceite este modo de ligao, deve sofrer um processo de
inicializao, que implica no envio de alguns sinais em sequncia e tempos pr-
determinados. Estas informaes so fornecidas junto ao datasheet do display e
geralmente seguem o padro consolidado definido pelo modelo HD44780 da Hitachi.
Para realizar a inicializao a partir do programa, podemos usar a funo
lcd_init(), que est presente na biblioteca LCD.C. A chamada a esta funo deve
ser realizada no incio do programa, podendo ser antes do lao principal. Na
falta da rotina de inicializao, normal obter um comportamento anormal do
LCD, geralmente dado pelo escurecimento da primeira linha, com exibio de
caracteres estranhos. Outras formas de inicializao podem se fazer necessrias
em modelos diferentes de LCD.
Ao enviar um dado ao LCD, utilizaremos a funo lcd_putc(CHAR).
Observe que entre os parnteses desta funo ser colocado o texto
ou o caractere a ser enviado ao LCD. O CCS entende que, se o contedo
passado como parmetro para esta funo for uma sequncia de caracteres
(chamada STRING, e delimitada por aspas duplas), o envio ocorre caractere
por caractere, at o final da string.
Portanto, se executarmos a funo lcd_putc(x); ser enviado ao LCD o caractere
x. Se executarmos a funo lcd_putc(Ola ...), ser enviada a mensagem Ola...,
que est entre as aspas duplas. Se a instruo for lcd_putc(X), deve haver uma
varivel chamada X do tipo CHAR. Esta ser a varivel a ser enviada. Observe a
diferena entre este caso e o primeiro citado, onde foram utilizadas aspas simples
para identificar o caractere x, diferenciando da varivel X.
AUTOMAO INDUSTRIAL
278

Caracteres especiais do lcd_putc: Alguns caracteres podem ser enviados ao


LCD para promover controle de posio, apagar ou retroceder o cursor. O cursor
um ponto que pode ou no estar habilitado, e que identifica onde ser escrito o
prximo caractere. Estes caracteres especiais que podem ser enviados ao display
so interpretados pela funo lcd_putc, que envia a correta sequncia de dados e
controle com o objetivo de realizar um determinado efeito no perifrico.
So caracteres especiais do LCD :
\f: limpeza do display. Esta opo reinicia o display, limpando-o e
posicionando o cursor na linha 1 coluna 1.
\b: retorno de um caractere. Esta opo faz com que o cursor retroceda uma posio.
\n: Nova linha. Posiciona o cursor na primeira coluna da segunda linha do LCD.
Veja alguns exemplos de uso: (Figura 249)

Oi Teste.
1 lcd_putc(Oi);
lcd_putc(Teste.);

lcd_putc(\fLipando...); Limpando . . .
2 segunda linha
lcd_putc(\nsegunda linha);

lcd_putc(\fTestX); Teste
3
lcd_putc(\be);

Figura 249 - LCD


Fonte: Autor

Posicionando o cursor

Para posicionar o cursor no LCD, podemos usar a funo lcd_gotoxy(x,y), onde


x e y so, respectivamente, a coluna e a linha onde ele deve ser reposicionado.
Desta forma, se desejarmos escrever algo na primeira linha do display sem
apagar a segunda linha, basta inserir o comando lcd_gotoxy(1,1). Isso posicionar
o cursor na primeira linha, e na primeira coluna. No entanto, tome cuidado, pois,
uma vez que o display no foi apagado, as informaes antigas permanecero na
primeira linha, a menos que voc as sobrescreva.
Para rolar o contedo do LCD um caractere para a direita, ou seja, deslocar um texto
para a esquerda ou a direita, utilize o comando lcd_send_byte(0,0x1C), ou, caso
esteja usando a biblioteca LCD.C modificada, utilize o comando lcd_shift_right().
Para rolar o contedo do LCD um caractere para a esquerda, utilize o comando
lcd_send_byte(0,0x18), ou, caso esteja usando a biblioteca LCD.C modificada,
utilize o comando lcd_shift_left().
5 Microcontroladores
279

A seguinte sequncia de comandos gera o efeito de uma mensagem rolando


no display. Para isso, ser necessrio declarar uma varivel do tipo INT chamada X.

int x; // essa varivel usada na rolagem


...
lcd_putc(\fAUTOMACAO INDUSTRIAL - SENAI);
for (x = 0; x < 35; x ++) // repete o bloco abaixo por 35 vezes
{
delay_ms(300); // tempo
lcd_send_byte(0,0x18); // rola display um caractere para esquerda
}

Para ativar o cursor, utilize o comando lcd_send_byte(0,0x0E). Para ativar o


cursor piscante utilize o comando lcd_send_byte(0,0x0F), e, para desativ-lo,
use lcd_send_byte(0,0x0C).

5.9.26 PRINTF

O printf um comando bastante conhecido por programadores de linguagem


C. Sua funo gerar uma sada formatada, permitindo juntar texto e informaes
contidos em variveis, gerando uma sequncia de caracteres que pode ser enviada
a qualquer funo de sada de dados.
Sua utilidade clara quando precisamos realizar operaes como a de escrita
de um valor numrico no LCD, ou enviar este valor via sada serial.
Exemplo de uso com o LCD: (Figura 250)
#include <16f877.h>
contando - > 0 contando - > 2
#use delay (clock=20000000)
#define use_portb_lcd true
#include <lcd.c>
void main()
{ contando - > 1 contando - > 3
...
int CONTA = 0;
lcd_init();
while(true)
{
printf(lcd_putc,\fcontando -> %u, CONTA);
CONTA = CONTA + 1;
delay_ms(300);
}
}
Figura 250 - Uso com o LCD
Fonte: Autor

O programa acima realiza uma contagem progressiva, iniciando pelo valor


zero e mostrando um nmero a cada 300 milsimos de segundo.
AUTOMAO INDUSTRIAL
280

No compilador CCS, o PRINTF uma funo embutida, no sendo necessria


nenhuma biblioteca especial para seu uso. Ele pode ser usado para gerar sequncia
de textos formatados. assim chamado pois o comando permite DAR FORMATO
ao contedo das variveis, juntando-os a partes de texto. (Figura 251)

printf (lcd_putc, \fcontando - > %u, CONTA);


funo de sada varivel

caractere especial especificador de formato


string (delimitada
por aspas duplas)

contando - > 2
efeito deste linha:

Figura 251 - Uso com o LCD 1


Fonte: Autor

Dentro dos parnteses da funo printf, devemos dispor os seguintes


elementos, separados por vrgulas:
1 funo de sada: a funo que receber a sequncia de caracteres
construda pelo printf. Nesta posio, e para o compilador em questo, voc
pode utilizar qualquer funo que aceite um parmetro do tipo CHAR. Como a
funo lcd_putc requer um CHAR entre os parnteses, ela pode ser aplicada ao
printf como funo de sada, enviando os dados preparados pelo printf para o
display. Usando a funo lcd_putc, obtemos a sada de dados no display LCD.
Se este elemento for suprimido, a sada ser enviada ao dispositivo padro, que
geralmente a porta serial do microcontrolador. Neste caso, o CCS ir solicitar o
uso da direita USE RS232 para configurar a porta serial.
2 STRING: o trecho de caracteres delimitado por aspas duplas, que ir definir
como ser a sequncia de caracteres que ser gerada. importante observar
a delimitao realizada pelas duas ASPAS DUPLAS. Dentro delas podem ser
inseridos caracteres de texto, caracteres especiais e especificadores de formato.
Na string podem ser usados:
a) texto. Sequncias de caracteres que sero enviadas. Qualquer espao ou
caractere que no esteja identificando um caractere especial ou especificador de
formato ser tido como texto. importante observar que, para exibir uma barra
invertida (\), usamos duas barras internas a string, e para exibir o sinal de percentual
(%), usamos dois sinais em sequncia, sem espao entre eles. Isso se deve ao fato
destes sinais iniciarem uma especificao de formato ou um caractere especial.
5 Microcontroladores
281

b) caracteres especiais. So smbolos geralmente usados para gerar efeitos nos


dispositivos receptores das sequncias de texto. Geralmente, tais caracteres no
possuem uma representao impressa e so compostos por uma barra invertida
seguida de um smbolo, geralmente uma letra. Um exemplo de caractere especial
o NEW LINE, representado por um \n, que, quando recebido por um display
alfanumrico ou terminal de dados, posiciona o cursor em uma nova linha.
Exemplo de caracteres especiais: \f (limpar display), \n (nova linha), \b (voltar
um caractere), \r (retorno de carro), \g (beep) etc.
Obs.: Alguns caracteres especiais somente resultaro efeito em terminais seriais.
c) especificadores de formato, que so os locais, em meio ao texto, onde dever
ser inserido o contedo da varivel no momento em que o programa montar o
trecho de sada de texto.
Em outras palavras, no lugar do primeiro especificador de formato que ser inserido
o valor da primeira varivel, no segundo especificador, o local onde ser inserido o valor
contido na segunda varivel, e assim por diante. O nome especificador de formato se d
pelo fato de o smbolo definir o formato, ou seja, a forma como o valor ser exibido, com
mais ou menos dgitos, no formato decimal ou hexadecimal etc.
Como cada especificador de formato est relacionado a uma varivel
(identificada aps a string, dentro dos parnteses do PRINTF), importante utilizar
um especificador compatvel com o tipo de dado da varivel correspondente.
Observe a seguinte na Tabela 32:
Tabela 32: Especificadores de formato
Tipo de varivel Especificador de formato e exemplos de uso
short ou %u -> valor decimal (ex: 30)
int %x -> valor em hexadecimal (ex: 1D)
%3u -> valor decimal alinhado com trs dgitos (ex: _30)
%03u -> valor decimal alinhado trs digitos c/ zero (ex: 030)
signed int %i -> valor decimal com sinal. (ex: -2)
%02i -> decimal com sinal, duas casas e zeros a esq. (ex: -02)
long %lu -> valor decimal (ex: 1000);
int32 %05lu -> valor decimal cinco casas c/ zeros a esquerda. (ex:
01000)
signed long %li -> valor decimal c/ sinal (ex: -500)
signed int32 %4li -> valor decimal c/ sinal alinhado a esquerda (ex: -_500)
float %f -> valor real. Ex: (23.313451)
%2.3f -> valor real c/ duas casas inteiras, trs decimais. Ex:
(23.313)
char %c -> caractere. Ex: (A)
Fonte: Autor
AUTOMAO INDUSTRIAL
282

Mais especificadores de formato e respectivas funcionalidades podem ser


obtidos no manual do compilador utilizado.
3 VARIVEIS: Deve ser utilizada uma varivel para cada especificador de
formato da STRING. As variveis indicaro qual o valor que ser impresso no lugar
de cada especificador de formato encontrado.
Seguem alguns exemplos de printf e seus efeitos grficos em displays LCD
devidamente inicializados. Observe que, entre a STRING, trechos de texto
foram escritos em AZUL, caracteres especiais em VERDE e especificadores de
formato em VERMELHO. (Figura 252)

TESTE
12345 printf (lcd_putc,\fTESTE\n12345);

RELOGIO 03:23
printf (lcd_putc,\fRELOGIO %02u: %02u, HORA, MINUTO);

CONT. TOTAL: 13145 printf (lcd_putc,\fCont.Total: %5lu\nCont.Parc.:


CONT. PARC.: 32 %5lu, CONT_TOT, CONT_PARC);

Obs: as variveis HORA e MINUTO so do tipo INT, enquanto que TOTAL e PARCIAL so LONG ou INT32

Figura 252 - Uso com o LCD 2


Fonte: Autor

5.9.27 Comunicao serial

O uso de portas de comunicao seriais comum em microcontroladores,


existindo diversos perifricos que utilizam este tipo de interface, como
tranceivers wireless (WIFI, Bluetooth etc.), terminais seriais, IHMs (interfaces
homem-mquina) e conversores RS485 (padro de rede muito usado na
indstria), dentre outros.
Ao realizar a troca de dados entre dispositivos, devemos observar vrias
questes: formato das mensagens e que dados sero trocados, velocidade
em que isso ocorre, meio fsico utilizado, uso de um sistema de deteco de
falhas, uso de correo de erros e forma de organizar o envio de dados ao
destinatrio em caso de mltiplos destinos possveis.
No conseguiremos observar todos estes aspectos relacionados a redes
de comunicaes, mesmo que de forma superficial, neste espao. Por
isso, nos ateremos a uma simples comunicao serial, realizada entre um
microcontrolador PIC e uma porta serial de um PC.
5 Microcontroladores
283

No PC, vamos propor a utilizao de um terminal serial (existem vrios


programas disponveis que realizam esta funo, alm do Hyperterminal, no caso
de algumas verses do sistema operacional Microsoft Windows). Geralmente,
estes programas permitem configurar como ser usada a porta serial. Vamos usar
os seguintes parmetros: (Figura 253)

Figura 253 - Comunicao serial


Fonte: Autor

BAUD (velocidade, em bits por segundo): 19200 bps


BITS de dados (quantos bits so enviados para um dado): 8
PARITY (paridade, uma forma de controle de erros no muito eficiente): Nenhum (NONE)
BITS DE PARADA (tamanho da pausa entre cada dado): 1
CONTROLE DE FLUXO (controle sobre dados enviados e recebidos): Nenhum (NONE)
Com esta configurao, o PC estar apto a realizar a troca de dados com o
microcontrolador. Porm, temos ainda que preparar o microcontrolador, tanto no que
diz respeito ao hardware quanto no referente ao software.
Hardware: Usando o PIC16F877A, utilizaremos a UART fsica para realizar a
conexo, onde os pinos C6 e C7 assumiro comportamento de TX (transmisso)
e RX (recepo) dos dados em um padro TTL (transistor transistor logic), com
nveis de tenso baixo (0V) ou alto (5V). O padro de comunicao RS232 exige, no
entanto, nveis de tenso negativos (-5V, 0V, +5V, ou -12V, 0V, +12V, dependendo
da verso e do equipamento). Para gerar estes nveis de tenso amplificados e
negativos, sugerimos o uso de um TRANCEIVER RS232, como o MAX232, ST232,
ICL232, ADM232 ou HIN232. (Figura 254)
CABO
5V SERIAL
1 F 1 F DB9 DB9 DB9 DB9
PIC16F877A

MACHO FMEA FMEA MACHO


1 F
MAX232C

2 2
1 F 3 3

5 5
C6 TX
1 F
C7 RX

Figura 254 - Esquema de ligao de um MAX232 a um microcontrolador e uma porta serial padro DB9
Fonte: Autor
AUTOMAO INDUSTRIAL
284

Esquema de ligao de um MAX232 a um microcontrolador e uma porta serial


padro DB9. Observe que o sinal de TX de um perifrico deve chegar ao RX do
outro, por isso o cabo cruzado (2-3, 3-2).
Uma vez conectado, vamos a um programa que utilize a porta serial em um
microcontrolador. Como primeiro exemplo, faremos um programa que escreve a
mensagem Ola mundo! no terminal serial.
Note a presena das linhas em destaque, que configuram e enviam dados sada serial.

#include <16f877A.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays
#use rs232 (baud=19200, bits=8, parity=n, xmit=pin_c6, rcv=pin_c7) // conf rs232

void main(void)
{
printf(\n\rOla mundo!); // envia dados pela serial. /n=nova linha, /r=retorno col 1
while(true)
{
// lao infinito.
}
}

O programa anterior envia uma mensagem pela porta serial, iniciando


por dois caracteres especiais, que posicionam o cursor no incio de uma
nova linha no terminal antes de enviar a mensagem Ola mundo!.
Note o uso do PRINTF, sem nenhuma funo de sada. No compilador da
CCS, a sada padro para o printf a porta serial, que deve estar devidamente
configurada, como na terceira linha do programa, atravs da diretiva #use rs232.
Para a leitura de dados da porta serial usamos a funo embutida
GETC(),que retorna o caractere recebido pela porta serial. Se esta funo
for disparada sem que haja caractere no buffer de entrada, o sistema
permanecer travado at que um caractere seja recebido. Para evitar isso
recomendado o uso da funo KBHIT(), que pode identificar se h ou no
algum caractere no buffer de entrada (memria onde o byte fica armazenado
at ser processado).
O envio de bytes tambm pode ser feito usando as instrues
PUTCHAR(byte) ou PUTS(string): a primeira usada para envio de um nico
byte (int8 ou char), e a segunda, para o envio de uma string, similar ao printf.
Como segundo exemplo, vamos criar um sistema que emula um terminal,
permitindo que dois microcontroladores sejam interligados usando o mesmo
programa. O efeito do software proposto deve replicar os sinais recebidos
no PORTD, enviando-os ao PORTC do outro microcontrolador.
5 Microcontroladores
285

#include <16f877A.h> // inclui arquivo de cabealho


#use delay (clock=20000000) // define valor de clock para delays
#use rs232 (baud=19200, bits=8, parity=n, xmit=pin_C6, rcv=pin_C7) // conf rs232

void main(void)
{
int PORTD, PORTD_ANT = 0;
char AUX;
while(true)
{
PORTD = input_d(); // busca valor do PORTD
if (PORTD != PORTD_ANT) // detecta se houve mudana no PORTD
{
if (input(PIN_D0)) putchar(A); // se D0, envia letra A via rs232
if (input(PIN_D1)) putchar(B); // se D1, envia letra B via rs232
PORTD_ANT = PORTD; // registra mudana
}
if (kbhit()) // se houver dados para receber no buffer de entrada rs232
{
AUX = getch(); // le dado (byte)
switch(AUX)
{
case A : output_high(PIN_C0); // caso seja um caractere A, poe C0 em 5V
break;
case B : output_low(PIN_C0); // caso seja um caractere B, poe C0 em 0V
break;
}
}
} // fim do lao infinito.
} // fim do programa principal

Caso este programa seja executado com um nico microcontrolador conectado


a um terminal, o efeito esperado ser a exibio de caracteres A e B quando os
pinos D0 e D1 mudarem de estado (borda de subida do sinal, com mudana do
nvel baixo para nvel alto).
Caso este programa seja executado em dois microcontroladores, interligados
pela porta serial, quando D0 mudar de nvel baixo para nvel alto o pino C0 do
outro microcontrolador mudar para nvel alto, e quando D1 mudar de nvel baixo
para alto o pino C0 do outro microcontrolador mudar para nvel baixo.

5.9.28 ADC Converso analgica/digital

O microcontrolador PIC16F877 pode realizar a converso de um sinal


analgico (que varia de 0 a 5 Volts) em um valor binrio de at 10 bits. Isso
possvel graas ao recurso ADC (Analog Digital Converter) que est embutido no
prprio componente.
Outro fator importante que este microcontrolador possui 8 canais
analgicos configurveis; ou seja, possvel ler esta variao de tenso por
at 8 pinos diferentes.
AUTOMAO INDUSTRIAL
286

Algumas configuraes avanadas permitem, ainda, que alguns pinos sejam


usados como referncia positiva e negativa, fazendo com que uma leitura seja
feita em uma faixa de tenso mais restrita, como de 1 a 3 Volts.

Pesquisando na folha de dados do componente sobre


SAIBA mudanas nas referncias de tenso para a converso AD no
MAIS microcontrolador PIC16F877A.

importante observar que, quando utilizamos um pino como entrada


analgica, seu recurso de entrada/sada digital desativado, porm a mudana
(transio) das funes do pino pode ser executada em tempo de execuo
atravs de instrues no programa. (Figura 255)

1 40
0 a 5 Volts AN0 PIN_A0 2 39
0 a 5 Volts AN1 PIN_A1 3 38
0 a 5 Volts AN2 PIN_A2 4 37
0 a 5 Volts AN3 PIN_A3 5 36
6 35
0 a 5 Volts AN4 PIN_A5 7 34
0 a 5 Volts AN5 PIN_E0 8 33
0 a 5 Volts AN6 PIN_E1 9 32
0 a 5 Volts AN7 PIN_E2 10 31
11 30
12 29
13 28
Figura 255 - Pinos do PIC16F877A que podem ser configurados para converso analgica/digital
Fonte: Autor

Como j estudado anteriormente, podemos usar conversores de sinal


analgico para digital em microcontroladores para interpretar sinais de
sensores analgicos, geralmente utilizados para leituras de grandezas
fsicas, como presso, vazo, fora, luminosidade, temperatura, velocidade,
tenso, corrente etc.
No caso do PIC16F877A, estas informaes precisam estar no formato 0 a
5V, pois, se os nveis de tenso ultrapassarem estes valores, podero ocorrer
danos irreversveis ao componente.
Um exemplo de aplicao: Leitura de um potencimetro. Atravs da
entrada analgica, podemos quantificar a posio de uma resistncia
varivel, que pode ser um potencimetro convencional ou qualquer outro
sensor que, da mesma forma, realize a variao de uma resistncia.
5 Microcontroladores
287

O uso de potencimetros em microcontroladores aplicvel quando


pretendemos obter uma informao relativa a uma posio (linear ou angular).
Geralmente, potencimetros so usados como interface com operadores para a
realizao de ajustes, porm podem tambm ser aplicados a equipamentos para a
leitura de posio de um eixo como, por exemplo, na junta de um brao robtico.
Encoders digitais so mais precisos, porm encoders digitais absolutos so muito
mais caros do que sistemas analgicos, e, dependendo da preciso desejada, esta
pode ser uma alternativa interessante. (Figura 256)

POTENCIMETRO

A0
5V

Figura 256 - Potencimetro de 10K conectado a um microcontrolador. Para facilitar entendimento, demais ligaes de
alimentao e clock do microcontrolador foram suprimidas
Fonte: Autor

comum a utilizao de sensores de temperatura (como o LM35),


luminosidade (como LDRs), presso ou deformao (STRAIN GAGE),
acelerao (ACELEROMETROS), umidade, tenso, corrente, etc.
No entanto, para realizar a leitura de um sinal analgico, faz-se necessria
uma srie de ajustes (via programa) para definir a resoluo da leitura, as
referncias da leitura, a forma e o canal da converso do valor analgico.
Quanto resoluo, fisicamente a maior resoluo permitida para o
PIC16F877 10 bits (fazendo com que o valor lido varie em nmeros inteiros
de 0 a 1023), mas a leitura feita pelas funes do compilador CCS permite a
converso para valores de 8, 10, 12 e 16 bits.
Trabalhando com a configurao de converso analgica de 10 bits, um
PIC16F877A ir converter a tenso lida pelo canal selecionado em um valor
numrico inteiro entre 0 e 1023 (210=1024 possibilidades), onde a menor
tenso equivale a 0, e a maior tenso (5V para uma simples converso sem
alterar referncias) equivale a 1023, variando linearmente. Portanto, se um
circuito estiver convertendo temperatura em uma tenso de, digamos,
2,5V, o microcontrolador converter esta informao em um nmero muito
prximo a 512.
Desta forma, o programador deve criar expresses que traduzam
equaes de converso do valor lido, dado por um nmero inteiro de 10
bits, na informao desejada.
AUTOMAO INDUSTRIAL
288

Como esta converso varia conforme o sensor e o circuito utilizados, vamos citar
um exemplo usando a ligao de um sensor linear de temperatura: LM35DZ. Este
sensor apresenta a caracterstica LINEAR, com sada em 10mV por C. (Figura 257)

5V 1 40
LM = ANO 2 39
35dz 3 38
4 37
5 36
6 35
7 34
8 33
9 32
10 31
11 30
12 29
13 28
Figura 257 - Sensor de temperatura LM35DZ, de caracterstica linear,
conectado diretamente ao canal AN0 de um microcontrolador
Fonte: Autor

A resposta em tenso, portanto, ser de:


VAN0 = TC * 0,01V
Como LM35DZ indicado para temperaturas at 150C, podemos esperar
uma tenso mxima (em AN0) de 150 * 0,01 = 1,5V.
O microcontrolador ler a tenso (que pode variar entre 0 e 1,5V atravs
do sensor, embora o microcontrolador suporte at 5V) e a converter em
uma informao interna de 10 bits, um nmero inteiro. Este nmero inteiro
deve ser novamente convertido para temperatura, e pode ser dada pela
frmula construda abaixo:
VAN = TC * 0,01V
VAN = 5V * (AD / 1023)
Resolvendo o sistema, temos:
TC * 0,01V = 5V * (AD/1023)
TC = (5V/0,01V) * (AD/1023)
TC = 500 * (AD/1023)
Embora ainda seja possvel simplificar mais a equao, vamos mant-
la assim com o intuito de trabalhar com nmeros inteiros, atividade que o
microcontrolador realiza com mais eficincia e consumindo menos memria.
Uma vez estabelecida a relao entre o valor lido pelo conversor AD e
a grandeza mensurada, podemos construir o programa. Observe o uso de
algumas linhas (no compilador CCS) para configurar o canal de entrada e a
resoluo de converso.
5 Microcontroladores
289

Para facilitar a utilizao, o programa que segue usa uma sub-rotina para
realizar a aquisio da informao.

//------------------------
#include <16f877.h>
#device ADC=10 // define que a converso AD ser de 10 bits
#use delay (clock=20000000)
#define use_portb_lcd true // inclui biblioteca de LCD
#include <lcd.c> // inclui biblioteca de LCD

long AD(int CANAL) // declara funo (subrotina) usada para ler entrada analgica
{
long AUXILIAR; //Declara uma varivel de 16 bits
enable_interrupts(GLOBAL); //Habilita uso de interrupo para converso AD
setup_adc_ports(ALL_ANALOG); //Habilita todas as analgicas(A0,A1,A2,A3,A5,E0,E1,E2)
setup_adc(ADC_CLOCK_INTERNAL); //Configurao do clock do conversor AD
set_adc_channel(CANAL); //Congigurao do canal do conversor AD
delay_us(100); //Tempo para selecionar canal, recomendado pela microchip
AUXILIAR = read_adc(); //Faz a leitura e armazena na varivel AUXILIAR
setup_adc_ports(NO_ANALOGS); //Desativa entradas analgicas
return(AUXILIAR); //Retorna valor analgico lido
}

//*********************** funo principal ***********************************

void main()
{
long LIDO; // declara uma varivel inteira 16 bits
float TEMP; // declara varivel de ponto flutuante
lcd_init(); // inicializa LCD
while(1)
{
LIDO = AD(0); // l AD canal 0. Usa a funo acima descrita

// implementando funo TC = 500 * (AD/1023)


TEMP = 500 * (float)LIDO / 1023;

printf(lcd_putc,\fAD -> %lu, LIDO); // escreve valor lido no LCD


printf(lcd_putc,\nTEMP: %f C, TEMP); // escreve valor calculado de TEMP
delay_ms(100); // para evitar que o LCD fique piscando
}
}
//------------------------

O programa anterior realiza a leitura do canal analgico AN0, mas a funo


descrita AD(canal) permite que o canal possa ser modificado, bastando utilizar
entre os parnteses o nmero, entre 0 e 7. A leitura de mais de um canal pode ser
realizada em um mesmo programa.
Segue, na Figura 258, outro exemplo de ligao do microcontrolador a um LDR
ligado em um divisor de tenso.
AUTOMAO INDUSTRIAL
290

5V

LDR
1 40
2 39
AN1 3 38
4 37
5 36
6 35
1K2 7 34
8 33
9 32
10 31
11 30
12 29
13 28

Figura 258 - Ligao de um LDR em um microcontrolador usando o canal AN1


Fonte: Autor

Esquema de ligao de um LDR em um microcontrolador com o objetivo de


medir luminosidade
Um LDR possui sua resistncia proporcional luminosidade, podendo variar
de alguns Ohms quando submetido luz intensa, a milhares de Ohms, quando
em ambiente escuro.
Desta forma, a leitura do AD(1) ser proporcional luminosidade
detectada pelo LDR.

5.9.29 PWM

Os microcontroladores so dispositivos que, comandados por programas,


podem facilmente realizar o acionamento ou o desligamento de uma sada digital.
Mas, e se o dispositivo a ser controlado necessitar de um controle analgico?
Por exemplo, ligar e desligar um motor conectado indiretamente (via
transistores ou rels) a um pino do microcontrolador no complicado se usarmos
as instrues de nvel alto (output_high) e nvel baixo (output_low). Mas, se alm
de ligar e desligar este motor, for necessrio dosar a tenso a ele fornecida, de
forma a controlar tambm sua velocidade ou seu torque?
Para isso, seria necessria uma sada analgica. E como realizar este controle se tal
sada no existe em um dispositivo de controle discreto, como um microcontrolador?
O PIC16F877A possui duas sadas PWM, que so sadas pulsantes, capazes
de realizar pulsos de largura controlada. O uso de PWM permite gerar sadas
analgicas, facultando controle de perifricos.
Atravs do PWM, possvel pulsar (ativar e desativar) uma sada, filtrando-a
com circuitos geralmente compostos por resistores e capacitores, e gerando, com
estes pulsos filtrados, o efeito desejado.
5 Microcontroladores
291

Por exemplo, vamos imaginar um ventilador de uma nica velocidade


conectado a uma chave liga/desliga. Se voc mantiver a chave ligada,
o ventilador acelerar at obter 200 RPM. Se voc desligar a chave, o
ventilador desacelerar at parar. Mas, se voc ficar ligando e desligando
a chave, em intervalos de 1 segundo, perceber que o ventilador vai girar a
uma velocidade inferior que 200 RPM. E se voc exercer pulsos ligados mais
largos, e pulsos desligados mais curtos, o ventilador acelerar.
dessa forma que o PWM funciona, trabalhando com frequncias bem
elevadas, com vrios acionamentos por segundo. Obtemos uma sada que poder
ser adequada, usando um filtro RC adequado, para a tenso necessria.
comum tambm utilizar a sada pulsante diretamente no dispositivo de
amplificao (transistor ou circuito integrado de potncia) para gerar a mesma
sada pulsante em nveis de tenso e corrente mais elevados. Desta forma,
possvel controlar a intensidade de luminosidade, a temperatura, a velocidade e o
torque de motores, o som etc.
E quais so as caractersticas de uma sada PWM?
Podemos citar trs caractersticas: o nvel de tenso, o tempo de ciclo e a
taxa (tamanho do pulso). Quanto ao nvel de tenso, ficar restrito ao nvel
de trabalho do microcontrolador. No caso do PIC16F877, que funciona a 5V,
o nvel dos pulsos tambm ser de 5V, respeitando-se os limites de corrente
da sada digital, de alguns miliampres. Caso haja interesse em aumentar
este valor, ou de aumentar a corrente, ser necessria a amplificao com
transistores ou outro circuito integrado. (Figura 259)

+24V C.C.

R1
Motor
C1 D1
Microcontrolador

R2
Transistor
NPN

Figura 259 - Ligao de um transistor a um motor


Fonte: Autor

J o tempo de ciclo e o tamanho do pulso podem ser controlados por software.


AUTOMAO INDUSTRIAL
292

Veja o exemplo abaixo:

#include <16f877.h> // porque vamos usar um PIC16F877 ou PIC16F877A


#use delay (clock=20000000) // Importante que o valor do CLOCK esteja correto

void main()
{
long TAXA = 0;
setup_ccp1(CCP_PWM); // ativa PWM 1 (pino C2)
setup_ccp2(CCP_PWM); // ativa PWM 2 (pino C1)
setup_timer_2(T2_DIV_BY_4, 250, 1); // O tamanho do ciclo 4*(4/CLOCK)*250.
while(1)
{
if (input(PIN_D0)) TAXA = 0; // estas linhas, carregam a varivel
if (input(PIN_D1)) TAXA = 100; // TAXA com valores variando de 0 a
if (input(PIN_D2)) TAXA = 300; // 1023. Esta varivel utilizada
if (input(PIN_D4)) TAXA = 500; // pela funo SET_PWM1_DUTY para definir
if (input(PIN_D5)) TAXA = 750; // a taxa (tempo do pulso em nvel alto) da
if (input(PIN_D6)) TAXA = 1023; // sada PWM1, e SET_PWM2_DUTY, que realiza a
set_pwm1_duty(TAXA); // mesma operao no canal pwm 2 (pino c1)
set_pwm2_duty(512); //
delay_ms(100);
}
}

Observao importante: O exemplo anterior ter efeito sobre os pinos do PWM


fsico, ou seja, pinos C2 (PWM1) e C1 (PWM2). Em outros casos, e para outros pinos,
ser necessrio gerar um PWM via software. Isso quer dizer que seu programa deve
ficar ligando e desligando o pino em questo. Veja como seria no exemplo abaixo:

#include <16f877.h> // porque vamos usar um PIC16F877 ou PIC16F877A


#use delay (clock=20000000) // Importante que o valor do CLOCK esteja correto
void main()
{
long TEMPO_PULSO = 0; // varivel que determina tamanho do pulso ligado
while(1) // lao infinito
{
output_c(0x01010101);
delay_us(TEMPO_PULSO);
output_c(0x10101010);
delay_us(1024 TEMPO_PULSO);
if (input(PIN_D0)) TEMPO_PULSO = 0; // Se A1 acionado, tamanho do pulso zero
if (input(PIN_D1)) TEMPO_PULSO = 200; // Se A2 acionado, tamanho do pulso 200
if (input(PIN_D2)) TEMPO_PULSO = 400; // Se A2 acionado, tamanho do pulso 400
if (input(PIN_D3)) TEMPO_PULSO = 800; // Se A2 acionado, tamanho do pulso 800
if (input(PIN_D4)) TEMPO_PULSO = 1023; // Se A2 acionado, tamanho do pulso 1023
}
}
5 Microcontroladores
293

Recapitulando

Neste captulo, vimos que os microcontroladores so circuitos integrados


programveis muito versteis, que podem ser utilizados em inmeras aplicaes
de controle. Por serem programveis, seu comportamento determinado
por um software, onde tcnicas de programao permitem gerar, a partir de
programas, a leitura de sinais digitais e analgicos, processamentos lgicos e
matemticos e acionamentos de dispositivos atuadores.
Vimos que os microcontroladores executam programas escritos em linguagem
de mquina, mas que podem ser gerados atravs de outras linguagens, dentre
as quais a linguagem C. Estas linguagens precisam ser compiladas atravs de
um programa chamado compilador, que transforma instrues de alto nvel em
instrues de mquina para que o microcontrolador possa executar.
Durante o estudo sobre a linguagem C, uma importante linguagem de
programao tambm aplicada a microcontroladores, entendemos o conceito
das estruturas e dos subprogramas, representados por sinais de incio e fim
atravs de smbolos, no caso, chaves. Vimos que os programas so executados
instruo a instruo, e que o desvio na execuo do programa pode ser pr-
definido atravs das estruturas de controle de fluxo, como o while, do/while,
for, if e switch. As sub-rotinas de um programa escrito em linguagem C so
conhecidas como funes, e uma funo pode, ou no, receber parmetros e
retornar dados.
Vimos tambm que a representao de dados em memria requer a
declarao de variveis, e que durante esta etapa o programador deve
determinar o tipo de dado adequado para que a varivel consiga comportar a
informao da forma mais eficiente possvel.
Por ltimo, vimos aplicaes onde o microcontrolador utilizado para
a leitura de sinais analgicos, a comunicao e a gerao de sinais pulsantes
atravs da tcnica de PWM.
Referncias

ALMEIDA, Jos Luiz Antunes de. Dispositivos semicondutores: tiristores: controle de potncia em
CC e CA. So Paulo: rica, 1996.

BALBINOT, Alexandre; BRUSAMARELLO, Valner Joo. Instrumentao e fundamentos de medidas.


Vol 1. 2.ed. Rio de Janeiro: LTC, 2010. V.1.

BERNARDO, Giovanni. Corso programmazione PICMicro in C Lezione 1 Cos un


microcontrollore, caratteristiche, note introduttive, come scegliere programmatore e
linguaggio di programmazione. Disponvel em: <http://www.settorezero.com/wordpress/corso-
programmazione-pic-in-c-lezione-1-cose-un-microcontrollore-caratteristiche-note-introduttive-
come-scegliere-programmatore-e-linguaggio-di-programmazione/>. Acesso em 26 jan. 2012.

BOYLESTAD, Robert L. Dispositivos eletrnicos e teoria de circuitos. 8.ed. So Paulo: Pearson


Prentice Hall, 2004.

CRUZ, Eduardo Cesar Alves; CHOUERI JNIOR Salomo. Eletrnica aplicada. 2.ed.So Paulo: rica, 2008.

ERCEGOVAC, M. Introduo aos sistemas digitais. Porto Alegre: Bookman, 2000.

ELETRONICA.ORG. Amplificador Operacional. E-book. Disponvel em: <http://www2.eletronica.


org/apostilas-e-ebooks/componentes/AOP.pdf >. Acesso em 26 jan. 2012.

ESCOLA PROFISSIONAL DE ALVITO. Curso Tcnico de Gesto de Equipamentos Informticos.


O que um amplificador operacional ? Electrnica Fundamental (AMPOPs- Mdulo 7) ano lectivo
2006/2007. Disponvel em: <http://miniportal.weebly.com/uploads/2/7/6/2/2762008/o_que_eh_
um_amplificador_operacional.pdf>. Acesso em 26 jan. 2012.

FIALHO, Arivelto Bustamante. Instrumentao Industrial: conceitos, aplicaes e anlises. 7.ed. So


Paulo, rica, 2010.

GRUITER, Arthur Franois de. Amplificadores operacionais: fundamentos e aplicaes. So Paulo:


McGraw-Hill, 1988
IDOETA, I. V. Elementos de eletrnica digital. So Paulo: rica, 1990.

LOURENO, Antonio Carlos de et al. Circuitos digitais. 9. ed. So Paulo: rica, 2009.

MALVINO, A. P. Eletrnica digital: princpios e aplicaes. So Paulo: McGraw-Hill, 1988.

MARKUS, Otvio. Ensino modular: sistemas analgicos. Circuitos com diodos e transistores. So
Paulo: rica, 2000.

MARQUES, Angelo Eduardo B; CHOUERI JNIOR, Salomo; CRUZ, Eduardo Cesar Alves. Dispositivos
semicondutores: diodos e transistores. 12. ed. So Paulo: rica, 2008.

MEHL, Ewaldo L. M. Do Transistor ao microprocessador. Disponvel em: <http://www.lsi.usp.


br/~bariatto/fatec/ds2/historia_transistor.pdf>. Acesso em 26 jan.2012.

MELO, Mairton. Eletronica digital. So Paulo: Makron Books, 1993.

PERTENCE JNIOR, Antonio. Amplificadores operacionais e filtros ativos: teoria, projetos,


aplicaes e laboratrio. So Paulo: McGraw-Hill, 1988.

TAUB, H. Circuitos digitais e microprocessadores. So Paulo: McGraw-Hill, 1984.

_______; SCHILLING, D. Eletrnica digital. So Paulo: McGraw-Hill, 1982.

THOMAZINI, Daniel. Sensores industriais: fundamentos e aplicaes. 6.ed. rev. e atual. So


Paulo: rica, 2009.

TOCCI, R. L. Sistemas digitais: princpios e aplicaes. 5.ed. Rio de Janeiro: Prentice-Hall do


Brasil, 1994.

UYEMURA, J. P. Sistemas digitais. So Paulo: Pioneira, 2002.


VASCONCELOS, Larcio. Fontes de alimentao, reguladores, potncia. Disponvel em: <http://
blogs.forumpcs.com.br/laercio_vasconcelos/2005/05/16/fontes-de-alimentacao-reguladores-
potencia/>. Acesso em 26 jan. 2012.

WIKILIVROS. Eletrnica digital/Sistemas analgicos e digitais. Livro Eletrnico Digital. Disponvel


em: <http://pt.wikibooks.org/wiki/Eletr%C3%B4nica_Digital/Sistemas_anal%C3%B3gicos_e_
digitdig>. Acesso em 26 jan. 2012.
Minicurrculo do Autor

Daniel Corteletti
Graduao em Cincia da Computao pela Universidade de Caxias do Sul - UCS. Graduao
no programa especial de formao pedaggica para formadores de educao profissional pela
Universidade do Sul de Santa Catarina - UNISUL. Instrutor de educao profissional de nvel
tcnico do Centro Tecnolgico de Mecatrnica SENAI desde 2000 nas reas de microcomputao,
sistemas embarcados, robtica industrial e automao industrial, atuando tambm em servios
de pesquisa e desenvolvimento no ncleo de servios tcnicos e tecnolgicos desta instituio.
ndice

A
Acionamentos 41, 42, 50, 56, 58, 59, 60, 61, 71, 207, 233, 251, 256, 267, 293, 296
lgebra booleana 7, 12, 153, 157, 161, 162, 165
Algoritmos 117, 219, 223
Amplificador operacional 73, 74, 76, 77, 79, 80, 182, 183, 299
Anodo 23, 24, 27, 35, 45, 46, 65, 66, 67, 68, 187
Aplicaes de transistores 43
Arquivos executveis 13, 215
Autoprogramao 13, 211, 218
B
Barramento de comunicao 211
Bootloader 211, 218, 219
C
Catodo 23, 24, 27, 35, 45, 46, 65, 66, 67, 68, 187
Clulas de carga 126
Circuitos codificadores 184, 189, 190
Circuitos decodificadores 155, 176, 187
Circuitos demultiplexadores 174, 175
Circuitos lgicos 101, 156, 161, 165, 182, 223
Circuitos multiplexadores 156, 169, 170
Comandos para acionamento 13, 238, 239
Como compilar 13, 229
Comparador 73, 77, 78, 79, 120, 126, 211
Comunicao serial 215, 285
Condicionamento de sinal 27, 70, 143
Converso analgica/digital 288, 289
Conversor a/d 180, 181, 182, 210
Conversor d/a 181, 182, 183
Conversores 141, 144, 145, 156, 178, 179, 181, 184, 200, 205, 206, 210, 215, 285, 289
Criao de um programa 227
D
Declarao de variveis 13, 243, 249, 296
Diac 65, 68, 69
Dgitos 33, 150, 151, 152, 153, 155, 156, 186, 248, 251, 283, 284
Diodo de sinal 26, 27
Diodo emissor de luz 26, 32
Diodo retificador 5, 21, 25, 26, 38
Diodo schottky 26, 38
Diodo zener 25, 26, 28, 29
Display alfanumrico 279, 283
Display de 7 segmentos 187, 251
E
Eletrnica analgica 15, 17, 75, 95, 149, 200, 204, 205
Encapsulamento de transistores 50
Encoders 136, 137, 138, 139, 140, 289
Entradas e sadas digitais 189, 210, 211
Estrutura de repetio 234, 235, 237, 238, 268, 269, 270, 271
Estruturas de controle de fluxo 219, 234, 260, 261, 296
Estruturas de deciso 265
Extensmetros 126, 142
F
Filtro ativo 88, 89
Filtro passivo 85, 86
Flip-flop d 197
Flip-flop jk 193, 194, 195, 196, 197, 198
Flip-flop jk mestre-escravo 194, 196
Flip-flop rs 191, 192, 193, 194, 195
Flip-flop rs sncrono 192, 193, 194, 195
Fluxograma 221, 222, 261
Fonte chaveada 90, 93
Fonte linear 91, 92
Fontes de alimentao 40, 41, 43, 89, 90, 94, 95, 105
Fonte simtrica 92, 93, 94
Fotodiodo 26, 36, 37, 40, 111, 143
H
Histerese 78, 223
J
Jfet 57, 58, 61
L
Linguagem c 225, 226, 228, 232, 236, 238, 253, 257, 258, 261, 262, 268, 272, 278, 282, 296
M
Memria ram 206, 210, 243, 273, 274
Memria rom 210, 211, 215, 218, 219, 226
Microcontrolador 8051 208
Microcontrolador microchip 12, 208
Microprocessadores 115, 200, 205, 206, 207, 208
Microprocessadores na automao industrial 204
Modos de disparo 65
Mosfet 57, 61, 71
Multivibrador biestvel 191
N
Nome das variveis 13, 249
O
Operadores 157, 158, 161, 162, 200, 253, 254, 255, 256, 257, 260, 289
Optoacopladores 39, 40, 41, 66, 104
Osciladores 81, 84, 95
P
Passagem de parmetros 275, 277, 278
Portas lgicas 8, 63, 82, 159, 160, 170, 172, 193, 196, 200
Portas lgicas 159, 160, 161, 172
Printf 270, 276, 282, 283, 284, 287, 292
Pwm 83, 183, 210, 211, 214, 215, 293, 294, 296
R
Recursos de um microcontrolador pic 12, 209
Rels fotoeltricos 117
Retorno de dados 13, 278
S
Scr 65, 66, 67
Sensor de barreira ptica 6, 11, 115
Sensor de presso 71, 124, 125
Sensor de ultrassom 98, 118
Sensores a laser 11, 115, 116
Sensores analgicos 71, 100, 101, 106, 145, 169, 182, 289
Sensores capacitivos 121, 122, 124
Sensores de acelerao 125, 126
Sensores de posicionamento 136, 137, 142
Sensores de temperatura 92, 107, 129, 290
Sensores de vazo 127, 128, 129
Sensores digitais 100, 101, 105, 120, 145
Sensores eletromecnicos 145, 109
Sensores indutivos 6, 11, 109, 120, 121, 122, 141
Sensores magnticos 6, 11, 109, 122, 123, 129
Sensores npn 5, 101, 103, 104
Sensores pticos 5, 11, 110, 111, 112, 113, 114, 115, 120, 145
Sensores pticos por transmisso 5, 11, 113
Sensor infravermelho 6, 11, 116, 117, 118, 134
Sensor ptico por retrorreflexo 5, 11, 112
Simplificao de circuitos lgicos 12, 161, 165
Sistemas digitais 12, 43, 149, 151, 153, 154, 157, 184, 185, 191, 200, 299, 300
Strain-gage 6, 126
String 280, 283, 284, 287
Sub-rotinas 13, 227, 231, 248, 272, 273, 275, 296
T
Tabela verdade 7, 9, 12, 157, 158, 159, 164, 165, 166, 168, 171, 172, 173, 175, 176, 188, 191, 192,
193, 195, 197, 198, 200
Tcnicas digitais 12, 154
Teoremas e leis da lgebra booleana 12, 162
Termopares 6, 11, 70, 75, 131, 132, 133, 134, 142, 144
Testar transistores bipolares 52
Testar um diodo 38
Timers 84, 206, 207, 211
Tipos de dados 8, 13, 243, 247, 248, 251, 254, 257, 258, 259, 260, 277
Tiristores 64, 65, 66, 68, 91, 95, 299
Transdutores 6, 11, 12, 97, 136, 137, 141, 142, 143, 144
Transistor bipolar 44, 45, 46, 50, 53, 56, 61, 71, 102
Transistor darlington 55, 56
Transistores cmos 63, 64
Transistores de efeito de campo 56, 57
Transistor npn 45, 47, 48, 49, 50, 54, 63
Transistor pnp 46, 49, 50
Triac 65, 68, 69
V
Varicap 26, 37
Viso artificial 11, 117, 118
SENAI DEPARTAMENTO NACIONAL
Unidade de Educao Profissional e Tecnolgica UNIEP

Rolando Vargas Vallejos


Gerente Executivo

Felipe Esteves Morgado


Gerente Executivo Adjunto

Diana Neri
Coordenao Geral do Desenvolvimento dos Livros

SENAI DEPARTAMENTO REGIONAL DO RIO GRANDE DO SUL - CONSELHO REGIONAL

Heitor Jos Mller Presidente do Sistema FIERGS


Presidente Nato

Elisabeth Urban
Diretora de Educao e Tecnologia

Jos Zortea
Diretor Regional e Membro Nato do Conselho Regional do SENAI-RS

DIRETORIA SENAI-RS

Jos Zortea Carlos Artur Trein


Diretor Regional Diretor de Operaes

Carlos Heitor Zuanazzi Claiton Oliveira da Costa


Diretor Administrativo e Financeiro Coordenao do Desenvolvimento dos Livros no
Departamento Regional

Daniel Corteletti Brbara V. Polidori Backes


Elaborao Camila J. S. Machado
Rafael Andrade
Giancarllo Josias Soares Ilustraes
Reviso Tcnica
Brbara V. Polidori Backes
Tratamento de imagens e Diagramao
Enrique S. Blanco
Fernando R. G. Schirmbeck
Luciene Gralha da Silva Enilda Hack
Maria de Ftima R.de Lemos Normatizao
Design Educacional

Regina M. Recktenwald
Reviso Ortogrfica e Gramatical

i-Comunicao
Projeto Grfico
ISBN 978-85-7519-531-4

9 788575 195314

Você também pode gostar