Sei sulla pagina 1di 47

FACULDADES LOGATTI

ENGENHARIA ELTRICA

DTMF APLICADO AUTOMAO RESIDENCIAL

JOO RICARDO VIEIRA RICARDO COLOMBO

ORIENTADOR: Marcos Mantese

ARARAQUARA - SP 2010

JOO RICARDO VIEIRA RICARDO COLOMBO

DTMF APLICADO AUTOMAO RESIDENCIAL

Trabalho de concluso de curso apresentado s Faculdades Integradas Logatti, como parte dos requisitos para obteno do titulo de graduao em ENGENHARIA ELTRICA. Orientador: Marcos Mantese

ARARAQUARA - SP 2010

DEDICATRIA

Dedicamos este trabalho primeiramente a Deus, a nosso orientador Marcos Mantese e a todas as pessoas que nos incentivaram de alguma maneira.

AGRADECIMENTOS
Agradecemos a Deus por nos dar sade e disposio, a faculdades Logatti, aos nossos professores, as nossas famlias e a todos que nos ajudaram e nos motivaram de alguma maneira.

RESUMO

Este trabalho aborda uma tecnologia em automao residencial distncia, usando as comunicaes telefnicas pelo protocolo DTMF, e com alguns componentes especficos se pode ter um controle de alguns perifricos totalmente distncia.

Palavras-chave: automao e DTMF.

ABSTRACT
This work discusses a technology about remotely homes automation, using the telephone communications by the DTMF protocol, and with some specific components it can have control of some peripherals totally by distance.

Keywords: Automation and DTMF.

LISTA DE FIGURAS
Figura 1-1 - Redes de Controle em Automao .................................................................................... 15 Figura 2-1 - Tecla 1 ................................................................................................................................ 20 Figura 2-2 - Tecla 2 ................................................................................................................................ 20 Figura 2-3 - Tecla 3 ................................................................................................................................ 20 Figura 2-4 - Tecla 4 ................................................................................................................................ 21 Figura 2-5 - Tecla 5 ................................................................................................................................ 21 Figura 2-6 - Tecla 6 ................................................................................................................................ 21 Figura 2-7 - Tecla 7 ................................................................................................................................ 22 Figura 2-8 - Tecla 8 ................................................................................................................................ 22 Figura 2-9 - Tecla 9 ................................................................................................................................ 22 Figura 2-10 - Tecla 0 .............................................................................................................................. 23 Figura 2-11 - Tecla * .............................................................................................................................. 23 Figura 2-12 - Tecla # .............................................................................................................................. 23 Figura 2-13 - Grfico das teclas ............................................................................................................. 24 Figura 2-14 - Equao 1 ......................................................................................................................... 24 Figura 2-15 - Equao 2 ......................................................................................................................... 24 Figura 2-16 - Soma da senide de 697 Hz com 1209 Hz ....................................................................... 25 Figura 3-1 - Microcontrolador PIC 16F877A da MicroChip ................................................................... 26 Figura 3-2 - MCUs de 8-bit, 16-bit e 32-bit .......................................................................................... 27 Figura 3-3 - Arquitetura Harvard ........................................................................................................... 30 Figura 3-4 - Imagem do Programa MPLAB da MicroChip...................................................................... 35 Figura 3-5 - Kit Gravador PIC USB.......................................................................................................... 36 Figura 4-1 - Algoritmo do Programa DTMF ........................................................................................... 37 Figura 4-2 - Diagrama de Blocos do Programa DTMF ........................................................................... 38 Figura 4-3 - Pinagem do PIC16F628a .................................................................................................... 40 Figura 4-4 - Diagrama de blocos PIC16F628a........................................................................................ 40

Figura 4-5 - Esquema de ligao do circuito integrado MT8870 .......................................................... 41 Figura 4-6 - Saturao forte, transistor como chave............................................................................. 42 Figura 4-7 - Esquema Eltrico do Projeto DTMF ................................................................................... 43 Figura 4-8 - Programao Parcial em Liguagem C ................................................................................. 44

LISTA DE TABELAS
Tabela 2-1 - Dgitos das Frequncias Altas e Baixas .............................................................................. 19 Tabela 3-1 - Famlias PICs pelo tamanho da palavra da memria de programa. ................................. 28

LISTA DE SIGLAS
DTMF CPU I/O DDD PIC RAM EPROM EEPROM UART USART CISC RISC SISC Dual Tone Multi-Frequency Unidade Central de Processamentos Entrada e Sadas Discagem Direta Distncia Periphecal Interface Controler Random Acess Memory Erasable Programmable Read-only Memory Electrically-Erasable Programmable Read-Only Memory Universal Asynchronous Receiver/Transmitter Universal Synchronous Asynchronous Receiver/Transmitter Complex Instruction Set Computer Reduced Instruction Set Computer Specific Instruction Set Computer

SUMRIO Sumrio
1 AUTOMAO RESIDENCIAL ............................................................................. 13
1.1 1.2 1.3 1.4 1.5 1.6 1.6.1 2.1 2.1.1 2.1.2 2.1.3 2.2 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 Introduo................................................................................................................................... 13 Objetivo Geral ............................................................................................................................. 13 Objetivo Especfico...................................................................................................................... 13 Justificativa.................................................................................................................................. 13 Tecnologia ................................................................................................................................... 14 Automao Residencial ............................................................................................................... 14 Principais Solues de Automao Residencial........................................................................ 16 Histria ........................................................................................................................................ 17 Telefone.................................................................................................................................... 17 A Inveno da Discagem Direta ................................................................................................ 18 Como Funciona ......................................................................................................................... 18 DTMF ........................................................................................................................................... 19 Histria dos Microcontroladores ................................................................................................ 27 Alimentao ................................................................................................................................ 29 Definio da CPU......................................................................................................................... 30 Arquitetura Interna ..................................................................................................................... 30 UART ........................................................................................................................................... 31 USART.......................................................................................................................................... 31 Memria de Programa ................................................................................................................ 31 Pilha ou Stack .............................................................................................................................. 32 Organizao da Memria de Dados ............................................................................................ 32

2 DTMF .................................................................................................................... 17

3 MICROCONTROLADOR PIC ............................................................................... 26

3.10 Portas de Entrada/Sada ............................................................................................................. 32 3.11 Oscilador ..................................................................................................................................... 33 3.12 Pipeline ....................................................................................................................................... 33 3.13 Reset ........................................................................................................................................... 33 3.14 Watchdog Timer (WDT) .............................................................................................................. 33 3.15 A Escolha do Microcontrolador .................................................................................................. 34 3.16 Compilao e Gravao .............................................................................................................. 35 3.16.1 MPLAB ...................................................................................................................................... 35 3.16.2 O Gravador ............................................................................................................................... 36

4 ALGORITMOS E PROGRAMAO .................................................................... 37

4.1 4.1.1 4.2 4.3 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.8

Algoritmo .................................................................................................................................... 37 Linguagem de Programao ..................................................................................................... 39 Programa do Microcontrolador .................................................................................................. 39 Hardware .................................................................................................................................... 41 MT8870 .................................................................................................................................... 41 Circuito Eletrnico .................................................................................................................... 41 Transistor .................................................................................................................................. 41 Transistor como Chave ............................................................................................................. 42 Hardware .................................................................................................................................. 43 Programao Interrupo Externa ........................................................................................ 44 Programao Interrupo por Mudana de Estado .............................................................. 44 Programa em Linguagem C ................................................................................................... 44

5 CONCLUSO ....................................................................................................... 45

13

1 AUTOMAO RESIDENCIAL
1.1 Introduo

Com o avano da tecnologia e o barateamento de materiais necessrios para a produo em grande escala para produtos eletrnicos de alta tecnologia, as residncias esto cada vez mais modernas. [1] Segundo Bolzani (2004), entre as comodidades da automao residencial esto funes como ligar ou desligar lmpadas, abrir ou fechar portes automticos, acionar a bomba da piscina ou o sistema de irrigao do jardim, ligar aquecedores, saunas ou aparelhos de ar condicionado e ligar ou desligar diversos outros equipamentos que no exigem interferncia humana para funcionar, incluindo cafeteiras, torradeiras, abajures, exaustores e outros.

1.2

Objetivo Geral

O objetivo geral desse trabalho projetar um circuito eletrnico para controlar dispositivos distncia, usando o protocolo DTMF (Dual Tone MultiFrequency).

1.3

Objetivo Especfico

O objetivo especfico controlar dispositivos distncia usando um meio de transmisso telefnico atravs do protocolo DTMF, que so os tons do teclado numrico de um telefone, configurado na opo multifrequencial, usando microcontrolador para ler, processar e executar as tarefas, mostrando as vantagens e desvantagens que esse protocolo poder proporcionar.

1.4

Justificativa

Cada vez mais pessoas e empresas buscam solues tecnolgicas para seus bens e produtos, poder controlar qualquer que for o dispositivo sem ter que estar no local, pode ser bem interessante quanto econmico. Empresas podem monitorar seus funcionrios distncia, dando a eles ou no acesso a determinados

14

locais de trabalho, acionando dispositivos como lmpadas e equipamentos eltricos distncia.

1.5

Tecnologia

A tecnologia algo absolutamente presente na nossa vida que nem sequer damos conta da velocidade de sua evoluo. [1] O uso da tecnologia esta cada vez mais transparente, deixando at de ser algo complexo de se operar. Entretanto qualquer que seja a tecnologia, ela s se torna transparente aos olhos dos usurios quando esta tudo funcionando corretamente, pois no momento que ocorre alguma falha no servio percebe-se que se trata de uma tecnologia implantada. [2]

1.6

Automao Residencial

Automao residencial o uso da tecnologia para facilitar e tornar automticas algumas tarefas habituais em sua residncia ou rea de trabalho, com sensores de presena, temporizadores, rels ou at mesmo uma simples ligao de um celular ou telefone fixo para que seja realizada determinada funo programada em sua residncia, possvel acionar tarefas pr-programadas, trazendo maior praticidade, segurana, economia e conforto para o morador, antes no imaginado pelo fato de ser facilmente adaptado a qualquer atividade domstica ou de seu trabalho. Essa tecnologia expansvel e flexvel, onde o prprio morador ser beneficiado desta automao, causando diminuio de suas tarefas rotineiras, ganho de tempo e tambm pela prpria proteo. Com o planejamento adequado possvel implantar diversas redes que se destinam as inmeras aplicaes, deste modo possvel observar a existncia de inmeras redes de controle para cada funo de sua casa, prdio ou rea comercial (empresas, lojas, etc.). Estas redes, sendo vistas de maneira ampla, permite o desenvolvimento de sistemas complexos. [2]

15

Figura 1-1 - Redes de Controle em Automao

Segundo Teruel (2009), a automao residencial surgiu a partir da industrial no final da dcada de 70, quando empresas percussoras como a X10 Corp e Leviton comearam a desenvolver produtos para a arquitetura residencial, porm ao contrrio do ambiente industrial, nas residncias no havia espao para grandes centrais de controle nem para extensos cabeamentos, o que impulsionou vrias empresas como Cisco, Intel, Motorola, Philips entre outras a desenvolverem dispositivos dedicados ao ambiente residencial. A partir da dcada de 90 acontece o grande avano nas tecnologias de automao residencial. A utilizao de controles remotos programveis com comunicao por infravermelho ou radiofrequncia tornou o controle de um sistema de automao residencial bem mais amigvel e prtico. Unido a isso, o surgimento e o posterior barateamento da internet banda larga aliada evoluo das telecomunicaes, comunicao sem fio e a popularizao do celular e dos computadores portteis criou todas as condies necessrias para a concretizao da casa conectada por meio da internet.

16

Existe hoje no mercado uma gama enorme de solues de automao residencial com caractersticas diversificadas que na maioria das vezes executam funes semelhantes.

1.6.1 Principais Solues de Automao Residencial

Segundo Teruel (2009), as solues de automao residenciais mais modernas e que apresentam melhor custo/benefcio so as que utilizam as tecnologias Zigbee e Z-Wave. Essas solues possuem comunicao por radiofrequncia e so indicadas tanto para residncias j construdas quanto em fase de projeto. Para aquelas j construdas, essas solues so ideais, pois no necessitam de custosas intervenes na parte fsica da residncia para sua instalao. Alm disso, a qualquer momento o usurio pode adquirir novos dispositivos e conect-los a rede de automao domstica sem complicao. Z-Wave uma tecnologia desenvolvida especialmente para automao residencial por uma empresa dinamarquesa conhecida como Zensys. Hoje trabalham no desenvolvimento da tecnologia empresas gigantes como Intel e Cisco. Zigbee uma tecnologia recente, est sendo desenvolvida por um grupo de empresas como a Honeywell, Philips, Samsung, Motorola, Cisco System, Eaton, Crestron, Legrand, LG, NEC, Epson e Texas Instruments, que tem como principal caracterstica o baixo consumo de energia.

17

2 DTMF
DTMF a sigla em ingls de Dual-Tone Multi-Frequency, os tons de duas frequncias utilizados na discagem dos telefones mais modernos. Nos primeiros telefones a discagem era feita atravs de um disco que gerava uma sequncia de pulsos na linha telefnica (discagem decdica ou discagem usando sinalizao decdica). Ao se ocupar a linha, o lao (loop) era fechado e, ao se efetuar a discagem, ocorriam aberturas peridicas deste lao, tantas vezes quanto o nmero discado: para a discagem do 1, uma abertura, para a discagem do 2, duas aberturas, e assim sucessivamente at o 0 (zero) que, na verdade, significa 10 aberturas. Com o advento dos telefones com teclado, das centrais telefnicas mais modernas e com a disseminao dos filtros (primeiro os analgicos, depois os digitais), passou-se utilizao multifrequencial, uma combinao de tons para discagem (DTMF). [3]

2.1

Histria

Quando os colonos norte-americanos declararam sua independncia em 1776, a notcia precisou de 48 dias para cruzar o Oceano Atlntico. A chegada do telgrafo em 1843 e do telefone em 1876 possibilitou que notcias chegassem a qualquer lugar do mundo quase instantaneamente. [4]

2.1.1 Telefone

Em 1856, o italiano Antonio Santi Giuseppe Meucci construiu um telefone eletromagntico que denominou telettrofono para conectar seu escritrio ao seu quarto, localizado no segundo andar da casa, pois sua esposa sofria de reumatismo. Porm devido a dificuldades financeiras, Meucci apenas conseguiu pagar a patente provisria de sua inveno. Acabou vendendo o prottipo do telefone a Alexander Graham Bell, que, em 1876, patenteou a inveno como sua. Meucci o processou, mas acabou falecendo durante o julgamento e o caso foi encerrado. Assim, Graham Bell foi considerado durante muitos anos como inventor do telefone. O trabalho de Meucci foi reconhecido postumamente em 11 de junho de

18

2002, quando o Congresso dos Estados Unidos aprovou a resoluo N.269, estabelecendo que o inventor do telefone fora, na realidade, Antonio Meucci e no Alexander Graham Bell. [5]

2.1.2 A Inveno da Discagem Direta

No incio, as conexes de telefone eram feitas por operadores que ligavam plugues em dispositivos. Em 1889, na cidade de Kansas, EUA, o empresrio Almon Strowger descobriu que a operadora local, casada com o empresrio que era seu rival nos negcios, transferia as ligaes dos seus clientes para o marido. Strowger inventou a primeira central telefnica automtica, uma central controlada de modo remoto que podia conectar um telefone a qualquer outro por meio de pulsos eltricos sem a necessidade de um operador. [4] Em 1896, Keith e os irmos Erickson desenvolveram um sistema que eliminou tambm a necessidade de apertar os botes vrias vezes, substituindo-os por um sistema que enviava sequncias de pulsos do aparelho do usurio para a central: o disco.

2.1.3 Como Funciona

Quando o disco era girado, produzia uma srie de pulsos eltricos por meio de uma mola que acoplada a ele, acionava duas placas metlicas que ficavam na parte interna do sistema. Acionadas, as placas que se encostavam e afastavam sucessivamente, funcionavam da mesma forma que os interruptores de boto quando pressionados vrias vezes. Para discar, uma pessoa tinha que girar o disco at uma posio de um nmero e solt-lo. Nesse momento, uma mola fazia o disco voltar a sua posio inicial, estabelecendo uma sucesso de contatos eltricos que, enviados central telefnica, tinham o mesmo efeito que produzido no antigo sistema, quando o primeiro boto era pressionado um determinado nmero de vezes. Ao girar o disco pela segunda vez, repetia-se todo o processo o que equivalia a apertar o segundo boto uma srie de vezes. Alm de facilitar a vida dos usurios, este sistema reduziu tambm o nmero de fios que ligavam cada aparelho central telefnica e com isso, os custos. [6]

19

2.2

DTMF

A sinalizao DTMF foi desenvolvida nos laboratrios Bell (Bell Labs) visando permitir a discagem DDD, que usa enlaces sem fio como os de micro-ondas e por satlite. As frequncias destes tons e suas combinaes so mostradas na tabela abaixo:

Hz 697 770 852 941

1209 1 4 7 *

1336 2 5 8 0

1477 3 6 9 #

1633 A B C D

Tabela 2-1 - Dgitos das Frequncias Altas e Baixas

Na tabela acima so mostradas as frequncias altas na linha superior e as baixas na coluna mais esquerda. No centro os nmeros do teclado. Nos teclados dos telefones so mostrados apenas os nmeros de 1 a 0 e os caracteres * e #. A frequncia de 1633 hertz (e consequentemente os algarismos A,B,Ce D) utilizada apenas internamente entre equipamentos de teste e medida. O tom de discagem final, que enviado central, a frequncia obtida do batimento da frequncia alta e baixa de uma certa tecla, por exemplo, para a tecla 1 o tom enviado a soma de uma senide na frequncia de 1209Hz com uma outra senide de 697Hz. Na central o sinal eltrico constantemente analisado para detectar a presena simultnea de uma das frequncias baixas e uma das frequncias altas, quando ento a tecla do cruzamento destas duas frequncias identificada pela central. A escolha destas frequncias se deve principalmente pela baixa probabilidade de se produzir estas combinaes de frequncias com a voz humana. [3]

20

As figuras abaixo mostram graficamente a combinao das frequncias de cada tecla:

Figura 2-1 - Tecla 1

Figura 2-2 - Tecla 2

Figura 2-3 - Tecla 3

21

Figura 2-4 - Tecla 4

Figura 2-5 - Tecla 5

Figura 2-6 - Tecla 6

22

Figura 2-7 - Tecla 7

Figura 2-8 - Tecla 8

Figura 2-9 - Tecla 9

23

Figura 2-10 - Tecla 0

Figura 2-11 - Tecla *

Figura 2-12 - Tecla #

24

Figura 2-13 - Grfico das teclas

Para gerar os sinais superpostos que formam o DTMF so utilizadas as seguintes equaes:

Figura 2-14 - Equao 1

Onde a relao entre as relaes entre as amplitudes dada na equao abaixo

Figura 2-15 - Equao 2

25

Figura 2-16 - Soma da senide de 697 Hz com 1209 Hz

26

3 MICROCONTROLADOR PIC
Microcontrolador um circuito integrado programvel que contm todos os componentes de um computador, como CPU (Unidade Central de Processamento), memria para armazenar programas, memria de trabalho, portas de entrada e sada para comunicar-se com o mundo exterior, sistemas de controle de tempo interno e externo, conversores analgicos e digitais, UART e USART de comunicao e outros. [7] O PIC um componente eletrnico pertencente classe dos microcontroladores programveis de arquitetura Harvard e conjunto reduzido de instrues (RISC). Em sntese, um microcomputador completo, consistindo de uma memria RAM, memria no-voltil EEPROM, memria de programa, controladores de Entrada e Sada (I/O) digital e analgica (opcional) em torno de uma CPU com um conjunto reduzido de instrues, dentro de um nico chip. Pode se controlar qualquer coisa ou estar includas unidades de controle para:

Mquinas pneumticas e hidrulicas comandadas; Mquinas dispensadoras de produtos; Motores e temporizadores; Sistemas autnomos de controle, incndio, umidade e temperatura; Telefonia, automveis, medicina, etc. [7] A simplicidade, disponibilidade e o baixo custo so os principais

atrativos do PIC.

Figura 3-1 - Microcontrolador PIC 16F877A da MicroChip

27

3.1

Histria dos Microcontroladores

Em 1965, a GI Microelectronics deus seus primeiros passos, fabricando memrias EPROM e EEPROM. Desenhou no incio dos anos 70 o microprocessador de 16 bits CP1600, que trabalhava bem, mas de forma ineficaz no controle de portas de entrada e sada. Para resolver este problema, em 1975 desenhou-se um chip destinado a controlar portas de entrada e sada. Nascia, assim, o PIC (Peripherical Interface Controler). Com estrutura muito mais simples que um processador, ele podia manejar as entradas e sadas com muita facilidade, rapidez e eficincia. Uma das razes do sucesso do PIC base de sua utilizao, ou seja, quando se aprende a trabalhar com um modelo, fica fcil migrar para outros modelos, j que todos tm uma estrutura parecida. Um dos grandes fabricantes de microcontroladores a Microchip, que tem sua principal fbrica em Chandler, Arizona, onde so fabricados e testados os ltimos lanamentos. Em 1993 foi construda outra fbrica no Tempe, Arizona, que tambm conta com centros de fabricao em Taiwan e na Tailndia. Para se ter uma idia de sua produo, s da famlia 16CSX de aproximadamente um milho de unidades semanais. Cada tipo de microcontrolador serve para um propsito, e cabe ao projetista selecionar o melhor microcontrolador para o seu trabalho. [7] Existem basicamente trs famlias de PICs diferenciadas pelo tamanho da palavra da memria de programa: 12, 14 e 16 bits. Todos estes dispositivos possuem um barramento interno de dados de oito bits.

Figura 3-2 - MCUs de 8-bit, 16-bit e 32-bit

28

O aumento no tamanho da palavra de programa possibilita um aumento no nmero de instrues: os PICs de 12 bits possuem 33 instrues, os de 14 bits, 35 instrues e os de 16 bits, at 77 instrues. Uma maior quantidade de instrues possibilita uma maior flexibilidade e eficincia na programao, mas com a contrapartida de oferecer um maior nvel de dificuldade ao aprendizado. Observe a tabela abaixo com alguns exemplos de cada famlia 12 Bits 12C508 12C509 12CE518 12CE519 16C54 16C55 16C56 16C57 16C58 16C505 16HV540 14 Bits 12C671 12C672 12CE673 12CE674 14000 16C55x 16F62x 16C7x 16F7x 16F8x 16F87X 16 Bits 17C4x 17C75x 17C76x 18C2xx 18C4xx 18C858 18F242 18F252 18F258 18F442 18F458

Tabela 3-1 - Famlias PICs pelo tamanho da palavra da memria de programa.

Em seguida destacamos algumas caractersticas bsicas do desenho interno desses MCUs:

Capacidade de pipeline (enquanto executa uma instruo, o processador busca a prxima instruo na memria, de forma a acelerar a execuo do programa); Capacidade de execuo de uma instruo por ciclo de mquina (as instrues que provocam desvio no programa so executadas em dois ciclos de mquinas). Observe que um ciclo de mquina no PIC equivale a quatro ciclos de clock;

29

Cada instruo ocupa sempre apenas uma posio de memria de programa (devido largura do barramento de dados da memria de programa ser maior, justamente para acomodar uma instruo inteira em apenas uma posio de memria); Tempo de execuo fixo para todas as instrues (com exceo das instrues de desvio). Devido ao fato de cada instruo do PIC ocupar apenas uma instruo de memria, o tempo de execuo fixo, facilitando a determinao do tempo de execuo de um programa. [8]

Os princpios gerais que regem a arquitetura PIC (sries 12, 14 e 16) so: Um registrador de intercmbio geral, tambm chamado de registrador de trabalho (W); Um registrador destinado a armazenar flags resultantes de operaes matemticas, lgicas, etc. chamado STATUS; Um registrador destinado ao controle de interrupes, chamado INTCON; Registradores destinados manipulao de dados nas portas (PORT ou GPIO).

3.2

Alimentao

Normalmente, o PIC alimentado com uma tenso de 5,0 volts proveniente de uma fonte DC com regulao positiva. Um regulador 7805 ou 78L05 pode ser utilizado para tal funo, lembrando que 78L05 tem capacidade de suprir at 100mA, no devendo exceder 80% deste consumo para no aumentar muito o aquecimento do regulador. O consumo de corrente do microcontrolador mnimo. Ele consome menos de 2,0mA com 5,0 volts, trabalhando a 4MHz, ou 15,0 micro amp com 3,0 volts, trabalhando a 32KHz. Quando em modo standby, consome menos de 1,0 micro amp com 3,0 volts. No entanto, devemos ver o consumo dos outros componentes do circuito. [7]

30

3.3

Definio da CPU

As CPUs, dependendo do tipo de instruo que utilizam, podem ser classificadas em:

CISC (Complex Instruction Set Computer) processadores com conjunto de instrues complexas. Dispem de um conjunto com elevado nmero de instrues, algumas sofisticadas e potentes. Em contrapartida, requerem muitos ciclos de mquina para executar as instrues complexas. RISC (Reduced Instruction Set Computer) processadores com conjunto de instrues reduzido. SISC (Specific Instruction Set Computer) processadores com conjunto de instrues especficas. [7]

3.4

Arquitetura Interna

Entende-se por arquitetura interna (representada por blocos) a forma como o circuito construdo, ou seja, como suas partes internas se interligam. Podemos definir os PICs como sendo Arquitetura Harvard, onde a CPU interligada memria de dados (RAM) e memria de programa (EPROM) por um barramento especfico. [7]

Figura 3-3 - Arquitetura Harvard

31

A arquitetura interna do PIC do modelo Harvard, que dispe de memrias de dados e de programas. Cada memria dispe de seu respectivo BUS. Isto permite que a CPU possa acessar de forma independente a memria de dados e a de instrues. Como as vias (BUS) so independentes, elas podem ter contedos distintos na mesma direo. A separao da memria de dados da memria de programa faz com que as instrues possam ser representadas por palavras com mais de 8 bits. Assim, o PIC usa 14 bits para cada instruo, o que permite que todas as instrues ocupem uma s palavra de instruo. Na sua arquitetura ortogonal, qualquer instruo pode utilizar qualquer elemento da arquitetura como fonte ou destino. Todo o processo baseia-se em banco de registros, onde todos os elementos do sistema (temporizadores, portas de entrada/sada, posies de memrias, etc.) esto implementados fisicamente como registros. O manejo do banco desses registros que participam ativamente na execuo das instrues torna-se muito interessante ao ser ortogonal. [7]

3.5

UART

UART (Universal Asynchronous Receiver/Transmitter) serve para a comunicao serial RS232 do PIC.

3.6

USART

USART (Universal Synchronous Asynchronous Receiver/Transmitter) um protocolo de comunicao universal e possui dois modos distintos de trabalho: o sincronizado e o no sincronizado.

3.7

Memria de Programa

A memria para armazenamento de programas nos PICs das sries 12, 14 e 16 interna, isto , est embutida na pastilha do MCU, porm alguns dispositivos das sries 17 e 18 podem funcionar com memrias de programa externas. [8]

32

O PIC contm um registrador denominado PC (Program Counter), implementado com 13 bits e capaz de enderear at 8K de programa. Ao incrementar ou alterar o contedo do PC, o microcontrolador obtm um mapa seguro de onde se est e para onde se deve ir. [7]

3.8

Pilha ou Stack

Outra estrutura encontrada no interior dos PICs a pilha (em ingls Stack) que nada mais do que uma estrutura de dados normalmente localizada na memria RAM e que caracteriza por apresentar apenas um ponto de acesso aos seus dados denominado topo da pilha (em ingls TOS-Top of Stack). [8] A pilha uma memria, independente da memria de dados e da memria de programa, com estrutura LIFO (Last In First Out), onde o ltimo dado a entrar ser o primeiro a sair. [7]

3.9

Organizao da Memria de Dados

A memria de dados divide-se em quatro bancos, contendo os registros de propsitos gerais (GPR) e os registros de funes especiais (FSR). [7] Os registros que afetam a CPU so: STATUS, OPTIONS, INTCON, PIE1, PIR, PCON. [7]

3.10 Portas de Entrada/Sada

No microcontrolador, as linhas de comunicao de entrada/sada de dados (I/O) so chamadas de portas. PORTx utilizado para a leitura ou escrita de informaes nos pinos externos do PIC. No PIC16F62x encontramos 16 portas de entrada/sada (I/O). Estas portas esto divididas em dois grupos (A e B), ambos com 8 portas. O grupo A chamado de PORTA e o grupo B de PORTB. A identificao de cada porta se d atravs da letra R seguida da letra identificadora do grupo (A ou B) e do nmero da porta, que se inicia em zero. Ex.: RA0, RA1, RA2, RB0, RB1, RB2. [7] TRISx utilizado para controle da direo de funcionamento de cada pino da porta (se entrada ou sada). [8]

33

3.11 Oscilador

Para seu funcionamento, todo microcontrolador ou microprocessador necessita de um sinal de relgio (clock) para faz-lo oscilar, j que todas as operaes internas ocorrem em perfeito sincronismo. No PIC, o clock tem quatro fases, chamadas Q1, Q2, Q3 e Q4. Estas quatro pulsaes concluem um ciclo de mquina (instruo), durante o qual uma instruo executada. Internamente, o contador de programa (PC) incrementado a cada ciclo Q1, onde a instruo requisitada da memria de programa para ser armada na instruo registrada em Q4. A instruo decodificada e executada no perodo Q1 a Q4. [7]

3.12 Pipeline O processo pipelining uma tcnica de segmentao que permite ao microcontrolador fazer a busca de uma instruo num determinado ciclo de mquina e realizar a sua decodificao e execuo no ciclo seguinte. [7]

3.13 Reset

O vetor RESET leva o microcontrolador a reiniciar seus registros para valores iniciais pr-definidos na fabricao. Um dos mais importantes efeitos de um reset o que zera o contador de programa (PC), fazendo com que o programa comece a ser executado a partir da primeira instruo do software programado. No PIC 16F62x existem alguns tipos de reset, so eles: reset normal, reset Power-on (POR), Power-up timer (PWRT), Brown-out detect (BOD), reset por transbordamento de WDT. [7]

3.14 Watchdog Timer (WDT)

A traduo deste termo no faz sentido, mas ele pode ser entendido como co de guarda. Trata-se de um contador preciso de 8 bits, que atua como temporizador e tem o objetivo de vigiar o microcontrolador, impedindo que este entre em alguma rotina ou instabilidade, que o faria trabalhar em um loop infinito ou parar de responder. Para que o software no seja resetado a cada estouro de WDT, deve-

34

se limp-lo em perodos de tempos inferiores ao calculado para o estouro, utilizandose a instruo CLRWDT ou SLEEP, sendo que esta ltima colocar o microcontrolador em repouso. [7]

3.15 A Escolha do Microcontrolador

O primeiro passo determinar qual a menor arquitetura capaz de atender os requisitos do sistema. A escolha da linguagem de programao poder causar impacto no desempenho do sistema e, dessa forma, tambm influenciar na seleo da arquitetura. Para aplicao em escalas, o custo sistema pode ser o critrio mais importante. A frequncia do barramento, ou clock, determina a taxa de execuo de processamento em um perodo de tempo do microcontrolador. A determinao do clock necessrio para o sistema importante para a escolha do microcontrolador a ser utilizado. Os recursos embutidos no chip do microcontrolador permitem obter maior grau de integrao e confiabilidade com um custo menor. Quanto mais recursos presentes no microcontrolador, menor ser a necessidade de circuitos externos, o que significa maior confiabilidade. Se a idia for desenvolver um projeto que apresente uma longa vida til importante escolher um microcontrolador que tenha flexibilidade e variedade de perifricos. O mesmo se aplica se o desenvolvimento for destinado a uma plataforma com muitas variaes de produto final. Nestes casos tambm ser importante que a troca do modelo do microcontrolador no exija mudanas significativas no hardware. A escolha do modelo do microcontrolador mais adequado para um projeto no uma atividade simples e representa compromissos que podem se mostrar limitantes no futuro. [9]

35

3.16 Compilao e Gravao

3.16.1 MPLAB

O MPLAB uma ferramenta da MicroChip para a edio de software, simulao e at mesmo para a gravao do microcontrolador. Ele tem a funo de auxiliar no desenvolvimento de projetos, facilitando assim a vida do projetista. Esta ferramenta distribuda gratuitamente pela MicroChip, podendo ser baixada na internet diretamente do site do fabricante (www.microchip.com). O MPLAB integra em uma nica ferramenta: um editor de programa fonte, compilador, simulador e, quando conectado s ferramentas da MicroChip, tambm o gravador PIC, o emulador, etc. O programa fonte digitado ser convertido, pelo MPLAB, em cdigos de mquina, que sero gravados e executados pelo microcontrolador. Normalmente, todo o software que converte uma sequncia de comandos em linguagem de mquina chamado de compilador. O compilador composto por diversos nveis, desde analisador lxico at linkeditor. O ponto alto do MPLAB o simulador, que permite que voc execute seu programa sem a necessidade de grav-lo no microcontrolador, permitindo assim que se faam diversas correes enquanto se desenvolve o software. [7]

Figura 3-4 - Imagem do Programa MPLAB da MicroChip

36

3.16.2 O Gravador

O gravador um dispositivo projetado em concordncia com as caractersticas do microcontrolador. Existem muitos tipos de gravadores e softwares de aplicao. Alguns so muitos simples e econmicos, outros so complexos e caros.

Figura 3-5 - Kit Gravador PIC USB

37

4 ALGORITMOS E PROGRAMAO

4.1

Algoritmo

Um algoritmo uma sequncia de instrues ordenadas de forma lgica para a resoluo de uma determinada tarefa ou problema. Segue abaixo o algoritmo do nosso programa:

;********************************************PROGRAMA DTMF************************************************ INICIO ATENDE A LIGAO VAI PARA SENHA SENHA SE CORRETO, VAI PARA PROGRAMA SE INCORRETO, RETORNA VAI PARA SENHA SE INCORRETO 4X, VAI PARA DERRUBA LIGAO PROGRAMA SE DIGITO*=PROGRAMAO DA TROCA DE SENHA VAI PARA TROCA DE SENHA SE DIGITO1=LIGA SAIDA 1 RETORNA PROGRAMA SE DIGITO2=DESLIGA SAIDA 1 RETORNA PROGRAMA SE DIGITO3=LIGA POR 3 SEGUNDOS SAIDA 2 RETORNA PROGRAMA TROCA DE SENHA SENHA < SENHA NOVA (4 DIGITOS) RETORNA PROGRAMA SE DIGITO0 FIM PROGRAMA-1 DERRUBA A LIGAO FIM

Figura 4-1 - Algoritmo do Programa DTMF

38

Abaixo temos o diagrama de blocos do nosso programa DTMF

INCIO

ATENDE A LIGAO

VAI PARA SENHA

SENHA

Se <=3x SENHA CORRETA SENHA INCORRETA Se > 3

PROGRAMA

DIGITO-1

DIGITO-2

DIGITO-3

DIGITO-*

DIGITO-0

LIGA SADA-1

DESLIGA SADA-1

LIGA POR 3 SEGUNDOS SADA-2

ALTERAR SENHA

FINALIZAR O PROGRAMA

RETORNA AO PROGRAMA

DIGITE NOVA SENHA

DIGITO-# CONFIRMA A SENHA

FIM DO PROGRAMA
Figura 4-2 - Diagrama de Blocos do Programa DTMF

39

4.1.1 Linguagem de Programao A linguagem C nasceu na Bell Labs, diviso da AT&T. A famosa companhia americana de telecomunicaes desenvolveu em seus laboratrios o sistema operacional Unix e posteriormente a linguagem C em 1969, por Dennis Ritchie (tambm um dos principais criadores do Unix), a partir da l inguagem B de Ken Thompson. Seu propsito era gerar uma linguagem de alto nvel, em oposio linguagem de mquina (Assembly), conhecida como de baixo nvel. O C uma linguagem para uso geral, ou seja, para o desenvolvimento dos mais diversos tipos de aplicao. Tem como caractersticas: modularidade, portabilidade, recursos de baixo e alto nvel, gerao de cdigo eficiente, confiabilidade, regularidade, alm de conter um nmero pequeno de comandos. A linguagem C, ou simplesmente C, uma lin guagem pequena, composta de poucos comandos e operadores, e que pode apresentar variaes de um fabricante para outro no modo de escrita e nas funes internas (que so grupos de comandos e operadores idealizados pelo construtor da linguagem para realizar determinada tarefa). [7]

4.2

Programa do Microcontrolador

O PIC16F628a um microcontrolador fabricado pela Microchip Technology (www.microchip.com), com as seguintes caractersticas: - Composto de 18 pinos; - Possui somente 35 instrues no seu microcdigo; - Sinal de clock de frequncia at 20MHz; - Memria de programa do tipo Flash de 2048 words (1 word = 32 bits); - 224 bytes de memria RAM para dados; - 128 bytes de memria EEPROM para dados; - Instrues de 14 bits com 200ns de tempo de execuo; - Dados de 8 bits por endereo de memria; - 16 pinos os quais podem ser configurados como entrada e/ou sada; - Outras caractersticas especiais como programao in-circuit serial; - Proteo por cdigo, watchdog timer (temporizador co de guarda);

40

- Mdulo CCP, comparador interno, Usart de comunicaes, etc; [11]

Pinagem do PIC16F628a:

Figura 4-3 - Pinagem do PIC16F628a

Os pinos de RA0 RA7 e de RB0 RB7 podem ser configurados como entradas ou sadas digitais. A alimentao se d no pino Vdd, ligado normalmente em 5V com faixa de tolerncia de 2 6V e o pino Vss a referncia de terra. O pino OSC1/CLKIN utilizado para sinal de clock produzido por cristal ou um circuito externo e o pino OSC2/CLKOUT para sinal de clock por cristal (utilizado em conjunto com o OSC1/CLKIN). O pino MCLR uma entrada de sinal de reset em nvel baixo (zero). O PIC16F628a composto pelos subsistemas digitais conforme diagrama de blocos abaixo:

Figura 4-4 - Diagrama de blocos PIC16F628a

41

4.3

Hardware

4.3.1 MT8870

O circuito integrado MT8870 um receptor de sinais DTMF de pequeno tamanho, baixo consumo de energia e alto desempenho. Sua arquitetura consiste de uma seo de filtro bandsplit, que separa a alta e baixa dos tons de grupo seguida por uma contagem digital, que verifica a frequncia e a durao dos tons recebidos antes de passar o correspondente cdigo para o barramento de sada.

Figura 4-5 - Esquema de ligao do circuito integrado MT8870

4.3.2 Circuito Eletrnico

Para acionar os rels das sadas do microcontrolador usaremos transistores como chaves.

4.3.3 Transistor

No final dos anos 40, ocorreu a construo do primeiro transistor nos laboratrios da Bell, em 23 de dezembro de 1947, por John Bardeen, Walter Houser Brattain, e William Bradford Shockley, os quais ganharam o prmio Nobel de fsica em 1956. O termo transistor resulta da contrao das palavras transfer e resistor,

42

ou seja, resistncia de transferncia. um dispositivo eletrnico semicondutor, componente chave em toda da eletrnica moderna, onde so amplamente utilizados como parte de computadores, portas lgicas, memrias e uma infinidade de circuitos.

4.3.4 Transistor como Chave

A polarizao da base til em circuitos digitais porque esses circuitos geralmente so projetados para operar na regio de saturao e no corte. Por isso, eles tm uma tenso de sada baixa ou uma tenso de sada alta. Em outras palavras, nenhum dos pontos Q usado, saturao ou corte. Por essa razo, as variaes no ponto Q no so importantes, pois o transistor permanece na saturao ou no corte quando o ganho de corrente varia. A figura 4.4 mostra um exemplo de um transistor com uma saturao forte. Portanto, a tenso de sada de aproximadamente 0 volts. Isso significa que o ponto Q est no ponto superior da reta de carga.

Figura 4-6 - Saturao forte, transistor como chave

Quando a chave abre, a corrente da base cai zero. Por isso, a corrente do coletor cai zero. Sem corrente no resistor de 1k, toda a tenso de alimentao do coletor aparece entre os terminais coletor-emissor do transistor. Logo, a tenso de sada aumenta para +10 volts. O circuito pode ter apenas duas tenses de sada: 0 ou +10 volts. assim que identificamos um circuito digital. Ele tem apenas dois nveis de tenso de sada: baixo ou alto.

43

Os

circuitos

digitais

so

sempre

chamados

de

circuitos

de

chaveamento porque seu ponto Q fica restrito entre dois pontos da reta de carga. Na maioria dos projetos, os dois pontos so saturao e corte. Outro nome tambm usado circuito de dois estados, referindo-se aos dois nveis de tenso de sada, baixo e alto. [10]

4.3.5 Hardware

Usando o circuito integrado MT8870 para fazer a converso do sinal DTMF em sadas digitais BCD, utilizando as entradas do PORTB de RB4 RB7 do microcontrolador PIC16F628A, tendo as sadas no PORTA de RA0 RA3, sendo RA0 e RA1 acionando leds e as sadas RA2 e RA3 passando por transistores e acionando rels com capacidades de cargas maiores, como mostra o esquema abaixo:

Figura 4-7 - Esquema Eltrico do Projeto DTMF

44

4.3.6 Programao Interrupo Externa

Segundo Souza essa interrupo gerada por um sinal externo ligado a uma porta especfica do PIC, configurada como entrada, desta maneira, podemos identificar e processar imediatamente um sinal externo. Ela utilizada para diversas finalidades, como, por exemplo, a comunicao entre micros, garantindo o sincronismo, o reconhecimento de um boto ou outro sinal do sistema que necessite de uma ao imediata. [12] 4.3.7 Programao Interrupo por Mudana de Estado

A interrupo externa, vista acima, funciona somente na borda de subida ou na borda de descida (quando o sinal lgico sobe ou desce), dependendo de como ela foi configurada. J a interrupo por mudana de estado acontece em ambos os casos. Essa interrupo, por sua vez, est ligada s portas RB4, RB5, RB6 e RB7 simultaneamente. Por isso, se essas portas forem configuradas como entradas, a mudana de estado em qualquer uma delas ir gerar a interrupo. [12] 4.3.8 Programa em Linguagem C

Figura 4-8 - Programao Parcial em Liguagem C

45

5 CONCLUSO

Neste trabalho foi abordado o tema DTMF Aplicado a Automao Residencial, mostrando conceitos de automao residencial, o sinal DTMF, microcontroladores PIC, linguagem de programao C e eletrnica. O trabalho foi concludo com algumas pendncias que ficaram como trabalho futuro, como exemplo, algumas portas do microcontroladores ficaram inativas podendo ser usadas para mais sadas ou entradas.

46

Referncias: [1] Teruel, Evandro Carlos - Revista Saber Eletrnica n 138 2009 [2] Endereo eletrnico: http://www.automatichouse.com.br/AutomaticHouse/WebSite/Automacao/Resi dencial.aspx acessado em: 25 de maro de 2010 [3] - http://pt.wikipedia.org/wiki/DTMF Acessado em 18 de Abril de 2010 [4] Revista Grandes Invenes e Descobertas, 2009 [5] - http://pt.wikipedia.org/wiki/Antonio_Meucci Acessado em 18 de Abril de 2010. [6] - http://www.fundacaotelefonica.org.br/museu/Funcionamento.aspx Acessado em 18 de Abril de 2010 [7] Silva, Renato A. - Programando Microcontroladores PIC: Linguagem C [8] Pereira, Fbio Microcontroladores PIC: Tcnicas Avanadas/ Fbio Pereira. 6 Edio So Paulo: rica, 2007. [9] Cunha, Roberto - Revista Saber Eletrnica Ano45 N435 Abr/2009 [10] Malvino, Albert Paul Eletrnica: volume 1 4 edio Makron Books, 1995 [11] Silva, Luiz Marcelo Chiesse Anlise de Circuitos Digitais PIC16F628a [12] Souza, David Jos de, 1971 Desbravando o PIC: ampliado e atualizado para PIC 16F628A / David Jos de Souza. 12.ed. So Paulo: rica, 2008. Datasheet MT8870 http://www.datasheetcatalog.org/datasheets/228/268107_DS.pdf Acessado em: 18/05/2010 Revista Saber Eletrnica Ano 44 N422 Maro/2008 Silva Jnior, Vidal Pereira da, 1963 Microcontroladores PIC: Teoria e Prtica / Vidal Pereira da Silva Jnior. So Paulo : V. P. Silva Jnior, 1997.

Potrebbero piacerti anche