Eletr-007 - Casa Inteligente

Embed Size (px)

Citation preview

  • PONTIFCIA UNIVERSIDADE CATLICA DO RIO GRANDE DO SULFACULDADE DE INFORMTICA

    CURSO BACHARELADO EM INFORMTICA

    SISTEMA INTEGRADO E MULTIPLATAFORMA PARACONTROLE REMOTO DE RESIDNCIAS

    Prof. Fernando Gehm MoraesOrientador

    Alexandre AmoryJuracy Petrini Jnior

    Trabalho final da disciplina deTrabalho de Concluso II

    Porto Alegre, 4 de setembro de 2001

  • SISTEMA INTEGRADO E MULTIPLATAFORMA PARACONTROLE REMOTO DE RESIDNCIAS

    Alexandre AmoryJuracy Petrini Jnior

  • iii

    Sumrio1.1 CONCEITOS BSICOS ......................................................................................................................... 11.2 REQUISITOS DE UM SISTEMA DE AUTOMAO DOMSTICA .......................................................... 31.3 BENEFCIOS DA DOMTICA............................................................................................................... 51.3.1 SEGURANA ................................................................................................................................. 51.3.2 CONFORTO.................................................................................................................................... 61.3.3 ENERGIA....................................................................................................................................... 61.3.4 COMUNICAO............................................................................................................................. 71.4 MOTIVAO ....................................................................................................................................... 73.1 FPGA................................................................................................................................................ 133.1.1 EVOLUO DOS DISPOSITIVOS PROGRAMVEIS........................................................................ 133.1.2 FPGA ......................................................................................................................................... 143.1.3 BLOCOS LGICOS....................................................................................................................... 143.1.4 ROTEAMENTO............................................................................................................................. 153.1.5 CLULAS DE I/O ......................................................................................................................... 163.1.6 APLICAES DE FPGAS ............................................................................................................. 163.2 VHDL ............................................................................................................................................... 173.2.1 DESCRIO ESTRUTURAL .......................................................................................................... 193.2.2 DESCRIO COMPORTAMENTAL................................................................................................ 193.2.3 EXEMPLO DE DESCRIO VHDL............................................................................................... 203.2.4 ESPECIFICAO DE VHDL......................................................................................................... 213.3 JAVA.................................................................................................................................................. 223.3.1 MQUINA VIRTUAL JAVA .......................................................................................................... 223.3.2 JAVA COMMUNICATIONS API (COMMAPI) ................................................................................ 223.3.3 JAVA SERVER PAGES JSP .......................................................................................................... 223.3.4 COMPILADOR JUST-IN-TIME - JIT ............................................................................................... 224.1 INTRODUO .................................................................................................................................... 234.2 CARACTERSTICAS E REQUISITOS DE PROTOCOLOS..................................................................... 254.3 PROTOCOLOS ANALISADOS............................................................................................................. 274.3.1 EUROPEAN HOME SYSTEMS - EHS............................................................................................... 274.3.2 BYTE DATA LINK CONTROLLER - BDLC ...................................................................................... 314.3.3 LOCAL OPERATING NETWORK - LON .......................................................................................... 364.3.4 EUROPEAN INSTALLATION BUS - EIB........................................................................................... 374.3.5 X-10 ........................................................................................................................................... 384.3.6 CONSUMER ELECTRONICS BUS - CEBUS ..................................................................................... 404.4 COMPARAO ENTRE OS PROTOCOLOS ESTUDADOS .................................................................... 415.1 APLICAES DE CAN ...................................................................................................................... 435.2 CONCEITOS BSICOS ....................................................................................................................... 445.3 ESPECIFICAO CAN...................................................................................................................... 455.3.1 FORMATO DOS PACOTES ............................................................................................................ 465.3.2 TCNICAS DE VERIFICAO E SINALIZAO DE FALHAS.......................................................... 505.3.3 ARBITRAO.............................................................................................................................. 535.3.4 BIT-TIMING ................................................................................................................................ 545.3.5 SINCRONISMO............................................................................................................................. 555.3.6 CAMADA FSICA ......................................................................................................................... 565.4 IMPLEMENTAO............................................................................................................................. 585.4.1 VARIAO QUANTO INTEGRAO ......................................................................................... 585.4.2 VARIAO QUANTO ARMAZENAMENTO DE MENSAGENS...................................................... 605.4.3 VARIAO QUANTO AO FILTRO DE ACEITAO ....................................................................... 615.5 ESTUDO DE ARQUITETURAS PARA PROTOCOLO CAN .................................................................. 626.1 ESCOLHA DO SISTEMA OPERACIONAL ........................................................................................... 676.2 ESCOLHA DA LINGUAGEM DE PROGRAMAO............................................................................. 686.2.1 JAVA........................................................................................................................................... 696.2.2 PERL ........................................................................................................................................... 706.2.3 C................................................................................................................................................. 71

  • iv

    6.2.4 ACTIVE SERVER PAGES - ASP ................................................................................................... 726.2.5 PHP : HYPERTEXT PREPOCESSOR.............................................................................................. 736.2.6 COMPARAO ENTRE LINGUAGENS DE PROGRAMAO........................................................... 736.2.7 CONCLUSO ............................................................................................................................... 746.3 ARQUITETURA SERVIDOR/CAN...................................................................................................... 756.4 TIPO DE CONEXO ENTRE MQUINAS ............................................................................................ 766.5 ARQUITETURA CLIENTE/SERVIDOR ............................................................................................... 767.1 ARQUITETURA GERAL DO SOFTWARE ............................................................................................ 797.1.1 CLIENTE...................................................................................................................................... 797.1.2 SERVIDOR................................................................................................................................... 807.1.3 DEBUGGER (HARDWARE) ............................................................................................................ 817.2 ARQUITETURA DO SERVIDOR.......................................................................................................... 827.2.1 COMUNICAO COM O CLIENTE................................................................................................. 827.2.2 BANCO DE DADOS....................................................................................................................... 827.2.3 COMUNICAO COM O BANCO DE DADOS / CONTROLADOR MESTRE (COMUNICAO SERIAL) 877.3 ARQUITETURA DO CLIENTE............................................................................................................. 937.3.1 AUTENTICAO DE USURIOS NO SISTEMA ............................................................................... 937.3.2 ATUALIZAO DA INTERFACE WEB........................................................................................... 957.3.3 ATUALIZAO DO STATUS DA RESIDNCIA ............................................................................... 967.3.4 MANUTENO DOS USURIOS DO SISTEMA ............................................................................... 977.4 ARQUITETURA DO DEBUGGER......................................................................................................... 998.1 DESCRIO DOS MDULOS HURRICANE.................................................................................... 1038.1.1 DESCRIO GERAL DOS MDULOS.......................................................................................... 1038.1.2 MDULO CONTROLADOR......................................................................................................... 1078.1.3 MDULO DE INTERFACE........................................................................................................... 1088.1.4 MDULO CAN CORE ............................................................................................................... 1098.1.5 MDULO DE RECEBIMENTO ..................................................................................................... 1108.1.6 MDULO DE TRANSMISSO ..................................................................................................... 1118.1.7 MDULO DE CLCULO DE CRC............................................................................................... 1128.1.8 MDULO DE SINCRONISMO...................................................................................................... 1138.1.9 MDULO DE STUFFING............................................................................................................. 1148.1.10 MDULO DE CONTROLE DE ERROS.......................................................................................... 1158.1.11 MDULO DE CONTADORES DE ERROS ..................................................................................... 1168.1.12 RESUMO DE INFORMAES DO HURRICANE........................................................................... 1178.2 ARQUITETURA DOS NODOS ESCRAVOS ........................................................................................ 1178.2.1 NODO DE LMPADAS ............................................................................................................... 1198.2.2 RESUMO DE RELATRIO DE SNTESE ....................................................................................... 1208.2.3 FORMAS DE ONDA DO OSCILOSCPIO...................................................................................... 1218.2.4 FORMAS DE ONDA POR SIMULAO ........................................................................................ 1228.3 ARQUITETURA DO NODO MESTRE................................................................................................ 1238.3.1 RESUMO DE RELATRIO DE SNTESE ....................................................................................... 1258.3.2 FORMAS DE ONDA POR SIMULAO ........................................................................................ 1258.3.3 TESTBENCH............................................................................................................................... 1308.4 PACOTES DE DADOS X PACOTES DE CONTROLE.......................................................................... 1328.5 INTERFACE HARDWARE/SOFTWARE .............................................................................................. 1349.1 INTERFACE PCI.............................................................................................................................. 1379.2 PROTOCOLO PLUG AND PLAY ........................................................................................................ 1379.3 ALIVE?............................................................................................................................................. 1389.4 TESTABILIDADE REMOTA.............................................................................................................. 1389.5 RECONFIGURAO REMOTA ........................................................................................................ 1399.6 MECANISMO DE TTL TIME TO LIVE......................................................................................... 1399.7 CONTROLE DE ACESSO WEB POR MLTIPLAS PERMISSES........................................................ 140

  • vLista de FigurasFIGURA 1 TELEAO ........................................................................................................................................................2FIGURA 2 BENEFCIOS DE DOMTICA ...............................................................................................................................5FIGURA 3 APLICAES POSSVEIS DESTE PROJETO............................................................................................................8FIGURA 4 ARQUITETURA DO SISTEMA ..............................................................................................................................9FIGURA 5 ESTRUTURA COMPLETA DO SERVIDOR ............................................................................................................10FIGURA 6 ESTRUTURA DA APRESENTAO .....................................................................................................................11FIGURA 7 ESTRUTURA INTERNA DE UM FPGA................................................................................................................14FIGURA 8 ESTRUTURA DE UM BLOCO LGICO XILINX XC3000 ...................................................................................15FIGURA 9 ESQUEMA DE UMA SWITCH BOX ......................................................................................................................15FIGURA 10 ROTEAMENTO EM FPGA...............................................................................................................................16FIGURA 11 EXEMPLO EM DIAGRAMA DE UMA DESCRIO ESTRUTURAL EM VHDL .......................................................19FIGURA 12 ESTRUTURA DO COMPONENTE CONT2 ..........................................................................................................21FIGURA 13 MODELO BSICO DE MDULOS PARA AUTOMAO.......................................................................................23FIGURA 14 ESTRUTURA INTERNA DE UM MDULO DE AUTOMAO INTELIGENTE ..........................................................24FIGURA 15 ARQUITETURA DO PROTOCOLO EHS.............................................................................................................28FIGURA 16 ESTRUTURA DA REDE EHS ...........................................................................................................................30FIGURA 17 FORMATO DOS PACOTES EHS .......................................................................................................................30FIGURA 18 FORMATO DO PACOTE BDLC........................................................................................................................32FIGURA 19 TIPOS DE IN-FRAME RESPONSE .......................................................................................................................33FIGURA 20 INTERFACE COM CPU ...................................................................................................................................33FIGURA 21 GERENCIADOR DE PROTOCOLO .....................................................................................................................34FIGURA 22 INTERFACE MULTIPLEXADOR ........................................................................................................................35FIGURA 23 TOPOLOGIA LGICA EIB...............................................................................................................................37FIGURA 24 PACOTE EIB .................................................................................................................................................38FIGURA 25 PACOTE DO PROTOCOLO X-10 ......................................................................................................................39FIGURA 26 TABELA DE COMANDO DO PROTOCOLO X-10 ................................................................................................39FIGURA 27 MTODO DE DETECO DE ERROS DO PROTOCOLO X-10 ..............................................................................39FIGURA 28 FUNES DAS CAMADAS DE CAN.................................................................................................................45FIGURA 29 FORMATO DE UM PACOTE DE DADOS CAN....................................................................................................46FIGURA 30 CAMPO DE ARBITRAO ...............................................................................................................................46FIGURA 31 REQUISIO REMOTA DE DADOS...................................................................................................................48FIGURA 32 PACOTE DE REQUISIO DE DADOS CAN......................................................................................................49FIGURA 33 PACOTE DE ERRO CAN .................................................................................................................................49FIGURA 34 PROCESSO DE SINALIZAO DE ERROS..........................................................................................................50FIGURA 35 BIT STUFFING ................................................................................................................................................51FIGURA 36 ESTADOS DE ERRO ........................................................................................................................................53FIGURA 37 ARBITRAO CAN .......................................................................................................................................54FIGURA 38 BIT TIME CAN ...............................................................................................................................................55FIGURA 39 SINCRONIZAO COM TRANSMISSOR LENTO.................................................................................................56FIGURA 40 SINCRONIZAO COM TRANSMISSOR RPIDO ...............................................................................................56FIGURA 41 FORMA DA FIAO CAN...............................................................................................................................57FIGURA 42 TENSO NOMINAL.........................................................................................................................................57FIGURA 43 INTERFERNCIA ELETROMAGNTICA ............................................................................................................57FIGURA 44 TRANSCEIVER.................................................................................................................................................58FIGURA 45 MDULO CAN STAND-ALONE .......................................................................................................................59FIGURA 46 MDULO CAN INTEGRADO..........................................................................................................................59FIGURA 47 MDULO CAN SINGLE-CHIP ........................................................................................................................60FIGURA 48 BASICCAN.....................................................................................................................................................60FIGURA 49 FULLCAN......................................................................................................................................................61FIGURA 50 FILTRO SIMPLES ............................................................................................................................................61FIGURA 51 MLTIPLOS FILTROS .....................................................................................................................................62FIGURA 52 ARQUITETURA GERAL DO MDULO CAN......................................................................................................62FIGURA 53 ESTRUTURA DETALHADA DO MDULO CAN.................................................................................................64FIGURA 54 DETALHE DO BLOCO DE INTERFACE COM MEMRIA E APLICAO DO USURIO............................................65FIGURA 55 - ARQUITETURA DO SISTEMA...........................................................................................................................79FIGURA 56 TABELAS DO SISTEMA...................................................................................................................................83FIGURA 57 - TABELANODOS..............................................................................................................................................86FIGURA 58 MTODOS DE ACESSO A BASE DE DADOS E PORTA DE COMUNICAO RS-232 ..............................................88FIGURA 59 PROBLEMA DE SEQUENCIAMENTO DE PACOTES.............................................................................................89

  • vi

    FIGURA 60 LISTA DE RECEBIMENTO DE PACOTES GRANDES............................................................................................90FIGURA 61 TELA DE AUTENTICAO..............................................................................................................................94FIGURA 62 - INTERFACE CLIENTE......................................................................................................................................97FIGURA 63 INTERFACE DE ADMINISTRAO...................................................................................................................98FIGURA 64 INSERINDO USURIOS ...................................................................................................................................98FIGURA 65 ALTERANDO USURIOS.................................................................................................................................99FIGURA 66 EXCLUINDO USURIOS..................................................................................................................................99FIGURA 67 DEBUGGER..................................................................................................................................................101FIGURA 68- DISPOSIO HIERRQUICA DOS MDULOS....................................................................................................104FIGURA 69 - INTERAO ENTRE OS BLOCO DO CAN CONTROLLER ..................................................................................105FIGURA 70 INTERAO ENTRE OS BLOCO DO CAN CORE .............................................................................................106FIGURA 71 PLATAFORMA NODO ESCRAVO (XS40) .......................................................................................................118FIGURA 72 ESQUEMA XS40..........................................................................................................................................119FIGURA 73 ARQUITETURA DO NODO DE LMPADAS......................................................................................................119FIGURA 74 MONITORAO PELO OSCILOSCPIO DE UM PACOTE CAN COMPLETO .......................................................121FIGURA 75 TRANSMISSOR X RECEPTOR CAN................................................................................................................121FIGURA 76 SIMULAO DE UM PACOTE CAN COMPLETO ............................................................................................122FIGURA 77 COMPARAO ENTRE BARRAMENTO, BITS DO TRANSMISSOR E DO RECEPTOR ............................................122FIGURA 78 PROCESSO DE ENVIO DE PACOTES ...............................................................................................................122FIGURA 79 PROCESSO DE RECEPO DE PACOTES.........................................................................................................123FIGURA 80 ARQUITETURA DO NODO MESTRE................................................................................................................124FIGURA 81 PLATAFORMA NODO MESTRE (VW300) ......................................................................................................125FIGURA 82 CONVERSO CAN PARA SERIAL.................................................................................................................126FIGURA 83 CONVERSO SERIAL PARA CAN.................................................................................................................127FIGURA 84 TRANSMISSO SERIAL DO MESTRE..............................................................................................................127FIGURA 85 RECEPO CAN NO MESTRE COM TRANSMISSO SERIAL ...........................................................................128FIGURA 86 ESCRITA E LEITURA NA FILA CAN ..............................................................................................................129FIGURA 87 ESCRITA E LEITURA DA FILA SERIAL............................................................................................................129FIGURA 88 ESTRUTURA DO TESTBENCH DO MESTRE......................................................................................................130FIGURA 89 BANCADA DE TESTE DO MESTRE .................................................................................................................132FIGURA 90 DETALHES DA BANCADA DE TESTE .............................................................................................................132FIGURA 91 FORMATO DE PACOTES DE DADOS...............................................................................................................133FIGURA 92 FORMATO DE PACOTES DE CONTROLE .........................................................................................................133FIGURA 93 INTERFACE HARDWARE/SOFTWARE..............................................................................................................134

  • vii

    Lista de Tabelas

    TABELA 1 TIPOS DE MEIOS FSICOS EHS.........................................................................................................................29TABELA 2 TABELA COMPARATIVA ENTRE PROTOCOLOS .................................................................................................41TABELA 3 LEGENDA DA TABELA COMPARATIVA DE PROTOCOLOS..................................................................................41TABELA 4 COMPARATIVO ENTRE CAN PADRO E ESTENDIDO .......................................................................................45TABELA 5 CODIFICAO DO CAMPO DLC ......................................................................................................................47TABELA 6 TAXA DE TRANSFERNCIA X COMPRIMENTO DO BARRAMENTO......................................................................58TABELA 7 COMPARAO ENTRE DIVERSAS LINGUAGENS DE PROGRAMAO.................................................................74TABELA 8 TABELA USUARIOS ........................................................................................................................................84TABELA 9 TABELA TABELANODOS ................................................................................................................................85TABELA 10 - TABELA TABELADADOS ...............................................................................................................................86TABELA 11 - DESCRIO DA PORT LIST DO CAN CONTROLLER........................................................................................107TABELA 12 DESCRIO DA PORT LIST DO CAN INTERFACE ..........................................................................................108TABELA 13 - DESCRIO DA PORT LIST DO CAN CORE ...................................................................................................109TABELA 14 - DESCRIO DA PORT LIST DO CAN RX .......................................................................................................110TABELA 15 - DESCRIO DA PORT LIST DO CAN TX .......................................................................................................112TABELA 16 - DESCRIO DA PORT LIST DO CRC CALC....................................................................................................112TABELA 17 - DESCRIO DA PORT LIST DO SYNC.............................................................................................................113TABELA 18 - DESCRIO DA PORT LIST DO STUFF HANDLER ............................................................................................114TABELA 19 - DESCRIO DA PORT LIST DO ERROR FRAME ...............................................................................................115TABELA 20 - DESCRIO DA PORT LIST DO ERROR COUNTER ...........................................................................................116TABELA 21 RESUMO DE DADOS DOS MDULOS HURRICANE .......................................................................................117TABELA 22 RESUMO DE RELATRIOS DE SNTESE DO MESTRE ......................................................................................125TABELA 23 RELATRIO DO TESTBENCH DO MESTRE (CAN PARA SERIAL) ....................................................................130TABELA 24 RELATRIO DO TESTBENCH DO MESTRE (SERIAL PARA CAN) .....................................................................131

  • viii

    AGRADECIMENTOS

    Durante o desenvolvimento deste trabalho tivemos ajudas essenciais que nos trouxeram

    contribuies tanto tcnicas quanto emocionais. A essas pessoas, abaixo citadas, deixamos o nosso

    mais sincero obrigado.

    Ao professor Fernando Moraes, que nos orientou durante essa jornada, agradecemos

    sinceramente conduo deste trabalho.

    Ao professor Eduardo Bezerra, que mesmo afastado (em doutorado) teve uma contribuio

    inestimvel neste do projeto.

    Ao professor Ney Calazans, agradecemos por vrias dicas dadas no decorrer deste trabalho.

    Ao professor Csar Marcon, devido ao seu conhecimento da linguagem de programao

    Java.

    A Letcia que nos ajudou muito na reviso de Portugus deste trabalho.

    A todos membros do grupo Gaph, em especial Everton, Jos e Mesquita.

    Ao grupo Sisc onde eu (Alexandre) trabalho como bolsista de IC, pois fiquei vrias noites

    trabalhando nestes projeto usando recursos do grupo.

  • ix

    Resumo

    O objetivo deste trabalho a implementao de um sistema de controle para aplicaes

    domsticas, visando a automao de lares (domtica). Este sistema acessado pela Internet, sendo

    os dispositivos da casa interligados pelo protocolo de controle CAN.

    Os usurios (moradores) podero controlar, monitorar e administrar seu lar a distncia

    usando um navegador Web comum. Esta aplicao remota o programa cliente. Localmente, um

    servidor traduz as instrues de/para o navegador Web e as distribui para as aplicaes domsticas.

    O sistema proposto neste trabalho apresenta como diferencial dos sistemas existentes as

    seguintes caractersticas: (i) atualizao automtica da interface do cliente; (ii) protocolo padro de

    comunicao utilizado no hardware, o qual prov robustez e controle de erros; (iii) fcil insero de

    novas aplicaes na base de dados; (iv) mecanismos de autenticao de usurios garantindo a

    segurana do sistema; (v) interface de administrao dos usurios do sistema. Alm destas

    caractersticas, este trabalho apresente um sistema que integra hardware e software, com utilizao

    de dispositivos programveis do tipo FPGA.

  • xAbstract

    The objective of this work is to implement a control system for domestic applications

    domotics or smart houses. This application is controlled through the Internet, being the home

    devices connected using the CAN control protocol.

    The user remotely controls his house using a standard Web navigator. This remote

    application is a client program. Locally, the server translates the instructions from/to the Web

    navigator and distributes them to the domestic applications.

  • xi

  • 11 Introduo

    Este trabalho um estudo e implementao de um sistema que tem a finalidade de permitir

    que pessoas possam administrar seus lares remotamente, de uma forma simples, com um custo

    baixo (implantao e administrao), utilizando uma plataforma portvel e flexvel a avanos

    tecnolgicos, facilitando a implementao de domtica em lares, escritrios e prdios.

    Este captulo caracteriza automao domstica. A Seo 1.1 apresenta conceitos bsicos em

    que esse trabalho est baseado. A Seo 1.2 mostra alguns requisitos de sistemas de domtica. A

    Seo 1.3 lista benefcios em termos de segurana, conforto, facilidade de comunicao, e

    economia de energia que o usurio de tal sistema de automao pode usufruir. Finalmente, a Seo

    1.4 apresenta o que motiva o desenvolvimento deste projeto.

    No Captulo 0, a arquitetura do sistema apresentada de forma genrica. Detalhes da

    arquitetura sero apresentados no Captulo 6, onde apresentamos o sistema operacional, a

    linguagem de programao e a comunicao cliente/servidor usados. No Captulo 3 apresentamos

    os conceitos de FPGA, VHDL e linguagem Java necessrios para o acompanhamento da leitura

    deste trabalho. No Captulo 4 apresentamos conceitos, requisitos e um estudo comparativo sobre

    protocolos de controle. Detalhes sobre o protocolo de controle CAN so apresentados no Captulo

    5. No Captulo 7 e 8 so apresentados detalhes de implementao do sistema de software e

    hardware, respectivamente. Um conjunto de propostas para trabalhos futuros apresentado no

    Captulo 9. Uma lista de links relacionados a esse trabalho e referncias bibliogrficas encerram

    este relatrio.

    1.1 Conceitos Bsicos

    Domtica a integrao de tecnologias e servios, aplicadas a lares, escritrios e pequenos

    prdios, com o propsito de automatizar e obter um aumento de segurana, conforto, comunicao e

    economia de energia [8] [9] [11] link [22].

    Por automao entende-se a capacidade de se executar comandos, obter medidas, regular

    parmetros e controlar funes de uma casa automaticamente.

    A palavra domtica (domotique) surgiu na Frana, onde houveram as primeiras

    experincias relacionadas a domtica. Domtica a contrao da palavra domus do Latim

  • 2(equivalente a lar ou casa) com a palavra telemtica. Outro sinnimo para domtica casa

    inteligente (smart house), porm neste trabalho usaremos o termo domtica.

    A domtica pode substituir o homem em diversas atividades rotineiras de forma a propiciar

    uma otimizao nas condies de vida em uma casa. O prprio sistema zela pela satisfao dos

    moradores, sem que seja necessrio a contnua interveno dos mesmos.

    O grau de controle alcanado pode ser varivel, sendo uma funo de custo, desejo pessoal

    dos moradores, estrutura do prdio e tecnologia usada. Casas que podem ter, por exemplo, ajuste

    automtico de temperatura, escalonamento automtico de tarefas rotineiras como ligar a cafeteira,

    acionamento automtico de servios de segurana e comunicao eficiente com o mundo externo

    tm vrios benefcios que sero descritos na Seo 1.3.

    Outro termo importante a se definir o conceito de teleao (teleaction) [1] [2]. Teleao a

    capacidade de se controlar algum dispositivo remotamente. A Figura 1 ilustra esse conceito.

    Unindo os dois conceitos acima descritos (domtica e teleao) surgiu a idia de interligar a

    rede interna de uma casa (domtica) com a rede externa casa (Internet) de forma que os

    moradores da casa possam controlar, monitorar e administrar seu lar a distncia, conforme pode ser

    visualizado na Figura 1. Uniremos neste projeto uma realidade atual (Internet e micro computadores

    domsticos) com uma tendncia para o futuro (domtica).

    Figura 1 Teleao

    Com o enorme crescimento de novas aplicaes que usam a Internet como meio de

    comunicao, novos produtos para aplicaes de infotainment (informao + entretenimento) e

    comrcio eletrnico esto surgindo. Com isso est havendo uma aproximao dos computadores

    aos lares. Isso tem estimulado o mercado SoHo (Small office Home office) a oferecer cada vez mais

    produtos para atender uma clientela cada vez mais exigente. Um outro efeito do aumento acelerado

    do mercado SoHo ser a mudana dos lares de um simples ponto de acesso Internet para um

    provedor de servios e aplicaes, como mostra a Figura 1.

  • 3Nos dias de hoje, existem algumas poucas empresas no mundo que desenvolvem produtos

    visando domtica [2]. Na Europa, principalmente, existem vrios grupos que esto trabalhando no

    desenvolvimento de um protocolo domstico padro. Esses grupos, sem excees, esto ligados a

    grandes fabricantes de eletrodomsticos e produtos de uso domstico em geral. No Brasil, no se

    tem notcia de empresa que desenvolva produtos para domtica, mas existem revendedoras de

    empresas estrangeiras. Ainda assim, so raras essas empresas, pelo fato de que produtos visando

    domtica no serem acessveis financeiramente maioria da populao.

    1.2 Requisitos de um Sistema de Automao Domstica

    Para saber exatamente quais so as reais exigncias que um sistema de automao domstica

    deve ter necessrio uma equipe multidisciplinar, engenheiros, arquitetos, socilogos, para

    identificarem o cenrio domstico, conforme [2]. Tal estudo ter a funo de descrever a situao

    da domtica no futuro e definir por quais caminhos esse estudo deve seguir para alcan-lo, no

    ponto de vista europeu.

    O resultado deste estudo foi dividido em trs partes: facilidades, vantagens e exigncias

    tcnicas.

    Por facilidades entende-se todas as funes que o usurio gostaria de ter integrada num

    sistema, de modo a facilitar o seu cotidiano. Citamos as seguintes necessidades:

    manuteno domstica;

    conservao e preparo de comida, preparo de roupas;

    comunicao e home office;

    entretenimento (udio, vdeo, tv, rdio);

    controle de energia, aquecimento, gua, iluminao, ou ventilao;

    segurana em relao a invaso, fogo, inundao, ou mau tempo.

    Por vantagens entende-se os benefcios1 que a domtica ter que propiciar para a satisfao

    do usurio final.

    Essas necessidades e vantagens devem ser consideradas como pr-requisitos em um sistema

    de automao domstica.

    1 benefcios sero detalhados na Seo1.3.

  • 4Exigncias tcnicas so caractersticas que o desenvolvedor de sistema deve conhecer e

    saber contorn-los para implementar um sistema competitivo e com aceitao no mercado. As

    principais exigncias so:

    baixo custo (sistema de fcil instalao e dispositivos baratos);

    plug and play;

    flexibilidade (sistema modular e extensvel);

    integrao com todas aplicaes;

    integrao com vrios fabricantes (padronizao);

    compatibilidade com vrios meios (linha de energia, rdio-freqncia, par tranado,infra vermelho);

    confiabilidade;

    fcil utilizao.

    Baixo custo para o usurio final significa, primeiramente, que a instalao da rede deve ser

    fcil, de modo que necessite o mnimo possvel de uma pessoa especializada para isso. Por outro

    lado, os dispositivos da rede devem ser baratos tambm. O usurio no vai pagar uma diferena de

    preo muito grande por uma lavadora de roupa conectada a rede se existe uma similar mais barata,

    mas que no pode ser conectada. Resumindo, o custo adicional para dispositivos de domtica

    devem ser extremamente baixo.

    Os dispositivos devem ser plug and play, pois o prprio usurio deve ser capaz de fazer

    instalao da rede, de novos dispositivos e de reconfigurar a rede.

    O ciclo de vida do sistema deve ser grande. O sistema instalado deve ser extensvel. Deve

    ser possvel integrar novos dispositivos e novas aplicaes mesmo que esses ainda no existam. Isso

    implica que o sistema deve ser flexvel a novas tecnologias.

    Deve ser possvel integrar todas as aplicaes de um sistema de domtica. No uma boa

    estratgia instalar um sistema para controle de ar condicionado, outro para segurana, e assim por

    diante. As aplicaes estando integradas possibilitam o compartilhamento de recursos e

    interoperabilidade.

    Dispositivos de um fabricante devem ser conectados na mesma rede que dispositivos de um

    outro fabricante qualquer. Esta caracterstica a base de um sistema de automao.

  • 5O sistema deve ser confivel. Pelo fato do sistema integrar muitos dispositivos de diferentes

    caractersticas e fabricantes, aumentando-se as chances de que esse sistema se torne potencialmente

    sujeito a falhas. desejvel que o sistema inclua funes de monitoramento e teste, aumentando o

    grau de disponibilidade do mesmo.

    Outro ponto muito importante a facilidade de uso. A interface deve ser intuitiva e ter

    formas similares de executar funes diferentes, para facilitar o aprendizado do mesmo. Levando

    em conta que o sistema deve tornar algumas tarefas de casa independentes de sua interveno.

    1.3 Benefcios da Domtica

    Os benefcios de domtica concentram-se em quatro classes: segurana, conforto, economia

    de energia e comunicao. Esses itens sero descritos abaixo e podem ser visualizados na Figura 2.

    Figura 2 Benefcios de Domtica

    1.3.1 Segurana

    Trata de proteger pessoas e pertences em casos de eventualidades como invaso, vazamento

    de gua, vazamento de gs, incndio, doenas, etc. Pode-se destacar como aplicaes:

    alarmes tcnicos: inundao, gs, queda de energia;

    fogo e fumaa: deteco rpida, alerta a moradores, chamada de bombeiros;

  • 6 invaso e assalto: comunicao polcia, sistema de cmeras, foto das pessoas quepassaram pela frente da porta dianteira ou tocaram a campainha;

    alarme mdico: monitoramento e diagnstico remoto de sinais vitais;

    simulao de presena: ligar msica e luzes aleatoriamente.

    1.3.2 Conforto

    Abaixo exemplifica-se alguns controles relacionados a conforto:

    luz automtica: acionamento por presena, som, hora ou luz ambiente;

    persianas: controle automtico por presena de luz ambiente e chuvas, aberturaautomtica de persianas pelo acionamento do despertador;

    centralizao: ligar/desligar o sistema com um nico boto;

    controle de temperatura: temperatura interna mantm-se sempre a um nvel agradvel;

    programao de eletrodomsticos: pode-se programar para que a cafeteira e oaquecimento da banheira liguem 10 minutos antes que o despertador seja acionado;

    abertura de portes.

    1.3.3 Energia

    Controles inteligentes podem evitar desperdcio de energia.

    iluminao: desliga luzes automaticamente quando no houver pessoas em determinadoambiente;

    controle de temperatura: poder controlar aquecedores e ar condicionado de forma aminimizar o consumo de energia;

    controle de eletrodomsticos: acionar eletrodomsticos como lavadoras de roupa emhorrios que as tarifas so menores ou fora de horrios de pico.

  • 71.3.4 Comunicao

    segurana: chamada automtica a bombeiros e polcia;

    entretenimento: interligao de udio e vdeo, sinal de videofone na televiso;

    mensagens: envio de mensagens texto para distribuio no destino (Broadcast);

    chat: bate-papo entre o administrador remoto e pessoas no interior do lar, escritrio, etc;

    conectividade: interligao entre casas, escritrios e prdios que utilizam a domtica(WAN).

    1.4 Motivao

    Tem-se por motivao deste trabalho o desejo de obter experincia no desenvolvimento de

    hardware (protocolo de controle), software (comunicao Cliente/Servidor e RS-232C), integrao

    harmnica entre o hardware e o software e o desenvolvimento da interface da aplicao (home page

    da casa).

    Outra grande motivao est no apelo comercial e futurstico da idia. Esse trabalho pode

    dar continuidade a trabalhos futuros visando uma verso comercial. A longo prazo, poderamos

    vislumbrar uma empresa que, baseado neste trabalho, implementasse desde a home-page (a

    interface), at solues de conectividade e controle de casas. Atualmente, uma empresa que fornea

    tal servio ainda no existe, a nosso conhecimento, no Brasil.

    Para ilustrar o apelo futurstico desta aplicao mostramos na Figura 3 algumas situaes

    possveis em uma casa com um sistema de domtica interligado Internet.

    Digamos que Maria est saindo do seu trabalho (caso 1). Ela poderia usar o seu PDA

    (personal digital assistant) sem fio com acesso a Internet para conectar-se a sua casa e, por

    exemplo, ajustar o termostato geral e deixar a casa bem iluminada para quando ela chegar em casa.

    No caso 2, o medidor de nvel de leo do sistema de aquecimento estava com nvel baixo.

    Imediatamente o sistema manda uma mensagem para a distribuidora de leo para que seja feito o

    reabastecimento.

  • 8Figura 3 Aplicaes possveis deste projeto

    J no caso 3, Joo est trabalhando quando de repente recebe uma mensagem urgente

    comunicando uma invaso sua casa. Imediatamente ele se conecta casa e, atravs das cmeras de

    segurana, consegue ver a imagem do invasor. Ao mesmo tempo que o sistema j havia enviado

    uma mensagem polcia notificando a invaso.

    O caso 4, digamos que Joo e Maria decidem sair para ir ao cinema. Ao sarem da casa o

    sistema avisa ao PDA que esqueceram de ativar o sistema de alarme. Ento, pelo prprio PDA, Joo

    aciona o sistema e verifica se todas as portas e janelas foram bem fechadas.

    Os quatros exemplos citados acima podem parecer muito longe da realidade atual, porm

    no esto. J existem PDAs com acesso a Internet (link [15] ) e, durante a execuo desse trabalho,

    encontramos alguns sistemas de superviso comercial com objetivo similar ao objetivo desse

    trabalho (links [16] [17] [18] [19] [20] [21] ). Isso vem provar que j existem tecnologias

    convergindo para o objetivo deste projeto.

    Visamos como meta do desenvolvimento deste projeto usar tecnologia de baixo custo ou de

    livre distribuio de modo que uma possvel comercializao do produto venha a ser vivel.

    Durante as Sees seguintes poder ser notado que detalhes como a linguagem de programao e o

    sistema operacional foram escolhidos de forma e tornar uma verso comercial deste projeto vivel,

    visto que esta uma motivao importante deste projeto.

    Outra motivao ao desenvolvimento deste trabalho foi a criao de uma nova aplicao

    para computadores e Internet. Pensamos que essa aplicao poder contribuir de forma a fazer com

    que o uso de computadores faa cada vez mais parte do dia-a-dia do usurio comum.

  • 92 Arquitetura do Sistema

    O sistema desenvolvido baseia-se na comunicao entre dois computadores atravs do

    protocolo de comunicao HTTP, um destes computadores denominado de Servidor e o(s)

    outro(s) computador(es) denominado(s) Cliente(s). Internamente casa existir uma outra rede

    utilizando o protocolo CAN2 responsvel em interligar os diversos perifricos da casa. Esta rede

    interna, atravs de um Controlador Mestre, comunica-se com o computador Servidor atravs da

    porta RS-232C. A Figura 4 ilustra a estrutura geral do sistema.

    Figura 4 Arquitetura do Sistema

    O computador Cliente responsvel por permitir que o usurio possa de maneira amigvel,

    interagir com sua residncia. Para que isso seja possvel, no computador cliente, temos um software

    responsvel pelo envio de sinais de controles que neste caso iremos denominar de pacotes de

    controle. Estes pacotes sero recebidos pelo Servidor que se encarregar de trat-los de maneira

    adequada. Devido ao crescimento e popularizao da Internet no mundo, o software utilizado no

    lado Cliente ser um navegador Web.

    Sendo assim, o navegador Web responsvel em enviar os pacotes de controle ao Servidor

    atravs do protocolo HTTP, e ao mesmo tempo responsvel em manter a interface com o usurio

    atualizada a medida que o Servidor envia atualizaes.

    O Servidor responsvel por receber pacotes (Figura 5 - 1) de controle que sero enviados a

    partir do navegador Web que estiver rodando na mquina Cliente. O Servidor por sua vez

    2 Detalhes do protocolo CAN sero analisados no Captulo 5

  • 10

    interpretar estes pacotes de controle recebidos do Cliente e responsvel em atualizar uma base de

    dados e repassar estes pacotes de controle atravs da porta RS-232C para o Controlador Mestre da

    rede interna da casa.

    Figura 5 Estrutura completa do servidor

    Para viabilizar o desenvolvimento da tarefa atribuda ao computador Servidor, utilizaremos

    um servidor Web Apache (link [33]), responsvel em disponibilizar a interface (a partir deste

    momento comearemos a tratar esta interface como sendo a homepage da residncia) ao(s)

    Cliente(s) (navegador Web). Juntamente com o servidor Web utilizada a linguagem de

    programao PHP, link [28] (Figura 5 - 2) cuja responsabilidade receber os pacotes de controles

    enviados pelo usurio atravs do navegador Web, atualizando uma base de dados (Figura 5-4)

    contida no servidor. Esta base de dados tem como principal funo manter o estado atualizado sobre

    cada aplicao domstica que est sendo controlada remotamente.

    Enquadra-se como responsabilidade do Servidor a atualizao, de maneira transparente ao

    usurio, da interface do navegador Web (Cliente). Em outras palavras, isso possibilita que o usurio

    tenha sempre o ltimo estado (Figura 5 - 5) sobre sua residncia sem a necessidade de ficar

    acionando um comando de atualizao da interface.

    Ainda no contexto do Servidor, existe uma aplicao (Figura 5 - 3) escrita em Java,

    responsvel pela comunicao com a porta serial RS-232C possibilitando o envio de pacotes de

  • 11

    controle ao Controlador Mestre e tambm do recebimento dos pacotes de controle provenientes do

    Controlador Mestre.

    Outro objetivo principal da aplicao Java garantir a consistncia das aplicaes

    domsticas da residncia de acordo com o seu respectivo status no banco de dados, pois este ltimo

    reflete diretamente os comandos de atualizao enviados pelo usurio a sua casa.

    A autenticao de usurios e criptografia dos dados so mecanismos utilizados para garantir

    a segurana do sistema, impedindo que pessoas desautorizadas tenham acesso ao sistema. Como

    soluo para esta preocupao, utiliza-se o conceito de login e criptografia de dados garantindo

    segurana do sistema.

    O Controlador Mestre da rede residencial far a codificao dos dados recebidos pelo

    Servidor para o protocolo CAN. Alm disso, tarefas como endereamento dos pacotes,

    gerenciamento do barramento e decodificao dos dados recebidos dos perifricos para o servidor,

    tambm sero tarefas do Controlador Mestre.

    A proposta instalar na casa uma rede serial. Essa rede interligar todos os perifricos e nela

    trafegaro os comandos e dados necessrios para se atingir o objetivo de automatizar a casa. Estes

    perifricos sero controlados pelo Controlador Mestre que receber comandos do Servidor.

    O protocolo CAN ser implementado utilizando um core disponvel [38], descrito em

    VHDL [3], e implementado em placas de prototipao que emularo alguns perifricos de uma casa

    real. A Figura 6 apresenta uma proposta para simular o controle de perifricos de uma casa.

    Figura 6 Estrutura da apresentao

    Apesar do projeto ser especificado com a flexibilidade necessria para que possa monitorar

    e acionar grande parte dos perifricos comuns em uma casa, esse projeto se limitar a ter como

    cargas LEDs e displays de sete segmentos que simbolizaro os perifricos reais da casa, conforme

  • 12

    Figura 6. O acionamento de cargas maiores como lmpadas, demandam um circuito que comporte

    maior potncia. O conhecimento da montagem de tal circuito no faz parte do escopo do atual

    trabalho. As placas de prototipao podero enviar dados ao servidor atravs de chaves e botes.

    Para simular a fiao da casa usaremos o cabos seriais usados para comunicao de RS232C

  • 13

    3 Definies

    O objetivo deste captulo abordar definies fundamentais que so a base deste projeto,

    portanto a compreenso destes conceitos fundamental. A Seo 3.1 define o que FPGA. A Seo

    3.2 define a linguagem VHDL. Na Seo 3.3 definem-se alguns conceitos relacionados linguagem

    de programao Java.

    3.1 FPGA

    A tecnologia VLSI abriu as portas para a implementao de circuitos digitais poderosos e de

    baixo custo. Porm o processo de manufatura desses circuitos perdura meses. Isso resulta em um

    alto preo a no ser que haja produo em volumes muitos grandes.

    Na indstria eletrnica vital que novos produtos alcancem o mercado o mais rpido

    possvel, e para isso reduzir o tempo de desenvolvimento e produo essencial. Field

    Programmable Gate Array (FPGA) surgiu como soluo para esse problema, porque prov

    implementao imediata e com baixo custo de prototipao.

    3.1.1 Evoluo dos Dispositivos Programveis

    Dispositivos programveis so circuitos de propsito geral que podem ser configurados para

    uma grande variedade de aplicaes.

    Um dos primeiros tipos de dispositivo programvel foram as Programmable Read-Only

    Memory (PROM). As PROMS consistem de uma matriz de clulas que pode ser programada

    somente uma vez. Esse dispositivo usado para implementar tabelas verdade.

    Outro dispositivo programvel, especfico para implementao de circuitos lgicos, o

    Programmable Logic Device (PLD). Esse dispositivo baseado em uma matriz de portas E

    conectada a uma matriz de portas OU. PLDs possibilitaram um grande avano na implementao de

    circuitos lgicos, porm, devido a sua estrutura simples (limitao para lgica seqencial), s se

    podia desenvolver pequenos circuitos lgicos.

    O Mask Programmable Gate Arrays (MPGA) um outro tipo de dispositivo programvel

    que pode interconectar elementos de acordo com especificaes do usurio. A maior vantagem dos

  • 14

    MPGAs sobre os PLDs que eles possuem uma estrutura mais genrica permitindo a

    implementao de circuitos maiores.

    3.1.2 FPGA

    Assim como um MPGA, um FPGA (Field Programmable Gate Array) um circuito

    programvel composto por um conjunto de clulas lgicas ou blocos lgicos alocados em forma de

    uma matriz [6] [7]. Em geral, a funcionalidade destes blocos assim como o seu roteamento, so

    configurveis por software. A Figura 7 ilustra a organizao interna de um FPGA com arquitetura

    de roteamento baseada em canais horizontais e verticais (exemplo: Xilinx famlia XC4000).

    Figura 7 Estrutura interna de um FPGA

    3.1.3 Blocos Lgicos

    As funes lgicas so implementadas no interior dos blocos lgicos. A arquitetura de um

    bloco lgico pode ser desenvolvida de vrias formas e ter vrios recursos. Cada fabricante e famlia

    de dispositivos pode ter uma arquitetura diferente. Porm, importante que essa escolha vise a

    maior versatilidade possvel. A Figura 8 apresenta a arquitetura interna de um bloco lgico de um

    FPGA XC 3000 fabricado pela Xilinx.

  • 15

    Em algumas arquiteturas os Blocos Lgicos possuem recursos seqenciais tais como flip-

    flop ou registradores. No CLB da Figura 8, por exemplo, h dois flip-flops.

    Figura 8 Estrutura de um bloco lgico Xilinx XC3000

    3.1.4 Roteamento

    Roteamento responsvel pela interconexo entre os blocos lgicos. A conexes fsicas

    entre os fios so feitas ora com transistores de passagem controlados por bits de memria (PIP) ora

    com chaves de interconexo (Switch Matrix).

    Os recursos de roteamento da srie XC4000 da Xilinx possuem:

    Conexes Globais: formam uma rede de interconexo em linhas e colunas de cinco fios,

    que se ligam atravs de chaves de interconexo. Esta rede circunda os blocos lgicos (CLBs) e os

    blocos de E/S (IOBs);

    Matrizes de Conexo (Switch Matrix): so chaves de interconexo que permitem o

    roteamento entre os canais de roteamento (Figura 9). Estas conexes so programveis na fase de

    roteamento automtico, executada pelo software de projeto do fabricante do FPGA.

    4

    3

    2

    1

    1 2 3 4

    1 2 3 4

    4

    3

    2

    1

    Figura 9 Esquema de uma Switch Box

  • 16

    Conexes Diretas: so conexes entre CLBs vizinhos e permitem conectar blocos com

    menor atraso, pois no utilizam os recursos globais de roteamento.

    Linhas Longas: so conexes que atravessam todo o circuito sem passar pelas switch

    matrix e so utilizadas para conectar sinais longos e com restries de skew entre mltiplos destinos

    (Figura 10)

    Figura 10 Roteamento em FPGA

    3.1.5 Clulas de I/O

    As I/O Cells ou I/OBs (I/O Blocks)3 so blocos que se localizam na periferia do FPGA,

    como mostra a Figura 7, e tm a funo de fazer a interface com o mundo externo. Os blocos de E/S

    podem ter capacidade para usar buffers tristate e flip-flops para os sinais da sada.

    3.1.6 Aplicaes de FPGAs

    Implementao de Lgica Randmica - Lgica randmica era usualmentedesenvolvida em PLA4 , porm FPGAs atuais podem armazenar o equivalente a vrios

    PLAs e com melhor desempenho eltrico;

    3 Blocos de Entrada e Sada de Dados4 Programmable Logic Array (Matriz de Programao Lgica)

  • 17

    Integrao de Componentes - Pode-se diminuir a rea de uma placa de circuitoimpresso integrando para dentro de um FPGA vrios componentes simples da placa

    (lgica de cola);

    Prototipao - FPGAs foram idealmente desenvolvidos visando aplicaes deprototipao. O baixo custo e curto tempo de implementao de aplicaes traz

    grandes vantagens sobre a tcnica tradicional. Assim, prototipao pode ser feita

    rapidamente e sem custos adicionais em caso de mudanas no projeto;

    Reconfigurao de Hardware - Devido a sua grande flexibilidade de interconexo,FPGAs so aplicados em sistemas onde o hardware pode ser reconfigurado durante

    funcionamento. Existe a possibilidade de se fazer atualizao de hardware

    remotamente, sem que seja necessrio trocar de placa.

    3.2 VHDL

    VHDL uma linguagem textual para descrever sistemas digitais. Pode-se, atravs de um

    descrio VHDL, descrever o comportamento de um circuito ou componente digital [3] [5].

    Uma HDL uma linguagem que descreve a funcionalidade de um dado circuito. Essa

    descrio poder ser verificada em um simulador. A diferena que esse sistema descrito em HDL

    poder ser implementado em hardware em um dispositivo programvel FPGA ou outro tipo de

    ASIC.

    Para manter o crescimento do desenvolvimento de dispositivos cada vez maiores e mais

    complexos, os mtodos de desenvolvimento e ferramentas para projetos de sistemas digitais

    tambm deveriam acompanhar esse crescimento. Para resolver esse problema foi reunido um grupo

    de especialistas em sistema digitais, incluindo empresas, universidades e rgos militares. O foco

    principal era aprimorar o processo de desenvolvimento, aumentar a produtividade do desenvolvedor

    e diminuir o ciclo de desenvolvimento de sistemas digitais. Os dois maiores avanos resultantes

    desse trabalho foi a criao das HDLs e de seus sistemas de sntese lgica.

    Existem dezenas de outras linguagens de descrio de hardware (Verilog, Abel, Handel-C,

    AHDL, etc.), porm VHDL foi adotada para esse projeto por ser uma linguagem padro. Com isso,

    ela a mais largamente usada e com mais documentao disponvel. Alm disso, essa linguagem

    a que os componentes do grupo mais dominam.

    A complexidade de sistemas digitais modernos conduz cada vez mais ao uso de altos nveis

    de abstrao durante o projeto. Linguagens de descrio de hardware, como VHDL, tm sido

  • 18

    crescentemente empregadas para descrever o comportamento desses sistemas digitais [3]. Essa

    descrio pode ser puramente comportamental, usada somente para fins de documentao e

    descrio funcional simulvel, ou pode ser sintetizvel.

    Para se chegar a uma descrio sintetizvel so necessrias vrias etapas de refinamento da

    descrio. Esses refinamentos visam alteraes na descrio de forma a alcanarem o subconjunto

    de instrues HDL especficas que a ferramenta de sntese suporta.

    Entre os aspectos que favorecem o desenvolvimento de hardware usando HDLs podemos

    citar:

    time-to-market Nos tempos atuais a evoluo de tecnologias est acontecendo cadavez mais rpido. Se h dez anos atrs um produto demorava 6 meses para ser

    desenvolvido, mas permanecia no mercado por 2 anos, hoje um produto no

    permanece mais de 18 meses, logo o seu desenvolvimento deve levar bem menos

    tempo. Isso tem forado o estudo de novas tcnicas para diminuir o ciclo de

    desenvolvimento de sistemas digitais. O processo de sntese lgica automatizada ataca

    esse problema mecanizando etapas mais abstratas de desenvolvimento.

    menor ciclo de desenvolvimento O ciclo de desenvolvimento pode ser reduzido como uso de VHDL, devido eliminao de gerao, manuteno de esquemticos e pela

    diminuio de erros de desenvolvimento pelo uso de simulao nos ciclos iniciais do

    projeto;

    menor custo de desenvolvimento Diretamente ligado ao tpico anterior;

    aumento de qualidade no desenvolvimento Essa vantagem alcanada pelo fato queVHDL facilita o rpido experimento com diferentes arquiteturas e tcnicas de

    implementao, e pela capacidade das ferramentas de sntese otimizarem um projeto

    tanto para rea mnima quanto para velocidade mxima;

    evoluo da tecnologia Novos dispositivos surgem com mais capacidade e maisrecursos internos;

    gerenciamento do projeto Projetos em VHDL so mais fceis de serem gerenciadosque os projetos baseados em esquemtico. Eles facilitam a estruturao de

    componentes (top-down), facilitam a documentao e so necessrias menos pessoas

    para desenvolver e verificar, sendo tambm mais simples modificar o projeto;

    VHDL independente de tecnologia e fabricante, porm sabe-se que na prtica no independente de ferramenta de sntese e de simulao.

  • 19

    As desvantagens de se usar VHDL apontam, basicamente, para o aprendizado de uma

    metodologia nova e complexa. Citamos desvantagens tais como:

    Mudana de cultura;

    Aprendizado e treinamento;

    Escolha de uma ferramenta de desenvolvimento;

    Circuito menos otimizado que esquemtico;

    Ferramentas de sntese ineficientes.

    3.2.1 Descrio Estrutural

    Um sistema digital pode ser descrito como um mdulo com entradas e sadas, onde o valor

    das sadas uma funo dos valores de entrada. A Figura 11 (a) ilustra esse conceito, onde o

    mdulo F possui duas entradas A e B e uma sada Y. Em VHDL o mdulo F chamado de entidade

    e as entradas e sadas so chamadas de portas.

    Um modo de descrever a funo de um mdulo descrever a funo de seus sub-mdulos e

    suas conexes. Cada sub-mdulo uma instncia de uma entidade, e as conexes que os conectam

    so chamados de sinais. A Figura 11 (b) mostra como a entidade F pode ser formada por instncias

    das entidades G, H e I. Este tipo de descrio chamada de descrio estrutural.

    A

    BYF

    A

    BYG

    A

    BYH

    A

    BYI

    FA

    B

    Y

    (a)

    (b)

    Figura 11 Exemplo em diagrama de uma descrio estrutural em VHDL

    3.2.2 Descrio Comportamental

    Em muitos casos no necessrio descrever a estrutura interna de um componente, uma

    descrio que tenha o mesmo resultado funcional o suficiente. Esse tipo de descrio chamada

    de descrio funcional ou comportamental.

    Para ilustrar essa idia, suponha que a funo da entidade F seja um ou exclusivo. A

    descrio comportamental de F poderia ser uma funo como Y = A . B + A . B .

  • 20

    3.2.3 Exemplo de Descrio VHDL

    Nesta Seo, descreveremos um simples exemplo de um contador de dois bits.

    Logo abaixo est a descrio da entidade. A entidade especifica a interface externa do

    componente, incluindo os pinos de entrada e sada.entity cont2 is

    port ( clock : in bit;q1, q0 : out bit);

    end cont2;

    Esse trecho de programa especifica uma entidade com uma entrada e duas sadas do tipo bit

    que assume valores 0 ou 1.

    A funo que um componente executa especificada na arquitetura do componente. O

    trecho de programa abaixo especifica uma arquitetura comportamental para a entidade cont2.

    architecture comportamental of cont2 isbegin

    count_up: process (clock)variable count_value : natural := 0;

    beginif clock = '1' and clockevent then

    count_value := (count_value + 1) mod 4;q0

  • 21

    T_FLIPFLOP

    CK Q

    INVERTERA Y

    T_FLIPFLOP

    CK Q

    CONT2

    CLOCK Q0

    Q1FF1

    FF0

    INV_FF0

    BIT_0

    BIT_1INV

    Figura 12 Estrutura do componente Cont2

    architecture estrutura of cont2 iscomponent t_flipflop

    port (ck : in bit; q : out bit);end component;component inverter

    port (a : in bit; y : out bit);end component;signal ff0, ff1, inv_ff0 : bit;

    beginbit_0 : t_flipflop port map (ck => clock, q => ff0);inv : inverter port map (a => ff0, y => inv_ff0);bit_1 : t_flipflop port map (ck => inv_ff0, q => ff1);q0

  • 22

    3.3 Java

    Java ([17], [25] e link [14]) uma linguagem de programao utilizada principalmente para

    o desenvolvimento de aplicaes que rodem em ambientes distribudos, como por exemplo a

    Internet, apesar de possibilitar aos programadores o desenvolvimento de aplicaes que rodem em

    computadores isolados.

    3.3.1 Mquina Virtual Java

    Mquina hipottica (software) responsvel em interpretar e executar o bytecode gerado pelo

    compilador da linguagem Java.

    A Mquina Virtual Java [17] [25] dependente da plataforma, devido necessidade de

    interpretar o bytecode e gerar instrues para a mquina real executar.

    3.3.2 Java Communications API (CommAPI)

    Pacote de comunicao em Java desenvolvido pela Sun MicroSystems (link [32]) que

    permite o desenvolvimento de aplicaes com suporte a porta de comunicao serial RS-232C e

    portas paralelas padro IEEE 1284.

    3.3.3 Java Server Pages JSP

    Tecnologia desenvolvida com o objetivo de facilitar o desenvolvimento de aplicaes Web

    dinmicas, escritas em Java.

    Java Server Pages (link [36]) consiste basicamente na construo de pginas Web utilizando

    HTML para a definio da interface, e juntamente com o HTML existe a incluso de linhas de

    cdigo Java, responsveis em definir a parte dinmica da aplicao. O cdigo Java identificado

    atravs de indicadores especiais de bloco.

    3.3.4 Compilador Just-in-time - JIT

    A mquina virtual Java vem acompanhada opcionalmente de um compilador especial

    denominado just-in-time compiler [17] [25] responsvel pela compilao dinmica dos bytecodes

    em cdigos executveis. Utilizado como alternativa para trechos de programas onde o interpretador

    Java deve executar muitas vezes, pois sabe-se que a execuo de um cdigo executvel binrio

    muito mais rpida do que a sua execuo atravs da interpretao. Exemplo: bloco de cdigo dentro

    de um lao.

  • 23

    4 Protocolos de Controle

    A crescente demanda de comunicao, conectividade e fluxo de informaes impulsionou a

    criao de vrios protocolos de comunicao. De acordo com as reas de aplicao para as quais os

    protocolos so designados, eles podem ser diferenciados. O propsito dessa Seo mostrar as

    mtricas usadas para escolher o protocolo a ser implementado neste trabalho.

    A Seo 4.1 introduz o leitor ao conceito de protocolo de controle. A Seo 4.2 apresenta

    caractersticas, parmetros e requisitos de protocolos em geral. A Seo 4.3 apresenta um resumo

    com caractersticas principais de alguns dos protocolos estudados. A Seo 4.4 faz um resumo

    comparativo entre todos os protocolos estudados.

    4.1 Introduo

    Protocolo a especificao de um conjunto de regras em que diversos equipamentos

    respeitam para trocar informaes. Mais especificamente, protocolos de controle so empregados,

    principalmente na indstria, como linguagem de comunicao entre os mdulos processadores

    responsveis pelo controle de atuadores e monitorao de sensores. A Figura 13 ilustra esse

    conceito. Dentro de cada mdulo processador que est ligado no meio de comunicao deve existir

    um sub-mdulo (P de protocolo) que contm o algoritmo da linguagem que os processadores

    entendem. Esse algoritmo chamado de protocolo de comunicao.

    Figura 13 Modelo bsico de mdulos para automao

  • 24

    A rea de protocolos de controle tem ganho grande importncia devido ao crescimento do

    mercado de automao (industrial, predial, domstica, de escritrio, entre outros). Outro fator

    importante a taxa de crescimento da tecnologia dos dispositivos, que tem oferecido a cada ano

    mais funcionalidade com menores preos. Devido a isso, o desenvolvimento de sensores e

    atuadores inteligentes5 (Figura 14) tem sido impulsionado, exigindo a definio de padres para os

    protocolos de comunicao. De um ponto de vista mais genrico, o mercado tem exigido solues

    mais competitivas, que so caracterizadas por sistemas de controle altamente flexveis s

    necessidades do consumidor. A chave para atingir essa meta a padronizao das interfaces de

    comunicao.

    Figura 14 Estrutura interna de um mdulo de automao inteligente

    Quando vamos fazer uma pesquisa de protocolos de comunicao para ser implementado em

    algum projeto, deve-se conhecer, a priori, a aplicao alvo. Hoje em dia existem em grande nmero

    de protocolos disponveis. Cada um destes possui caractersticas que o protocolo do concorrente

    no tem ou simplesmente para fins de proteger seu sistema e restringir o consumidor aos produtos

    de um nico fabricante. Devido ao fato de termos muitos protocolos disponveis, os fechados6,

    proprietrios e no padronizados tem perdido espao para os protocolos abertos, certificados e

    padronizados.

    Contudo, conhecer somente a aplicao do protocolo que ser desenvolvido no basta, pois

    para uma aplicao especfica, ainda existiro dezenas de possibilidades. Algumas caractersticas

    5 Com a alta taxa de integrao que, hoje em dia, dispositivos eletrnicos possuem, vivel a construo de sensores e atuadores inteligentes que incorporam dentro de um

    nico chip elementos de memria, de protocolo e de processamento para verificar limites de sensores, fazer linearizao de sinais, etc.

    6 sem especificao tcnica do protocolo.

  • 25

    tcnicas devem ser investigadas para se escolher corretamente o protocolo. A prxima Seo trata

    justamente disso, explicando caractersticas tcnicas que devem ser estudadas.

    4.2 Caractersticas e Requisitos de Protocolos

    O estudo das caractersticas de protocolos depende muito da aplicao destes. Por exemplo,

    se procurarmos por um protocolo para ser usado em uma grande indstria metalrgica esse

    protocolo deve ter longo alcance para poder se estender por toda empresa, poder ligar vrios nodos,

    ter grande imunidade a rudos usando tcnicas de deteco e correo de erros, ter alta

    disponibilidade e tolerncia a falhas, uma vez que grandes valores e vidas humanas podem estar em

    jogo. J um protocolo para aplicao de entretenimento, basicamente s usado dentro do ambiente

    domstico, no necessita ter alta disponibilidade, precisa ter grande taxa de transferencia para

    transportar vdeo e som, um alcance curto j ser o suficiente, compatibilidade entre vrios

    fabricantes, entre outras caractersticas.

    Esses dois exemplos citados acima, bem ortogonais, nos do idia que as caractersticas e

    requisitos de um protocolo podem variar muito, dependendo exclusivamente de sua aplicao.

    Porm, como dito na Seo anterior, conhecendo-se apenas a aplicao no se faz uma escolha

    adequada de protocolo. A seguir descrevemos mais algumas caractersticas tcnicas que devem ser

    avaliadas:

    custo/benefcio da tcnica de cabeamento. A tcnica de cabeamento e conexo umdos itens que mais influenciam no custo total de instalao de uma rede;

    custo de manuteno e facilidade de diagnosticar problemas;

    confiabilidade as tcnicas de deteco e correo de erros so adequadas a suaaplicao? O ambiente onde a rede ser instalada possui muito rudo? Confiabilidade

    pode ser aplicada aos dados, com tcnicas como CRC, e no meio de comunicao;

    disponibilidade existem aplicaes onde paradas de sistema no so tolerveis. Umexemplo seria uma rede de processadores de um avio, onde a segurana de centenas

    de pessoas est em jogo. Nesse tipo de aplicao, o protocolo deve conter tcnicas de

    tolerncia a falhas visando minimizar a probabilidade de falhas do sistema;

    flexibilidade capacidade de modificao do layout do sistema;

    compatibilidade importante que vrios fabricantes suportem o protocolo escolhidopara que voc no fique dependendo de um s fabricante, tendo maior liberdade de

    escolha de equipamentos e de suporte tcnico;

  • 26

    parametrizao um requisito diretamente relacionado com flexibilidade.Corresponde facilidade de insero de novos nodos na rede;

    variabilidade de aplicaes o mesmo protocolo pode ser empregado em aplicaesdiferenciadas?

    protocolos de alto nvel existem camadas de alto nvel (aplicao) para o protocolo?

    metodologias, ferramentas para teste e diagnstico;

    interface com PC;

    drivers de hardware e software;

    taxa de comunicao a taxa mxima de comunicao do protocolo compatvel como tempo de resposta do seu sistema?

    tempo de latncia atende as suas necessidades?

    tcnica de endereamento suporta broadcasting e multicasting?

    metodologia de amostragem - amostragem baseada em polling ou baseada emeventos?

    a rede ser multi-mestre ou com um nico mestre? Uma rede que suporta mltiplosmestres tem uma maior disponibilidade. Em uma rede com um nico mestre corre-se o

    risco de, se o mestre falhar, todo o sistema entrar em colapso;

    topologia barramento, anel, estrela, hierrquico, entre outros. Topologia estrelacionada com o nmero mximo de nodos da rede e com o comprimento mximo;

    resposta em tempo real seu sistema exige resposta em tempo real?

    tcnica de acesso ao meio redes com mltiplos mestres devem ter um algoritmo deacesso ao meio que evite colises e que, preferencialmente, tenha suporte a prioridade;

    requisio remota um nodo pode pedir um dado para outro nodo na rede. Essacaracterstica til para se verificar se um nodo est em funcionamento;

    confirmao de recebimento de pacotes por parte do destinatrio - reconhecimento(acknowledge);

    sincronizao inter-processador deve-se manter sincronismo em uma rede ondedispositivos possuem velocidades diferentes;

  • 27

    nmero de mensagens nmero mximo de mensagens que o sistema suporta;

    comprimento fsico da rede;

    nmero de bytes de dados nmero mximo de bytes que um pacote pode transmitir;

    facilidade de integrao um item relacionado ao custo total do sistema;

    maior aceitao no mercado mais fcil encontrar suporte e pessoal tcnico;

    potencial de proliferao;

    padronizao verificar se o protocolo estudado certificado e padronizado;

    Plug and Play maior facilidade de instalao.

    4.3 Protocolos Analisados

    Esta Seo tem por objetivo explicar resumidamente as caractersticas dos principais

    protocolos analisados para a implementao deste trabalho. Muitos desses protocolos no possuam

    documentao disponvel e gratuita, por isso no conseguimos detalh-los suficientemente. Porm

    acreditamos que estes deveriam constar neste trabalho para que pudssemos fazer comparaes e

    aprender mais sobre as caractersticas dos protocolos de controle. Essa Seo tambm

    especialmente interessante para pessoas que estejam fazendo pesquisa de protocolos, pois neste

    documento o leitor encontrar uma fonte com referncias resumidas de vrios protocolos,

    facilitando seu trabalho de pesquisa.

    Os protocolos analisados foram: EHS, BDLC, LON, EIB, X-10, CeBus e CAN. CAN

    porm, ser explicado em detalhes no Captulo 5.

    4.3.1 European Home Systems - EHS

    O protocolo EHS foi criado em 1992 por uma comisso de grandes empresas europias do

    ramo de eletrodomsticos [1] [2]. Esse esforo garantiu a criao de um protocolo aberto e com

    uma vasta gama de aplicaes, permitindo que equipamentos de diferentes fabricantes

    comuniquem-se de forma que possam compartilhar recursos.

    Hoje em dia o protocolo j chegou a maturidade. J existem produtos em hardware e

    software. As maiores empresas europias do ramo eletrodomstico j incluram EHS em seus

    produtos.

  • 28

    A especificao completa deste protocolo chama-se EHS specification R1.2 e pode ser

    encontrada nos links [23] [24] [25].

    4.3.1.1 Arquitetura

    O modelo de comunicao EHS semelhante a estrutura do modelo OSI. EHS especifica a

    camada fsica, de enlace, de rede e de aplicao, conforme Figura 15.

    Figura 15 Arquitetura do protocolo EHS

    A camada de aplicao traduz a linguagem da aplicao em pacotes de dados capazes de

    circular na rede.

    A camada de rede est relacionada ao roteamento e endereamento dos pacotes.

    A camada de enlace, dividida em MAC e LLC, gerencia a converso de bits, regras de

    acesso a rede, recebimento e envio de pacotes e mecanismos de repetio.

    Vrias camadas fsicas esto definidas devido ao grande nmero de aplicaes que o

    protocolo abrange. Rede eltrica, infra-vermelho e rdio podem ser usados como canal de

    comunicao de baixa velocidade sem a necessidade de cabeamento extra. Um exemplo seria

    gerenciamento de aquecedores, ar condicionados e acionamentos remotos em geral. Par tranado e

    cabo coaxial podem ser usados quando se requer alta velocidade, por exemplo, aplicaes de vdeo,

    udio e segurana. As caractersticas de cada meio fsico suportado pelo protocolo so mostradas na

    Tabela 1.

    4.3.1.2 Caractersticas do Protocolo

    Plug and Play;

  • 29

    Interoperabilidade;

    Expansionabilidade e configurao automtica.

    4.3.1.3 Meios Fsicos

    Uma parte importante de um sistema de automao domstica o meio de comunicao. A

    especificao EHS, verso 1.2, cobre seis meios para transportar informaes sendo que outros

    meios ainda podero vir a ser acrescentados.

    MeioFsico

    ParTranado

    tipo1TP1

    ParTranado

    tipo1TP2

    CaboCoaxial

    CX

    Linha deEnergia

    PL

    RdioRF

    Infra-Vermelho

    IR

    Aplicao Propsitogeral,

    controle

    telefonia,ISDN,dados,

    controle

    udio,Vdeo, TV,

    dados,controle

    controle telefonesem fio,controle

    controleremoto

    Taxa detransmisso

    9.6 Kbps 64 Kbps 9.6 Kbps 2.4 Kbps 1.2 Kbps 1.1 Kbps

    Acesso CSMA/CA CSMA/CD CSMA/CA CSMA/ack CT2 -Alimentao 35 V 35 V 15 V 230 Vac - -Codificao - TDM FDM - FDM -Topologia Livre barramento barramento livre livre livreUnidades 128 40 128 256 256 256Alcance 500 m 300 m 150/50 m casa 50/200 m sala

    Tabela 1 Tipos de meios fsicos EHS

    Os meios mais importantes para o protocolo so o linha de energia e par tranado (TP1). Em

    um sistema onde o custo prioridade o uso de linha de energia tem uma grande vantagem em

    relao a outros meios. No necessrio cabeamento extra, pois todas as casas possuem um

    cabeamento da rede eltrica.

    Vale comentar que o meio por linha de fora usa uma tcnica de deteco e correo de

    erros chamada FEC (Forward Error Correction) que adiciona 6 bits de codificao para cada 8 bits

    de dados. Tal redundncia necessria devido ao elevado nvel de rudo que esse meio possui. Os

    outros meios possuem outro mtodo de deteco de falhas chamado CRC (Cycle Redundancy

    Check).

    4.3.1.4 Estrutura da Rede

    EHS prov vrias implementaes de camadas fsicas. Com isso a estrutura da rede pode ser

    formada por vrias sub-redes, sendo cada uma baseada em uma camada fsica. Para interligar todas

  • 30

    as sub-redes usam-se roteadores, formando um nico sistema de controle, como mostra Figura 16.

    Gateways so usados para interligar a rede EHS em uma rede no EHS.

    Figura 16 Estrutura da rede EHS

    4.3.1.5 Formato dos Pacotes

    No conseguimos um material que detalhasse a funo de cada campo, porm podemos

    destacar o endereo de origem e destino do pacote, FCS como tcnica de deteco de falhas e a

    prioridade da mensagem, como campos auto explicativos. A Figura 17 ilustra o formato do pacote

    EHS.

    Figura 17 Formato dos pacotes EHS

    4.3.1.6 Funes do Gerenciamento de Rede

    EHS prov e integra vrias funes de gerenciamento de rede. So explicados abaixo

    algumas dessas funes.

    Registro

    Quando uma nova unidade instalada no sistema, a sua primeira funo executar o

    processo de registro. O registro um processo automtico responsvel por carregar um novo

    endereo fsico unidade.

    Inscrio

  • 31

    Depois do processo de registro, o processo de inscrio ser iniciado. Durante essa etapa a

    unidade recm instalada informa a todas outras unidades instaladas quais so suas funes. Essa

    etapa necessria para que todo o sistema tenha conhecimento dos recursos disponveis de forma

    que possa ser compartilhado.

    Esses dois processos no necessitam de interveno do usurio, sendo uma das tcnicas do

    protocolo para atender ao requisito plug and play.

    4.3.1.7 Concluses

    EHS um protocolo criado baseado nos requisitos e restries que automao domstica

    exige. Porm, percebemos que se trata de um protocolo muito amplo e com vrias camadas de

    implementao (aplicao, rede, enlace e fsico), por esse motivo no ser o protocolo selecionado

    para este trabalho.

    4.3.2 Byte Data Link Controller - BDLC

    O mdulo Byte Data Link Controller (BDLC) um mdulo de comunicao serial que

    permite ao usurio mandar e receber mensagens por uma rede Society of Automotive Engineers

    (SAE) J1850.

    Este protocolo foi desenvolvido especificamente para aplicaes automotivas, porm foi

    estudado por possuir fcil acesso a documentao completa e gratuita, atravs do link [26], e ser

    simples de implementar.

    4.3.2.1 Caractersticas

    Como caractersticas bsica podemos citar:

    compatvel com SAE J1850, que um protocolo automotivo;

    modulao Variable Pulse Width (VPW) de 10,4 Kbps;

    filtro de rudo digital;

    deteco de coliso;

    gerao e verificao de Cyclic Redundancy Check (CRC);

    dois modos de conservao de energia com wake-up automtico;

    recebe e transmite blocos;

  • 32

    recebimento em quatro vezes a velocidade normal (41,6 Kbps).

    4.3.2.2 Formato do Pacote

    A funo dos blocos do pacote BDLC mostrada na Figura 18 e citada logo abaixo.

    Figura 18 Formato do pacote BDLC

    SOF incio do pacote (start of frame);

    DATA bloco de dados. Este bloco deve conter pelo menos um byte de dados;

    CRC - bits usados em controle de erros. O polinmio gerador x^8 + x^4 + x^3 +x^2 +1;

    EOD fim dos dados (end of data) ;

    IFR in-frame response. Explicado na Seo 4.3.2.3;

    EOF fim do pacote (end of frame);

    IFS separador entre pacotes (inter-frames separator).

    4.3.2.3 In-Frame Response

    In-Frame response especifica formas de troca de informaes entre transmissor e receptor.

    BDLC suporta 4 modos diferentes que podem ser visualizados na Figura 19.

    Abaixo segue uma descrio dos tipos de respostas de requisio de dados e mtodos de

    reconhecimento (acknowledgement) existentes no protocolo SAE J1850:

    Tipo 0 Dado enviado mas no requisitado resposta;

    Tipo 1- Usado em broadcast. necessrio que um dos destinos responda para se validaro pacote enviado;

    Tipo 2- Usado em broadcast. necessrio que todos os destinos respondam para sevalidar o pacote enviado;

    Tipo 3 Usado em requisio de dados. Receptor retorna dados para o transmissor dopacote de requisio.

  • 33

    Figura 19 Tipos de in-frame response

    4.3.2.4 Diagrama de Blocos

    Os prximos itens desta Seo tratam da diviso interna do protocolo: Interface com CPU,

    Gerenciador de protocolo, Interface MUX.

    Interface com CPU

    Esse bloco tem a funo bsica de fazer a interface do mdulo BDLC com a CPU. Ele

    composto de cinco registradores que podem ser visualizados na Figura 20.

    Figura 20 Interface com CPU

    BCR1 (Control Register 1) configura e controla o BDLC. Suas funes incluem seleodo clock, habilitao de interrupes e indicao de mensagens que devem ser ignoradas.

    BSVR (State Vector Register) indica o estado atual de operao do BDLC.

    BCR2 (Control Register 2) controla parmetros de transmisso. Quando a CPU envia ourecebe um dado, esse dado passado byte a byte para essa interface sendo armazenado

    temporariamente no registrador BDR (Data Register). Bytes que sero transmitidos pela

    CPU devem ser primeiramente escritos no BDR para chegarem ao barramento. Bytes

    recebidos do barramento sero lidos pela CPU tambm por esse registrador.

  • 34

    BARD (Analog Roundtrip Delay Register) Configura o BDLC para os diferentes tipos detransceivers.

    Gerenciador de Protocolo

    A Figura 21 ilustra a estrutura interna do gerenciador de protocolo.

    Figura 21 Gerenciador de pr