Software e uso


O software utilizado para a programação do Shield Sirene é a IDE do Arduino, disponível para download em: https://www.arduino.cc/en/Main/Software


Primeiro protótipo(1.0)

A programação utilizada para que o dispositivo intitulado Shield Salvilôdia Sirene (SSS) exercesse a função de tocar em horários pré-definidos foi construída gradativamente conforme o histórico do projeto. O software utilizado foi a IDE da plataforma Arduino. Após conseguirmos fazer com que a sirene tocasse através de um Relé, foi iniciada a fase de desenvolvimento da programação. Primeiramente pensou-se em uma forma de ter uma espécie de calendário para controlar o acionamento (hora, dia, mês, ano), partindo-se de uma programação pré-existente como base.

Partindo dessa programação "calendário" iniciou-se o desenvolvimento da programação da SSS em si, adicionando as seguintes funcionalidades:

  • Horários para batida;
  • Funções para definição de data e hora;
  • "Funções feriado" para que a sirene não toque em dias sem aula quando demarcado via usuário;
  • Funções linkando a função feriado com acendimento de um LED a fim de sinalizar que dia da semana será feriado.

Código

Baixe a programação: codigo_sirene.ino

Um fato a se destacar é que a versão 1.0 requer a passagem do código alterando partes dele para a configuração do horário, data e horarios de alarmes. Portanto, realizar a configuração pode ser algo não-trivial. Abaixo segue um tutorial de como configurar a sirene.


Tutorial para configuração:

Configurando os horários para a Sirene tocar

Primeiramente defina horários os quais deseja que a sirene toque. Isso pode ser feito entre as linhas 39 e 165 da programação.

Configurando a hora e a data

  • Obs: é importante salientar que a configuração da hora e data só precisa ser realizada uma única vez (quando se deseja mudar algum valor), O relógio fará a marcação da hora e data a partir deste ponto em diante.

Primeiramente deve-se definir a hora e a data corretas. Faz-se isso modificando os valores indicados entre as linhas 203 a 209 na função SelecionaDataeHora( ), como mostrado na parte destacada da imagem abaixo.

Com os horários definidos, prossiga a leitura da programação até a linha 187. Nessa linha note que há uma função que está comentada (possui "//" antes da linha, o que faz com que a linha seja ignorada na execução), função essa intitulada SelecionaDataeHora( ). Tal função tem como objetivo definir as variáveis que estão inseridas nela (isso pode ser verificado mais abaixo, na linha 201), são elas: segundos, minutos, hora, dia da semana, mês e ano. Para setar a hora e data basta descomentar essa linha removendo as duas barras que estão antes do texto (nome da função) e passar o programa para a arduino como na imagem abaixo.

Passada a programação, vá ao monitor serial (icone com uma lupa no canto superior direito da IDE) a fim de verificar se está sendo plotada a data desejada.

( IMAGEM demonstrando o click no serial e ao lado uma IMAGEM de uma data sendo plotada )

Estando tudo de acordo com que se deseja, é necessário comentarmos novamente a função presente na linha 187. O motivo é simples, estando essa linha descomentada, toda a vez que se apertar o botão feriado ou ocorrer a falta de luz, a programação será iniciada novamente desde o inicio fazendo com que a hora de inicio seja aquela que foi demarcada anteriormente, ou seja, reiniciará a contagem do tempo a partir daquele pré-definido. Com a linha comentada, quando a programação for reiniciada, não se redefinirá a hora, e sim, manter-se-á a hora que estava sendo cronometrada antes desses eventos (pressionar o botão feriado ou falta e luz).

( IMAGEM comentando a linha 187 novamente)

Ao comentar novamente a linha 187, passe a programação novamente e verifique no serial se a hora que está sendo plotada está de acordo com a definida anteriormente. Teste a programação pressionando o botão feriado e verificando se a hora se altera ou não. Em caso afirmativo, repita os passos anteriores pois algo não foi executado de maneira correta.

Com todos os passos anteriores feitos a sirene funcionará nos horários definidos. Caso alguma alteração nos alarmes seja desejada, basta fazer e passar o código para a arduino, lembrando de manter a linha da função SelecionaDataeHora( ) comentada para que a hora e data não sejam alteradas.

  • Depois de tudo ter sido configurado e o código estar na placa arduino pode-se conectá-la a uma fonte de alimentação fazendo assim com que não seja necessitado o uso de um computador.

Botões

O Shield Salvilôdia Sirene conta com 2 botões:

  • Botão liga/desliga: Responsável por ligar e desligar o funcionamento da sirene sendo indicado ligado quando o LED vermelho está ligado e desligado quando o LED vermelho está desligado.
  • Botão feriado: este botão seleciona um dia da semana para a sirene não funcionar (provável feriado, ou outro motivo), sendo indicado pelos LEDs verdes e amarelos, cada LED representando um dia. o LED ligado significa feriado no dia correspondente, ou seja, a sirene não funcionará naquele dia. Cada vez que apertado seleciona o dia seguinte, e no último seleciona nenhum, repetindo sempre o ciclo.

Esperamos ter ajudado você, usuário, a configurar sua sirene. Opiniões e sugestões que queira manifestar, envie um e-mail para um dos desenvolvedores listados abaixo:

Sua opinião/sugestão será considerada!

codigo_sirene.ino (16.1 kB) Taylor Fernandes Cunha, 19/08/2017 14:06

configurando_alarmes.png (26.4 kB) Taylor Fernandes Cunha, 19/08/2017 15:08

configurando_hora_data.png (27.8 kB) Taylor Fernandes Cunha, 19/08/2017 15:21

funcao_descomentada.png (24 kB) Taylor Fernandes Cunha, 19/08/2017 15:45