Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Manual para programação de arduino, Manuais, Projetos, Pesquisas de Eletrônica

Para pessoas com interesse na área de automação, o arduino é um instrumento didático eficiente no aprendizado em programação em linguagem c.

Tipologia: Manuais, Projetos, Pesquisas

2021

Compartilhado em 18/06/2021

david-silveira-netop-2
david-silveira-netop-2 🇧🇷

4

(1)

3 documentos

1 / 16

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL
SENAI/Tubarão
ARDUINO BÁSICO
PROJETOS BÁSICOS COM O ARDUINO
GUSTAVO CUSTÓDIO GOULART
Tubarão
2017
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Pré-visualização parcial do texto

Baixe Manual para programação de arduino e outras Manuais, Projetos, Pesquisas em PDF para Eletrônica, somente na Docsity!

SERVIÇO NACIONAL DE APRENDIZAGEM INDUSTRIAL

SENAI/Tubarão

ARDUINO BÁSICO

PROJETOS BÁSICOS COM O ARDUINO

GUSTAVO CUSTÓDIO GOULART

Tubarão

PROJETO 1 - PISCA LED

Neste projeto é executado o passo a passo da montagem dos componentes até a programação, o projeto faz um led piscar em um intervalo de tempo definido por você.

PARA CONSTRUIR ESTE PROJETO VOCÊ VAI PRECISAR DE:

 Um Arduino;  Um protoboard;  Um led;  Um resistor de 470 ohms;  Dois fios jumper;

MONTAGEM DO CIRCUITO

CÓDIGO

void setup() { pinMode(10,OUTPUT); }

void loop() { digitalWrite(10,HIGH); delay(1000); digitalWrite(10,LOW); delay(1000); }

CÓDIGO

//Método setup, assim que o arduino é ligado ele //é executado, uma vez apenas. void setup() { pinMode(8,OUTPUT); //define o pino 8 como saída pinMode(9,OUTPUT); //define o pino 9 como saída pinMode(10,OUTPUT); //define o pino 10 como saída } //Método loop, é executado enquanto o arduino estiver ligado. void loop() { //Controle do led verde digitalWrite(8,HIGH); //acende o led delay(4000); //espera 4 segundos digitalWrite(8,LOW); //apaga o led

//Controle do led amarelo digitalWrite(9,HIGH); //acende o led delay(2000); //espera 2 segundos digitalWrite(9,LOW); //apaga o led

//Controle do led vermelho digitalWrite(10,HIGH); //acende o led delay(4000); //espera 4 segundos digitalWrite(10,LOW); //apaga o led }

PROJETO 3 – DOIS SINAIS DE TRÂNSITO SINCRONIZADOS

Neste projeto é executado dois sinais de trânsito sincronizados. Este tipo de sinal controla o fluxo dos veículos em duas pistas distintas que se encontram, muito comum em qualquer cidade.

PARA CONSTRUIR ESTE PROJETO VOCÊ VAI PRECISAR DE:

 Um Arduino Uno R3;  Um protoboard;  6 leds, sendo 2 vermelhos, 2 amarelos e 2 verdes;  7 fios jumper;  6 resistores de 100 ohms;  Um computador com a IDE e drivers do Arduino instalados;  Um cabo USB para conectar o Arduino no computador;  Um alicate de bico (opcional).

MONTAGEM DO CIRCUITO

CÓDIGO

//O método setup é executado apenas uma vez, //quando o arduino é ligado void setup() { //definindo os pinos digitais 5, 6, 7, 8, 9 e 10 //como pinos de saída. pinMode(5,OUTPUT); pinMode(6,OUTPUT); pinMode(7,OUTPUT); pinMode(8,OUTPUT); pinMode(9,OUTPUT); pinMode(10,OUTPUT); }

//o método loop é executado repetidamente enquanto o //arduino estiver ligado. void loop() { digitalWrite(5,LOW); //apaga o led vermelho (sinal 1) digitalWrite(7,HIGH); //acende o led verde (sinal 1) digitalWrite(8,HIGH); //acende o led vermelho (sinal 2) delay(4000); //espera 4 segundos digitalWrite(7,LOW); //apaga o led verde (sinal 1)

digitalWrite(6,HIGH); //acende o led amarelo (sinal 1) delay(2000); //espera 2 segundos digitalWrite(6,LOW); //apaga o led amarelo (sinal 1)

digitalWrite(5,HIGH); //acende o led vermelho (sinal 1) digitalWrite(8,LOW); //apaga o led vermelho (sinal 2) digitalWrite(10,HIGH); //acende o led verde (sinal 2) delay(4000); //espera 4 segundos digitalWrite(10,LOW); //apaga o led verde (sinal 2)

digitalWrite(9,HIGH); //acende o led amarelo (sinal 2) delay(2000); //espera 2 segundos digitalWrite(9,LOW); //apaga o led amarelo (sinal 2) }

//Verificando o estado do botão para definir se acenderá ou //apagará o led. if (estadoBotao == HIGH) { digitalWrite(led,HIGH); //Botão pressionado, acende o led. } else { digitalWrite(led,LOW); //Botão não pressionado, apaga o led. } }

PROJETO 5 – BOTÃO QUE ACENDE LEDS COM EFEITO

Neste projeto arduino um pequeno efeito é gerado, pois foi definido um intervalo de

tempo entre o acendimento de cada led. Este projeto reforça o projeto arduino led com botão liga desliga que também usa um botão para acender um led e que tem uma programação mais simples.

PARA CONSTRUIR ESTE PROJETO VOCÊ VAI PRECISAR DE:

 Um Arduino uno ou leonardo;  Um protoboard;  Quatro leds de cores diferentes;  Quatro resistores de 100 ohms;  Um resistor de 150 ohms;  Um botão do tipo push button;  Sete fios jumper grandes;  Cinco fios jumper pequenos;  A IDE do arduino instalada no seu computador;  Um cabo USB para conectar o arduino ao computador;  Um alicate de bico (opcional).

MONTAGEM DO CIRCUITO

CÓDIGO

//Declaração das constantes referentes aos pinos digitais. const int ledAmarelo = 8; const int ledVerde = 9; const int ledVermelho = 10; const int ledAzul = 11; const int botao = 2;

//Declaração da variável que possuirá os estados do botão. int estadoBotao = 0;

//Método setup, executado uma vez assim que o Arduino é ligado. void setup() { pinMode(ledAmarelo,OUTPUT); //Definindo pino 8 como saída. pinMode(ledVerde,OUTPUT); //Definindo pino 9 como saída. pinMode(ledVermelho,OUTPUT); //Definindo pino 10 como saída. pinMode(ledAzul,OUTPUT); //Definindo pino 11 como saída.

pinMode(botao,INPUT); //Definindo pino 2 como entrada. }

//Método loop, executado enquanto o Arduino estiver ligado. void loop() { estadoBotao = digitalRead(botao);

if (estadoBotao == HIGH) { //Acendendo os leds caso o botão esteja pressionado, com //um intervalo de tempo (delay) entre os acendimentos para //criar um pequeno efeito. digitalWrite(ledAmarelo,HIGH); delay(200); digitalWrite(ledVerde,HIGH); delay(200); digitalWrite(ledVermelho,HIGH); delay(200); digitalWrite(ledAzul,HIGH); delay(200); } else { //Apagando os leds caso o botão não esteja pressionado. digitalWrite(ledAmarelo,LOW); digitalWrite(ledVerde,LOW); digitalWrite(ledVermelho,LOW); digitalWrite(ledAzul,LOW); } }

PROJETO 6 - COMO CONTROLAR UM LED COM UM POTENCIÔMETRO

Este projeto Arduino introduz o uso do potenciômetro, que é um componente eletrônico que possui a resistência elétrica ajustável, e aproveitando este recurso, deste componente, alteraremos em tempo real o intervalo de piscagem de um led que será controlado pelo arduino.

PARA CONSTRUIR ESTE PROJETO VOCÊ VAI PRECISAR DE:

PROJETO 7 – PISCAR O LED COM EFEITO FADER

Este projeto ensina como fazer um led piscar com efeito fader no Arduino. Diferente do acendimento normal que acende e apaga de uma vez o led, o efeito fader faz com que o led vá acendendo progressivamente, de uma luizinha bem fraca para uma luz forte, e depois apague da mesma forma. O segredo deste projeto está na programação e no uso de um pino digital PWM que pode funcionar como um pino analógico. PWM significa Pulse-Width Modulation ou

modulação por largura de pulso e é um meio para se obter resultados analógicos em um pino digital. Alguns pinos digitais do Arduino possuem esse recurso

PARA CONSTRUIR ESTE PROJETO VOCÊ VAI PRECISAR DE:

 Um Arduino de qualquer modelo, UNO, Leonardo, Duemilanove;  Um protoboard;  Um led;  Um resistor de 150 ohms;  Dois fios jumper.

MONTAGEM DO CIRCUITO

CÓDIGO

//Constante que representa o pino onde o positivo do //led será ligado. const int led = 10;

//Controladores do efeito de fader int brilho = 0; int fader = 5; boolean acende = true; boolean apaga = false;

//Método setup, executado uma vez ao ligar o Arduino. void setup() { //Definindo o pino led como de saída. pinMode(led,OUTPUT); }

//Método loop, executado enquanto o Arduino estiver ligado. void loop() { analogWrite(led,brilho);

//Processo de acendimento do led usando o efeito fader. if (acende == true) { if (brilho < 255) { brilho = brilho + fader; //aumentando o brilho do led. } else { acende = false; apaga = true; } }

//Processo para apagar o led com efeito fader. if (apaga == true) { if (brilho > 0) { brilho = brilho - fader; // diminuindo o brilho do led. } else { acende = true; apaga = false; } }

delay(20); }

PROJETO 8 – COMO USAR O SENSOR DE LUZ LDR

Este projeto mostrar para vocês como usar o sensor de luz LDR (Light Dependent Resistor) ou fotoresistor. O sensor de luz LDR é um tipo de resistor que varia a sua resistência de acordo com a intensidade de luz que recebe. Faremos a leitura do valor do sensor de luz

LDR e exibiremos este valor no Serial Monitor da IDE do arduino.

//Método loop, executado enquanto o Arduino estiver ligado. void loop(){

//Lendo o valor do sensor. int valorSensor = analogRead(sensor);

//Exibindo o valor do sensor no serial monitor. Serial.println(valorSensor);

delay(500); }

OBS: O comando Serial.begin inicia a comunicação com o serial monitor, onde o parâmetro 9600 significa a velocidade desta comunicação.

PROJETO 9 – SENSOR DE LUZ LDR COM SAÍDA DE LEITURA EM LEDS

Usando um sensor LDR (light dependent resistor) e leds. Este projeto faz a leitura da iluminação de um ambiente, através do LDR, e exibe o resultado da leitura do sensor nos leds. Funciona da seguinte forma, caso o ambiente esteja bem iluminado o led verde acenderá, caso a iluminação do ambiente for mediana o led amarelo acenderá e caso a iluminação esteja ruim o led vermelho acenderá, e você também poderá ver os valores lidos no LDR no Serial Monitor da IDE do arduino. Você pode alterar a leitura da iluminação aproximando ou afastando a mão do sensor LDR.

PARA CONSTRUIR ESTE PROJETO VOCÊ VAI PRECISAR DE:

 Um arduino;  Um protoboard;  Fios jumper;  Três leds, de cores diferentes;  Um sensor LDR (light dependent resistor);  Um resistor de 10k ohms e três de 100 ohms.

MONTAGEM DO CIRCUITO

CÓDIGO

int sensor = 0; //Pino analógico em que o sensor está conectado. int valorSensor = 0; //Usada para ler o valor do sensor em tempo real.

const int ledVerde = 8; const int ledAmarelo = 9; const int ledVermelho = 10;

//Função setup, executado uma vez ao ligar o Arduino. void setup(){ //Ativando o serial monitor que exibirá os valores lidos no sensor. Serial.begin(9600);

//Definindo pinos digitais dos leds como de saída. pinMode(ledVerde,OUTPUT); pinMode(ledAmarelo,OUTPUT); pinMode(ledVermelho,OUTPUT); }

//Função loop, executado enquanto o Arduino estiver ligado. void loop(){

//Lendo o valor do sensor. int valorSensor = analogRead(sensor);

//Valores da luminosidade podem ser alterados conforme necessidade.

//Luminosidade baixa. if (valorSensor < 750) { apagaLeds(); digitalWrite(ledVermelho,HIGH); }

//Luminosidade média. if (valorSensor >= 750 && valorSensor <= 800) { apagaLeds(); digitalWrite(ledAmarelo,HIGH); }

//Luminosidade alta. if (valorSensor > 800) { apagaLeds(); digitalWrite(ledVerde,HIGH); }

//Exibindo o valor do sensor no serial monitor. Serial.println(valorSensor);

delay(50); }

//Função criada para apagar todos os leds de uma vez. void apagaLeds() { digitalWrite(ledVerde,LOW); digitalWrite(ledAmarelo,LOW); digitalWrite(ledVermelho,LOW); }

CÓDIGO

//Define a utilização da biblioteca para controle de telas LDCs. #include "LiquidCrystal.h"

//Criando um objeto da classe LiquidCrystal e //inicializando com os pinos da interface. LiquidCrystal lcd(9, 8, 5, 4, 3, 2);

void setup() { //Inicializando o LCD e informando o tamanho de 16 colunas e 2 linhas //que é o tamanho do LCD JHD 162A usado neste projeto. lcd.begin(16, 2); }

void loop() { lcd.clear(); //limpa o display do LCD. lcd.print("Oi!!! "); //imprime a string no display do LCD. delay(2000);

lcd.setCursor(0,1); //posiciona cursor na coluna 0 linha 1 do LCD lcd.print("Tudo Bem???"); //imprime a string no display do LCD. delay(2000);

lcd.clear(); lcd.print("Quer aprender"); lcd.setCursor(0,1); lcd.print("este projeto?"); delay(4000);

lcd.clear(); lcd.print("VENHA PARA O SENAI"); delay(1000);

//Rolando o display para a esquerda 12 vezes for (int i = 0; i < 12; i++) { lcd.scrollDisplayLeft(); delay(600); }

delay(1000); }

 Pino 1 do LCD ligado ao GND do arduino;  Pino 2 do LCD ligado ao 5V do arduino;  Pino 3 do LCD ligado ao pino central do primeiro potenciômetro (controle de contraste);  Pino 4 do LCD ligado ao pino digital 9 do arduino;  Pino 5 do LCD ligado ao GND do arduino;  Pino 6 do LCD ligado ao pino digital 8 do arduino;  Pino 11 do LCD ligado ao pino digital 5 do arduino;  Pino 12 do LCD ligado ao pino digital 4 do arduino;  Pino 13 do LCD ligado ao pino digital 3 do arduino;  Pino 14 do LCD ligado ao pino digital 2 do arduino;  Pino 15 do LCD ligado ao pino central do segundo potenciômetro (controle do brilho);  Pino 16 do LCD ligado ao GND do arduino.