Apostila Arduino - Núcleo de Estudos em Robótica SheepSet
-
Upload
saymon-oliveira -
Category
Technology
-
view
278 -
download
7
description
Transcript of Apostila Arduino - Núcleo de Estudos em Robótica SheepSet
Apostila para
Desenvolvimento de
Práticas com Arduino
Núcleo de Estudos em Robótica SheepSet
IFSULDEMINAS – Câmpus Muzambinho
Informações úteis
Ligações da protoboard:
Escolhendo os pinos corretamente:
Funções nativas da programação no Arduino:
pinMode(p, c) – onde ‘p’ é o número da porta a ser configurada e ‘c’ é a
configuração INPUT ou OUTPUT.
digitalWrite(p, s) – ‘p’ é a porta e ‘s’ o estado HIGH ou LOW (1 ou 0)
digitalRead(p) – p é a porta digital que será lida.
analogRead(p) – p é a porta analógica que será lida.
analogWrite(p, valor) – p é a porta digital que simulará um sinal
analógico, e valor é qualquer valor de 0 a 255.
delay(t) – causa uma pausa em milisegundos
Serial.begin(v) – inicia a comunicação serial a uma velocidade ‘v’ em bauds.
Serial.print(“text”) – escreve uma string pela porta USB
Serial.println“text”) – escreve uma string pela porta USB quebrando a
linha
Serial.available() – retorn “true” se estiver recebendo algo pela porta USB
Serial.read() – lê o que está sendo recebido pela porta USB
Escopo do ambiente de programação Arduino:
1ª Prática: Blink LED 13
Dicas: utilize jumpers para interligar os componentes e utilize a figura 1 para
fazer as ligações corretamente.
Dificuldade: newbie
Componentes necessários:
Faça as ligações corretamente de acordo com o esquema abaixo:
Figura 1: esquemático prática 1
Desafio: coloque mais um LED e faça uma lógica com as
funções nativas do Arduino criando um “pisca-pisca”.
2ª pratica: LED 13 + Potenciômetro
Dicas: utilize jumpers para interligar os componentes e utilize a figura 2 para
fazer as ligações corretamente.
Dificuldade: newbie
Componentes necessários:
Faça as ligações corretamente de acordo com o esquema abaixo:
Figura 2: esquemático prática 2
Código:
Desafio: adicione mais um LED para funcionar como um
“giroflex” que pode ser controlado a velocidade de piscar dos
LEDs através do potenciômetro.
3ª prática: On/Off Botão + LED 13
Dicas: utilize jumpers para interligar os componentes e utilize a figura 3 para
fazer as ligações corretamente.
Dificuldade: newbie
Componentes necessários:
Faça as ligações corretamente de acordo com o esquema abaixo:
Figura 3: Esquemático prática 3
Desafio: coloque mais um LED e inverta, deixe um LED ligado
e outro desligado e quando o botão for pressionado um
desliga e outro liga.
Desafio 2: coloque um buzzer no lugar do LED (retire o
resistor) e faça-o apitar quando o botão for pressionado
(buzzer pode ser ligado na saída digital do LED).
4ª prática: Sensor NTC + Buzzer
Dicas: utilize jumpers para interligar os componentes e utilize a figura 4 para
fazer as ligações corretamente.
Dificuldade: expert
Componentes necessários:
Faça as ligações corretamente de acordo com o esquema abaixo:
Figura 4: Esquemático prática 4
Desafio: projeto termômetro – retire o buzzer e conecte um
ou mais LEDs e crie uma lógica com condições.
Exemplo: usando um LED Verde para baixas temperaturas e
um LED Vermelho para altas. Crie uma lógica com condições.
5ª prática: Semáforo com LEDs
Dicas: utilize jumpers para interligar os componentes e utilize a figura 5 para
fazer as ligações corretamente.
Dificuldade: medium
Componentes necessários:
Faça as ligações corretamente de acordo com o esquema abaixo:
Figura 5: Esquemático prática 5
Código:
// PROJETO SEMÁFORO
const int LedVermelho = 10; const int LedAmarelo = 9; const int LedVerde = 8;
void setup() {
pinMode(LedVermelho, OUTPUT); pinMode(LedAmarelo, OUTPUT);
pinMode(LedVerde, OUTPUT); }
void loop() { digitalWrite(LedVermelho, HIGH); // Acende a luz vermelha
delay(4000); // espera 4 segundos digitalWrite(LedAmarelo, HIGH); // Acende a luz amarela
delay(2000); // Espera 2 segundos
digitalWrite(LedVerde, HIGH); // Acende a luz verde digitalWrite(LedVermelho, LOW); // Apaga a luz vermelha digitalWrite(LedAmarelo, LOW); // Apaga a luz amarela
delay(6000); // Espera 6 segundos
digitalWrite(LedVermelho, HIGH); // Acende a luz vermelha digitalWrite(LedVerde, LOW); // Apaga a luz verde
delay(2000); // Espera 2 segundos digitalWrite(LedAmarelo, LOW); // Apaga a luz amarela
}
Desafio: coloque outro semáforo simulando um cruzamento.
Use comandos de condição ou repetição se necessário.
Créditos finais: Este documento foi baseado no RoboCore
Arduino Kit Iniciante V6.1 e códigos feitos pelo Núcleo de
Estudos em Robótica SheepSet.
Agradecimentos: Professor Heber Moreira, Laboratório de
Eletrônica/Sistemas Digitais e Robótica e Coordenação do
Curso de Ciência da Computação do IFSULDEMINAS –
Câmpus Muzambinho.