Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
/
/
Semáforo Para o Auxílio de Deficientes Visuais

Semáforo Para o Auxílio de Deficientes Visuais

Sumário

Baixe agora a apostila Arduino Iniciante e comece seus projetos

Compartilhe seu conhecimento e receba em dinheiro ou produtos.

INTRODUÇÃO

Esse projeto, surgiu da dificuldade enfrentada pelos pedestres deficientes visuais, ou, com mobilidade reduzida em atravessar uma simples faixa de pedestres em segurança nas grandes, médias e pequenas cidades mundo a fora. Portanto, explicaremos detalhadamente neste tutorial, como criar um protótipo de semáforo para o auxílio destas pessoas. Para isso, nós implementamos uma lógica sequencial que segue os mesmos parâmetros utilizados pela engenharia de trânsito de norte a sul deste país.

Materiais necessários:

01 Arduino Uno R3

01 protoboard

01 protoboard 

Jumpers 

10 leds coloridos

10  resistores de 330Ω  ou, 220Ω 

01 buzzer 

01 cabo USB AB.

01 Conector Jack

Vale lembrar que todos esses materiais podem ser adquiridos diretamente pelo site da Eletrogate.

Como funciona o protótipo de semáforo para o auxílio de deficientes visuais?

Antes de partir para a montagem, é importante entender o que o protótipo de semáforo pretende alertar. O projeto implementa a redundância de sistemas de segurança através da utilização de duas funções utilizadas em linguagem de programação. A função for(); e a função tone(); noTone();

Função tone(); noTone();

Ela é responsável pelos sinais sonoros emitidos pelo buzzer. Como vocês verão logo adiante, os sons emitidos se diferenciam entre graves e agudos. O primeiro tom para a avenida principal e o segundo para a rua transversal. Ou seja, eles se destinam na orientação espacial dos transeuntes portadores de necessidades especiais, através da percepção auditiva.

A função for();

Ao ser aplicada nos sinais vermelhos dos veículos em ambas as ruas, desperta a atenção dos condutores mais apressados para o tipo de pedestres circulando naquele local. Ou seja, a eletrônica manda o seu recado por meio da linguagem de programação escolhida, avisando os condutores que o sinal de veículos ficará verde em poucos instantes. Mas, pode existir algum indivíduo na faixa de pedestres que devido a sua inaptidão física não pode dar aquela corridinha para liberar a via imediatamente.

Como o título sugere, esse projeto é apenas um protótipo. Porque para ele ser implementado nas vias públicas existe a necessidade de uma certificação por parte do CONTRAN.Vejam bem, o controle de mobilidade urbana ao redor de todo planeta é uma coisa séria. Ele segue os padrões estabelecidos internacionalmente

Neste projeto utilizaremos um microcontrolador poderoso – O ARDUÍNO UNO R3 – este dispositivo eletrônico é capaz de simular com exatidão todas as comutações de um semáforo semelhante aos instalados nas vias públicas. Porém, nas ruas das cidades, essas comutações são feitas através de CLPs, uma vez que eles são mais resistentes às interferências eletromagnéticas.

O resultado final irá te surpreender. Pois, a representação visual lembra bastante os instrumentos originais. O projeto permite explorar conceitos bastante interessantes nos sistemas embarcados, como por exemplo: alternância e processamento de sinais digitais, frequência e período das ondas sonoras e o efeito estroboscópico em alguns dos LEDs utilizados. 

A princípio, esse projeto poderá ser adaptado e utilizado em parques industriais, cidades cenográficas, além de estúdios cinematográficos. Para, após aprovação por parte das autoridades competentes, vir a ser implementado em vias públicas.

Lógica da Programação

No circuito do protótipo de semáforo, vamos definir as regras que queremos que o nosso código siga. Dessa forma você pode associar o que a descrição da regra pede que seja feito, utilizando os comandos de forma adequada. Para ajudar você a compreender o funcionamento do código a ser criado, foi desenvolvida uma tabela verdade bastante didática.

Tabela Verdade Para Semáforos Sincronizados

Montagem 1 – Hardware

A partir de agora em seu simulador de circuitos preferido, bancada profissional, pessoal, ou, escolar, monte o circuito da figura a seguir. Depois, tente insistentemente não cair na tentação de simplesmente realizar o famoso CTRL + C / CTRL + V do código fonte fornecido. Lembre-se este tutorial, foi elaborado justamente para reacender em cada um de vocês aquela chama do aprendizado que anda meio apagada devido ao corre – corre diário e ao estilo de vida moderna.

Acompanhe o circuito na figura a seguir:

Veja que este circuito é composto por 10 (dez) LEDs coloridos, distribuídos na seguinte ordem:

4 (quatro) LEDs verdes

4 leds (quatro) LEDs vermelhos

2 (dois) dois LEDs amarelos

Cada um deles representa as cores de um semáforo tradicional, destes que encontramos pelas ruas de qualquer lugar do mundo. Desta forma, após feita as devidas ligações nas portas lógicas do microcontrolador, devemos desenvolver uma lógica que siga exatamente o que a tabela verdade acima nos indica.

Para facilitar o entendimento, trataremos apenas dos LEDs que permanecerão em nível lógico alto a cada estágio do void loop(). Sendo assim – por oposição – os LEDs que não forem citados, automaticamente estarão em nível lógico baixo.

A partir de então, observaremos os LEDs que estarão em nível lógico alto por (X) segundos a cada estágio da programação.

Obs: optamos pela expressão (X) segundos porque se trata de uma função variável. Ou seja, embora tenhamos optado por utilizar o seguinte bloco programação no nosso projeto:

delay(5000);

ou,

delay(10000);

Vocês podem determinar qualquer outro período para a temporização do seu projeto.

Base do Algoritmo Estruturado

1º estágio:Verde de veículos e vermelhos de pedestres da rua principal.Vermelho de veículos e verdes de pedestres da rua transversal.

2º estágio:Amarelo de veículos e vermelho de pedestres da rua principal.Vermelho de veículos e verde de pedestres da rua transversal.

3º estágio:Vermelho de veículos e verde de pedestres da rua principal.Verde de veículos e vermelho de pedestres da rua transversal.

4º estágio:Vermelho de veículos e verde de pedestres da rua principal.Amarelo de veículos e vermelho de pedestres da rua transversal.

Nos pinos 13, 12 , 11, 10 e 9 estão conectados aos LEDs da rua principal. Eles são os seguintes LEDs sucessivamente: verdes, amarelo e vermelho de veículos. Vermelho e verde de pedestres.

No pino 8 está conectado o buzzer.

Nos pinos 6, 5, 4, 3 e 2 estão conectados os LEDs da rua transversal. Eles são os seguintes LEDs sucessivamente: verde, amarelo e vermelho de veículos. Vermelho e verde de pedestres. Observem que todos os LEDs estão conectados como cátodo comum. Os resistores utilizados servem para limitar a corrente que percorre cada um deles.

No código a seguir primeiro faremos as declarações das constantes, referentes a cada um dos LEDS, logo em seguida, faremos a declaração do buzzer.

No void setup, faremos a declaração das saídas de dados com o seguinte comando: “pinMode( X , OUTPUT);” para definir os pinos escolhidos como (saída de dados).

No void loop(){, o comando utilizado são os seguintes respectivamente: “digitalWrite ( X , HIGH); para escolher qual pino deve entrar em nível lógico alto. E digitalWrite ( X , LOW); para entrar em nível lógico baixo.

Seguindo esta linha de raciocínio para os sucessivos pinos utilizados para todos os LEDs.

Este comando digitalWrite ( X , HIGH); ativa 5 (cinco) volts para o pino (X). Agora, se você deseja desligar o LED conectado ao mesmo pino, você deve utilizar o seguinte comando:digitalWrite ( X , LOW);

Este comando desabilita os 5 (cinco) volts do pino (X) voltando para 0 (zero) volts e desligando o LED.

Entre desligar e ligar você precisa de tempo suficiente para que os observadores vejam a diferença de nível lógico. Então, o comando delay(), informa para o Arduino não fazer nada durante (X) milissegundos. Quando você utiliza o comando delay(), nada mais acontece nesse período de tempo para a porta lógica pré – configurada.

As funções tone(); e noTone(): são utilizadas para gerar e parar os sinais sonoros de onda quadrada em um determinado pino, conectado a um buzzer. Ou, num pequeno alto-falante.

Sua sintaxe resumida é a seguinte:

• tone( pino , frequência ): emite um sinal sonoro na frequência parametrizada (em Hertz).

• tone( pino, frequência, duração ): Toca o som na frequência indicada por um tempo determinado (em milissegundos).

• noTone( pino ): Interrompe imediatamente qualquer sinal sonoro.

Frequência e Período

A frequência e o período são dois conceitos da física que interferem diretamente na intensidade dos sinais sonoros portanto vejam que para a rua principal nós optamos por um sinal mais grave. Enquanto para a rua transversal nós optamos por um sinal mais agudo.

Portanto as diferentes frequências interferem diretamente na intensidade dos sinais sonoros emitidos pelo nosso protótipo de semáforo, justamente para que os deficiêntes visuais possam fazer a distinção de qual rua eles estão atravessando.

Frequência e Período do Projeto.

Precisa dos componentes para este projeto?

Encontre tudo na Loja Eletrogate com frete grátis para compras acima de R$ 200