You are on page 1of 14

1.

TEMA
Auxiliador sonoro de transporte para pessoas com deficiência visual.

2. INTRODUÇÃO E PROBLEMATIZAÇÃO

Segundo o IBGE (Instituto Brasileiro de Geografia e Estatística) cerca de


6,2% da população brasileira possui algum tipo de deficiência. Onde maior parte
deste número, cerca de 3,6%, têm deficiência visual ou dificuldade para
enxergar.

Existem diversos fatores que dificultam a locomoção do deficiente visual,


desde depender de terceiros até a infraestrutura da cidade. No Brasil, ainda é
impossível que uma pessoa com deficiência visual dirija um veículo de forma
independente. Com isso, o deficiente visual necessita usar o transporte coletivo.
Existem pessoas dispostas a ajudá-los, outros nem sempre. Na realidade todos
gostariam de ser independentes da ajuda de outros.

Então, como pessoas com deficiência visual podem, de forma


independente, usar o serviço de transporte coletivo?

3. MOTIVAÇÃO
É constituído nos termos da lei n° 10.098 de 2000, de que haja
acessibilidade com segurança e autonomia, dentre eles o de transporte, inclusive
seus sistemas e tecnologias. Apesar da implementação de projetos para
acessibilidade serem lentos, ainda é possível ver alguns projetos em
funcionamento nos centros urbanos.

Esse projeto tem como objetivo a inclusão social, baseada nos conceitos
estudados até agora no curso de Engenharia de Controle e Automação. O
projeto visa o baixo custo de desenvolvimento e implementação para que seja
acessível tanto para o usuário como para as empresas responsáveis.

1
4. REVISÃO BIBLIOGRÁFICA

IBGE. Instituto Brasileiro de Geografia e Estatística. Disponível em:


http://agenciabrasil.ebc.com.br/geral/noticia/2015-08/ibge-62-da-populacao-
tem-algum-tipo-de-deficiencia. Acessado em 16 de outubro de 2018.

Lei N° 10.098, DE 19 DE DEZEMBRO DE 2000. Disponível em


http://www.planalto.gov.br/ccivil_03/LEIS/L10098.htm. Acessado em 16 de
outubro de 2018.

Microchip Technology Inc. “PIC18F2455/2550/4455/4550 Data Sheet” - 2009


Holtek. “HT12D/HT12F 212 Series of Decoders” – 2002
Holtek. “HT12A/HT12E212 Series of Decoders” - 2002

5. METODOLOGIA
- Descrição funcional
O sistema embarcado desenvolvido deve funcionar a partir da
configuração selecionada pelo usuário. Cada ônibus terá um dispositivo que
deve ser configurado pelo motorista para selecionar o número da linha que está
sendo utilizada, visto que o veículo pode ser usado em outras rotas. Essa
configuração é feita através de chaves de duas posições que são pré-
determinadas e referenciadas a cada número da linha de ônibus existente. Com
isso, o veículo estará configurado de forma adequada para emitir o sinal correto
para o usuário.

Por outro lado, o usuário também deve configurar seu dispositivo de forma
adequada ao número da linha desejada. Essa configuração é feita através de
um teclado matricial numérico com descrição em braile. Ao digitar o número da
linha desejado o sistema emitirá um som referente a linha escolhida, caso esteja
correto o usuário confirma a informação, caso não esteja ele digitará novamente
o número da linha.

2
Todos os ônibus que passarem pelo ponto que o usuário se encontra,
estarão emitindo um sinal de rádio frequência. Mas, como o sistema foi
previamente configurado, o dispositivo do usuário somente captará o sinal
referente a linha de ônibus escolhida. Esse sinal será captado cerca de 100
metros de distância de onde o usuário se encontra. Essa distância é suficiente
para que o usuário dê sinal para o motorista. O motorista também será notificado
que existe um deficiente visual no ponto através de um sinal luminoso no painel
do veículo.

- Requisitos de Hardware
O sistema desenvolvido para a emissão de RF é basicamente constituído
por bateria, emissor RF, encoder e chave de seleção DIP. Apesar de necessitar
de baixa corrente, a alimentação provém de energia teoricamente infinita, pois é
alimentada pelo sistema do próprio veículo. Visto que os veículos possuem uma
bateria de 12/24 V, utilizamos um regulador de tensão LM7805 que regula a
tensão para 5V.

Figura 1 – Pinos de alimentação LM7805

3
Figura 2 – Componente LM7805

O módulo emissor de RF é alimentado com 5V e funciona em uma


frequência de 433 Mhz. É constituído de 4 pinos: Vcc – Alimentação positiva;
Gnd – Alimentação negativa (terra); Data – Entrada de dados a serem
transmitidos; Ant – Entrada para antena (caso seja necessário).

Figura 3 – Módulos RF. Esquerda: receptor; Direita: emissor

O encoder é o HT-12E faz a seleção de endereço e dados a serem


transmitidos. É alimentado com 2.4V~12V e corrente de 0.1uA. Possui 18 pinos,
sendo eles: Vdd - Alimentação positiva; Vss - Alimentação negativa (terra);
A0~A7 - Pinos de endereçamento, 0 ou 1 (256 endereços); AD8~AD11 – Pinos
de dados, 0 ou 1 (16 dados); TE – Habilita transmissão (em nível lógico baixo);
Dout – Saída serial de dados; osc1/osc2 – Entrada/saída para oscilador.

4
Escolhemos o endereço fixo que iremos trabalhar e selecionamos somente os
dados que serão transmitidos, cada um de acordo com seu número da linha. A
comunicação somente será feita quando TE estiver em nível lógico baixo. O pino
Dout é ligado ao emissor de RF para que esses dados possam ser transmitidos
quando TE receber o sinal.

Figura 4 – Encoder/decoder HT-12

O sistema desenvolvido para a recepção de RF é basicamente constituído


por pilhas, recepetor RF, decoder, teclado matricial, buzzer e microcontrolador.
É usado uma bateria de 9V, por isso ultilizaremos também o LM9805 para regular
a tensão de alimentação do sistema de recepção.

Figura 5 – Bateria 9V

5
O módulo receptor de RF também é alimentado com 5V e funciona em
uma frequência de 433 Mhz, como o emissor. É constituído de 4 pinos: Vcc –
Alimentação positiva; Gnd – Alimentação negativa (terra); 2xData – 2 saídas de
dados recebidos. O receptor não possui entrada para antena.

O decoder HT-12D tem as mesmas características de pinos do encoder,


exceto, o pino Din que é a entrada serial de dados e o pino VT que verifica se a
transmissão de dados foi valida. Em caso de uma transmissão válida o pino VT
gera uma saída em nível lógico alto. Os pinos do decoder devem conter a mesma
ligação do encoder de A0~A7, pois trabalharam no mesmo endereço. Ao receber
os dados pelo pino Din o decoder irá ter uma saída nos pinos D8~D11 referentes
ao sinal recebido pelo decoder.

O teclado usado possui 12 teclas. Sendo 10 delas de 0 a 9 e as outras


duas são tecla de confirma e tecla de cancela.

Figura 6 – Teclado matricial 4x3

6
O buzzer é utilizado para gerar um som de feedback para o usuário
referente ao número da linha escolhida. Também emite um bipe quando qualquer
tecla for pressionada para que o usuário tenha certeza que foi pressionada.

Figura 7 - Buzzer

O microcontrolador utilizado é o PIC18F4550 da Microchip. É um


microcontrolador de 8 bits com arquitetura Harvard de 40 pinos. Pode ser
alimentado com tensão contínua de 2V~5.5V. Para menor consumo do sistema
portátil, o microcontrolador é configurado com a menor frequência de oscilação,
31 kHz. Essa configuração é feita através do registrador OSCCON e é utilizado
o cristal interno do Pic.

Figura 8 – Microcontrolador PI18F4550

O pino RB0/INT0 é utilizado para interrupção externa, vinda do decoder


usado no receptor RF. O pino VT do decoder gera um sinal quando receber o
dado válido. Os dados provenientes dos pinos de dados do decoder devem ser
lidos rapidamente para que não haja perda de dados, por isso é gerada uma
interrupção para leitura. Os pinos RD4~RD7 fazem a leitura desses dados. Os
pinos do PORTD fazem a leitura do teclado matricial.

7
- Firmware
#include <p18cxxx.h> // necessário para que o compilador adicione a biblioteca
// com as definições do PIC selecionado no projeto, neste
// caso, o modelo 18F4550.
#include <xc.h>

#define lin_1 PORTDbits.RD3 //Define as linhas como lin_


#define lin_2 PORTDbits.RD4// Faz a leitura dos pinos
#define lin_3 PORTDbits.RD5
#define lin_4 PORTDbits.RD6

#define col_1 LATDbits.LATD2 // Define as colunas como col_


#define col_2 LATDbits.LATD1 // Altera nível lógico
#define col_3 LATDbits.LATD0

void setsystem(void); // Função de configuração do sistema


void teclado(void);// Função para varredura do teclado

int x; // Variável para escolha da linha do ônibus

char main(void) //Função principal


{

setsystem(); //Configuração do sistema

col_1 = 0; // Garante que as teclas não iniciem como


col_2 = 0; // estivesse pressionadas
col_3 = 0;

8
while(1) //Loop infinito
{

}
}

void teclado(void) //Função para varredura do teclado


{
col_1 = 1;
if (lin_1 == 1) x = 1; //Tecla 1
if (lin_2 == 1) x = 4; //Tecla 4
if (lin_3 == 1) x = 7; //Tecla 7
if (lin_4 == 1) x = 10; //Tecla 10, referente a cancelar
col_1 = 0;

col_2 = 1;
if (lin_1 == 1) x = 2; //Tecla 2
if (lin_2 == 1) x = 5; //Tecla 5
if (lin_3 == 1) x = 8; //Tecla 8
if (lin_4 == 1) x = 0; //Tecla 0
col_2 = 0;

col_3 = 1;
if (lin_1 == 1) x = 3; //Tecla 3
if (lin_2 == 1) x = 6; //Tecla 6
if (lin_3 == 1) x = 9; //Tecla 9
if (lin_4 == 1) x = 12; //Tecla 12, referente a confirma
col_3 = 0;

9
}

void setsystem (void)


{
x = 0; //Garante que a variável inicie em zero
ADCON1=0X0F; // Desabilita portas analógicas
CMCON=0X07; // Desabilita comparadores analógicos

PORTA=0X00; // Garante que todos portais iniciem em nível lógico baixo


PORTB=0X00;
PORTC=0X00;
PORTD=0X00;
PORTE=0X00;

TRISA=0X00;
TRISB=0X04;
TRISC=0X00;
TRISD=0X00;
TRISE=0X00;

//Configuração de Interrupção
INTCONbits.INT0IE // Habilita interrupção externa RB0/INT0
INTCONbits.INT0IF = 0; //Limpa a flag
//IPEN = 0. Sem prioridade
INTCONbits.GIE = 1; //Habilita interrupção global
}

void __interrupt (low_priority) TratamentoBaixaPrioridade(){


if (INTCONbits.INT0IF ==1)//Verifica se houve sinal no RB0
{

10
/*QUANDO HOUVER INTERRUPÇÃO OS DADOS SÃO LIDOS DOS
PINOS RC1~RC5
E COMPARADOS COM VALOR DE X QUE SÃO REFERENTES AS
ENTRADAS DO
TECLADO MATRICIAL. CASO OS DADOS SEJAM COMPATÍVEIS O
BUZZER RC0
É SETADO*/

INTCONbits.INT0IF = 0; // Zera a flag


}
}

- Diagrama de blocos

Figura 9 – Diagrama de blocos

11
- Esboço do Hardware inicial

Figura 10 – Esquema elétrico do sistema

12
6. ESTRUTURA ANALÍTICA DO PROJETO

Figura 11 – Estrutura analítica

13
7. CRONOGRAMA DE EXECUÇÃO

Atividade Data Inicial Data Final


Pesquisas 27/082018 29/11/2018

Analise da situação atual 06/09/2018 08/09/2018

BrainStorming 10/09/2019 15/09/2018

Levantamento de material necessário 15/09/2018 15/09/2018

Desenvolvimento (Parte Escrita) 19/09/2018 18/10/2018


Desenvolvimento (Parte Prática) 26/09/2018 29/11/2018
Revisão do Desenvolvimento (Parte Escrita) 15/10/2018 18/10/2018

Revisão do material necessário 02/10/2018 02/10/2018


Testes 08/11/2018 29/11/2018
Resultados 29/11/2018 29/11/2018
Tabela 1 - Cronograma

14

You might also like