Apresentação Unipampa

54
Porque usar Arduino ? Rafael O. Gomes | Centro Universitário Fransiscano

Transcript of Apresentação Unipampa

Page 1: Apresentação Unipampa

Porque usar Arduino ?

Rafael O. Gomes | Centro Universitário Fransiscano

Page 2: Apresentação Unipampa

Arduino

Sobre o que vamos falar ?Sobre o que vamos falar ?

Rafael O. Gomes | Centro Universitário Fransiscano

Page 3: Apresentação Unipampa

História

● Em 2005

● Massimo Banzi

História

Rafael O. Gomes | Centro Universitário Fransiscano

Page 4: Apresentação Unipampa

O que é Arduino ?

O Arduino é uma plataforma de prototipagem

eletrônica open-source que se baseia

em hardware e software flexível e fácil de usar.

Rafael O. Gomes | Centro Universitário Fransiscano

Page 5: Apresentação Unipampa

O que é Arduino ?

• O que ele faz?Recebe, Gera e Interpreta Dados.

• Permite desenvolver:Controle residencialRobóticaDesign interativoQuase tudo que sonhar esta ferramenta pode tornar realidade

Rafael O. Gomes | Centro Universitário Fransiscano

Page 6: Apresentação Unipampa

O que é Arduino ?

• Possue um microcontrolador Atmel• É programado usando Wiring (subconjunto de processing, baseado em C/C++)• Open-source: evolução da plataforma através de contribuições dos usuários

Rafael O. Gomes | Centro Universitário Fransiscano

Page 7: Apresentação Unipampa

O que é Arduino ?

Rafael O. Gomes | Centro Universitário Fransiscano

Page 8: Apresentação Unipampa

O que é Arduino ?

Um Microcontrolador e um sistema computacional completo, no qual estão incluídosuma CPU (Central Processor Unit), memória de dados e programa, um sistema declock, portas de I/O (Input/Output), além de outros possíveis periféricos, tais como,módulos de temporização e conversores A/D entre outros, integrados em um mesmocomponente. As partes integrantes de qualquer computador, e que também estãopresentes, em menor escala, nos Microcontroladores são:

• Unidade Central de Processamento (CPU)

• Sistema de clock para dar sequência as atividades da CPU

• Memória para armazenamento de instruções e para manipulação de dados

• Entradas para interiorizar na CPU informações do mundo externo

• Saídas para exteriorizar informações processadas pela CPU para o mundo externo

• Programa (firmware) para definir um objetivo ao sistema

Rafael O. Gomes | Centro Universitário Fransiscano

Page 9: Apresentação Unipampa

O que é Arduino ?

Rafael O. Gomes | Centro Universitário Fransiscano

Page 10: Apresentação Unipampa

O que são Shields ?

Rafael O. Gomes | Centro Universitário Fransiscano

O que são Shields?

“Escudos”. Extentenções do

arduino que permitem interagir

com tecnologias diversas com

facilidade.

Ex:

Page 11: Apresentação Unipampa

Arduino e IDE

Rafael O. Gomes | Centro Universitário Fransiscano

Arduino UNO e IDE de programação:

Page 12: Apresentação Unipampa

Arduino UNO

Rafael O. Gomes | Centro Universitário Fransiscano

Arduino UNO

Page 13: Apresentação Unipampa

IDE Arduino

Rafael O. Gomes | Centro Universitário Fransiscano

Page 14: Apresentação Unipampa

IDE Arduino

Rafael O. Gomes | Centro Universitário Fransiscano

Page 15: Apresentação Unipampa

IDE Arduino

Rafael O. Gomes | Centro Universitário Fransiscano

Page 16: Apresentação Unipampa

Comandos Basicos

Rafael O. Gomes | Centro Universitário Fransiscano

Comandos básicos

pinMode() – define um pino com entrada ou saída

digitalWrite() – liga ou desliga uma saída digital

delay() – “espera” um determinado tempo

analogWrite() – escreve um valor analógico no pino

analogWrite(num_pino, valor); valor entre 0 e 255

Constantes

LOW | HIGH – indica nível baixo (0V) e alto (5V) nos pinos

INPUT | OUTPUT – define se um pino vai ser pino de entrada ou de saída

Page 17: Apresentação Unipampa

Função PWM

Rafael O. Gomes | Centro Universitário Fransiscano

Page 18: Apresentação Unipampa

Sensores

Rafael O. Gomes | Centro Universitário Fransiscano

Tipos de Sinais• AnalógicoSensores Analógicos são sensores que assumem qualquer valor em um sinal de saída ao seu processamento, contanto que esteja dentro da faixa atribuída a ele[SABER ELETRONICA 2006]. Algumas das grandezas físicas podem assumir qualquer valor ao longo do tempo são: Umidade, Pressão, Temperatura, Vazão, Força. Estas variáveis são mensuradas por elementos sensíveis com circuitos eletrônicos que não utilizam microcontroladores

• DigitalSensores Digitais ao contrario dos analógicos apenas podem assumir apenas dois valores no seu sinal de saída ao longo do processamento, que podem ser interpretados como 0 ou 1. É utilizado, por exemplo, em detecção de passagem de objetos, encoders na determinação de distancia e velocidade.

Tipos de Sensores

• Sensor Analógico

• Sensor Digital

Page 19: Apresentação Unipampa

Sensores

Rafael O. Gomes | Centro Universitário Fransiscano

Tipos de Sinais

• Analógico

• Digital

Tipos de Sensores

• Sensor Analógico

• Sensor Digital

Page 20: Apresentação Unipampa

Sensore Ultrassonico HC –

SR04

Rafael O. Gomes | Centro Universitário Fransiscano

Page 21: Apresentação Unipampa

Sensore Ultrassonico HC –

SR04

Rafael O. Gomes | Centro Universitário Fransiscano

Page 22: Apresentação Unipampa

Sensores e Atuadores

Rafael O. Gomes | Centro Universitário Fransiscano

Page 23: Apresentação Unipampa

Sensores e Atuadores

Rafael O. Gomes | Centro Universitário Fransiscano

Page 24: Apresentação Unipampa

Sensores e Atuadores

Rafael O. Gomes | Centro Universitário Fransiscano

Page 25: Apresentação Unipampa

Sensores e Atuadores

Rafael O. Gomes | Centro Universitário Fransiscano

Page 26: Apresentação Unipampa

Sensores e Atuadores

Rafael O. Gomes | Centro Universitário Fransiscano

Page 27: Apresentação Unipampa

Sensores e Atuadores

Rafael O. Gomes | Centro Universitário Fransiscano

Page 28: Apresentação Unipampa

Automação

Rafael O. Gomes | Centro Universitário Fransiscano

Page 29: Apresentação Unipampa

Automação

Rafael O. Gomes | Centro Universitário Fransiscano

• O conceito de Automação surgiu por volta de 3500 a 3200 A.C., com a invenção da roda, tendo por finalidade melhorar, facilitar e agilizar o desempenho em atividades cotidianas. O objetivo deste termo segue sempre uma mesma linha de princípios, sendo: substituir o trabalho braçal por outros meios “mais inteligentes”, liberando o tempo gasto para outras atividades, de intelecto, das artes e do lazer [Silveira e & Santos, 1998].

• Desde a década de 1920, quando surgiram os primeiros eletrodomésticos nos Estados Unidos, os fabricantes já usavam o termo casa do futuro [Bolzani, 2007]. Nos últimos anos a automação tem “saído” das indústrias e “entrado” nas residências, principalmente com o avanço da computação onde os dispositivos se integram na residência, onde tarefas repetitivas podem ser realizadas por máquinas [Quinderé, 2012].

Page 30: Apresentação Unipampa

Automação

Rafael O. Gomes | Centro Universitário Fransiscano

Page 31: Apresentação Unipampa

Automação

Rafael O. Gomes | Centro Universitário Fransiscano

Page 32: Apresentação Unipampa

Robótica

Rafael O. Gomes | Centro Universitário Fransiscano

A robótica é ciência que estuda a construção de robôs. Ela envolve várias outras disciplinas como: engenharia mecânica e elétrica, inteligência artificial, engenharia eletrônica, física entre outras.

Muita gente quando pensa em robôs, lembra apenas dos filmes de Hollywood, onde todos simulam perfeitamente seres humanos. Na verdade, encontramos robôs de diversas formas, que são utilizados em diversas atividades.

Page 33: Apresentação Unipampa

Robótica

Rafael O. Gomes | Centro Universitário Fransiscano

Page 34: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 35: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

// Pin 13 has an LED connected on most Arduino boards.// give it a name:int led = 13;

// the setup routine runs once when you press reset:void setup() {

// initialize the digital pin as an output.pinMode(led, OUTPUT);

}

// the loop routine runs over and over again forever:void loop() {

digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)delay(1000); // wait for a seconddigitalWrite(led, LOW); // turn the LED off by making the voltage LOWdelay(1000); // wait for a second

}

Page 36: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Exemplo com Entrada e Saída

Page 37: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

int ledPin = 13; //led no pino 13 int Botao = 2; //botao no pino 2 int EstadoBotao = 0; //Variavel para ler o status do pushbutton void setup(){ pinMode(ledPin, OUTPUT); //Pino do led será saídapinMode(Botao, INPUT); //Pino com botão será entrada} void loop(){ EstadoBotao = digitalRead(Botao); /*novo estado do botão vai ser igual ao queArduino ler no pino onde está o botão. Poderá ser ALTO (HIGH)se o botão estiverPressionado, ou BAIXO (LOW),se o botãoestiver solto */ if (EstadoBotao == HIGH){ //Se botão estiver pressionado (HIGH) digitalWrite(ledPin, HIGH);// acende o led do pino 13. } else{ //se não estiver pressionadodigitalWrite(ledPin, LOW); //deixa o led do pino 13 apagado} }

Page 38: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 39: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

const int PinoSensor = 0;//pino Anlógico de Entrada 0

int ValorSensor = 0;

void setup(){

Serial.begin(9600);

}

void loop(){

ValorSensor = analogRead(PinoSensor);

Serial.print("Valor do Sensor = ");

Serial.println(ValorSensor);

delay(500);

}

Page 40: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 41: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 42: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

const int PinoSensor = 0; const int Buzzer = 6; int ValorSensor = 0;

void setup(){ pinMode(Buzzer, OUTPUT); Serial.begin(9600); } void loop(){ ValorSensor = analogRead(PinoSensor); Serial.print("Valor do Sensor = "); Serial.println(ValorSensor); if (ValorSensor > 912){ digitalWrite(Buzzer, HIGH); } else{ digitalWrite(Buzzer, LOW); } }

Page 43: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 44: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

const int PinoPotenciometro = 0; const int Led = 13; int ValorPot = 0;

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

void loop() { ValorPot = analogRead(PinoPotenciometro); digitalWrite(Led, HIGH); delay(ValorPot); digitalWrite(Led, LOW); delay(ValorPot); }

Page 45: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 46: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() { lcd.begin(16, 2); lcd.setCursor(0,0); lcd.print("Ola, meu nome e:"); lcd.setCursor(0,1); lcd.print("XXX"); //Coloque seu nome no lugar dos XXX

}

void loop() {

}

Page 47: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 48: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 49: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 50: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

*/#include "Servo.h" //incluindo biblioteca para controle do servomotor

Servo servoMotorObj; //Criando um objeto da classe Servo

int const potenciometroPin = 0; //pino analógico onde o potenciômetro está conectadoint const servoMotorPin = 3; //pino digital associado ao controle do servomotorint valPotenciometro; //variável usada para armazenar o valor lido no potenciômetro

void setup() {servoMotorObj.attach(servoMotorPin); //associando o pino digital ao objeto da classe Servo

}

void loop(){valPotenciometro = analogRead(potenciometroPin); //lendo o valor do potenciômetro (intervalo entre

0 e 1023)valPotenciometro = map(valPotenciometro, 0, 1023, 0, 180); //mapeando o valor para a escala do

servo (entre 0 e 180)servoMotorObj.write(valPotenciometro); //definindo o valor/posição do servomotordelay(15);

}

Page 51: Apresentação Unipampa

Exemplo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 52: Apresentação Unipampa

Codigo

Rafael O. Gomes | Centro Universitário Fransiscano

Page 53: Apresentação Unipampa

Perguntas

Rafael O. Gomes | Centro Universitário Fransiscano

Page 54: Apresentação Unipampa

Contato

Rafael O. Gomes | Centro Universitário Fransiscano

Nome: RAFAEL O. GOMES

Site Projetos: www.projetosarduino.blogspot.com.br

Email: [email protected]

[email protected]

Facebook: www.facebook.com/rafael.gomes.904108

Linked: br.linkedin.com/pub/rafael-gomes/89/a66/38/