Você está na página 1de 35

ESCOLA SUPERIOR BATISTA DO AMAZONAS

PROGRAMA DE PÓS-GRADUAÇÃO LATO SENSU

ANDERSON ALEXANDRE SILVA DE ALMEIDA

SISTEMA DE SEGURANÇA RESIDENCIAL EM AMBIENTE DE TV DIGITAL

Manaus

2011

ANDERSON ALEXANDRE SILVA DE ALMEIDA

SISTEMA DE SEGURANÇA RESIDENCIAL EM AMBIENTE DE TV DIGITAL

Trabalho de Conclusão de Curso apresentado como exigência parcial para obtenção do certificado de Especialista em Sistemas de TV Digital, da Escola Superior Batista do Amazonas.

Orientador:

Oliveira

Manaus

2011

MSC.

Rodrigo

Ribeiro

de

ANDERSON ALEXANDRE SILVA DE ALMEIDA

SISTEMA DE SEGURANÇA PARA TV DIGITAL

Trabalho de Conclusão de Curso aprovado como requisito parcial para obtenção do Certificado de Especialista em Sistema de TV Digital, da Escola Superior Batista do Amazonas.

Aprovado em:

BANCA EXAMINADORA:

Ass:

Pres.: Mestre, Rodrigo Ribeiro, UFAM Ass:

1º Exam.: Especialista, Heitor Savino, UFAM

Dedico o trabalho aos meus pais e familiares por acreditarem em mim e apoio para realização do mesmo.

A mente que se abre a uma nova ideia jamais voltara ao seu tamanho original. (Albert Einstein)

RESUMO

Neste trabalho foi desenvolvido um sistema de hardware e software, para auxiliar na segurança residencial em ambiente de TV Digital. O projeto consiste no desenvolvimento de uma aplicação residente ao receptor utilizada para monitorar os sensores de alarme distribuídos em determinados pontos de uma residência. O monitoramento permite que o usuário (telespectador) visualize através de seu televisor uma indicação visual do local onde o sensor foi disparado. Com isso, o telespectador enquanto assiste às programações da televisão terá possibilidade ao mesmo tempo de cuidar da segurança da sua residência. O sistema residente ao receptor foi desenvolvido na linguagem NCL/LUA e necessita de um Set-Top Box (STB) com suporte ao GINGA/NCL para a execução e comunicação com o hardware de controle dos sensores. O hardware de controle dos sensores foi desenvolvido com a utilização de um micro controlador PIC18F4550 e permite o controle de até centenas de pontos de monitoramento. O hardware de controle dos sensores utiliza um sistema embarcado desenvolvido na linguagem ANSI C e permite a captura dos sinais dos sensores e envia estes para a interface USB que esta ligada diretamente com o sistema de controle do STB. Com este projeto o usuário terá os benefícios de poder assistir aos seus programas de TV favoritos e ao mesmo tempo manter sua segurança e atenção nos diversos pontos de acesso de sua residência.

ABSTRACT

In this work we developed a system of hardware and software to assist in home security environment in digital TV. The project is the development of a resident application to the receiver used to monitor alarm sensors distributed at certain points of a residence. Monitoring allows the user (viewer) to view your TV via a visual indication of where the sensor was triggered. Thus, the viewer while watching the television programming while you are positioned to care for the safety of your home. The resident of the receiver system was developed in NCL / LUA and need a Set-Top Box (STB) with support for Ginga / NCL for execution and communication with the control hardware of the sensors. The control hardware of the sensors was developed using a PIC18F4550 microcontroller and allows to control up to hundreds of monitoring points. The control hardware sensor uses an embedded system developed in ANSI C language and allows the capture of sensor signals and sends them to the USB interface that is linked directly with the control of the STB. With this project you will have the benefits of being able to watch your favorite TV programs while maintaining its security and attention to several points of access from their residence.

LISTA DE FIGURAS

FIGURA 1-MODELO SIMPLIFICADO DE TRANSMISSÃO E RECEPÇÃO

15

FIGURA 2-DIAGRAMA RESUMIDO DO PACOTE PES

16

FIGURA 3- DEMONSTRAÇÃO RESUMIDA DE UMA TS

17

FIGURA 4-ESTRUTURAL DO SBTVD COM GINGA

23

FIGURA 5-DEMONSTRAÇÃO DE DOCUMENTO DO NCL

24

FIGURA 6-VISÃO DE LAYOUT NO NCL

25

FIGURA 7-VISÃO TEMPORAL

25

FIGURA 8-VISÃO ESTRUTURAL

26

FIGURA 9-VISÃO ESPACIAL

26

FIGURA 10- ESQUEMA ELÉTRICO PULL-UP

28

FIGURA 11 - CIRCUITO COMPLETO DO HARDWARE

28

FIGURA 12-PINAGEM DO PIC18F4550

29

FIGURA 13-TELA PRINCIPAL DA APLICAÇÃO

30

FIGURA 14-TRECHO DA API CANVAS E FUNÇÃO DA LEITURA DA PORTA SERIAL

31

FIGURA 15-FLUXOGRAMA DA APLICAÇÃO DO PIC 18F4550

31

FIGURA 16- TELA INICIAL DA APLICAÇÃO NA TV

32

FIGURA 17-TELA INICIAL APOS TECLA VERMELHA ACIONADA

32

FIGURA 18-TELA EXIBINDO O SENSOR DA JANELA ATIVADO

33

FIGURA 19 – FLUXO DE LEITURA DO SISTEMA

33

LISTA DE QUADROS

QUADRO 1- ESPECIFICAÇÕES DO ISDB-TB

22

SUMÁRIO

1. INTRODUÇÃO

 

13

1.1

OBJETIVOS

14

1.1.1

Objetivos Específicos

14

1.2

CONTEÚDO DO TRABALHO

14

2. TECNOLOGIA DE TV DIGITAL

15

2.1

HISTÓRIA DA TV DIGITAL

18

2.2

PADRÕES EXISTENTES

19

2.2.1 Advanced Television System Committee – ATSC

19

2.2.2 Integrated Services Digital Broadcasting – ISDB

20

2.2.3 Digital Vídeo Broadcasting – DVB

20

2.3

TV DIGITAL NO BRASIL

21

3. MIDDLEWARE

 

23

3.1

GINGA-NCL

24

3.2

LINGUAGEM IMPERATIVA LUA

26

4. SISTEMA DE LEITURA DOS SENSORES DE ALARMES

27

4.1

O HARDWARE DO SISTEMA DE LEITURA DOS SENSORES DE ALARME

27

4.1.1 Microcontrolador PIC 18F4550

29

4.1.2 FLUXOGRAMA DA APLICAÇÃO

30

4.2

O SOFTWARE DO SISTEMA DE LEITURA DOS SENSORES DE ALARME

32

5. CONCLUSÃO

 

34

6. BIBLIOGRAFIA

35

1. INTRODUÇÃO

Há anos atrás ninguém imaginava que hoje haveria pelo menos uma TV colorida em cada casa. Isso também aconteceu com a TV digital, quando houve as primeiras transmissões, alguns pensavam que ela iria demorar a se popularizar. Com a chegada da TV digital, os aparelhos compatíveis foram vendidos, com preço muito alto para a sociedade, isso resultou uma estreia para pouco mais de mil pessoas em um evento, e nas vitrines das lojas. A tecnologia da TV digital oferece ganhos em termos de qualidade de imagem e som, e novas possibilidades de serviços e aplicações. Com respeito à qualidade de imagem, é muito vantajoso, pois podemos ter um vídeo semelhante de DVD, sem chuviscos, sem fantasmas, sem chiados e sem outros problemas relacionados com má transmissão, já o som ganha à qualidade igual à de cinema. A melhor parte é de podermos assistir à televisão sem estarmos em casa, porque a TV Digital pode se vista em celulares e em computadores desde que estejam devidamente equipados, com um Set-Top-Box instalado. Além do mais, poderemos visualizar a programação das emissoras em carros, trens, ônibus, sem perder a qualidade por causa dos movimentos. Não podendo se esquecer da interatividade, permitindo o telespectador observar uma ficha técnica de um determinado filme, ou um resumo sobre um jornal, podendo também as emissoras obter dados de audiências. As aplicações só são possíveis graças à camada de software intermediária presente na arquitetura dos padrões de sistema de TV Digital. Essa camada é conhecida como Middleware, tem como objetivo oferecer um serviço padronizado para as aplicações, escondendo as particularidades das tecnologias de compressão, de transporte e de modulação, com isso viabilizando o desenvolvimento das aplicações de forma independente do hardware dos fabricantes de Set-Top-Box. O Set-Top-Box é um equipamento que converte o sinal digital da TV Digital para os televisores que não possuem o tunner para TV Digital, com isso possibilitando estas TVs exibirem o conteúdo transmitido no Sistema de TV Digital. Neste projeto foi criada uma aplicação de um sistema de segurança residencial, que usa a própria TV, para exibir a indicação de um sistema de alarme, e o controle remoto para comandar e verificar qual é a situação real do sensor disparado. Para desenvolver essa aplicação, usei um emulador do GINGA-NCL LUA da UFPB, para rodar o aplicativo, e as

linguagens utilizadas para desenvolver foram o NCL e o LUA na parte de software, e o microcontrolador para capturar os sinais dos sensores e transmitir para o emulador.

1.1 Objetivos

O objetivo deste trabalho é desenvolver um sistema de segurança residencial que monitora

pontos de acesso de uma residência através de sensores e um sistema de monitoramento no ambiente de TV Digital.

1.1.1 Objetivos Específicos

- Desenvolver um circuito eletrônico (hardware) capaz de ler o estado físico de sensores e enviar sinais de controle para o software de monitoramento através da interface USB; - Definir um protocolo de comunicação entre o Set-Top Box e o hardware de controle;

- Desenvolver um sistema residente (e.g embarcado no STB) utilizando a linguagem NCL/LUA para a comunicação e monitoramento do hardware de controle;

1.2 Conteúdo do trabalho

Este trabalho estar organizado da seguinte forma, capítulo 2, fala sobre tecnologia de TV Digital, o capítulo 3, sobre o Middleware, e o capítulo 4, relata o funcionamento da aplicação, explicando com é realizado as leituras dos sensores de alarme.

2. Tecnologia de TV Digital

Os passos para realizar uma transmissão de TV Digital consistem primeiramente na preparação do conteúdo a ser transmitido. A preparação do conteúdo é realizada por um estúdio, equipado com uma câmera que possa capturar imagem em HDTV e som digital, padrão Surround 5.1 ou similar. Após a preparação do conteúdo composto por áudio e vídeo, inicia-se o processo de compressão de conteúdo (e.g MPEG) e multiplexação deste conteúdo para gerar um feixe de transporte, também chamado Transport Stream (TS) [9]. O TS é então modulado e transmitido pelos equipamentos de transmissão de TV Digital [7]. O processo de recepção do sinal faz o inverso do processo de transmissão. Primeiramente o sinal é capturado, demodulado, demultiplexado e então separado em fluxos de áudio, vídeo e dados (Figura 1).

separado em fluxos de áudio, vídeo e dados (Figura 1). Figura 1-Modelo Simplificado de Transmissão e

Figura 1-Modelo Simplificado de Transmissão e Recepção

Os dados aqui citados (Figura 1) referem-se às aplicações usadas para interação do usuário com a TV Digital, ou seja, um jogo, uma pesquisa em um determinado assunto.

O termo usado para nomear o conteúdo de transmissão no sistema de TV DIGITAL, é

conhecido como Elementary Stream.

O Elementary Stream é necessário dividi-lo em vários pacotes que são nomeados de

Packetized Elementary Stream (PES). Um pacote de PES possui um cabeçalho e uma seção

de dados, que é composto por bytes de dados retirados do Elementary Stream.

O cabeçalho de uma PES é preenchido conforme tipo de dado que o pacote possui definido de acordo com a padronização, onde a padronização determina que nos 24 bytes iniciais do

pacote de PES, é formado um campo conhecido como packet_start_code_prefix e junto com o campo stream_id, e os oitos bytes seguinte, juntos esse dois campos identificam o inicio dos pacotes de PES, no campo packet_start_code_prefix possui sempre o valor em hexadecimal de 0x000001, e no campo seguinte é stream_id informa o tipo de stream presente no pacote, onde existe uma tabela que classifica o tipo da stream em áudio, vídeo, stream privada e outros tipos.

A ilustração abaixo mostra o diagrama resumido do pacote de PES (Figura 2).

mostra o diagrama resumido do pacote de PES (Figura 2). Figura 2-Diagrama resumido do Pacote PES

Figura 2-Diagrama resumido do Pacote PES

Os pacotes de PES são compostos por Program Stream e Transport Stream.

O Program Stream é apenas um programa multiplexado, sendo formado por um conjunto de

Elementary Streams, possui um forte acoplamento temporal, é formado por vários pacotes PES de tamanho variado, podendo ser muito grandes, com isso dificultando a decodificação devido à variação do seu tamanho, sendo assim ideal para uso em ambiente robusto. Por

exemplo, em um filme, as partes lentas têm menos pacotes do que as partes que possuem

muita ação, sendo assim a velocidade de transmissão variam de acordo com o tipo de vídeo, devido a isso fica mais fácil alterar a velocidade da leitura de um DVD.

O Transport Stream é utilizado em ambientes em que podem ocorrem erros na transmissão,

possui tamanho constante, que é ideal para ambiente não robusto, tornando mais fácil a detecção de perdas de dados, por ter tamanho constante, além do mais de fácil localização do inicio de um TS (Transport Stream).

O Transport Stream possui o tamanho de 188 bytes, onde o seu primeiro byte conhecido como sincronia (sync_byte), determina o inicio de uma TS. Já os três bytes seguintes informam a indicação de erro no pacote (transport_erro_indicator), se o pacote é, ou não é o primeiro de uma sequência (payload_unit_start_indicator), qual é a prioridade do pacote (transport_priority), qual o identificador de uma sequência de pacotes através do PID, o modo de embaralhamento da seção de dados (transport_scrambling_control), se há presença de campo de adaptação (adaptation_field_control) e a sequência dos pacotes (continuity_counter). No campo de dados, o Transport Stream, transporta dado e tabelas com informação que identifica qual é o tipo de dado que esta sendo transportado, onde cada tipo de dados é identificado por um PID que esta especificado nas tabelas PMT (Program Map Table) e PAT (Program Association Table). Na ilustração abaixo a ser mostra de maneira resumida a composição de uma TS (Figura 3).

de maneira resumida a composição de uma TS (Figura 3). Figura 3- Demonstração Resumida de uma

Figura 3- Demonstração Resumida de uma TS

Além dessas duas tabelas a PAT e PMT, há mais três que são a Network Information Table, Conditional Acess Table e Transport Stream Description Table.

A tabela PAT esta liga os números de programas com os PID dos pacotes das TS que carregam as PMTs, enquanto as tabelas PMTs são indicadas por número de programa, cujos fluxos estão associados ao PID do pacote TS que irão carrega-los. A tabela Network Table é responsável por transmitir as informações dos parâmetros da rede física da transmissão dos programas. A tabela Conditional Acess Table associa um ou mais fluxos privados com um único PID, e já a Transport Stream Description Table associa um ou mais descritores de tabelas para um TS completo. Apesar de possuírem as cinco tabelas, somente duas são de bastante importância para a demultiplexação que são a PMT e a PAT, enquanto as tabelas Transport Stream Description Table e Network Information Table são opcionais, e a Conditional Acess Table é especificada para fluxos privados [11].

2.1 História da TV Digital

A evolução dos primeiros conceitos de televisão digital foi por volta dos anos 70.

Quando a direção da rede pública de TV do Japão, a NHK, juntamente com um grupo de 10 estações comerciais, deram autorização para desenvolver uma TV de alta definição, ou seja, eles queriam que os telespectadores tivessem sensações mais próximas possível de um

cinema, tentando igualar a qualidade de áudio e vídeo da TV à de um cinema. Isso exigia não só maior nitidez da imagem e estabilidade na transmissão, também uma tela com dimensões proporcionais a de sala de cinema [1].

Já na década de 80, o consórcio Hi-Vision Promotion Association, operava o serviço

digital durante uma hora por dia, isso ocorreu na fase inicial do HDTV. Esse serviço só foi transmitido oficialmente no ano 2000, atingindo um terço do Japão. Na Europa, os cientistas também fixaram suas pesquisas em um desenvolvimento de um padrão único de transmissão, conhecido na época como Memorando. Os europeus chegaram a uma alternativa semelhante à japonesa, em 1986, com

projeto Eureka, onde este foi mais tarde conhecido como Multiplexed Analog Components. Com isso os europeus lançaram o caminho próprio na procura de TV com Alta Definição. Isso causou preocupação aos rádios difusores, fabricantes e o governo americano que faziam questão de encontrar uma solução nacional para o assunto. No início dos anos 90, foi marcado pelo lançamento do MP3. Em 1994, o MPEG-1 e MPEG-2 receberiam grande poder de compressão, tornando-se o compressor oficial dos

sistemas da DVD e do HDTV. Com esses acontecimentos deram o mérito para os europeus, os primeiros que conseguiram a desenvolver uma tecnologia que comprimia dados de forma satisfatória e segura para transmissão de vídeo em alta definição. Com os avanços obtidos na criação do MPEG, a Europa começa a correr para fixar um padrão único de transmissão digital. Em 1996 surgiu um relatório da agência norte-americana, que relatava que existia um grupo que tinha desenvolvido um sistema de televisão digital que “aumentava a qualidade técnica da transmissão de televisão, ajudando a preservar para os consumidores e para nossa sociedade democraticamente os benefícios de um vibrante e saudável serviço de televisão gratuito pelo ar no futuro” [1]. Neste mesmo documento dava aos usuários acesso a hospedagem de serviços de informação, em torno dessa tecnologia nascia o ATSC, que é o padrão americano de TV Digital.

O Japão seria pioneiro com projeto do sistema Muse, mas ficou para atrás devido o

atraso com os testes, só recuperou em 1997 quando a rede NHK correu para desenvolver o ISDB e o consórcio Digital Broadcasting Experts Group (DiBEG).O padrão japonês possui bastante semelhança com DVB, padrão europeu, mas há um diferencial importante que é de suportar múltiplas aplicações. Foi em 2003, que o sistema ISDB-T foi oficializado como padrão japonês. No Brasil teve inicio em 1996, com a chegada da DirectTV e Sky, através de TV por assinatura via satélite no formato digital. Possui interatividade bastante limitada, e não permitia transmissão em alta definição, apesar de o sinal ser digital [1].

2.2 Padrões Existentes

No mundo existem três padrões sistemas de TV Digital: americano que é o ATSC, o japonês é ISDB, e o europeu DVB [12].

O padrão americano tem a principal característica à alta definição da imagem, já o

japonês além de prevalecer à alta definição, da ênfase à mobilidade, e por último o sistema europeu tem como privilégio a múltipla programação, a interatividade e novos serviços.

2.2.1 Advanced Television System Committee – ATSC

O sistema ATSC entrou em funcionamento nos Estados Unidos em novembro de

1998, especificado pelo comitê ATSC, por isso o nome dado ao sistema. Esse padrão utiliza a modulação 8-VSB, possuindo uma taxa de transmissão de 19,8 Mbps, ocupando uma banda

de 6,7 ou 8 MHz ,onde define dois tipos de técnicas de transmissão que são: via à radiodifusão que recebe a sigla ATSC-T e via à cabo conhecida como ATSC-C e, onde é mais difundida. A multiplexação e a codificação do vídeo usam o padrão MPEG-2, e com relação a codificação de áudio é o padrão Dolby AC-3. Uma das características positivas além da transmissão de HDTV é uso do o middleware com interface aberta, ou seja, os receptores de outros padrões conseguem ter acesso às informações e programação do sistema ATSC, onde foi definido o DASE, como padrão americano para a camada de middleware nos Set-Top-Box, o qual há muita semelhante ao MHP, o DASE usa também máquina virtual Java como base nas suas aplicações de interatividade. Ele também permite o uso de linguagens declarativas como HTML e JavaScript. A característica negativa é de não possuir suporte para terminais móveis

[2].

2.2.2 Integrated Services Digital Broadcasting – ISDB

O sistema ISDB foi criado pelos japoneses, para transmissão de TV Digital, e tem

tecnologia para realizar transmissões terrestres, onde recebe a sigla ISDB-T, pode transmitir via cabo como é conhecido ISDB-C e por satélite chamado de ISDB-S. Esse padrão tem um grande potencial para realizar transmissões para aparelhos móveis como celulares e PDAS, sem usar operadoras de telefonia, isso só pode ser realizado em broadcasting. O padrão

japonês usa o método de modulação COFDM para transmitir. Para multiplexar e codificar vídeo o ISDB usa MPEG-2 e áudio MPEG-2 ACC. Na questão de middleware, foi escolhido o ARIB STD-DB24, tem uma linguagem declarativa conhecida como BML, baseada em XML, o qual é usado para especificações de serviços multimídia para TVs Digitais. E também há outra especificação do middleware escolhido que foi o ARIB STD-DB23, onde essa é baseada no padrão europeu, o qual é usado o MHP, devido isso a especificação permite o uso de interatividade que usam à máquina virtual Java [3].

2.2.3 Digital Vídeo Broadcasting – DVB

O padrão DVB foi adotado na Europa no início dos anos 90, estar presente na União

Européia, Austrália e Nova Zelândia. Este padrão pode ser usado para sistema em alta definição e sistema móveis em baixa definição, se divide em alguns conjuntos de transmissão que são os seguintes: transmissão via radiodifusão terrestre conhecida como DVB-T, via

cabo, DVB-C, a de satélite, DVB-S, em micro-ondas operando até 10GHZ, DBV-MC, e com micro-ondas acima de 10GHZ como DBV-MS. A multiplexação e codificação de áudio e vídeo no padrão DVB é realizado através do MPEG-2, e o sistema de modulação é o COFDM, onde a taxa de transmissão pode atingir valores de 5 a 31,7 Mbps, isso depende dos parâmetros usados na modulação e codificação do sinal. O padrão europeu opera nas faixas de canais entre 6,7 e 8 MHz. O middleware usado pelo padrão europeu é baseado nas tecnologias do JavaTV, DAVIC e HAVI , onde o mesmo foi totalmente desenvolvido em Java, esse middleware é chamado de MHP, oferece um ambiente de TV Digital interativa com independência de software ou hardware especificado pelos receptores de Set-Top-Box. Há de útil no middleware europeu, além de oferecer interatividade, permite realizar leitura de smart- cards, carregar aplicações interativas, armazenar essas aplicações em memórias (disco rígidos), controlar aplicações na internet, e acessar e-mails [4].

2.3 TV Digital no Brasil

No Brasil houve a primeira transmissão oficial em novembro de 2007, em São Paulo, onde estava presente o presidente Inácio Lula da Silva e grandes empresários do setor de comunicação. O nosso padrão usa é ISDB-TB, que é uma adaptação do padrão japonês adicionada como tecnologias desenvolvidas nas universidades brasileiras. O padrão ISDB-T foi escolhido, porque foi o melhor que atendia economicamente na questão de energia dos receptores e na questão financeira da sociedade, ou seja, mobilidade e portabilidade para o consumidor sem custo financeiro se fosse adotado o padrão europeu, a população brasileira teria que pagar tarifas para empresas telefônicas para usufruírem dos serviços de mobilidade e portabilidade da transmissão nos aparelhos móveis. O Sistema Brasileiro de TV Digital (SBTVD) além de permitir a transmissão em alta definição, possibilita também a multiprogramação, que é possível transmitir em único canal de duas programações em alta definição na resolução de 1080i, quatro programações em único canal em HD de 720p e oito programações na resolução 480p na mesma emissora, esse padrão usa técnicas de compressão áudio MPEG 4, compressão de vídeo H.264 , OneSeg para transmissão móvel, e sua modulação é COFDM. O quadro 1 mostra as tecnologias usadas no ISDB-TB.

Especificações técnicas do padrão ISDB-TB

Aplicações

EPG, t-GOV, t-COM, Internet

Middleware

Ginga

Compressão de áudio

MPEG-4 AAC 2.0, 5.1 canais

 

MPEG-4 H.264

HDTV/1080i (1920 colunas por 1080 linhas entrelaçadas,

16:9)

Compressão de vídeo

HDTV/720p (1280 colunas por 720 linhas progressivas,

16:9)

SDTV/480p (720 colunas por 480 linhas progressivas, 4:3)

LDTV/1SEG (320 colunas por 240 linhas, 4:3)

Transporte

MPEG-2 TS

Modulação

COFDM dividido em 13 segmentos da portadora de 6 MHz

Quadro 1- Especificações do ISDB-TB

3. Middleware

Middleware é o nome dado quando nos referimos sistemas de software que se executam entre aplicações e sistemas operacionais. Tem como objetivo principal facilitar o desenvolvimento de aplicações e permitir a interatividade. Na questão de TV Digital, o middleware é a camada de interoperabilidade que permite a execução de programas interativos da TV Digital. Ainda não há um padrão de middleware universal. Há quatro grupos que estão tentando formalizar um padrão aberto: a Europa com sistema DVB tenta padronizar o MHP, os Estados Unidos com ATSC tenta o DASE, o Japão com ISDB tenta o ARIB, e por último o Brasil com seu ISDB-TB tenta o Ginga. O Middleware Brasileiro é o Ginga, que foi fruto dos resultados de pesquisas da PUC-RJ e da UFPB. É um sistema OPENSOURCE, e estimava-se que já estaria presente nos receptores de TV Digital para o padrão brasileiro em meados de 2008 [5]. O Ginga possui um conjunto de inovações brasileiras e tecnologia padronizada, que torna as especificações de middleware mais avançadas e melhor solução para os requisitos brasileiros. Nós teremos duas opções de escolha, quando desenvolvemos uma aplicação para o SBTVD, dependendo das funcionalidades requeridas na elaboração do projeto da aplicação, poderemos escolher entre o Ginga-NCL, ou Ginga-J. A representação estrutural do sistema que compõem o Ginga é apresentado na Figura 4.

estrutural do sistema que compõem o Ginga é apresentado na Figura 4. Figura 4-Estrutural do SBTVD

Figura 4-Estrutural do SBTVD com Ginga

3.1 Ginga-NCL

O Ginga-NCL é um ambiente declarativo que foi desenvolvido pela Pontifícia Universidade Católica do Rio de Janeiro (PUC-RJ), utiliza a linguagem NCL (Nested Context Language - Linguagem de Contexto Aninhado), e sua linguagem de script Lua. Esse ambiente é obrigatório para receptores portáteis. O Ginga-NCL é o primeiro framework de aplicações multimídia para serviços IPTV aprovado pela União Internacional de Telecomunicações, com isso torna mais fácil para o usuário IPTV, consumir o conteúdo de seu próprio país de origem. Isso que dizer na prática que a linguagem NCL é um padrão da União Internacional de Telecomunicações para construção de aplicações multimídia voltadas a ambiente de TV interativa. O NCL é uma linguagem aberta baseada em XML. Possui marcações para descrição de objeto, tem uma separação bem definida entre conteúdo e a estrutura de um aplicativo, promovendo um controle na ligação entre o conteúdo, sua apresentação e o layout. A sincronização espaço temporal é definida genericamente pelos links do NCL. A interação do usuário é tratada apenas como caso particular de sincronização temporal. Como a linguagem NCL tem separação mais definida entre conteúdo e a estrutura, ela define a cola que prende as mídias em apresentações multimídia. Por esse motivo que o NCL é conhecido como linguagem de cola, e nos documentos do NCL são definidos o que vai tocar, onde vai tocar como vai tocar, e quando vai tocar (Erro! Fonte de referência não encontrada.).

vai tocar ( Erro! Fonte de referência não encontrada. ). Figura 5-Demonstração de Documento do NCL

Figura 5-Demonstração de Documento do NCL

Os documentos do NCL estão divididos em seguintes formas: layout, temporal, estrutural e espacial [6]. O layout é o local que determinamos em que lugar as mídias iram ser

apresentadas, isto é, em que lugar da tela o vídeo irá ser exibido, pode ser na tela inteira, ou na parte de cima, em qualquer posição da tela.

inteira, ou na parte de cima, em qualquer posição da tela. Figura 6-Visão de layout no

Figura 6-Visão de layout no NCL

A visão temporal é onde determinamos cada momento que uma mídia irá começar,

se vai iniciar com outra mídia, ou não, e quando irá acabar, e iniciar outra, se irá iniciar

quando o controle for acionado e o tempo que ela será reproduzida. Como exemplo mostrado na figura abaixo, exibir um vídeo principal, e quando o botão vermelho for acionado exibirá uma mensagem de informação.

vermelho for acionado exibirá uma mensagem de informação. Figura 7-Visão Temporal A visão estrutural que informamos

Figura 7-Visão Temporal

A visão estrutural que informamos quais os tipos de mídias e as relações que terão

entre si, ou seja, é aqui onde são criados os nós, e elos entre os nós, com isso podemos configurar as propriedades de cada nó, e suas relações. Como exemplo de uma visão estrutural um pequeno programinha, feito para exibir uma imagem qualquer, e quando um usuário tecla o botão vermelho, mostrar uma mensagem de informação, ou podendo ser uma legenda de um filme, ou ainda ser um texto informativo (Figura 8). Observe que não é representado à posição para exibir o vídeo e nem a mensagem de informação, pois neste local atenção é voltada para a composição estrutural dos nós do programa e nas relações entre nós e a interação que há entre eles.

Figura 8-Visão Estrutural Há uma parte no NCL que mostra como se fosse uma foto

Figura 8-Visão Estrutural

Há uma parte no NCL que mostra como se fosse uma foto do programa em um determinado instante, que é conhecida como visão espacial. Esta parte mostra o momento exato do posicionamento das mídias na tela, em uma determinada parte do programa.

das mídias na tela, em uma determinada parte do programa. Figura 9-Visão Espacial 3.2 Linguagem imperativa

Figura 9-Visão Espacial

3.2 Linguagem imperativa LUA

Lua é uma linguagem bem simples de fácil entendimento, apresenta um poder muito grande de portabilidade, ou seja, podendo ser executada em diversas plataformas, como por exemplo: em computadores, celulares, sistemas e até dentro de console de vídeo games. Além da sua portabilidade, simplicidade e eficiência, a linguagem possui licença livre de royalties, isso resulta um casamento perfeito com Sistema de TV Digital brasileiro. Geralmente LUA é usada para permitir que aplicação seja manipulada através de scripts. No projeto essa aplicação foi desenvolvida parte da leitura porta serial e do controle remoto, onde modifico o comportamento de leitura da porta e dos comandos que o controle remoto que vão sendo

comandados, por meio dos botões de interação, essas alterações dos comportamentos, foi realizado por meio de modificações dos scripts.

4. Sistema de Leitura dos Sensores de Alarmes

Aplicação foi desenvolvida buscando melhorar a segurança residencial do usuário, pois os índices informados pelas autoridades policiais estão crescendo principalmente nas casas dos amazonenses, em média são registrados quatro roubos de residência por dia, segundo a Secretária de Segurança Pública do Estado do Amazonas, e o número de casos catalogados de janeiro a setembro de 2010 é de 1033 casos, enquanto no ano passado neste mesmo período foi de 812 casos, dando um aumento de 27.21% de assaltos em residência [10]. O sistema também melhorara a atenção do usuário no assunto de identificação do problema de invasão de sua casa, indicando o lugar que o alarme foi acionado, e a pessoa ficará mais atenta, porque quando o telespectador estiver assistindo sua TV, o sistema estará monitorando todos os alarmes, caso algum deles for acionado no mesmo tempo indicará na tela da televisão o lugar onde o sensor foi ativado, pois na questão de ficar observando essa indicação usando outros sistemas, às vezes, a pessoa fica sem dar atenção, por estar muito concentrada a programação que estão assistindo no momento. A aplicação foi divida em duas partes: hardware e software. O hardware ficou responsável para fazer as leituras dos sensores, e transmitir via USB para o software, informar quais dos sensores, que foram acionados. Já o software que é executado na TV através do Middleware, é responsável em fazer toda exibição da aplicação na tela, informando para o usuário onde foi ativado o sensor.

4.1 O hardware do Sistema de Leitura dos Sensores de Alarme

O hardware possui um microcontrolador PIC18F4550 escolhido por oferecer suporte para a comunicação USB. O circuito possui um software embarcado no microcontrolador responsável por realizar a leitura das portas que estão conectadas diretamente aos sensores de segurança. Esses sensores estão ligados nas portas do microcontrolador, por meio de pull-up, esse método é muito usado para manter um nível alto na porta do PIC (+5,00Vcc), quando não estiver acionado, mais quando for acionado algum dos sensores este nível de tensão irá cair na porta correspondente, informado para o microcontrolador que aquele sensor foi ativado. No esquema abaixo demonstra os pull-ups. (Figura 10)

R6 R3 R4 R5 4k7 4k7 4k7 4k7 U1 15 2 3 RA0/AN0 RC0/T1OSO/T1CKI 16
R6
R3
R4
R5
4k7
4k7
4k7
4k7
U1
15
2 3 RA0/AN0
RC0/T1OSO/T1CKI
16
4 RA1/AN1
RC1/T1OSI/CCP2/UOE
17
5 RA2/AN2/VREF-/CVREF
RC2/CCP1/P1A
23
6 RA3/AN3/VREF+
RC4/D-/VM
24
7 RA4/T0CKI/C1OUT/RCV
RC5/D+/VP
25
RA5/AN4/SS/LVDIN/C2OUT
RC6/TX/CK
14
26
RA6/OSC2/CLKO
RC7/RX/DT/SDO
13
OSC1/CLKI
33
19
RB0/AN12/INT0/FLT0/SDI/SDA
RD0/SPP0
34
20
RB1/AN10/INT1/SCK/SCL
RD1/SPP1
35
21
RB2/AN8/INT2/VMO
RD2/SPP2
36
22
RB3/AN9/CCP2/VPO
RD3/SPP3
37
27
RB4/AN11/KBI0/CSSPP
RD4/SPP4
X1
38
28
RB5/KBI1/PGM
RD5/SPP5/P1B
39
29
RB6/KBI2/PGC
RD6/SPP6/P1C
40
30
RB7/KBI3/PGD
RD7/SPP7/P1D
8
CRYSTAL
RE0/AN5/CK1SPP
9
RE1/AN6/CK2SPP
10
C4
RE2/AN7/OESPP
18
1
VUSB
RE3/MCLR/VPP
PIC18F4550
22n
C2
C5
470n
22n

Figura 10- Esquema Elétrico PULL-UP

Os botões que estão na Figura 10 emulam os sensores de alarme, simulando o acionamento dos mesmos. Quando o PIC identificar a queda do nível de tensão em uma das suas portas, ele envia para porta USB, informado o nome de cada sensor ativado, por exemplo, se o sensor estiver localizado na cozinha, vai enviar o nome cozinha, se for o da janela, envia janela, e assim sucessivamente. A Figura 11 mostra o circuito completo do hardware.

J2(VCC) R6 R3 R4 R5 4k7 4k7 4k7 4k7 U1 2 15 RA0/AN0 RC0/T1OSO/T1CKI 3
J2(VCC)
R6
R3
R4
R5
4k7
4k7
4k7
4k7
U1
2
15
RA0/AN0
RC0/T1OSO/T1CKI
3
16
RA1/AN1
RC1/T1OSI/CCP2/UOE
4
17
RA2/AN2/VREF-/CVREF
RC2/CCP1/P1A
J2
5
23
RA3/AN3/VREF+
RC4/D-/VM
6
24
1
RA4/T0CKI/C1OUT/RCV
RC5/D+/VP
VCC
7
25
3
RA5/AN4/SS/LVDIN/C2OUT
RC6/TX/CK
D+
14
26
2
RA6/OSC2/CLKO
RC7/RX/DT/SDO
D-
13
4
OSC1/CLKI
GND
33
19
USBCONN
RB0/AN12/INT0/FLT0/SDI/SDA
RD0/SPP0
34
20
R7
RB1/AN10/INT1/SCK/SCL
RD1/SPP1
35
21
RB2/AN8/INT2/VMO
RD2/SPP2
36
22
RB3/AN9/CCP2/VPO
RD3/SPP3
470R
37
27
RB4/AN11/KBI0/CSSPP
RD4/SPP4
X1
38
28
RB5/KBI1/PGM
RD5/SPP5/P1B
39
29
RB6/KBI2/PGC
RD6/SPP6/P1C
40
30
D1
RB7/KBI3/PGD
RD7/SPP7/P1D
LED-GREEN
8
CRYSTAL
RE0/AN5/CK1SPP
9
RE1/AN6/CK2SPP
10
R1
R2
C4
RE2/AN7/OESPP
18
1
VUSB
RE3/MCLR/VPP
1k
10k
PIC18F4550
22n
C2
C5
470n
C1
C3
100n
33u
22n

Figura 11 - Circuito Completo do Hardware

4.1.1

Microcontrolador PIC 18F4550

Os microcontroladores Microchip, que formam a família PIC18F são os que possuem maiores possibilidades e recursos para desenvolvimento deste projeto, pois o PIC18F4550, o qual foi escolhido apresenta como característica principal possibilidade de comunicar com o PC através da porta USB. O microcontrolador pode trabalha com clock ate 48 MHz, possui 13 canais de AD de 10bits, 32 kilobytes de memória FLASH, onde é gravado o software de uma aplicação, 2 kilobytes de SRAM, nesta memória são armazenados os dados usados pelas aplicações, ou seja, onde são locadas as variáveis usadas nos programas,256 bytes de memória EEPROM, com tudo isso embarcado o projetista ficar a vontade na hora da criação do software, não se preocupando tanto com espaço. Na questão da comunicação entre o PIC e o microcomputador por meio da porta USB, o integrado é compatível com o padrão USB 2.0, podendo o mesmo se comunicar na configuração LOW SPEED (1.5Mbps), ou HIGH SPEED (12Mbps), são essas as velocidades de comunicação que o padrão USB usa para se comunicar entre periféricos.

que o padrão USB usa para se comunicar entre periféricos. Figura 12-Pinagem do PIC18F4550 Observando a

Figura 12-Pinagem do PIC18F4550

Observando a pinagem (Figura 12), levamos atenção especial para os pinos 23 e 24 do chip, é nestes dois pinos que estão localizados o D- e D+, os responsáveis de enviar e receber dados entre o PIC e o microcomputador por meio da USB. Nesta aplicação usei como fonte de alimentação, a própria tensão que estar na porta USB, o qual é o mesmo nível de

tensão usado para alimentar o PIC18F4550, esta fonte fica localizada no pino VCC do conector da porta USB e GND da mesma como terra para o circuito.

4.1.2 FLUXOGRAMA DA APLICAÇÃO

O sistema de leitura de sensores de alarme residencial foi desenvolvido em conjunto de três linguagens de programação, que são as seguintes: NCL, Lua e CANSI. Cada uma destas linguagens, possuí um importante papel no desenvolvimento desta aplicação, pois a linguagem NCL definiu o posicionamento, o ponto de inicio e fim do vídeo, e determinou a localização onde aplicação do Lua iria rodar. Enquanto linguagem Lua, fez o trabalho de posicionar a imagem estática como o logo da Esbam, e o posicionamento dos indicadores dos sensores, e da instrução do uso do controle remoto. (Figura 13)

e da instrução do uso do controle remoto. (Figura 13) Figura 13-Tela Principal da Aplicação Observando

Figura 13-Tela Principal da Aplicação

Observando a tela principal, concluímos que Lua desenvolveu a maior parte da exibição, porque através dessa linguagem possui API CANVAS, que permite desenhar imagens primitivas, e além do mais inserir imagens gráficas, como foto e desenhos feitos em editores gráficos, observados nos indicadores dos sensores, a vantagem foi criação de uma função para

realizar leitura da porta serial virtual. Podemos visualizar essas duas funções no trecho do código Lua. (Figura 14)

essas duas funções no trecho do código Lua. (Figura 14) Figura 14-Trecho da API Canvas e

Figura 14-Trecho da API Canvas e Função da Leitura da Porta Serial

Já o CANSI foi utilizado para elaborar o software que ficou dentro do microcontrolador, o mesmo recebe as instruções de cada botão simulando o acionamento de um dos sensores e transmitir para o Ginga via porta USB, essa informação. Essa aplicação que utilizou o CANSI estar sendo representada por meio de fluxograma. (Erro! Fonte de referência não encontrada.)

por meio de fluxograma. ( Erro! Fonte de referência não encontrada. ) Figura 15-FLUXOGRAMA DA APLICAÇÃO

Figura 15-FLUXOGRAMA DA APLICAÇÃO DO PIC 18F4550

4.2 O Software do Sistema de Leitura dos Sensores de Alarme

O Software é bem interativo com o usuário, no início da tela apresenta uma interação, onde o usuário escolhe ser que rodar o sistema ou não. (Figura 16)

escolhe ser que rodar o sistema ou não. (Figura 16) Figura 16- Tela Inicial da Aplicação

Figura 16- Tela Inicial da Aplicação na TV

Se o telespectador decidiu querer que execute a aplicação, vai pressionar o botão vermelho do controle remoto, que fica localizado na parte interativa dos controles remotos, presentes nas televisões que permite receber sinal da TV Digital terrestres caso o usuário não queira que o sistema de leitura dos sensores rode irá pressionar a tecla verde do controle remoto para sair da aplicação. Voltando para a situação o qual o usuário optou executar o software, logo após que a tecla vermelha for selecionada, mostrará as situações dos sensores na tela da TV, irá ser exibida da seguinte maneira. (Figura 17)

Figura 17-Tela Inicial apos Tecla Vermelha Acionada A partir desse momento o sistema começara a

Figura 17-Tela Inicial apos Tecla Vermelha Acionada

A partir desse momento o sistema começara a ler a porta USB, verificando se o hardware detectou algum dos sensores foi ativado, na situação da Figura 17 o sistema não recebeu nenhuma informação do hardware, por esse motivo que todos os indicadores estão desativados, mas quando o sistema conseguiu ler alguma palavra imediatamente vai indicar de cor vermelha o lugar violado, como exemplo está na Figura 18 indicando a violação da janela.

exemplo está na Figura 18 indicando a violação da janela. Figura 18-Tela Exibindo o Sensor da

Figura 18-Tela Exibindo o Sensor da Janela Ativado

Como estava explicando, a placa monitora os sensores, e verificara se há algum sensor foi ativado, caso algum ter sido acionado, o próprio circuito fica responsável de enviar uma palavra, via USB, informando qual dos sensores que foi violado, a partir da aí aplicação que estar sendo executada no Ginga, receberá a indicação enviada por meio da porta USB, assim recebida a mensagem tratará e em seguida indicará de vermelho qual dos sensores ativo.

Sensores
Sensores
Sensores Porta USB Figura 19 – Fluxo de leitura do sistema 5. CONCLUSÃO O Sistema de
Porta USB
Porta USB
Sensores Porta USB Figura 19 – Fluxo de leitura do sistema 5. CONCLUSÃO O Sistema de

Figura 19 – Fluxo de leitura do sistema

5. CONCLUSÃO

O Sistema de TV Digital Brasileiro além de oferecer uma alta qualidade de imagem e som, e

possibilitar a mobilidade, isto é, você poderá assistir uma programação através do seu

aparelho celular.O sistema ajuda o homem através do middleware, o Ginga, permitindo a

criação de aplicativos que facilita a vida do ser humano, como por exemplo, aplicação

desenvolvida para segurança residencial, também permitindo desenvolvimento de outros tipos

de softwares, não só ajudando resolver os problemas gerados nas capitais, auxiliando também

a resolver os problemas gerados nas comunidades ribeirinhas da Amazônia, permitindo que as

pessoas que moram nessa região sejam inclusas na sociedade brasileira.

6. BIBLIOGRAFIA

[1]

História da televisão digital. Wikipedia. [Online] 07 de setembro de 2011. [Citado em:

03 de outubro de 2011.] http://pt.wikipedia.org/wiki/História_da_televisão_digital.

[2]

Reimers, Ulrich. Work in Japan. DVB - The Family of Internacional Standards for

Digital Video Broadcasting. Berlin heidelberg : Springer, 2005.

[3]

Working in the United States of America. DVB - The Family of Internacional

Standards for Digital Video Broadcasting. Berlin Heidelberg : Springer, 2005.

[4]

DVB. Wikepedia. [Online] 24 de 09 de 2011. [Citado em: 03 de 10 de 2011.]

http://pt.wikipedia.org/wiki/DVB.

[5]

Ginga. [Online] [Citado em: 03 de outubro de 2011.] http://www.ginga.org.br/.

[6]

Soares Neto, Carlos de Sales, et al., et al. Contruindo Programas Audiovisuais

Interativos Utilizando s NCL 3.0. Rio de Janeiro : s.n., 2010.

[7]

OLIVEIRA, R. R, FILHO, E.B.L, LUCENA, V. Jr. Metodologia de Reconfiguração

de Hardware utilizando o Sinal de TV Digital. Anais do VI Congresso Ibero-

americano de Telemática (CITA 2011) - Gramado RS (Brasil), 16-18 Maio 2011

[8]

ABNT NBR 15604, Norma Brasileira. Televisão digital terrestre - Receptores, 2007.

[9]

ABNT NBR 15602-3, Norma Brasileira. Televisão digital terrestre - Codificação de

vídeo, áudio e multiplexação, Parte 3: Sistemas de multiplexação de sinais. 2007.

ISO/IEC 13818-1, “Information technology - Generic coding of moving pictures and

associated audio information- Systems”, 2007.

[10]

Albuquerque, Carla. d24am.com. d24am.com da RBCom. [Online] outubro 19,

2010. [Cited: outubro 07, 2011.] http://d24am.com/noticias/amazonas/ssp-registra-

quatro-assaltos-a-residencias-por-dia-em-manaus/9509.

[11]

Araujo, Silvio R.F., et al., et al. Estudo das Estruturas Utilizadas no Multiplexador

[12]

de Transport Streams. Multiplexador Transmissão. Reimers, Ulrich. DVB - The Family of Interncaional standards for Digital Video Broadcastin. Berlin heidelberg : Springer, 2005.