ARDUINO: FUNDAMENTOS E APLICAÇÕES UMA BREVE DESCRIÇÃO DOS COMPONENTES
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 2
Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 3 Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 4 Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 5 Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 6 Oliveira AMBIENTE DE PROGRAMAÇÃO Como Criar o Programa do Usuário (Seleção de porta) • Assim que você abrir o IDE, ele terá visual semelhante ao da figura abaixo:
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 8
Oliveira • Agora vá ao menu e clique em Tools. Então clique em Board:
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 9
Oliveira Como Criar o Programa do Usuário • Primeiro clique no menu File e depois em Examples, basics e Blink:
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 10
Oliveira Introdução à Linguagem C
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 11
Oliveira • Depois clique no botão Upload (o sexto botão a partir da esquerda) e olhe para o seu Arduino. As luzes Rx e Tx devem começar a piscar para mostrar que os dados estão sendo transmitidos de seu computador para a placa. Assim que o upload tiver sido feito as palavras “Done uploading” (upload completo) serão exibidas na barra de ferramentas de status do IDE e as luzes RX e TX pararão de piscar, e o led SMD do pino 13 começa a piscar acendendo e apagando em intervalos de tempo de 1 segundo indicando que o circuito funciona corretamente. ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 12 Oliveira Comemtários
• Comentários são todos aqueles símbolos (palavras,etc) que
servem apenas para nos guiar no programa, muito útil em programas muito extensos. • Comentário de Linha Simples: São de apenas uma linha, iniciados pelos caracteres “//”. • Comentário de Múltiplas Linhas: São compostos por uma ou mais linhas. Estes tipos de comentário utilizam a seqüência de caracteres “/*” para iniciar o comentário e a seqüência “*/” para terminar o comentário.
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 13
Oliveira Void setup()
• A função setup() é executada somente uma vez no inicio do
programa, e é nela que você emitirá instruções gerais para preparar o programa antes que o loop principal seja executado, como a definição dos pinos, taxas de transmissão... • A função inicia com o “void”, isso indica que ela não retorna valor e que você não passa nenhum parâmetro a ela (parênteses vazios). • Todo código dentro da função está contido entre chaves. Um simbolo { inicia o bloco do código, e um simbolo } termina todo bloco. Tudo que existir entre chaves faz parte desta função.
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 14
Oliveira • A função setup tem apenas uma instrução, pinMode, que diz ao arduino que você deseja definir o mode de um de seus pinos como saída (OUTPUT) ou entrada (INPUT).
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 15
Oliveira • A função loop() é a função principal do programa e é executada continuamente enquanto o Arduino estiver ligado. A primeira instrução a ser executada é:
• Ela escreve um valor HIGH (envia 5 volts para o pino)
ou LOW ( o pino torna 0 volts) para o pino dentro desta instrução. Essa instrução portanto envia 5 volts para o pino 13 acender um led e 0 volts para apagar. • A instrução delay(1000); simplismente diz ao Arduino para esperar 1000 milissegundos antes de executar a instrução seguinte.
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 16
Oliveira Introdução à Linguagem C
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 17
Oliveira Aprendendo na prática a importância das variáveis ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 19 Oliveira Exercícios – Nível 1
• Montaremos agora um Semáforo Simples que será salvo na pasta
Exercícios/Exercício 01, com o nome de Semaforo. • Funcionamento: Passasse três segundos com Sinal Verde aceso (13); Passasse dois segundos com Sinal Amarelo aceso (12); Passasse dois segundos com Sinal Vermelho aceso (11); Reinicia o processo.
Extra: Ao concluir a atividade, substitua os leds por apenas um único
led RGB! ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 20 Oliveira EXERCÍCIOS – NÍVEL 02
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 21
Oliveira Implemente um semáforo em cruzamento, a partir deste, implemente mais um para pedestre com os detalhes passados pelo professor!
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 22
Oliveira INSERINDO UMA CHAVE PARA INICIAR UMA SEQUENCIA:
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 23
Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 24 Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 25 Oliveira Exemplo 2
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 26
Oliveira Sobre os comandos if e else
• É uma declaração de teste condicional, utilizada para testar determinadas
condições/variáveis e executar um código para cada caso. • If executa um comando ou bloco de comandos no caso de sua condição ser avaliada como verdadeira (1), caso contrário ele executa os comandos do else. Podemos utilizar o if sem usar o else. • int chave = digitalRead(12); este comando declara a variável chave como inteira, o valor do pino 12 é lido através do comando digitalReade e atribuido a variavel chave através do operador =. • If if (chave == LOW), ou seja se tivermos nível lógico 1 no pino 12, teríamos verdade, só que quando pressionamos o botão inserimos nível 0 na entrada, ou seja lógica inversa, por isso a necessidade de utilizarmos LOW. Então botão pressionado, nível 0 na entrada, onde 0 invertido = 1, ou seja verdade, executando os comandos de dentro da chave do if, fazendo com que o led acenda. ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 27 Oliveira Exemplo 3
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 28
Oliveira Sensor de Movimento Presença PIR • Os sensores de presença mais comuns usam sensores PIR (Passive Infrared Sensor, ou Sensor Infravermelho Passivo) como detector de movimentos. No Arduino, temos o módulo PIR DYP-ME003, que une numa mesma estrutura o sensor PIR e também os circuitos necessários para ajuste e controle do sinal de saída. Vamos então ver como usar este sensor de presença com Arduino. ◼Disponível em: https://www.arduinoecia.com.br/se nsor-presenca-arduino-modulo-pir- Professor MS. Edvanilson Santos de dyp-me003/ Acesso em: ◼ 07/01/2021 ◼ 07/01/2020 Oliveira ◼ 29 • O Sensor de Movimento PIR DYP-ME003 consegue detectar o movimento de objetos que estejam em uma área de até 7 metros! Caso algo ou alguém se movimentar nesta área o pino de alarme é ativado.
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 30
Oliveira • É possível ajustar a duração do tempo de espera para estabilização do PIR através do potenciômetro amarelo em baixo do sensor bem como sua sensibilidade. A estabilização pode variar entre 5-200 seg.
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 31
Oliveira ◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 32 Oliveira Funcionamento
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 33
Oliveira SUGESTÃO DE PROGRAMAÇÃO
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 34
Oliveira Conexão do sensor de presença no arduino
◼ 07/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 35
Oliveira Atividade anterior • Faça com que ao pressionar uma chave o display de sete segmentos realize uma contagem crescente, ao pressionar um segundo botão, o display realize uma contagem decrescente.
◼ 09/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 36
Oliveira Desafio Peso pena • 1) Fazer um contador crescente e decrescente utilizando o display de sete segmentos.
◼ 09/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 37
Oliveira Desafio peso leve • Inserir uma chave que inicia a contagem crescente e uma segunda executa a contagem decrescente.
◼ 09/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 38
Oliveira Desafio peso pesado (para a próxima semana) • Utilize o sensor PIR, contar o número de pessoas que entram em uma indústria, e o número de pessoas que saem.
◼ 09/01/2021 ◼ Professor MS. Edvanilson Santos de ◼ 39