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
Servio Nacional de
Aprendizagem Industrial
Departamento Nacional

Sede
Setor Bancrio Norte . Quadra 1 . Bloco C . Edifcio Roberto
Simonsen . 70040-903 . Braslia DF . Tel.: (0xx61)3317-9190
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 repulso 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 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.................................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) smbolo 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
Horria

Carga Horria
Mdulo

Mdulo Bsico

Fundamentos tcnicos e

Fundamentos da Comunicao

100 h

340 h

cientficos

Fundamentos da Eletrotcnica

140 h

Fundamentos da Mecnica

100 h

Mdulo

Fundamentos tcnicos e

Acionamento de Dispositivos

160 h

Introdutrio

cientficos

Atuadores

Especfico I

Processamento de Sinais

180 h

Manuteno e Implemen-

Gesto da Manuteno

34 h

tao de equipamentos e

Implementao de Equipamentos 136 h

dispositivos

Dispositivos

340 h

340 h

Instrumentao e Controle

Especfico II

Manuteno de Equipamentos e

102 h

Dispositivos

68 h

Desenvolvimento de

Desenvolvimento de Sistemas de

100 h

sistemas de controle e

Controle

Automao

Sistemas Lgicos Programveis

160 h

Tcnicas de Controle

80 h

Fonte: SENAI

340 h

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 transformla 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.

22

AUTOMAO INDUSTRIAL

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)

VOC
SABIA?

Em condies normais de temperatura e presso uma


tenso de 1000V pode romper a rigidez dieltrica de 1 mm
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

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.

FIQUE
ALERTA

Uma das grandes variantes que determina a fatalidade


de um choque eltrico no dada pela TENSO, mas
pela CORRENTE. Como a corrente determinada pela
resistncia do corpo em um choque eltrico, uma pessoa
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 eltrica(A)

Corrente tem um nico sentido

Carga

Tempo
Figura 3 - Corrente contnua
Fonte: Autor

23

AUTOMAO INDUSTRIAL

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)

F +/-

Tempo

Carga

Corrente mude de
sentido periodicamente

Corrente
eltrica (A)

24

Figura 4 - Corrente alternada


Fonte: Autor

VOC
SABIA?

O Paraguai vende ao Brasil a energia eltrica excedente


gerada por sua parte da hidroeltrica de Itaip, onde
a corrente alternada de 50Hz proveniente das turbinas
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


Fonte: Autor

Figura 6 - LED (diodo emissor de luz)


Fonte: Autor

2 Eletrnica Analgica

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)

+
+ - ?
- +?
BATERIA

CIRCUITO

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)

25

26

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

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


tem origem em uma grande matriz de LEDs, dispostos em
linhas e colunas, que iluminam o fundo de acordo com a
imagem? Uma tela de cristal lquido posicionada entre o
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

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
SABIA?

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

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.

27

AUTOMAO INDUSTRIAL

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)
ANODO

ANODO
-

POWER PK HOLD

B/L

DC / AC

AUTO POWER OFF

alcalina
1,5V - AA

CARGA

N
-

DC
A

,
POWER PK HOLD

B/L

DC / AC

AUTO POWER OFF

DC

+
alcalina
1,5V - AA

CATODO
+
P
+

CARGA

CATODO
+

28

CAT ll

CAT ll

20A

mA

COM

20A

VHz

INVERSAMENTE POLARIZADO
Figura 11 - Inversamente Polarizado
Fonte: Autor

mA

COM

VHz

DIRETAMENTE POLARIZADO
Figura 12 - Diretamente Polarizado
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

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).

SAIBA
MAIS

O diodo 1N4007 um diodo retificador bastante comum,


utilizado em diversas aplicaes. Pesquise na internet pelo
termo datasheet 1n4007 e tente encontrar o material de
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.

29

AUTOMAO INDUSTRIAL

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

FILTRO

Corrente
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)

+
-

Corrente
alternada

sentido
corrente

Corrente
alternada

DIODOS
RETIFICADORES
+

Corrente
contnua

sentido
corrente

30

DIODOS
RETIFICADORES
+

Corrente
contnua

+
V

+
-

Figura 17 - Ponte retificadora e seus diodos convertendo corrente contnua em corrente alternada
Fonte: Autor

2 Eletrnica Analgica

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
Encapsulamento

SOD - 18

DO-04

SOD-18

Nome(cdigo)
do DIODO

Tenso
reversa (V)

COrrente
direta

Corrente
de Pico

Diferencial
de Potencial
de Juno

1N4001

50

1A

50A

< 1.1V

1N4002

100

1N4003

200

1N4004

400

1N4005

600

1N4006

800

1N4007

1000

1N5400

50

3A

200A

< 1.2V

1N5401

100

1N5402

200

1N5403

300

1N5404

400

1N5405

500

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

BY127

1250
Fonte: Autor, baseado em ESQUEMAS, 2012.

31

32

AUTOMAO INDUSTRIAL

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
SABIA?

o diodo zener tem este nome devido a Clarence Zener, que


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

(+)

Volts

D1
1N5231B

Volts

D1
1N5231B

+0.88
Volts

+5.46
Volts

D1
1N5231B

R1
100

Volts

+5.12

+65.4
Amps

0.00

Amps

+3.00

+8.77

0.00
Amps

12V

(+)

R1
100

+6.54
Volts
-

Figura 19 - Circuito
Fonte: Autor

R1
100

2 Eletrnica Analgica

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.

33

34

AUTOMAO INDUSTRIAL

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

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.

35

36

AUTOMAO INDUSTRIAL

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, ultravioleta 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)

VOC
SABIA?

Matrizes de LEDs orgnicos miniaturizados j so utilizadas


tambm para construir telas mais finas e menos caras, e, ao
contrrio dos displays de cristal lquido, os displays OLED
(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

SAIBA
MAIS

Muitos dispositivos eletrnicos utilizam LEDs como sinalizadores


visuais, porm s recentemente os LEDs comearam a ser
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

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

24V C. C.

Resistor

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.

37

38

AUTOMAO INDUSTRIAL

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

SAIBA
MAIS

Pesquisando sobre a diferena entre displays LED de 7


segmentos dos tipos anodo comum e catodo comum, e sobre o
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

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

VOC
SABIA?

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
de segundo? Ao se pressionar uma tecla do controle,
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.

39

40

AUTOMAO INDUSTRIAL

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

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

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
A

POWER PK HOLD

B/L

DC / AC

AUTO POWER OFF

+
CAT ll

20A

mA

COM

VHz

Figura 32 - Multimetro
Fonte: Autor

41

42

AUTOMAO INDUSTRIAL

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

POWER
HOLD
POWER PKPK
HOLD

BB
/ L/ L DCDC
/ AC
/ AC

AA

POWER
HOLD
POWERPKPK
HOLD

AUTO
POWER
OFF
AUTO
POWER
OFF

AUTO
POWER
OFF
AUTO
POWER
OFF

++

++

--

-CAT
ll ll
CAT

20A
20A

B /BL/ L DCDC
/ AC
/ AC

mA
mA

COM
COM

VHz
VHz

Figura 33 - Diodo diretamente polarizado


Fonte: Autor

CAT
ll ll
CAT

20A
20A

mAmA

COM
COM

VHz
VHz

Figura 34 - Diodo inversamente polarizado


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

Fotoacoplador
de 4 terminais

Encapsulamento
para montagem
em superfcie - 6 terminais

Fotoacoplador
de 6 terminas

Smbolos

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)

ligao entre
as fontes

5V
(GND) 5V +

4K7

SENSOR

1k2

Figura 36 - Circuito divisor de tenso


Fonte: Autor

uC

43

44

AUTOMAO INDUSTRIAL

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)

Equipamento
+
ambiente

Processamento

Sensores
Controlador
Atuadores

Figura 38 - Diagrama de um sistema automatizado


Fonte: Autor

2 Eletrnica Analgica

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.

45

46

AUTOMAO INDUSTRIAL

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

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.

VOC
SABIA?

A inveno do transistor ocorreu aps a Segunda Guerra


Mundial, e que foi influenciada pelas pesquisas realizadas
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)

Coletor

Base

P N P
Emissor

Coletor

Base

Emissor

N P N

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.

VOC
SABIA?

O transistor foi inventado em 1947 pelos pesquisadores


da Bell Telephones, nos EUA, para substituir as vlvulas
eletrnicas nas aplicaes de telefonia.

47

AUTOMAO INDUSTRIAL

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

emissor

coletor

emissor

NPN

base

N P N

base

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

48

coletor
base
corrente
menor

corrente
maior

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

Transistores PNP: (Figura 43)


emissor

coletor

coletor

emissor

PNP

base

P N P

base

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
emissor

corrente
menor

corrente
maior

base

carga

coletor

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

49

50

AUTOMAO INDUSTRIAL

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
(desligado)
5V +

0.00
Amps

D1

0V +

0.00
Amps

R2

1K2
R3
20K

RL1
5V
C
TRANSISTOR
NPN
E

atuador
(ligado)
5V +

+70.2
Amps

D1

SINAL 5V +
(MAX 0,02A)

+3.28
Amps

R2

1K2
R3

RL1
5V
C
TRANSISTOR
PNP
E

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

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.

51

52

AUTOMAO INDUSTRIAL

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

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

R3
20K

R2

CONTROLE

CONTROLE

5V

Q2
BC557
PNP

1K2

R3
20K

R2

Q2
BC557
PNP

1K2

RL1

RL1
D1

5V

1N4007

D1

5V

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)

53

54

AUTOMAO INDUSTRIAL

TO 1
2

E-Line
1

1 2 3

2
1

TO 3 / TO 2 0 4
1

S OT 1 0 3

T0250

(CASA)

TO 3 ( 4 P I N )
1 2

1 2 3

TO92/TO237

TO 7 2
2

T05/T018
TO39/TO205

T0218/T0220 T02205
SOT93/TAB
4
3
(TAB)
12345

4 3

123

TO246

T03P/T0247
4
( TAB)

SOTB2
4

3
( TAB)

( TAB)

1 2 3

TO 262/TO 251
4

TO247/5

4
(TAB)

1 2 3

1 2 34 5

SOT199

TO126/SOT32
4
(TAB)

ISO TOP / SOT227B


4 3

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
mxima
COLETOREMISSOR (A)

Encapsulamento

Tenso
mxima
COLETOREMISSOR (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

Ganho ( )

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

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


NPN

PNP

Corrente
mxima
COLETOREMISSOR (A)

Encapsulamento

Tenso
mxima
COLETOREMISSOR (V)

Ganho ( )

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

to-92

40

300

MMB-

sot-23

40

300

T2222A
PZT2222A

sot-223

40

300

2N3019

to-39

80

300

to-39

60

250

BC141-16

BC161-16

TIP31

TIP32

to-220

40

50

TIP31A

TIP32A

to-220

60

50

TIP31B

TIP32B

to-220

80

50

TIP31C

TIP32C

to-220

100

50

TIP120

TIP125

to-220

60

1000

TIP121

TIP126

to-220

80

1000

to-220

TIP122

TIP127

100

1000

TIP140

TIP145

60

1000

TIP141

TIP146

80

1000

TIP142

TIP147

100

1000

TIP41

TIP42

to-220

40

75

TIP41A

TIP42A

to-220

60

75

TIP41B

TIP42B

to-220

80

75
75

TIP41C

TIP42C

to-220

100

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:

55

56

AUTOMAO INDUSTRIAL

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

OFF

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


Fonte: Autor

2 Eletrnica Analgica

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

infinito

infinito

infinito

DC

DC
A

POWER PK HOLD

B/L

DC / AC

AUTO POWER OFF

DC
A

POWER PK HOLD

B/L

DC / AC

POWER PK HOLD

AUTO POWER OFF

mA

COM

mA

COM

CAT ll

VHz

20A

tenso juno PN

DC

B/L

DC / AC

POWER PK HOLD

B/L

DC / AC

AUTO POWER OFF

mA

COM

B/L

AUTO POWER OFF

C
B

CAT ll

VHz

DC / AC

CAT ll

20A

VHz

POWER PK HOLD

COM

DC
A

B E

AUTO POWER OFF

mA

infinito

DC
A

POWER PK HOLD

B E

20A

tenso juno PN

AUTO POWER OFF

CAT ll

VHz

DC / AC

CAT ll

20A

B/L

20A

mA

COM

CAT ll

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

DC

DC

POWER PK HOLD

B/L

DC / AC

AUTO POWER OFF

C
B

DC

POWER PK HOLD

B/L

DC / AC

POWER PK HOLD

AUTO POWER OFF

mA

COM

VHz

mA

COM

B/L

DC / AC

20A

B/L

DC / AC

AUTO POWER OFF

POWER PK HOLD

mA

COM

B/L

DC / AC

AUTO POWER OFF

C
B

CAT ll

VHz

VHz

CAT ll

20A

COM

DC

POWER PK HOLD

B E

mA

infinito

infinito
C

B E
CAT ll

VHz

DC

AUTO POWER OFF

20A

DC

DC / AC

AUTO POWER OFF

CAT ll

infinito

POWER PK HOLD

B/L

CAT ll

20A

infinito

20A

mA

COM

CAT ll

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.

57

58

AUTOMAO INDUSTRIAL

FIQUE
ALERTA

Caso um transistor esteja em curto, a provvel causa dada


ao excesso de corrente coletor - emissor ou base emissor.
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)

(PNP)

Q2
B

Q1

Q1

Q2
E

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

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)

porta(G)

canal P

canal N

dreno(D)

porta(G)

fonte(S)

fonte(S)
D

D
G

N
P P

P
N N

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.

59

60

AUTOMAO INDUSTRIAL

VOC
SABIA?

Pesquise sobre o uso de transistores JFET em


amplificadores, fontes de corrente, circuitos recortadores
(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
(drain)

N+
Substrato
(body)

Porta
(gate)

Substrato
(body)

Fonte
(source)

N+

N-MOS ou MOSFET canal N

Dreno
(drain)

P+

Porta
(gate)

Fonte
(source)

P+

P-MOS ou MOSFET canal P

SUB

SUB
G

G
S
CANAL N

S
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

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:
Dreno
(drain)

N+
Substrato
(body)

Porta
(gate)

Substrato
(body)

Fonte
(source)

N+

Dreno
(drain)

P+
N

Porta
(gate)

Fonte
(source)

P+

MOSFET canal N

MOSFET canal P
D

SUB

SUB
G

G
S
CANAL N

S
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

61

AUTOMAO INDUSTRIAL

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

Chave 4 Chave 3

Chave 4 Chave 3

Chave 2 Chave 1

Chave 4 Chave 3

Chave 2 Chave 1

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


rotao do motor. (Figura 58)
Chave 2 Chave1

+
_

+
_

Figura 58 - Motor de corrente contnua convencional 1


Fonte: Autor

na

nf
C

bobina

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

nf
C

Figura 59 - Motor DC
Fonte: Autor

bobina

62

2 Eletrnica Analgica

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
D3

D1
Controle

Q2
D2

Q4
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+

Figura 61 - Detalhamento
Fonte: Autor

V+

63

64

AUTOMAO INDUSTRIAL

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


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

FIQUE
ALERTA

Em uma PONTE H, importante avaliar a implementao


de um circuito de controle robusto e proteo em caso de
acionamento indevido, pois caso haja acionamento em
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


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

SAIBA
MAIS

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

G
E
carga

S
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

+V
+V
carga
E
B

NO!

C
B

C
E

carga

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

Diodo

Carga indutiva
( 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).

65

66

AUTOMAO INDUSTRIAL

NMOS
B

p+

n+

PMOS
G

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

S
D
G

D
G

S
CMOS canal P

S
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

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:
TRIAC

SCR

(Triode AC Switch)

(Silicon Controlled Rectifier)

(Assymmetrical Silicon Bilateral


Switch)
M1

(Silicon Unilateral Switch)


A

M1

ASBS

SUS

G
G

G
K

M2

PUT

(Programmable Unijunction
Transistor)

LASCAR

(Light Activated SCR)

GTO

(Silicon Controlled Switch)

(Gate Turn-Off Switch)

A1

M2

SCS

G2
G

SBS

(Silicon Bilateral Switch)


M1

DIAC

(Bidirectional Diode
Thyristor) M1

LAPUT

LASCS

(Light Activated PUT)

(Light Activated SCS)

G2

G
G1

M2

A2

Figura 67 - Tipos de tiristores


Fonte: Autor

67

68

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

SAIBA
MAIS

Um rel de estado slido uma alternativa a rels


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

Pesquisando por rels de estado slido e optoacopladores


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

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

PORTA

NPN

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

Ig= 0

Ig2 > Ig1

Intensidade da corrente
de manuteno
(IH)

Ig1>0

(A) de conduo direta

Intensidade da corrente
de disparo

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.

69

70

AUTOMAO INDUSTRIAL

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

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.)
F
R1

CARGA
220V

TRIAC

RV1
DIAC

C1

N
chave

R2

R1= R2 = 10K

V+

220K (p/110V)
RV1= 470K (p/220V)

V-

C1 = C2 = 100nF / 400V
TRIAC = TIC226D

t(ms)

V+
V-

t(ms)

V+

C2
Efeito do triac
ceifando a curva
da corrente alternada

V-

t(ms)

Figura 72 - Circuito de um dimmer


Fonte: Autor

FIQUE
ALERTA

TRIACs e DIACs so tipicamente utilizados em circuitos de


corrente alternada, em tenses de 110V ou superiores. Sempre
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.

71

72

AUTOMAO INDUSTRIAL

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

(mV)

B/L

DC / AC

AUTO POWER OFF

+
CAT ll

20A

mA

COM

VHz

+ 0C

termopar

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


Fonte: Autor

SAIBA
MAIS

Os termopares so agrupamentos de dois metais que geram


uma pequena tenso (geralmente em milsimos de volts)
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

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.

VOC
SABIA?

Uma das primeiras pessoas que transformou sinais eltricos


em ondas eletromagnticas para uso em comunicaes
de rdio foi o Padre Roberto Landell de Moura, um padre
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

73

74

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

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


um nico par de fios para disponibilizar alimentao e um
canal de troca de dados entre vrios sensores e atuadores,
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

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+

Vo

1
2
+ 3
V- 4

8
7 V+
6 VO
5

V-

LM741
Figura 75 - Amplificador operacional. CI LM741
Fonte: Autor

SAIBA
MAIS

Pesquise sobre os encapsulamentos possveis para os


amplificadores operacionais, observando quanto
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.

SAIBA
MAIS

Pesquisando sobre caractersticas de diferentes modelos


de amplificadores operacionais, como frequncia mxima
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.

75

76

AUTOMAO INDUSTRIAL

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

Ri

Vi

Vi
VO

Rf

ganho =

VO
Vi

Rf
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

Ri
Rf

Vi
VO
ganho = 1+

Rf
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

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

220V

CONTROLE

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
aquecedor

220V

1K

rel

VO

Ri
5V
Rf
1M

OPAMP no inversor
ganho = 1+ Rf / Ri = 1 + 1000000 / 1000 = 1001

Figura 79 - Tanque de fluido 1


Fonte: Autor

77

AUTOMAO INDUSTRIAL

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.

R1

Vin 5V C.C.
1k2
Vout
2,5V
R2

78

1k2

Figura 80 - Divisor de tenso


Fonte: Autor

2 Eletrnica Analgica

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)
Vin5V

amplificador

1K2

5V

Ri
1K

rel

2,5V
R2

aquecedor
220V

R1

5V

5V

VO

1K2
Vi

Rf

VO = 5V quando Vi < 2,5V


0V quando Vi > 2,5V

1M
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
Vc

R1
Vsup:V +

Vi
(s)

Vc
V0

R2 Vi

V+

V0
V0 = 0

Vinf: V -

quando sinal de
entrada ficar acima
de Vc

Figura 82 - Circuito 1
Fonte: Autor

V0 = V +

quando sinal de
entrada ficar
abaixo de Vc.

79

80

AUTOMAO INDUSTRIAL

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

SAIBA
MAIS

Voc pode criar uma planilha eletrnica com as frmulas para


ajudar calcular, utilizando dos valores de VSUP, R1, R2 e R3, o
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

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

Rn

Rf
Figura 83 - Circuito somador inversor
Fonte: Autor

Vin1 + Vin2 + Vinn)


).
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.
A tenso de sada ser dada pela frmula (V0ut = -Rf (

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.

VOC
SABIA?

Um cabo blindado utiliza o princpio de Gaiola de Faraday


para, atravs de sua malha, eliminar a interferncia de um
campo eltrico externo em seu ncleo.

81

82

AUTOMAO INDUSTRIAL

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
Sinal do
transdutor
(sinal enviado)

t
Sinais de
interferncias

t
Sinal recebido
(transdutor + interferncias)

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
R1 = R3
R2 = R4

R2

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

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

8
3

Sada

R1+R2
R2

Capacitor
(V6= V2)

R2

C1

6
2

10n

2/3 Vcc
1/3 Vcc
0V
+ Vcc

Sada
(V3)

0V
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:

83

AUTOMAO INDUSTRIAL

t1 = 0,7 . (R1 + R2 ) C1

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.

tenso

5V

tempo (ms)
5V
tenso
mdia

84

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:
DH =

R1 +R2
R1 + 2R2

R2
DL =
R1+2R2
Com o diodo:
DH =

R1
R1+R2

R2
DL =
R1+R2

DH = 0.5 (mn)
DH = 1 (mx)

DH = 0 (mn)
DH = 1 (mx)

DL DH

2 Eletrnica Analgica

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


necessrio amplifique este sinal conectando o pino 3 a um
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.

FIQUE
ALERTA

SAIBA
MAIS

Consultando a folha de dados (datasheet) do circuito


integrado 555. Pesquise tambm sobre aplicaes deste
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

Disparo
C1

8
3

7
6
2

Sada

10n

Disparo
(V2)
Sada
(V3)

+ Vcc

0V

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.

SAIBA
MAIS

Pesquise sobre a configurao de um circuito biestvel


utilizando o CI 555. Descubra as diferenas de funcionamento
em relao aos circuitos osciladores j estudados.

85

86

AUTOMAO INDUSTRIAL

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
alternada

V+
Corrente
contnua

CAPACITOR
GND

V
+
-

V
+
t

V
+

V
+
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

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:

intensidade
do sinal

frequncia de corte

70,7%
sinal
indesejado

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.

Vout

Vin

R
Frequncia de corte =

Figura 92 - Filtro passa baixa


Fonte: Autor

1
2. . R . C

87

88

AUTOMAO INDUSTRIAL

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
R

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

Vout

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


Fonte: Autor

2 Eletrnica Analgica

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 :

fR =

1
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

Vout

C
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)

89

90

AUTOMAO INDUSTRIAL

Rg

Rf
V+

Sada
(Vo)

Amp- op

R1

V1

C1

V-

Figura 96 - Filtro passa-baixa


Fonte: Autor

Rg

Rf

(Vo)

Amp- op

C1

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

V1

Rg

Rf

C1

Amp- op

Rf

Amp- op

R2

(Vo)

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

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


Fonte: Autor

Figura 100 - Fonte de


microcomputador
Fonte: Autor

Figura 101 - Fonte chaveada 2A


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
ALERTA

Alimentar uma fonte com tenso superior indicada pode


causar superaquecimento, causando danos permanentes
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 -12V C.C.,
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.

91

92

AUTOMAO INDUSTRIAL

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
RMS

V+
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

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
ALERTA

Na maioria das fontes lineares devemos observar a chave


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
0V
-9V

fonte
simtica
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
220V

Ponte retificadora
(4 diodos)
12V
center
tape

120V
fusvel

0V

-12V

~
~

100nF
50V
100nF
50V

7812
2

+ 220uF
16V

+ 220uF

+
2

1
7912

16V

0,25W
+12V
470 ohms
LED
0V
Regulador
negativo
0,25W
470 ohms
-12V
LED
7912

Entrada

Sada -12V

Figura 105 - Esquema de fonte simtrica


Fonte: Autor

Gnd

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

Sada 12V
Gnd
Entrada

CHAVE
ON/OFF

93

94

AUTOMAO INDUSTRIAL

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

123

LM317
I

100n

1N4004
+ VE
OUT

220R

1N4004 X 4

2k
2200uF
+ 35V

VAC

+ 10uF

1k
LED

1k5

(CT)
OV

VAC

1k5
2200uF
35V

+ 10uF

1k

2k
220R

1
2
100n

LED

- VE
OUT

3
1N4004

LM337
1N4004

Figura 106 - Esquema de fonte simtrica


Fonte: Autor

SAIBA
MAIS

Pesquise sobre fontes simtricas utilizando os reguladores de


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

Sada do
retificador

Entrada
V

Sada do
filtro

110V CA
retificada

Sada do
retificador

V
t

12V CA
alta frequncia

12V CA
alta frequncia
e retificada

110V CA
retificada
e filtrada

110V CA

Sada do
transformador

Sada do
chaveador

Onda quadrada
pulsante com alta
tenso e alta
frequncia

Sada do
filtro

Sada do
regulador
V

12V CC
filtrado

10V CC
regulado

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
ALERTA

Ao interligar eletricamente sistemas alimentados por fontes de


alimentao distintas, realize primeiro sua equipotencializao,
interligando circuitos de terra e de referncia.

95

96

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

A reduo no tamanho das fontes chaveadas tambm pode


acarretar um isolamento mais frgil entre a rede de alta
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

Anotaes:

97

Sensores

3
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.

VOC
SABIA?

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


o morcego, que possui audio bastante apurada, capaz de ouvir
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

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)

Nvel

Variao de resistncia

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.

Nvel

Variao de tempo
entre emitir e receber
o reflexo sonoro

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
destino de um feixe
de laser (luz) devido
a refrao ar - gua

Nvel

100

SENSOR TICO
Figura 111 - Reservatrios dgua medido atravs do ngulo e refrao
Fonte: Autor

3 Sensores

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)

Nvel

Sensores captam o campo


magntico do im do
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)

Nvel

Sensores de fora
medem o peso
do recipiente

Clulas de carga

Figura 113 - Reservatrios dgua de clula de carga


Fonte: Autor

Nvel

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
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.

101

102

AUTOMAO INDUSTRIAL

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

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)

103

104

AUTOMAO INDUSTRIAL

Figura 117 - Boto de emergncia com contato normalmente fechado


Fonte: Autor

VOC
SABIA?

Botes ou chaves de contato utilizados para detectar a vontade


do usurio so sensores e podem ser de contato normalmente
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.

FIQUE
ALERTA

Embora existam normas para a definio de cores para


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

3 Sensores

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
sem deteco
sinal alta impedncia

carga
com deteco

sinal -

SENSOR NPN

carga
sem deteco
sinal alta impedncia

carga
com deteco

sinal +

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 PULLDOWN para reduzi-la. (Figura 119)

sem deteco

R1
sinal +

carga
com deteco

R1
sinal -

carga

SENSOR NPN

sem deteco

R1
sinal -

carga
com deteco

R1
sinal +

carga

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

105

106

AUTOMAO INDUSTRIAL

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)

GND

24V + GND

PNP

2K2

5V +

10K

uC

SENSOR
OPTOACOPLADOR

GND

24V + GND

NPN

10K

SENSOR

5V +

uC

2K2

OPTOACOPLADOR

Figura 120 - Sensores NPN e PNP


Fonte: Autor

FIQUE
ALERTA

Acoplamentos pticos ou a rel so uma forma de oferecer


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

3 Sensores

REL
BOBINA
24V
SINAL
V + (24V)
SISTEMA A

SINAL (RETORNO)

SISTEMA B
GND

ACOPLAMENTO A REL

SINAL 5V

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).

FIQUE
ALERTA

A rede AS-i um padro de rede industrial bastante


verstil, pois permite que, em seu cabeamento, um
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.

107

AUTOMAO INDUSTRIAL

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

sada por corrente 4..20mA linear

sada por tenso, 0..10V linear

Grandeza
mensurada

Grandeza
mensurada

CLP (circuito de controle)

corrente (mA)
sada por corrente, 4..20mA linear inversa.

sada por tenso, 0..10V no linear.


Grandeza
mensurada

Tenso (V)

Grandeza
mensurada

108

corrente (mA)

Tenso (V)

Figura 123 - Sensor analgico


Fonte: Autor

importante ressaltar que um sensor analgico pode gerar uma resposta nolinear 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

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.

SAIBA
MAIS

Pesquise na internet sobre sensores de temperatura com


caractersticas lineares e no-lineares, comparando custos e
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

GND
DQ
VDD

18B20
1 2 3

TENSO

MAXIM

0
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.

SAIBA
MAIS

Pesquise sobre as folhas de dados (datasheets) dos


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

109

AUTOMAO INDUSTRIAL

3.3 Princpio fsico


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

110

LUZ
N

SOM

POSIO

SADA DE SINAL

S
0
01

90

PRINCPIOS MECNICOS

10

90

10

VELOCIDADE

001mm

80

80

20

30

70

2
3
40

60

20

70

1 0 9
4 5 6

30

8
7

50

60

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

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)

111

112

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

Nem todos os sensores pticos trabalham com luz visvel,


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

FIQUE
ALERTA

Alguns sensores pticos emitem uma radiao laser muito forte,


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

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.

113

AUTOMAO INDUSTRIAL

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 PTICO REFLEXIVO
luz emitida
luz refletida
SINAL V+

OBJETO

REFLETOR

Objeto interrompe feixe de luz interrompendo o sinal


luz difundida
SENSOR PTICO REFLEXIVO

SEM SINAL

REFLETOR

Sensor PNP detectando refletor, gerando sinal V+

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

SINAL V+
Figura 129 - Sensor ptico por reflexo difusa
Fonte: Autor

OBJETO

114

3 Sensores

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)
EMISSOR

SENSOR PTICO
por transmisso
luz emitida
SINAL

RECEPTOR

SENSOR PTICO
por transmisso

SEM SINAL

OBJETO

EMISSOR

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
R

E
R

E
R

E
R

sensor ptico
fibra ptica

emissor receptor
terminais

Figura 131 - Sistema de sensor ptico por transmisso usando fibra ptica
Fonte: Autor

FIQUE
ALERTA

Fibras pticas necessitam de cuidados especiais. Se for


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

115

116

AUTOMAO INDUSTRIAL

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.

SAIBA
MAIS

Pesquise na internet sobre as diferenas entre fibras pticas


monomodo e multimodo, descobrindo suas aplicaes na
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

FIQUE
ALERTA

Sensores de segurana e chaves de emergncia


devem ser de caracterstica NF e devem ser ligados em
srie. Desta forma, no caso de dano em sensores ou
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.

SAIBA
MAIS

AGVs so veculos guiados automaticamente que se


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

117

118

AUTOMAO INDUSTRIAL

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.

SAIBA
MAIS

Sensores de presena do tipo infravermelho no detectam


movimentos, e sim o calor. Faa um teste: permanea parado
em frente a um sensor de alarme residencial com indicador
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

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).

VOC
SABIA?

Os seres humanos conseguem perceber sons com


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

119

120

AUTOMAO INDUSTRIAL

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.

FIQUE
ALERTA

Alguns objetos podem absorver as ondas sonoras (como


espumas e superfcies muito macias), no refletindo o suficiente
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

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.

FIQUE
ALERTA

o uso de sensores de ultrassom depende de algumas


variveis do ambientes, tais como temperatura, presso
atmosfrica e umidade relativa do ar. Ambientes onde estas
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.
Praticamente sem mudana no
campo eletromagntico gerado.

Objeto metlico produz


Uma grande mudana no
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.

121

122

AUTOMAO INDUSTRIAL

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

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 nocondutores (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.

123

AUTOMAO INDUSTRIAL

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 FECHADO

CONTATO ABERTO

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

124

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

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

3 Sensores

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.

VOC
SABIA?

Muitos microfones utilizados em telefones tm, sem seu


interior, piezorresistores, onde as variaes da presso
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)

125

126

AUTOMAO INDUSTRIAL

bar

Sensor de presso
microcontrolado

Sensor de presso

Piezoresistor

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

VOC
SABIA?

Um pressostato pode ser utilizado para medir o nvel de


lquidos, atravs da medio da variao de presso em um
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
SABIA?

Pesquise sobre o uso e a funo de acelermetros e


giroscpios em aplicaes aeroespaciais.

3 Sensores

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 integrados acelermetros


Fonte: Autor

Figura 148 - Sensor industrial


Fonte: Autor

Figura 149 - Equipamentos que


utilizam acelermetros
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

Sensor strain
- gage
clula
de carga
Fonte: Autor

Modelo
Figura 151 -de
Modelo de
posicionamento.
posicionamento

Strain
-gage
Figura
152 -acoplado
Strain-gage
a clula
deAutor
carga.
Fonte:

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.

127

128

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

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


embora em muitas situaes passem desapercebidos.
Hidrmetros so usados para medir o consumo de gua
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

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
(velocidade)

Presso esttica

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

129

130

AUTOMAO INDUSTRIAL

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
MAIS

Pesquise sobre aplicaes de sensores de vazo aplicados a


lquidos e gases.

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

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.

Resistncia (ohms)

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

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.

VOC
SABIA?

A juno de dois metais diferentes pode transformar


energia trmica em energia eltrica. Este princpio foi
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)

131

132

AUTOMAO INDUSTRIAL

INFINITOS VALORES
DC
V

,
POWER PK HOLD

(mV)

B/L

DC / AC

AUTO POWER OFF

+
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.

Tipo

K (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

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

Tipo

N (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.

133

AUTOMAO INDUSTRIAL

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)
Tipo B
Tipo N
Tipo R
Tipo S
Tipo K
Tipo E
Tipo J
Tipo T

TERMOPARES: F.E.M. X Temperatura


70

65
60
55

F. E. M. (mV)

134

50

45

40
35
30
25
20

R
S

15

10
5
0
-5
-10
-200

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

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)

VOC
SABIA?

Cmeras sensveis luz infravermelha, ou cmeras


termogrficas, permitem a deteco de pontos de gerao
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)
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.

135

136

AUTOMAO INDUSTRIAL

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

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


Fonte: Autor

Figura 164 - Encoders pticos


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.

VOC
SABIA?

Alguns encoders podem gerar at 360000 pulsos por


revoluo; ou seja um pulso gerado a cada milsimo de
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.

137

AUTOMAO INDUSTRIAL

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)

Tenso (V)

GND

Sinal

5V

5V

138

ngulo

Figura 166 - Encoders analgico potenciomtrico


Fonte: Autor

270o

3 Sensores

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)

139

140

AUTOMAO INDUSTRIAL

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.

FIQUE
ALERTA

Em sistemas que possuem encoders incrementais, a


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

3 Sensores

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.

141

142

AUTOMAO INDUSTRIAL

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
de entrada

Forma de energia
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

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).

transdutores

piezoeltricos: 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.

143

144

AUTOMAO INDUSTRIAL

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

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

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
ALERTA

Sistemas de comunicao wireless podem interferir e sofrer


interferncias de outras fontes de rudo eletromagntico.

145

146

AUTOMAO INDUSTRIAL

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

Anotaes:

147

Sistemas Digitais

4
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
(digital)

Rampa
(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.

150

AUTOMAO INDUSTRIAL

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
8

100

50
2
psi
bar

150

10
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

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)

3
2
1
0

4 5 6
7

dgitos

01

Sistema decimal
10 digitos (0 a 9)

Sistema binrio
2 digitos (0 ou 1)

Figura 180 - Sistemas numricos


Fonte: Autor

151

152

AUTOMAO INDUSTRIAL

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

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.

FIQUE
ALERTA

Estamos acostumados a lidar com sistemas decimais


(utilizamos dgitos de zero a nove para contar, calcular,
registrar), e dimensionar sistemas para representaes
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
SABIA?

A lgebra de Boole (lgebra booleana) o fundamento da


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.

153

AUTOMAO INDUSTRIAL

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.

A voz humana um som, e como todo

Sinal analgico
(frequncia e amplitude
da voz humana)
1
4
7
*

2
5
8
0

3
6
9
#

som caracterizado por vibraes


propagadas no meio (ar). Quando
capturada pelo microfone do telefone,
estas oscilaes analgicas geram
variaes de frequncia e amplitude em
sinais eltricos, porm continuando com
comportamento de sinal analgico.

O
Sinal analgico
(frequncia e amplitude
da voz humana)

12345678910111213141516

154

11,15,16,15,12,4,1,4,12,14,11,5,6,...

Na digitalizao, cada
amostra em um dado
parodo de tempo
convertida em uma
grandeza numrica,
representada usando
o sistema binrios (0 e 1)

som representvel em uma


onda analgica, que digitalizada,
transformando-se
em
uma
sequncia de bits (dgitos binrios).
Na digitalizao, a informao
analgica analisada em vrias
amostras por segundo (geralmente
prximo a algumas milhares de
amostra por segundo). Cada amostra
quantificada, virando um valor
numrico inteiro.

4 Sistemas digitais

Estes

0 e 1 so
transmitidos
atravs de ondas
de rdio, por
frequncias
diferentes.

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

valores so ento codificados


para representao binria e
transmitidos em uma rede de
dados por ondas de rdio, usando
sistemas que diferenciam a altura
ou a frequncia das ondas enviadas,
chegando at o equipamento de
destino. Embora a informao seja
digital, caracterizada por bits (zeros ou
uns), uma onda de rdio o meio fsico
analgico por onde ela transferida.

11,15,16,15,12,4,1,4,12,14,11,5,6,...

15(1111), 12(1100), 4(0100), 1(0001), ...

1
4
7
*

2
5
8
0

3
6
9
#

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
origem, e a informao novamente
revertida para o sistema analgico
produz oscilaes que movimentam
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.

Sinal chega vai ondas de


rdio, e interpretado
como sinal digital.

1
4
7
*

2
5
8
0

3
6
9
#

Equipamento converte o sinal


digital em ondas analgicas (som).

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.

VOC
SABIA?

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


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

155

156

AUTOMAO INDUSTRIAL

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

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
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

A?B
X

Fonte: Autor

157

158

AUTOMAO INDUSTRIAL

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

A?B
X

0
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

Tabela 7: Principais portas lgicas


Portas Lgicas
Operao

Smbolo

Expresso

OR (ou)
A
B

NOT (no)

A
B

NOR
(no ou)

A
B

(no e)

A
B

exclusivo)

XNOR (no
ou exclusivo)

B
0
1
0
1

X
0
1
1
1

74HC32 (quad 2-input OR gates)


74HC4075 (triple 3-input OR gates)
CD4075 (triple 3-input OR gates)
CD4072 (dual 4-input OR gates)

X=A.B

A
0
0
1
1

B
0
1
0
1

X
0
0
0
1

74HC08 (quad 2-input OR gates)


74HC11 (triple 3-input OR gates)
CD4082 (dual 4-input OR gates)
74HC21 (dual 4-input OR gates)

X=A

A
0
1

X
1
0

X=A+B

A
0
0
1
1

B
0
1
0
1

X
1
0
0
0

74HC00 (quad 2-input NOR gates)


CD4025 (triple 3-input NOR gates)
CD4002 (dual 4-input NOR gates)
CD4078 (single 8-input NOR gates)

X=A.B

A
0
0
1
1

B
0
1
0
1

X
1
1
1
0

74HC02 (quad 2-input NAND gates)


CD4023 (triple 3-input NAND gates)
CD4102 (dual 4-input NAND gates)
CD4058 (single 8-input NAND gates)

X = AO B

A
0
0
1
1

B
0
1
0
1

X
0
1
1
0

74HC85 (quad 2-input XOR gates)


CD4070 (quad 2-input XOR gates)

A
0
0
1
1

B
0
1
0
1

X
1
0
0
1

74LS266 (quad 2-input XNOR gates)


74LS811 (quad 2-input XNOR gates)
CD4077 (quad 2-input XNOR gates)

XOR (ou
A
B

A
0
0
1
1

NAND

X = AB + AB

X = AO B
A
B

Exemplos Comerciais

X=A+B
X

AND (e)

Tabela
Verdade

X = A B + AB

74HC04 (hex inverter)


MC14049 (hex inverter)
CD4049 (hex inverter)

Fonte: Autor

VOC
SABIA?

Portas NOR, NAND, XOR e XNOR so combinaes da


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

FIQUE
ALERTA

Embora haja algumas similiaridades e padronizaes, os


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

159

160

AUTOMAO INDUSTRIAL

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

NOR

X=A+B

A
B

NAND

X=A.B

XOR

X = AO B

XNOR

A
B

X = AB + AB

equivalncia

A
B

A
B

X = AO B
X = A B + AB

A
B

A
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)
A
B

AB

A
B

X =AB

X =AB

AB

A
B

A
B

X =AB

A
X =AB

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

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

A.(B+A)

C=X

A.(B+A)

C=X

no (barrado)

A.(B+A)

C=X

ou exclusivo

A.(B+A)

C=X

ou exclusico negado

A.(B+A)

C=X

prioridade

ou

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

161

162

AUTOMAO INDUSTRIAL

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

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:

163

164

AUTOMAO INDUSTRIAL

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


b)

a)
X

XY

XY

X +Y

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

XY

XY

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
NOT
AND

OR

A
A
B

A
B

Y=A.B

Y = A+B

A
B

Y=A

Y=A.B
Y=A.B

Y=A.B
Y = A+B

B
Fonte: Autor

equivalente nor
A

A
B

A
B

Y=A

Y = A+B
Y=A.B

Y = A+B
Y = A+B

4 Sistemas digitais

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:

VOC
SABIA?

Os diagramas conhecidos como Mapas de Karnaugh foram


desenvolvidos originalmente por Edward Veitch? Mais tarde, o
engenheiro de telecomunicaes Maurice Karnaugh aperfeioouos 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
A

Expresso

F=A.B+A.B

Mapa de Karnaugh
B

b) Funo de trs variveis:


Tabela
Verdade

Expresso

F = A . B . C+ A . B . C+ A . B . C+ A . B . C

Mapa de Karnaugh

Ab

AB

AB

Ab

165

166

AUTOMAO INDUSTRIAL

c) Funo de quatro variveis:


Tabela Verdade

Expresso

F=A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D

Mapa de Karnaugh
C d Cd

cd

cd

Ab

AB

AB

Ab

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

a) Pares ou Duplas
C

AB
0

AB
1

AB
1

AB
0

AB
AB
AB
AB

C
0

C
0

1
0

1
0

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


Obs: Note que nesses dois termos, apenas A varia,
enquanto BC no se altera.
AB
AB
AB
AB

X = A.B

C
1

C
0

0
0

0
0

AB

CD
0

CD
0

CD
1

CD
1

0
0

0
0

0
0

0
0

AB
AB
AB

X = B.C

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

b) Quadras
C

AB
0

AB
0

AB
0

AB
0

X=C
Obs: Note que nesses quatro termos, A e B variam,
enquanto C no se altera.

AB
AB
AB
AB

CD
0

CD
0

CD
0

CD
0

0
0

1
1

1
1

0
0

AB
AB
AB
AB

CD
1

CD
0

CD
0

CD
1

0
0

0
0

0
0

0
0

X = B.D

X = B.D

c) Octetos
AB

CD
1

CD
1

CD
1

CD
1

0
0

0
0

0
0

0
0

AB
AB
AB

X=B
AB

AB
AB
AB

CD
1

CD
0

CD
0

1
1

1
1

0
0

0
0

X=C

CD
0

CD
0

CD
0

CD
0

1
1

1
1

1
1

1
1

AB
AB
AB

AB

CD
1

X=B

d) Agrupamentos Mistos
AB
AB
AB
AB

CD
0

CD
0

CD
0

CD
1

0
0

1
1

1
1

0
0

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

AB
AB
AB
AB

CD
0

CD
0

CD
1

CD
0

1
1

1
1

1
0

1
0

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

167

168

AUTOMAO INDUSTRIAL

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

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
Os Mapas de Karnaugh podem ser utilizados para
VOC
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
00

A=0

BC
DE
0

00

1
17

12

1
1

01

11

10

19
18

1
13

15

11

14
1

01
20

16

11
28

1
29

23

31

25

36
1

10
24

13
9

11

15

14
10

16 17 19 18
20 21 23 22
C 28 29 31 36 d
24 25 27 26

27
26

10
1

12

21

22

48 49 51 50
52 53 55 54
C 60 61 63 62 d
56 57 59 58

32 33 35 34
36 37 39 38
44 45 47 46 d
C 40
41 43 42

Figura 184 - Mapas de Karnaugh para 5 e para 6 variveis


Fonte: Autor

SAIBA
MAIS

Pesquisando sobre programas de edio e simplificao de


expresses booleanas na internet.

4 Sistemas digitais

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

sada Z recebe um dado


de entrada de acordo com o
cdigo na entrada de seleo.

IN

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.

169

170

AUTOMAO INDUSTRIAL

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)

Io

I1

Assim, quando S = 0, a porta 2


habilitada, permitindo que o sinal de
I1 seja enviado para a sada, e a porta 1
desabilitada, fazendo com que I0 no
interfira na sada.

= I0 S + I1 S

Figura 186 - Multiplexador de 2 canais


Fonte: Autor

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.
b)

a)
S0

S1

Sada

Z = I0

Z = I1

Z = I2

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

SAIBA
MAIS

Pesquisando como associar multiplexadores em srie ou


paralelo para formar um multiplexador com um nmero
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)
b)

a)
Entradas

Sadas

I0 I1 I2 I3 I4 I5 I6 I7

s2

s1

s0

S2

I0

I0

I1

I1

I2

I2

S
S0
E

I3

I3

I4

I4

L
L

I5

I5

I6

I6

I7

I7

c)

S2
S1
S0
E

74 x x 151
MUX de 8 Entradas

10

1
4

2
3

3
2

4
1

5
15

6
14

7
13

12

10
11
7

Figura 188 - Multiplexador de 8 entradas - a) Tabela verdade - b) Smbolo lgico - c) Diagrama lgico
Fonte: Autor

VOC
SABIA?

Muitos circuitos digitais possuem entradas que permitem


que o circuito funcione ou no. Essas entradas de controle
so chamadas de entradas de habilitao e podem ser o
terminal de uma porta lgica ou de uma combinao de
portas lgicas.

171

172

AUTOMAO INDUSTRIAL

PORTAS HABILITADAS

PORTAS DESABILITADAS

=A
1= B

X =A =

=A
0=B

X =0

=A
1 =B

X =A =

=A
0=B

X =1

=A
0 =B

X =A =

=A
1= B

X =1

=A
0 =B

X=A =

=A
1= B

X =0

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.
b)

a)
e

Za

Zb

Zc

Zd

I0a

I0b

I0c

I0d

I1a

I1b

I1c

I1d

I1a I1b I1c I1d I0a I0b I0c I0d


S

74 x x 157

Za

c)

I1a

I0a I1b I0b I1c I0c I1d I0d

Zb

Zc

Zd

Figura 190 - Multiplexador qudruplo de 2 entradas 74xx157 - a) Tabela verdade - b) Smbolo lgico - c) Diagrama lgico
Fonte: Autor

4 Sistemas digitais

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.

SAIBA
MAIS

Pesquisando como associar multiplexadores em srie ou


paralelo para formar um multiplexador com um nmero
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

Z2
Z3
ZN

S0

S1

A entrada de dados transmitida


apenas para uma das sadas, de
acordo com a entrada de cdigo
de seleo.

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.

173

174

AUTOMAO INDUSTRIAL

O0
I
O1
S
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

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.

b)

a)
S0

S1

O0

O1

O2

O3

c)

O0 = I . S0 . S1
O1 = I . S0 . S1
O2 = I . S0 . S1
O3 = I . S0 . S1

O0
O1

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

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 194 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.

b)

a)
S2

S1

S0

O7

O6

O5

O4

O3

O2

O1

O0

c)

A2

00

A1

A0

01

O1 = I (S2 . S1 . S0 )
O2 = I (S2 . S1 . S0 )
O3 = I (S2 . S1 . S0 )

O4 = I (S2 . S1 . S0 )
O5 = I (S2 . S1 . S0 )
O6 = I (S2 . S1 . S0 )
O7 = I (S2 . S1 . S0 )

(b)

02

03

04

O0 = I (S2 . S1 . S0 )

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.

175

176

AUTOMAO INDUSTRIAL

Vcc

I
123
E

A2
CDIGOS
DE
SELEO

DECODIF/DEMUX
74 XX 138

A1
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)

DS0
CS1
B
A

7
4
x
x
1

G1I
G2

5
4

S14 5
G1
G2
S15 4

(a)

(a)

D
C
B
A

(...)

7
4
x
x
1

G1I 5
G2 4
Strobe

I
S14
Strobe
S15

INPUTS

S14
G1
G2
S15

5
4

(b)
A

(...)

S14
S15

(b)

S0
7
S1
4
x
(...)
x
1

( 17 )
G1
G2
( 18 )

C C

S0
D
S1
C
B
A

( 22 )

( 21 )

( 20 )

( 19 )

c)

b)

S0
7
S1
4
x
x(...)
1

D
C
B
A

D A

B
C

C
D

G
1

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

(9)

10

( 10 )

11

( 11 )

12

( 12 )

( 13 )

13

( 14 )

14

( 15 )

( 16 )

15

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

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.
b)

a)
ENtradas

Sadas
Strobe

Dado

1g 2g

1
c

2
c

nO0

7
4
X
X
1
5
5

- 1C

Seleo

nO1 nO2 nO3

Strobe

1G
2G

1Ea Ea 0

1 Eb Eb 1

- 1C

1G

A0 A1

Dado

2C

Strobe

O0a

O1a

Ea Ea

O2a O3a

A0 A1

O0b O1b

Eb Eb

O2b O3b

101
102
103
200
201
202
203

A2G B
Seleo

Dado

c)

100

2C

(b)

7
4
X
X
1
5
5

100
101
102
103
200
201
202
203

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.

177

178

AUTOMAO INDUSTRIAL

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
8

100

50
2
psi
bar

150

10
11

Conversores
A/D

Conversores
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

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:
1

11
10
01

analgico

001
000

00

1 bit

111
110
101
100
011
010

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.

179

180

AUTOMAO INDUSTRIAL

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
5.000V
0.000V

CLK

DE

VREF (+)
VREF ( - )

EDC

START

2 -1
-2
2
2 -3

ALE

5V SUPPLY

GROUND

AD0

ADC0808

AD1
AD2

B
C

2 -4

ADC0809

2 -5

DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0

2 -6
Vcc

2 -7

GND

2 -8
In7

MSB

LSB

VIN 8

0 -5V
ANALOG
INPUT RANGE
In0

Figura 200 - Conversor AD muito utilizado, o ADC0808


Fonte: Autor

VIN1

4 Sistemas digitais

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.

VOC
SABIA?

Os microcontroladores so circuitos integrados


programveis, e tambm podem possuir uma ou mais
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.

181

182

AUTOMAO INDUSTRIAL

2R

2R

2R

2R

A
(Va)

3R

B
(Vb)

C
(vc)

D
(Vd)

Vpo
(V)

Vs (v)

0,00

0,00

0,20

0,40

0,40

0,80

0,60

1,20

Exemplo:

0,80

1,60

Se R = 10k, R2 = 20k

1,00

2,00

1,20

2,40

1,40

2,80

1,60

3,20

Se R = 10k, R3 = 30k

1,80

3,60

R3 (pode ser obtido por trs resistores R em srie)

2,00

4,00

2,20

4,40

2,40

4,80

2,60

5,20

sada de comportamento prximo as analgico,

2,80

5,60

com resoluo de 4 bits (16 possobilidades)

3,00

6,00

Vd

Vc

2R
Vb

2R

Vs

Va

R2 (pode ser obrido por dois resistores R em srie)

Vd, Vc, Vb e Va so entradas digitais, Vs uma

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

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 +
4 5 6 x
7 8 9 /
00 0 . =

decimal

codificador

processador
aritmtico

decodificador

binrio

1234567890
CE % +/- 1 2 3 +
4 5 6 x
7 8 9 /
00 0 . =

decimal

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.

SAIBA
MAIS

Discuta com seus colegas sobre a frase que segue: Existem


10 tipos de pessoas: As que conhecem nmeros binrios e as
que no conhecem nmeros binrios.

183

184

AUTOMAO INDUSTRIAL

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.

VOC
SABIA?

A tabela ASCII (acrnimo para American Standard Code for


Information Interchange) um padro de codificao de
caracteres de oito bits baseada no alfabeto ingls, onde os
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

0000

1000

0001

1001

0010

10

1010

0011

11

1011

0100

12

1100

0101

13

1101

0110

14

1110

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

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

1000

0111

0100

(874)10 = (100001110100)BCD
(874)10 = (1101100010)2

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)

185

186

AUTOMAO INDUSTRIAL

a
f

b
c

d
Figura 204 - Display de 7 segmentos
Fonte: Autor

SAIBA
MAIS

Pesquise sobre a diferena entre os displays de 7 segmentos


ANODO COMUM e CATODO COMUM. Observe diagramas
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
ENABLE

02

E2

03

E1

04

ENTRADAS DE
SELEO

A0

05

A2

06

SADA

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

Vcc

123
E

A2

CDIGOS
DE
SELEO

DECODIF/DEMUX
74 XX 138

A1
A0

O0

O1

O2

O3

O4

O5

O6

O7

E1

E2

E3

Sadas

Respondem ao cdigo de entraga A2 A1 A0

Desabilitadas - todas em nvel alto

Desabilitadas - todas em nvel alto

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.

S0
E0
E1

Controlador

Sadas

Entradas

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.

S1
S2
S3

Decodificador

Circuito
amplificador

Motor de passo

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.

187

AUTOMAO INDUSTRIAL

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.

*
*

I M-1*

M entradas com apenas


uma entrada em nvel
ALTO de cada vez

*
*
*

O0
O1
O N-1

N
sadas

I0
I1

Controlador

A Figura 208 a seguir apresenta o diagrama geral de um codificador com M


entradas e N sadas.

M
entradas

Cdigo de sada
de N bits

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
S2

S5
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)

Codificador

188

S4

S3
S2

S5
S6

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

FIQUE
ALERTA

Embora sejam bastante versteis, circuitos integrados


codificadores e decodificadores so meramente circuitos
combinacionais de sinal, e no so adequados para sinais
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
A3
A4
A5
A6
A7

O0 (LSB)
O1
O2 (MSB)

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

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.

189

190

AUTOMAO INDUSTRIAL

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
de circuito de disparo Eccles-Jordan, porm o nome
flip-flop devido ao som produzido em um alto-falante
conectado sada do circuito.

VOC
SABIA?

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)
1

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
R

operaes

observaes

Qanterior Qanterior Conservao

Estabelecimento Sada Q fixa seu valor em 1, independente do


valor anterior.

As sadas mantm seus estados anteriores.

Restaurao

Sada Q fixa seu valor em 0, independente do


valor anterior.

Proibido

Combinao proibida para biestveis RS.


Fonte: Autor

4 Sistemas digitais

Outro circuito possvel para a construo de um flip-flop RS assncrono pode


ser implementado utilizando-se portas NAND, como mostrado abaixo:
a)

b)

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

Combinao proibida para biestveis RS.

Proibido

Estabelecimento Sada Q fixa seu valor em 1, independente do


valor anterior.

Restaurao

Qanterior Q anterior Conservao

Sada Q fixa seu valor em 0, independente do


valor anterior.
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)
Q

CLK

CLK

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.

191

192

AUTOMAO INDUSTRIAL

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

CLK R

operaes

observaes

Qanterior Q anterior Inibio

As sadas permanecem inalteradas.

Qanterior Q anterior Conservao

As sadas mantm seus estados anteriores.

Estabelecimento Sada Q fixa seu valor em 1, independente do


valor anterior.

Restaurao

Sada Q fixa seu valor em 0, independente do


valor anterior.

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)

CLK

(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

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

Qanterior Q anterior As sadas permanecem inalteradas.

Qanterior Q anterior As sadas mantm seus estados anteriores.

Sada Q fixa seu valor em 0, independente do


valor anterior.

Sada Q fixa seu valor em 1, independente do


valor anterior.

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
x
CLK

CLK

Q
Q

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 flipflop 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.

193

194

AUTOMAO INDUSTRIAL

Quando a entrada de clock do circuito est em nvel lgico baixo (CLK = 0), o flipflop 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 flipflop mestre escavo, e na Figura 217, seu smbolo lgico.
Tabela 20: Verdade para o flip-flop RS sncrono
Entradas

sadas

observaes

CLK

Qanterior Q anterior As sadas permanecem inalteradas.

Qanterior Q anterior As sadas mantm seus estados anteriores.

Sada Q fixa seu valor em 0, independente do valor anterior.

Sada Q fixa seu valor em 1, independente do valor anterior.

Q anterior Qanterior As sadas se complementam

Fonte: Autor

J
CLK

Figura 217 - Smbolo lgico de um flip-flop JK mestre-escravo


Fonte: Autor

VOC
SABIA?

Um flip-flop sncrono pode ser sensvel borda de descida


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)

CLK

CLK

Transio
negativa

Transio
positiva

Figura 218 - Flip-flop sensvel borda


Fonte: Autor

4 Sistemas digitais

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)
x

CLK

CLK

PR

CLK
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
J

observaes

PR

CL

CLK

Clear ativo: Sada Q fixa seu valor em 0, independente das demais entradas.

Preset ativo: Sada Q fixa seu valor em 1, indepedente das demais entradas.

Qanterior Q anterior As sadas mantm seus estados anteriores.

Sada Q fixa seu valor em 0, independente do


valor anterior.

Sada Q fixa seu valor em 1, independente do


valor anterior.

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.

195

AUTOMAO INDUSTRIAL

a)

b)

CLK

CLK

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

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)

Q
CLK

CLK

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)

Boto
13
12
11

10

14

2
3

R1
1k5

Rel

5V
Diodo

196

Transistor
NPN

Figura 222 - Circuito com Flip-Flop J-K aplicado configurao de Toggle. CI utilizado: 74xx73
Fonte: Autor

4 Sistemas digitais

Analisando o circuito implementado, com base no funcionamento de um flipflop JK, podemos obter a seguinte tabela verdade. (Tabela 23)
Tabela 23: Verdade para o flip-flop tipo T
Entradas

sadas

CLK

Qanterior Q anterior

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

197

198

AUTOMAO INDUSTRIAL

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

Anotaes:

199

Microcontroladores

5
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.

202

AUTOMAO INDUSTRIAL

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

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
MAIS

Pesquisando na internet sobre a aplicao dos


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.

203

204

AUTOMAO INDUSTRIAL

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

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.

205

206

AUTOMAO INDUSTRIAL

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

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

32its

Funcionalidade

b
16-

PIC32

dsPIC33
dsPIC30

PIC24H
PIC24F
s
-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.

207

208

AUTOMAO INDUSTRIAL

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

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:

209

210

AUTOMAO INDUSTRIAL

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)

PLCC

QFP

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
(MHz)

RESET (OV)

5V

PORTC

PORTE

PORTA

A0
A1
A2
A3
A4
A5
E0
E1
E2

C0
C1
C2
C3
D0
D1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

PIC16F877
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
PORTD

B7
B6
B5
B4
B3
B2
B1
B0

D7
D6
D5
D4
C7
C6
C5
C4

D3
D2

PORTC

5V

PORTB

Figura 225 - Microcontrolador PIC16F877A I/P e seus principais pinos de alimentao, conexo e I/O
Fonte: Autor

5 Microcontroladores

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.

211

212

AUTOMAO INDUSTRIAL

Enquanto na Automao Industrial a maior parte dos


dispositivos sensores e atuadores atuam em padres
digitais de tenso 24V, nos microcontroladores os nveis
de tenso no podem ultrapassar 5V, sob risco de danos
permanentes ao componente.

FIQUE
ALERTA

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 pulldowns 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)
CRISTAL(MHz)

RESET (OV)

5V
ANO

AN1

AN2

AN3

AN4

CONT

AN5

AN6

AN7

PWM

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

PIC16F877
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
ICSP

GRAVADOR

RX (RS232)

TX (RS232)

5V

Figura 226 - Microcontrolador PIC16f877A e alguns dos terminais de funes especiais


Fonte: Autor

5 Microcontroladores

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.

FIQUE
ALERTA

A letra F presente no nome do microcontrolador PIC


identifica que o microcontrolador em questo utiliza a
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.

213

214

AUTOMAO INDUSTRIAL

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

Software programador

*.HEX

Programa fonte

PIC

C++
Compter

PIC

*.C

Circuito programador
Microcontrolador
***

Programador

Aplicao

***

PC

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
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

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 InCircuit 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)

215

216

AUTOMAO INDUSTRIAL

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

>+17V

D1
1N4001
C1
10u

PL1
PL2

1
14
2
15
3
1b
4
17
5
18
6
19
7
20
8
21
9
22
10
23
11
24
12
25
13

Programador TAIT, criado por David Tait em 1996


IN
C2
100n

U1
OUT
7805
COM

+5V
14
C3
U3
100n
7
9

D0
D1
D2
D3

ACK

OUT +13V
U2
78L12
COM
D2
1N4148
D3
1N4148
U3c
R2
7407
10k
R1
5
6
Q2
4k7
PNP
13
12

U3d
7407

C4
100n
8

4k7

IN

U3f
7407

C6
100n

MCLR

R5
10k

R4

R6

1k2
D4

MCLR
GND

5V
PGD
PGC
PIC
VDD

R3
10k

C5
100n

R7
10k

Q1
PNP

R8
10k

U3a
7407
2

1 D0

RB7 11

10 ACK
U3e
7407

R9
10k
RB6

R10
10k

U3b
7407
4

3 D1

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

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.

SAIBA
MAIS

pesquisando sobre circuitos gravadores para


microcontroladores na internet. Verifique que alguns
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 noambguas. 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.

217

218

AUTOMAO INDUSTRIAL

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

Anote um valor numrico, positivo e inteiro, no superior a 100. Vamos chamar este
valor de T.

Crie uma varivel chamada V1, com valor inicial de zero.

Crie uma varivel chamada V2, com valor inicial de zero.

Crie uma varivel chamada V3, com valor inicial de zero.

Crie uma varivel chamada V4, com valor inicial de zero.

Crie uma varivel chamada V5, com valor inicial de zero.

Crie uma varivel chamada V6, com valor inicial de zero.

Se T for inferior a 50, pule para o passo 12.

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

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.

219

220

AUTOMAO INDUSTRIAL

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
temperatura
>45C?
NO

SIM

ligar
ventilao

temperatura
<40C?
NO

SIM

ligar
aquecimento

desligar
ventilao
desligar
aquecimento

Figura 230 - Fluxograma


Fonte: Autor

5 Microcontroladores

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.

221

222

AUTOMAO INDUSTRIAL

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

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
01101001010101
00101011011111
11110101010010
10100101111010

VAR1 = VAR2 * 10;

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.

223

224

AUTOMAO INDUSTRIAL

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

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.

SAIBA
MAIS

3) SDCC: Small Device C Compiler Gratuito e de cdigo


aberto (open-source). O problema que para PIC ainda
est em desenvolvimento, e necessrio integrar a
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)

225

226

AUTOMAO INDUSTRIAL

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

FIQUE
ALERTA

Observe o nome do arquivo (com extenso C) e a


pasta onde ele ser gravado. nesta pasta que, aps a
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)
{
output_high(PIN_C0);
delay_ms(1000);
output_low(PIN_C0);
delay_ms(1000);
}

// funao principal
// PINO C0 para nvel alto
// atraso (delay) de 1000 ms
// PINO C0 para nvel baixo
// 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)

227

228

AUTOMAO INDUSTRIAL

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

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

229

AUTOMAO INDUSTRIAL

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).

29
30

28

27

22

19
20
21

Figura 235 - Hardware criado em um simulador de circuitos eletrnicos


Fonte: Autor

PIC 16F877A
PROGRAM=PROG1.HEX.

MCLR/Vpp/THV

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7

24

23

RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
10 RE2/AN7/CS

RC2/CCP1 17
RC3/SCK/SCL 18
RE1/AN6/WR
9

RC1/T1OSI/CCP2 16

RE0/AN5/RD
8

RC0/T1OSO/T1CKI 15

RB6/PGD 40
RA5/AN4/SS/C2OUT

RB6/PGC 39

RB5 38

RA1/AN1

RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/TOCKI/C1OUT
5

RA0/AN0

RB3/PGM 36
RB4 37
3

OSC2/CLKOUT

RB0/INT 33
RB1 34
RB2 35
OSC1/CLKIN

14

25
26

D1
LED-RED

R = 470 ohms

13

230

5 Microcontroladores

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.

SAIBA
MAIS

Procure adicionar linhas para realizar outros acionamentos,


mudando tambm os tempos, sempre lembrando de
compilar e transferir novamente o programa para realizar
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>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// define valor de clock para delays

void main(void)

{
output_high(PIN_C1);
delay_ms(1000);
output_low(PIN_C1);
retorno:

output_high(PIN_C0);
delay_ms(1000);

output_low(PIN_C0);
delay_ms(1000);

goto retorno;

}

// funo principal
// PINO C1 para nvel alto
// PINO C1 para nvel baixo
// define um rtulo chamado retorno
// PINO C0 para nvel alto
// atraso(delay) de 1000 ms
// PINO C0 para nvel baixo
// atraso(delay) de 1000 ms
// volta para retorno

// ========================= fim do programa ==========================

No programa acima, observamos que so controlados dois pinos, o C0 e C1.

231

232

AUTOMAO INDUSTRIAL

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
4
5

RA1/AN1
RA2/AN2/VREF-/CVREF

RA3/AN3/VREF+
RA4/TOCKI/C1OUT

RA5/AN4/SS/C2OUT

RB4 37

RB6/PGC 39
RB6/PGD 40
RC0/T1OSO/T1CKI 15

RE0/AN5/RD

RE1/AN6/WR

10 RE2/AN7/CS

MCLR/Vpp/THV

Este LED ficar piscando

RB5 38

RC1/T1OSI/CCP2 16

R1
470

LED - RED

RC2/CCP1 17
RC3/SCK/SCL 18
RC4/SDI/SDA

23

RC5/SDO 24
RC6/TX/CK 25
RC7/RX/DT 26
RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3

D1

R2

Este LED ir LIGAR e


DESLIGAR uma vez incio

D2

330

LED - BLUE

19
20
21
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>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// 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

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.

233

234

AUTOMAO INDUSTRIAL

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

#include <16f877.h>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// define valor de clock para delays

void main(void)

{
output_high(PIN_C1);
delay_ms(1000);
output_low(PIN_C1);
while(true)

{
output_high(PIN_C0);
delay_ms(1000);

output_low(PIN_C0);
delay_ms(1000);

}
}

// funo principal
// PINO C1 para nvel alto
// PINO C1 para nvel baixo
// estrutura de repetio incondicional
// PINO C0 para nvel alto
// atraso(delay) de 1000 ms
// PINO C0 para nvel baixo
// 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.

FIQUE
ALERTA

Um programa bem organizado, alinhado e com


comentrios facilita modificaes e testes, evitando perda
de tempo e facilitando o trabalho em equipes, onde mais
de um programador deve trabalhar em um mesmo sistema
ou programa.

235

236

AUTOMAO INDUSTRIAL

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

13

OSC1/CLKIN

RA0/AN0

RA1/AN1

RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/TOCKI/C1OUT

14 OSC2/CLKOUT

RE0/AN5/RD

RA5/AN4/SS/C2OUT

RE1/AN6/WR

10 RE2/AN7/CS

MCLR/Vpp/THV

PIC 16F877A

RB6/PGD

RB6/PGC

RB5

RB4

RB3/PGM

RB1
RB2

RB0/INT

16

15

40

39

38

37

36

35

33

34

RC1/T1OSI/CCP2

RC0/T1OSO/T1CKI

18

17

RC2/CCP1
RC3/SCK/SCL

23
24

26

25

RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT

19
20
21

22

27

29
30

28

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7

R1

330

330

R2

R3

330

R4

330

R5

330

R6

330

LED_VERMELHO 1

LED_AMARELO 1

LED_VEDE1

LED_VERMELHO 2

LED_AMARELO 2

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:

237

238

AUTOMAO INDUSTRIAL

#include <16f877.h>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// define valor de clock para delays

void main(void)

{
output_c(0b00001001);
delay_ms(10000);

while(true)

{
output_c(0b00001100);
delay_ms(30000);
output_c(0b00001010);
delay_ms(10000);
output_c(0b00100001);
delay_ms(30000);
output_c(0b00010001);
delay_ms(10000);
}
}

// funo principal
// vermelho nos dois semforos
// 10 segundos
// define um rtulo chamado retorno
// abre semforo 1
// 30 segundos
// amarelo no semforo 1 (c3 liga)
// 10 segundos
// vermelho no semaf.1, e verde no semaf.2
// 30 segundos
// amarelo no semaf. 2
// 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

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 antihorrio de acordo com duas entradas digitais conectadas a chaves tcteis (botes).

1N4007

Microcontrolador conectado a um motor de passo unipolar e a duas


chaves tcteis. (Figura 238)

5V

1N4007

BoT2

5V

BoT1

12V

10k

10k

12V

1N4007

C0
C1
C2
C3
D0
D1

1N4007

12V

12V

1k

1k

1k

1k

TIP 122

+12V

TIP 122

TIP 122

TIP 122

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).

239

240

AUTOMAO INDUSTRIAL

#include <16f877.h>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// 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

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.

SAIBA
MAIS

Pesquisando sobre a quantidade de memria RAM e


ROM disponvel em microcontroladores da Microchip
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:

241

242

AUTOMAO INDUSTRIAL

#include <16f877.h>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// define valor de clock para delays

void main(void)

{
int amostras = 0;
long contaparcial = 0;
long contatotal = 0;
while(true)

{
while(!input(PIN_D0));
delay_ms(10);

while(input(PIN_D0));
delay_ms(10);


contaparcial ++;

if (contaparcial >= 1000)
{

output_high(PIN_C0);
amostras ++;

if (amostras == 5)
{

output_high(PIN_E2);
amostras = 0;

}

contaparcial = 0;

}

else

{

output_low(PIN_E2);
output_low(PIN_C0);
}

contatotal ++;

}
}

// funo principal
// declara varivel de 8 bits p/ inteiros
// declara varivel de 16 bits p/ inteiros
// declara varivel de 16 bits p/ inteiros
// lao principal
// repete linha enquanto no houver sinal em D0
// tempo de 10 ms
// repete linha enquanto D0 estiver acionado
// tempo de 10 ms
// aumenta varivel contaparcial
// se contador for superior ou igual a 1000
// incio
// liga C0 (cilindro de remoo da amostra)
// conta amostra
// se for a quinta amostra
// incio
// liga sirene
// zera contador de amostras
// fim
// zera contador parcial
// fim
// seno (se contaparcial for inferior a 1000)
// incio
// desliga sirene
// desliga cilindro de remoo da amostra
// fim
// 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

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:

243

244

AUTOMAO INDUSTRIAL

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;
int32 dAUX;
float fVLR;

00110100
10010010
10100101
10111101
10101110
10101011
10101010
10101011
10101001
01010101
10111101
10101010
10101111
10101010
10101010

iA
iB
IVAR
dAUX
fVLR

int = 8bits. Inteiros de 0 a 255 ou -128 e 127


long = 16bits. Inteiros de 0 a 65535 ou -32768 a 32767
int32 = 32bits. Inteiros de 0 a 4.294.967.295 ou
-2.147.483.648 a 2.147.483.647
float = 32bits. Ponto flutuante (valores com virgula). Funciona
como notao cientcica. Possui grande abrangncia, mas no
garante preciso.

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/
Nome
alternativo

Quantidade Menor
alocada em valor
bits
suportado

Maior
valor
suportado

short

255

16

65.535

32

4.294.967.295

int1
boolean
int
int8
long
int16
long long
int32
Fonte: Autor

5 Microcontroladores

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/
Nome
alternativo

Quantidade Menor
alocada em valor
bits
suportado

Maior
valor
suportado

signed int

-128

127

16

-32.768

32.767

32

-2.147.483.648

2.147.483.647

signed int8
signed long
signed int16
signed long long
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
float

Quantidade alocada em bits


32

245

246

AUTOMAO INDUSTRIAL

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
char

Quantidade alocada em bits


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
void

Quantidade alocada em bits


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

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>
#use delay (clock=20000000)

// inclui arquivo de cabealho


// define valor de clock para delays

int total = 100;

// declara varivel global

void pisca(int qtde)



{

while(qtde > 0)

{

output_high(PIN_C0); delay_ms(total);
output_low(PIN_C0); delay_ms(total);
qtde --;

}

}

// declara funo chamada PISCA com 1 parmetro


// inicio da funo
// enquanto qtde for > que 0 ...
// incio
// nvel alto em C0 e tempo de total ms
// nvel baixo em C0 e tempo de total ms
// 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 ============================

247

248

AUTOMAO INDUSTRIAL

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

14

OSC2/CLKOUT

RA0/AN0

RA1/AN1

4
6

RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/TOCKI/C1OUT

RA5/AN4/SS/C2OUT

RE0/AN5/RD

RE1/AN6/WR

10

RE2/AN7/CS

MCLR/Vpp/THV

RB0/INT

33

RB1
RB2

34

RB3/PGM

36

R3 330

RB4

37

R4 330

RB5

38

RB6/PGC

39

R5 330

RB6/PGD

40

RC0/T1OSO/T1CKI

15

RC1/T1OSI/CCP2

16

RC2/CCP1
RC3/SCK/SCL

17

RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT

23
24

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7

19
20
21

R1 330
R2 330

35

R6 330
R7 330

18

25
26

22

BOT +

BOT -

27
28
29
30

PIC 16F877A
PROGRAM = 7 SEGMENTOS.cof

Figura 240 - Tipos de dados complexos


Fonte: Autor

5 Microcontroladores

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>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// 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)

{

signed int nro = 0;
while(1)

{

if (input(PIN_D0))

{

nro ++;

delay_ms(300);

}

if (input(PIN_D1))
{

nro --;

delay_ms(300);

}

if (nro < 0) nro = 9;
if (nro > 9) nro = 0;
digito(nro);

}

}

// funo principal
// incio da funo principal
// declara varivel local, s visvel em main
// lao infinito
// incio do lao infinito
// se D0 (BOT+) estiver em nvel alto...
// incio
// incrementa nro
// delay de 300 ms
// fim bloco condicional
// se D1 (BOT-) estiver em nvel baixo...
// incio
// incrementa nro
// delay de 300 ms
// fim bloco condicional
// se nro for menor que 0, atribui 9 a nro
// se nro for maior que 9, atribui 0 a 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];

249

250

AUTOMAO INDUSTRIAL

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.

SAIBA
MAIS

Faa uma busca na internet sobre o uso de matrizes


bidimensionais e estruturas (structs) em linguagem C.
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

Tabela 30: Operadores

Atribuio e prioridade

Categoria

Operador

Ao

Atribuio int x = 5;
(recebe)

Exemplos

x = 20;
a = x + y / 2;
x=y=z=105;

()

Prioridade

x = 20 * (y

Obs.

A atribuio simbolizada por um nico sinal


de igual, e indica que tudo o que est a sua
direita ser computado, resolvido e a soluo
obtida ser armazenada na rea de memria
(varivel) indicada a sua esquerda. Recomendamos ler este sinal como RECEBE. Portanto,
leia a linha var2 = 20 como var2 recebe 20.

+ 1);

Em uma expresso, os parnteses indicam


o que ser executado prioritariamente. No
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.

Aritmticos

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


resto da diviso do primeiro termo pelo
segundo. Por exemplo, o resto da diviso
de 20 por 6 2.

Incre-

x ++;

mento

y = ++ x * 5;

Operador que atua em um nico operando. Ao ser escrito ao lado direito de uma
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 --;

mento

y = x -- / 9;

diviso
(somente
inteiros)
++

--

Operador que atua em um nico operando,


similar ao ++, porm decrementando a varivel 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 depois de ser utilizada na expresso. Operador
restrito ao uso com tipos de dados inteiros,
como int, long, shor, long long.

251

AUTOMAO INDUSTRIAL

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
(1) se o primeiro operando for maior que o
segundo, e (0) caso contrrio.

x = a > b;

Relacionais

>=

<
<=

==

Maior ou

if (a >= b) ...;

igual a

x = a >= b;

Menor

if (a < b) ...;

que

x = a < b;

Menor ou

if (a <= b) ...;

igual a

x = a <= b;

Igual

if (a == b) ...;
x = a == b;

!=

Diferente

if (a != b) ...;

&&

E (AND)

if ((a > b) &&

x = a != b;
(a > c)) ...;
x = (a && c);
OU (OR)

Lgicos

||

if ((a > b) || (a
> c)) ...;
x = (a || c);

NO

if

(NOT)

(!input(PIN_
D3))...;
x = !a;

Bit a Bit

252

Retorna (1) se o primeiro operando for


maior ou igual ao segundo. Caso contrrio,
retorna (0).
Retorna (1) se o primeiro operando for menor
que o segundo, e (0) caso contrrio.
Retorna (1) se o primeiro operando for
menor ou igual ao segundo. Caso contrrio,
retorna (0).
Retorna (1) se o primeiro operando for igual
ao segundo, e (0) se for diferente.
Retorna (1) se o primeiro operando for diferente que o segundo, e (0) se for igual.
Retorna verdadeiro (1) somente se o primeiro
operando for verdadeiro e o segundo operando tambm for verdadeiro.
Retorna verdadeiro (1) se pelo menos um dos
operandos for verdadeiro. Se ambos forem
falso (0), o valor retornado ser falso (0).
Retorna o valor lgico invertido. O operador
NO inverte o valor lgico em um teste. Se o
operando for diferente de zero (verdadeiro),
o operador retorna falso. Se for igual a zero
(falso), o operador retorna verdadeiro.

&

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

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 ativar somente os quatro bits mais significativos
de um byte, basta utilizar da seguinte forma:
x = x | 0b11110000

5 Microcontroladores

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
do primeiro valor estiver ligado e o bit n
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.

x = ~a;

Inverte o valor de todos os bits.~ 01100101


= 10011010 x = ~x equivale a x = x ^
0b11111111.

RIGHT
SHIFT
(Deslocamento
de bits
para
direita)

x = a >> 1;

Desloca os bits para a direita, um determinado nmero de casas. til para realiar rotaes
binrias em PORTs conectados a dispositivos
que precisam ser acionados em sequncia,
como motores de passo. 11000101 >> 1 =
01100010 11000101 >> 2 = 00110001

LEFT
SHIFT
(Deslocamento
de bits
para esquerda)

x = a << 1;

exclusivo)

Bit a Bit

NOT
(NO)

>>

<<

x = a >> b;

x = a << 2;

Desloca os bits para a esquerda, um determinado nmero de casas. Da mesma forma


que o RIGHT SHIFT, o LEFT SHIFT pode ser
til para rotaes binrias em acionamentos
realizados sequencialmente, como motores de passo. 11000101 << 1 = 10001010
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

253

254

AUTOMAO INDUSTRIAL

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

...
long A;
int B, X;


X = A * B;

// na declarao das varivies:

// no meio do programa, aps algumas instrues


// modificarem os valores de A e 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

long X;
int A, B;


X = A * B;

// na declarao das varivies:

// no meio do programa, aps algumas instrues


// modificarem os valores de A e 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.

255

256

AUTOMAO INDUSTRIAL

varivel do
tipo LONG
16bits

variveis do
tipo INT
8bits

X = A * B;
X=

01011010

rea temporria,
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
X = (long)A * B; 8bits
16bits

X=

0101101001011010

rea temporria,
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

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.

FIQUE
ALERTA

O uso de modeladores permite ao operador definir


comportamentos distintos s variveis durante a execuo.
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.

SAIBA
MAIS

Pesquise sobre compiladores ladder para microcontroladores


na internet. Compare trechos de programas escritos em
ladder com programas escritos em linguagem C, e aponte
vantagens e desvantagens de cada linguagem.

257

258

AUTOMAO INDUSTRIAL

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);
delay_ms(1000);
output_low(PIN_C2);
...

// C2 em nvel alto
// tempo de 1 segundo
// 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
temperatura
>45C?
NO

SIM

ligar
ventilao

temperatura
<40C?
NO

SIM

ligar
aquecimento

desligar
ventilao
desligar
aquecimento

Figura 243 - Fluxograma


Fonte: Autor

5 Microcontroladores

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;
}

259

260

AUTOMAO INDUSTRIAL

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

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.

261

262

AUTOMAO INDUSTRIAL

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
ALERTA

No adicione o sinal de ponto e vrgula aps o fechar


parnteses da condio do IF. Isso trunca a instruo,
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

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

5V C. C.

13

OSC1/CLKIN

14

OSC2/CLKOUT

RA0/AN0

RA1/AN1

4
5

RA2/AN2/VREF-/CVREF

RA3/AN3/VREF+
RA4/TOCKI/C1OUT

RA5/AN4/SS/C2OUT

RE0/AN5/RD

RE1/AN6/WR

10

RE2/AN7/CS

33

RB1

34

RB2

35

330

RB3/PGM

36

RB4

37

R2

RB5

38

330

RB6/PGC

39

RB6/PGD

40

R3

RC0/T1OSO/T1CKI

15

330

RC1/T1OSI/CCP2

16

RC2/CCP1

17

RC3/SCK/SCL

18

RC4/SDI/SDA

23
24

RC5/SDO
1

R1

RB0/INT

RC6/TX/CK

MCLR/Vpp/THV

RC7/RX/DT

R4
330

R5

25
26

330

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3

19
20
21

R6

22

RD4/PSP4

27

330

RD5/PSP5

28

R7

RD6/PSP6
RD7/PSP7

29
30

330

PIC 16F877A
PROGRAM = 7 SEGMENTOS.cof
BOT -

R8
330

R10
10K

BOT +

R9
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.

263

264

AUTOMAO INDUSTRIAL

#include <16f877.h>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// 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

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)

repetir
incondicionalmente
ficar repetindo enquanto
o valor de X for inferior a 12
ficar repetindo enquanto
no houve nvel alto em D0

void main(void)
{
int x;
while (true)
{
while (!input(PIN_D0));
x = 0;
while (x < 12)
{
output_high(PIN_E 0);
delay_ms(100);
output_low(PIN_E 0);
delay_ms(100);
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.

265

266

AUTOMAO INDUSTRIAL

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

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();
} while(dado != S && dado != N);

//busca valor UART, armazenando na varivel dado

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...
}

267

268

AUTOMAO INDUSTRIAL

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;
...
AUX = 0;
while(AUX < 10)
{T
output_high(PIN_D0);
delay_ms(100);
output_low(PIN_D0);
delay_ms(100);
AUX ++;
}
output_high(PIN_C4);

// varivel declarada
// varivel deve ser inicializada
// enquanto valor de AUX for < que 10

// AUX incrementado

Vejamos o mesmo exemplo com o uso da estrutura FOR.


...
int AUX;
...
for (AUX=0; AUX<10; AUX ++)
{
output_high(PIN_C0);
delay_ms(100);
output_low(PIN_C0);
delay_ms(100);
}
output_high(PIN_C4);
...

// inicializao; teste; incremento

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

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

14

OSC2/CLKOUT

RA0/AN0

RA1/AN1

R4
1K

R5
10K

RB1 34
RB2 35

RA3/AN3/VREF+
RA4/TOCKI/C1OUT

RA5/AN4/SS/C2OUT

R2

RB4 37
RB5 38
RB6/PGC 39

330

RB6/PGD 40

R3

RC0/T1OSO/T1CKI 15

330

RC1/T1OSI/CCP2 16

RE0/AN5/RD

RE1/AN6/WR

RC3/SCK/SCL

10 RE2/AN7/CS

RC4/SDI/SDA

330

RB3/PGM 36

RA2/AN2/VREF-/CVREF

R1

RB0/INT 33

RC2/CCP1 17
18
23

RC5/SDO 24
RC6/TX/CK 25
RC7/RX/DT 26

MCLR/Vpp/THV

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3

19
20
21
22

RD4/PSP4 27
RD5/PSP5 28

PIC 16F877A
PROGRAM = sonoro-hex

RD6/PSP6 29
RD7/PSP7 30

BOT 2

R10
10K

BOT 1

Figura 246 - Chamadas a funes/sub-rotinas


Fonte: Autor

R9
10K

269

270

AUTOMAO INDUSTRIAL

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>

#use delay (clock=20000000)

// inclui arquivo de cabealho


// 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;

while(true)

{
if (input(PIN_D0))
{
beep();

conta = 0;

}
if (input(PIN_D1))
beep();

conta ++;

if (conta == 100)

{
beep();

conta = 0;

}
else

{
output_high(PIN_C0);
delay_ms(100);
output_low(PIN_C0);
delay_ms(400);
}
}
}

// declara varivel de 8 bits


// lao infinito
// se BOT1 ...
// chama subrotina BEEP
// zera varivel
// se BOT2 ...
// chama subrotina BEEP
// incrementa varivel
// se varivel for igual a 100
// chama subrotina
// zera varivel
// seno
// pisca C0 (LED)

5 Microcontroladores

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.

271

AUTOMAO INDUSTRIAL

LCD2

7
8
9
10
11
12
13
14

D0
D1
D2
D3
D4
D5
D6
D7

RS
RW
E

4
5
6

1
2
3

VSS
VDD
VEE

LM016L

U1

272

VDD

13

OSC1/CLKIN

14

OSC2/CLKOUT

RA0/AN0

RA1/AN1

4
6

RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/TOCKI/C1OUT

RA5/AN4/SS/C2OUT

RE0/AN5/RD

RE1/AN6/WR

10 RE2/AN7/CS

MCLR/Vpp/THV

RB0/INT

33

RB1
RB2

34

RB3/PGM
RB4

36

RB5

38

35

RB6/PGC

39

RB6/PGD

40

RC0/T1OSO/T1CKI

15

RC1/T1OSI/CCP2

16

RC2/CCP1
RC3/SCK/SCL

17

RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT

23

RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7

VDD

37

24V

R3
1K

R1

VDD

470K

18

RL1

24
25
26

5V

D1

19
20
21

LED-BLUE

22
27

Q1

28

BC542

29
30

PIC 16F877A
PROGRAM = sonoro-hex

R2

MOTOR DA ESTEIRA

10K

R6
10K

R4
10K

R5
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

Segue o programa sugerido:


#include <16f877.h>

#use delay (clock=20000000)
#define use_portb_lcd true
#include <lcd.c>

// inclui arquivo de cabealho


// define valor de clock para delays
// define que ser usado display no PORTB
// inclui biblioteca de uso do LCD 16x2 da CCS

void gira(int qtde)


{
output_high(pin_c0);
while(qtde > 0)
{
printf(lcd_putc,\fGirando: %u, qtde);
while(input(PIN_D7));

while(!input(PIN_D7));

qtde --;

}
output_low(pin_c0);
}

// declara funo chamada GIRA, que recebe um parmetro (int)


// liga motor da esteira

// escreve qtde no display


// aguarda sensor da polia enviar sinal 0
// aguarda sensor da polia enviar sinal 1
// diminui varivel recebida como parmetro
// 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.

273

274

AUTOMAO INDUSTRIAL

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.

FIQUE
ALERTA

A informao passada funo durante a passagem de


parmetros por contedo somente o contedo. Alterando
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

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.

FIQUE
ALERTA

Embora no seja muito comum em estudos iniciais


com linguagens de programao, o uso de ponteiros
na linguagem C pode tornar os programas muito mais
eficientes, porm, em caso de erro, podemos alterar valores
em outras reas de memria, causando efeitos inesperados
durante a execuo do programa.

275

276

AUTOMAO INDUSTRIAL

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

5V
14
B7
B6
B5
B4
B3
B2
B1
B0

D7

D6

D5

D4

EN

RS

RW

CONTRASTE
0 ... 5V

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 prdeterminados. 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.

277

278

AUTOMAO INDUSTRIAL

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...);
lcd_putc(\nsegunda linha);

Limpando . . .
segunda linha

lcd_putc(\fTestX);
lcd_putc(\be);

Teste

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

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
#use delay (clock=20000000)
#define use_portb_lcd true
#include <lcd.c>
void main()
{
contando - > 1
int CONTA = 0;
lcd_init();
while(true)
{
printf(lcd_putc,\fcontando -> %u, CONTA);
CONTA = CONTA + 1;
delay_ms(300);
}
}

contando - > 2

contando - > 3

...

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.

279

280

AUTOMAO INDUSTRIAL

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

efeito deste linha:

string (delimitada
por aspas duplas)

especificador de formato

contando - > 2

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

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

281

282

AUTOMAO INDUSTRIAL

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

RELOGIO 03:23

CONT. TOTAL: 13145


CONT. PARC.:
32

printf (lcd_putc,\fTESTE\n12345);

printf (lcd_putc,\fRELOGIO %02u: %02u, HORA, MINUTO);

printf (lcd_putc,\fCont.Total: %5lu\nCont.Parc.:


%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

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
SERIAL

1 F

1 F
1 F
C6
C7

TX
RX

1 F

MAX232C

PIC16F877A

5V
DB9 DB9
MACHO FMEA

DB9
DB9
FMEA MACHO

1 F

Figura 254 - Esquema de ligao de um MAX232 a um microcontrolador e uma porta serial padro DB9
Fonte: Autor

283

284

AUTOMAO INDUSTRIAL

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)
void main(void)
{
printf(\n\rOla mundo!);
while(true)
{

}
}

// conf rs232

// envia dados pela serial. /n=nova linha, /r=retorno col 1


// 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

#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();
if (PORTD != PORTD_ANT)
{
if (input(PIN_D0)) putchar(A);
if (input(PIN_D1)) putchar(B);
PORTD_ANT = PORTD;
}
if (kbhit())
{
AUX = getch();
switch(AUX)
{
case A : output_high(PIN_C0);
break;
case B : output_low(PIN_C0);
break;
}
}
}
}

// busca valor do PORTD


// detecta se houve mudana no PORTD
// se D0, envia letra A via rs232
// se D1, envia letra B via rs232
// registra mudana
// se houver dados para receber no buffer de entrada rs232

// le dado (byte)
// caso seja um caractere A, poe C0 em 5V
// caso seja um caractere B, poe C0 em 0V

// 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.

285

286

AUTOMAO INDUSTRIAL

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.

SAIBA
MAIS

Pesquisando na folha de dados do componente sobre


mudanas nas referncias de tenso para a converso AD no
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)

0 a 5 Volts
0 a 5 Volts
0 a 5 Volts
0 a 5 Volts

AN0 PIN_A0
AN1 PIN_A1
AN2 PIN_A2
AN3 PIN_A3

0 a 5 Volts
0 a 5 Volts
0 a 5 Volts
0 a 5 Volts

AN4 PIN_A5
AN5 PIN_E0
AN6 PIN_E1
AN7 PIN_E2

1
2
3
4
5
6
7
8
9
10
11
12
13

40
39
38
37
36
35
34
33
32
31
30
29
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

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.

287

288

AUTOMAO INDUSTRIAL

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

LM =
35dz

ANO

1
2
3
4
5
6
7
8
9
10
11
12
13

40
39
38
37
36
35
34
33
32
31
30
29
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 mantla 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

Para facilitar a utilizao, o programa que segue usa uma sub-rotina para
realizar a aquisio da informao.
//-----------------------#include <16f877.h>
#device ADC=10

#use delay (clock=20000000)
#define use_portb_lcd true
#include <lcd.c>

long AD(int CANAL)
{
long AUXILIAR;

enable_interrupts(GLOBAL);
setup_adc_ports(ALL_ANALOG);
setup_adc(ADC_CLOCK_INTERNAL);
set_adc_channel(CANAL);
delay_us(100);

AUXILIAR = read_adc();

setup_adc_ports(NO_ANALOGS);
return(AUXILIAR);

}

// define que a converso AD ser de 10 bits


// inclui biblioteca de LCD
// inclui biblioteca de LCD
// declara funo (subrotina) usada para ler entrada analgica
//Declara uma varivel de 16 bits
//Habilita uso de interrupo para converso AD
//Habilita todas as analgicas(A0,A1,A2,A3,A5,E0,E1,E2)
//Configurao do clock do conversor AD
//Congigurao do canal do conversor AD
//Tempo para selecionar canal, recomendado pela microchip
//Faz a leitura e armazena na varivel AUXILIAR
//Desativa entradas analgicas
//Retorna valor analgico lido

//*********************** funo principal ***********************************


void main()
{
long LIDO;

float TEMP;

lcd_init();

while(1)
{
LIDO = AD(0);

TEMP = 500 * (float)LIDO / 1023;

// declara uma varivel inteira 16 bits


// declara varivel de ponto flutuante
// inicializa LCD

// l AD canal 0. Usa a funo acima descrita


// implementando funo TC = 500 * (AD/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.

289

290

AUTOMAO INDUSTRIAL

5V
LDR
AN1

1K2

1
2
3
4
5
6
7
8
9
10
11
12
13

40
39
38
37
36
35
34
33
32
31
30
29
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

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)

Microcontrolador

+24V C.C.
R1
C1

D1
R2

Motor

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.

291

292

AUTOMAO INDUSTRIAL

Veja o exemplo abaixo:


#include <16f877.h>

#use delay (clock=20000000)

// porque vamos usar um PIC16F877 ou PIC16F877A


// 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>
#use delay (clock=20000000)
void main()
{
long TEMPO_PULSO = 0;

while(1)

{
output_c(0x01010101);
delay_us(TEMPO_PULSO);
output_c(0x10101010);
delay_us(1024 TEMPO_PULSO);
if (input(PIN_D0)) TEMPO_PULSO = 0;
if (input(PIN_D1)) TEMPO_PULSO = 200;
if (input(PIN_D2)) TEMPO_PULSO = 400;
if (input(PIN_D3)) TEMPO_PULSO = 800;
if (input(PIN_D4)) TEMPO_PULSO = 1023;
}
}

// porque vamos usar um PIC16F877 ou PIC16F877A


// Importante que o valor do CLOCK esteja correto

// varivel que determina tamanho do pulso ligado


// lao infinito

// Se A1 acionado, tamanho do pulso zero


// Se A2 acionado, tamanho do pulso 200
// Se A2 acionado, tamanho do pulso 400
// Se A2 acionado, tamanho do pulso 800
// Se A2 acionado, tamanho do pulso 1023

5 Microcontroladores

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 prdefinido 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.

293

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/corsoprogrammazione-pic-in-c-lezione-1-cose-un-microcontrollore-caratteristiche-note-introduttivecome-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-reguladorespotencia/>. 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 do Sistema FIERGS
Jos Zortea
Diretor Regional e Membro Nato do Conselho Regional do SENAI-RS
DIRETORIA SENAI-RS

Jos Zortea

Diretor Regional

Carlos Heitor Zuanazzi

Diretor Administrativo e Financeiro

Carlos Artur Trein

Diretor de Operaes

Claiton Oliveira da Costa


Coordenao Geral do Desenvolvimento do Programa no
Departamento Regional

Daniel Corteletti
Elaborao
Giancarllo Josias Soares
Reviso Tcnica
Enrique S. Blanco
Fernando R. G. Schirmbeck
Luciene Gralha da Silva
Maria de Ftima R.de Lemos
Design Educacional

i-Comunicao
Projeto Grfico

Brbara V. Polidori Backes


Camila J. S. Machado
Rafael Andrade
Ilustraes
Brbara V. Polidori Backes
Tratamento de imagens e Diagramao
Enilda Hack
Normatizao

Regina M. Recktenwald
Reviso Ortogrfica e Gramatical

ISBN 978-85-7519-531-4

9 788575 195314