Protótipo de interfone sem fio com áudio e...

61
Protótipo de interfone sem fio com áudio e vídeo Aluno: André Vinicius Bampi Orientador: Miguel Alexandre Wisintainer

Transcript of Protótipo de interfone sem fio com áudio e...

Page 1: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Protótipo de interfone sem fio

com áudio e vídeo

Aluno: André Vinicius Bampi

Orientador: Miguel Alexandre Wisintainer

Page 2: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Roteiro

• Motivações

• Objetivos

• Fundamentação teórica

• Trabalhos Correlatos

• Requisitos

• Especificações

• Implementação

• Operacionalidade

• Resultados

• Conclusões

• Extensões

Page 3: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Motivação

• Automação residencial (domótica)

⚫ Tendência no cenário mundial

⚫ Interesse no cenário nacional

• Software livre

• Raspberry Pi

• VoIP

Page 4: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Objetivo geral

• Desenvolver um protótipo de interfone

sem fio com vídeo utilizando o Raspberry

Pi

Page 5: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Objetivos específicos

• Construir um hardware a partir do RaspberryPi e periféricos para as funções de interfone

• Construir um hardware a partir do RaspberryPi e periféricos para a comunicação entre o sistema de interfones e equipamentos externos

• Desenvolver um conjunto de softwares que forma um sistema de interfones com áudio e vídeo e com comunicação com equipamentos externos.

Page 6: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Fundamentação Teórica

Page 7: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Automação residencial

(domótica)• Primeiras tecnologias: EUA, 1970

• Propósito: tornar o dia a dia das pessoas

mais simples, automatizando tarefas

frequentes em suas residências

• Necessidades: acessibilidade, conforto,

economia e segurança

Page 8: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

VoIP

• Voz sobre IP

• Voz, vídeo, chat, etc.

• Meios: softphone, ATA ou telefones IP

• Principais protocolos: SIP e RTP

Page 9: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Raspberry Pi

• Minicomputador de baixo custo* do

tamanho de um cartão de crédito

• Primeira versão: 2012

• Propósito geral

• Sistemas operacionais: Raspbian, Snappy

Ubuntu Core, Windows 10 IoT, etc.

• Portas GPIO

*Não no Brasil

Page 10: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Raspberry PiModelos 2B e 3B+, respectivamente

Page 11: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Asterisk

• PABX IP livre

• Mantido pela Digium

• Recursos: voz, vídeo, conferência, menus

interativos, distribuição de chamadas, etc.

• Asterisk Gateway Interface (AGI)

Page 12: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Elastix

• Sistema operacional baseado em Linux

focado em PABX IP

• Livre até a versão 4

• Baseado no CentOS com Asterisk até a

versão 4, no Debian com 3CX depois

Page 13: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Linphone

• Softphone

• Chamadas de voz, vídeo e chat

• Versões pra Linux, Windows, OSX,

Android, IOS, Windows Phone, etc

Page 14: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Trabalhos correlatos

Page 15: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Plataforma de comunicação multimédia para dispositivos

de baixo custo com o uso de protocolos seguros

(LEITE, 2014)

• Desenvolvimento de aplicações cliente e

servidor VoIP

• Softwares livres

• Biblioteca LibLinphone

• Software cliente executa em Raspberry Pi

• Chamadas de áudio e vídeo

Page 16: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Uma Arquitetura de Hardware e Software Livres para

um Telefone VoIP

(AMÉRICO FILHO ET. AL., 2012)

• Telefone VoIP

• Hardware e softwares livres

• Processador DSP da Analog Devices

• Chamadas de áudio

• Biblioteca LibLinphone

Page 17: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Servidor VoIP com sistema de segurança doméstica

integrada de baixo custo

(DESTEFANI e PAUKNER, 2013)

• Sistema de segurança doméstica

• Telefonia IP e controle de equipamentos

externos

• PABX IP Asterisk

• Cliente e servidor executando em

Raspberry Pi

• Chamadas de áudio

Page 18: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Requisitos funcionais

• Interface gráfica com funções semelhantes às de um

interfone

• Exigir autenticação do usuário

• Permitir chamadas de áudio com ou sem vídeo

• Encaminhar chamada para telefone caso não seja atendida

• Armazenar um histórico de chamadas

• Disponibilizar uma interface para as funções de

administração

• Permitir o bloqueio de usuários

• Permitir o cadastro de usuários no servidor

• Pemitir o usuário ocultar sua imagem durante uma chamada

• Permitir o controle de equipamentos externos

Page 19: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Requisitos não funcionais

• Utilizar o minicomputador Raspberry Pi para os interfones

• Periféricos para o interfone: display LCD, placa de som USB,

amplificador de áudio, monofone, webcam e teclado numérico

• Sistema operacional Raspbian

• Funcionar numa rede local com ou sem fio

• Utilizar o Asterisk no servidor como plataforma de telefonia

VoIP

• Se comunicar por VoIP, via protocolos como SIP, RTP, etc.

• Ser implementado utilizando a linguagem de programação

Python

• Utilizar o banco de dados MariaDB

Page 20: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Especificação

Page 21: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de distribuição

Page 22: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Modelo Entidade

Relacionamento (MER)

Page 23: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de casos de uso:

Aplicação de administração

Page 24: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de casos de uso:

Aplicação de interfone

Page 25: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de casos de uso:

Aplicação de controle de ações

Page 26: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de atividades:Inicialização/encerramento da aplicação de interfone

Page 27: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de atividades:Inicialização/encerramento da aplicação de interfone

Page 28: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de atividades:Chamada entre interfones

Page 29: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de atividades:Chamada entre interfones

Page 30: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de atividades:Aplicação de controle de ações

Page 31: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Diagrama de atividades:Aplicação de controle de ações

Page 32: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Implementação

Page 33: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Construção do hardware:

Interfone

Page 34: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Construção do hardware:

Controlador de ações

Page 35: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Técnicas e ferramentas utilizadas• Linguagem de programação: Python 2.7

• Interface gráfica: GTK

• Ferramentas:

• Eclipse 4.9 com PyDev

• Glade

• Plugins: MySQLdb, Python-gi e Bcrypt

• Banco de dados: MariaDB

• Sistemas operacionais:

• Lubuntu 18.04 LTS (notebook)

• Elastix 2.5 (Servidor)

• Raspbian 9.5 Stretch (outros)

• Ambiente gráfico: LXDE

• PABX IP: Asterisk

• Softphone: Linphone

• Controle de janelas: Wmctrl

• Operadora VoIP: Tellfree

Page 36: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Código-fonte

Page 37: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Comunicação com o LinphoneClasse SIPServiceController: funções de inicialização e encerramento

Page 38: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Comunicação com o LinphoneClasse SIPServiceController: principais funções de chamada

Page 39: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Comunicação com o LinphoneClasse SIPServiceController: função de status de chamada

Page 40: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Comunicação com o Linphone

Classe SIPServiceController: funções de ajuste da janela de chamada com vídeo

Page 41: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Processamento de açõesClasse ActionCallController: função de processamento de ações

Page 42: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Operacionalidade da

Implementação

Page 43: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Interface de configuração do Elastix

Page 44: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Interface de configuração do LinphoneLinphone: configurar dispositivos

Page 45: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Aplicação de administração

Page 46: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

ParâmetrosParâmetros do sistema

Page 47: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Cadastro de usuário

Page 48: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Aplicação de interfone

Page 49: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Chamada em andamento

Page 50: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Processamento de ação

Page 51: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Consulta de chamadas

Page 52: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Resultados e Discussões

• Todos os requisitos funcionais atendidos

• Tecnologias descartadas: Java,

Liblinphone e Tkinter

• Limitações:

• Aplicação de interfone não integrada

• Desempenho de vídeo limitado por

causa do display LCD

Page 53: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Comparação com os

trabalhos correlatos

Page 54: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Plataforma de comunicação multimédia para dispositivos

de baixo custo com o uso de protocolos seguros

(LEITE, 2014)

• Semelhanças:

• VoIP

• Softwares livres

• Biblioteca Liblinphone

• Raspberry Pi

• Chamadas de áudio e vídeo

• Diferenças:

• Plataforma VoIP

• Desenvolvimento de aplicações cliente e

servidor

Page 55: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Uma Arquitetura de Hardware e Software Livres para

um Telefone VoIP

(AMÉRICO FILHO ET. AL., 2012)

• Semelhanças:

• VoIP

• Softwares livres

• Biblioteca Liblinphone

• Diferenças

• Telefone VoIP

• Arquitetura própria

• Chamadas de áudio

Page 56: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Servidor VoIP com sistema de segurança doméstica

integrada de baixo custo

(DESTEFANI e PAUKNER, 2013)

• Semelhanças

• VoIP

• Sistema de segurança doméstica

• Asterisk

• Raspberry Pi

• Controle de equipamentos externos

• Diferenças:

• Chamadas de áudio

Page 57: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Comparação com os

trabalhos correlatos

Page 58: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Conclusões

• Ferramentas e equipamentos atenderam

as necessidades do trabalho

• O uso de software livre é viável nesse tipo

de aplicação

• O sistema de interfones pode ser

ampliado para um sistema de automação

residencial e segurança predial completo

• Os objetivos do trabalho foram alcançados

Page 59: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Extensões

• Versão para smartphone da aplicação de interfone

• Versão web da aplicação de administração

• Acrescentar recursos de acessibilidade

• Acrescentar outras funções de automação

residencial e segurança predial

• Substituir o Linphone por uma biblioteca integrada

à aplicação de interfone

• Adaptar a aplicação de controle de ações para

utilizar equipamentos externos reais

Page 60: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Demonstração do sistema

Page 61: Protótipo de interfone sem fio com áudio e vídeodsc.inf.furb.br/arquivos/tccs/apresentacoes/2018_2_andre... · 2019. 4. 22. · •Voz sobre IP •Voz, vídeo, chat, etc. ... •Baseado

Obrigado