• Nenhum resultado encontrado

Tudo Sobre o Arduino

N/A
N/A
Protected

Academic year: 2021

Share "Tudo Sobre o Arduino"

Copied!
109
0
0

Texto

(1)

Uma Introdução ao

Uma Introdução ao

ARDUINO

ARDUINO

e suas Aplicações na

e suas Aplicações na

Robótica

Robótica

André F. Núñez André F. Núñez

(2)
(3)

O que é A

O que é A

rduino?

rduino?

“Arduino é uma plataforma open

“Arduino é uma plataforma open-source-source

de protótipos eletrônicos baseados em

de protótipos eletrônicos baseados em

hardware e software flexível e fácil de

hardware e software flexível e fácil de

usar. É destinado a artistas, designers,

usar. É destinado a artistas, designers,

hobbyistas, e qualquer pessoa interessada

hobbyistas, e qualquer pessoa interessada

em criar objetos ou ambientes

em criar objetos ou ambientes

interativos.”

(4)

O que é A

O que é A

rduino?

rduino?

“O Arduino pode sentir o ambiente

“O Arduino pode sentir o ambiente

recebendo entradas de uma variedade

recebendo entradas de uma variedade

de sensores e pode modificar seu

de sensores e pode modificar seu

arredor controlando luzes, motores e

arredor controlando luzes, motores e

outros atuadores.”

(5)

O que é Arduino?

• Linguagem de programação própria;

• Ambiente de desenvolvimento próprio; • Fabricado manualmente ou comprado;

(6)
(7)

A origem do Arduino

• Cidade de Ivrea, Itália;

 – 2005;

• Interagir em projetos escolares de forma

a ter um orçamento menor que outros

sistemas de prototipagem disponíveis naquela época;

(8)

Criadores do Arduino

• Time de suporte Arduino:

 – Massimo Banzi, David Cuartielles, Tom

(9)

Sucesso rápido

• Menção honrosa na categoria

Comunidades Digitais em 2006, pela

Prix Ars Electronica (Prêmio de Artes

Eletrônicas);

• 50.000 placas vendidas até outubro de

(10)

Colaboradores Arduino

• Créditos

 – Ambiente;  – Linguagem;  – Compilador;

(11)

Comunidade (suporte)

Comunidade (suporte)

• • Forum:Forum:  –  – http://www.arduino.cc/forum/http://www.arduino.cc/forum/ • • Wiki:Wiki:  –  – http://www.arduino.cc/playground/http://www.arduino.cc/playground/ • • Blog:Blog:  –  – http://arduino.cc/blog/http://arduino.cc/blog/

(12)

Comunidade (suporte)

Comunidade (suporte)

• • Twitter:Twitter:  –  – http://twitter.com/arduinoteamhttp://twitter.com/arduinoteam • • Laboratório:Laboratório:  –  – http://labs.arduino.cc/http://labs.arduino.cc/

(13)

Por que Arduino?

Por que Arduino?

• Cafeteira avisar através do Twitter que o caféCafeteira avisar através do Twitter que o café

está pronto?

está pronto?

• Robô que brinca com o Robô que brinca com o cachorro?cachorro? •

• Monitor de frequência cardíaca que grava oMonitor de frequência cardíaca que grava o

log em um cartão SD?

log em um cartão SD?

• Receber SMS no celular ao receber um e-Receber SMS no celular ao receber um

e-mail?

mail?

• Fantasia que interage através de som e luzes?Fantasia que interage através de som e luzes?

Solução: ARDUINO

(14)

Por que Arduino?

• Descomplicado

 – não foi feito por Engenheiros para

Engenheiros;

• IDE roda em Windows, Mac e Linux; • Drivers rodam em Windows, Mac e

(15)

Por que Arduino?

• Bibliotecas

 – coisas simples;

(16)

Por que Arduino?

• Compilador conhecido e bem testado  – execução leve e rápida ;

 – código pequeno;

• Cobre 90%+ dos sensores do mercado

• Não é produzido por um fabricante de

(17)

Por que Arduino?

• Possui os requisitos mínimos

 – mas funcionalidades podem ser

adicionadas;

(18)

Por que Arduino?

Por que Arduino?

• Baixo custo;Baixo custo;

• Open-source;Open-source;

 –

 – FreeFreeduinoduino;;  –

 – SeeeSeeeduinoduino;;  –

 – PingPinguinouino;;  –

(19)

Paperduino

(20)

HARDWARE

HARDWARE

Portas Digitais

Portas Digitais Portas AnalógicasPortas Analógicas

Alimentação Alimentação Conexão p/ Conexão p/ Fonte Externa Fonte Externa Conexão USB Conexão USB uC Atmel uC Atmel

(21)

Hardware básico

Portas Digitais (E/S)

• 14 portas digitais; • 0 ~ 5V

(22)

Hardware básico

Portas Analógicas

• 6 portas analógicas; • Leitura de 0 ~ 5V  – 10 bits de conversão (2^10);  – saída de 0 a 1023;

(23)

Hardware básico

Portas PWM

• Pulse Width Modulation

 – Modulação por Largura de Pulso;

• 6 portas PWM;

(24)

Hardware básico

(25)

Hardware básico

Comunicação

• Canal de comunicação serial

 – RX (pino 0);  – TX (pino 1);

• Conexão SPI

(26)

Hardware básico

Comunicação

• Conexão I²C

 – Inter-Integrated Circuit ;

• Pinos ICSP

(27)

Placas Oficiais Arduino

Arduino Uno

• 1.0 - Versão oficial de lançamento

 – Diecimila;

(28)

Placas Oficiais Arduino

Arduino Uno

Microcontroller ATmega328 Operating Voltage 5V

Input Voltage (recommended) 7-12V

Input Voltage (limits) 6-20V

Digital I/O Pins 14 (of which 6 provide PWM

output)

Analog Input Pins 6

DC Current per I/O Pin 40 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 32 KB (ATmega328) of which 0.5 KB

used by bootloader

SRAM 2 KB (ATmega328)

EEPROM 1 KB (ATmega328)

(29)

Placas Oficiais Arduino

Arduino Mega 2560

• 54 portas E/S  – 14 PWM; • 16 entradas analógicas; • 4 UARTS

(30)

Placas Oficiais Arduino

Arduino Mega ADK

• Mesmas funcionalidades do Mega

2560;

• Conexão USB especial para

(31)

Placas Oficiais Arduino

Arduino Ethernet

• Funcionalidades do Arduino Uno; • Conexão RJ-45

 – Reduz alguns pinos;

(32)

Placas Oficiais Arduino

Arduino BT

• Funcionalidades do Arduino UNO; • Placa de comunicação Bluetooth

embutida

 – Bluegiga WT11

(33)

Placas Oficiais Arduino

Arduino Leonardo

• 20 pinos E/S;

 – 7 PWMs;

• 12 entradas analógicas; • USB embutida no chip;

(34)

Placas Oficiais Arduino

Arduino LilyPad

• Versões de baixo consumo dos

controladores padrão

 – ATmega168V e ATmega328V;

(35)

Placas Oficiais Arduino

(36)

Placas Oficiais Arduino

(37)

Placas Oficiais Arduino

(38)

Placas Oficiais Arduino

(39)

Placas Oficiais Arduino

Arduino Fio

• Microcontrolador SMD; • 3.3V;

• Funcionalidades Arduino UNO; • Conexão para placa Xbee;

(40)

Placas Oficiais Arduino

Arduino Nano

• Layout diferenciado; • Compatível com protoboard; • Mini-B USB;

(41)

Placas Oficiais Arduino

Arduino Mini e PRO Mini

• Funcionalidades Arduino UNO; • Placa muito pequena;

• Sem headers;

(42)

Shields

• Shields são placas que podem ser

conectados em cima do PCB Arduino estendendo as suas capacidades.

• Os Shields seguem a mesma filosofia

Arduino:

 – são fáceis de montar e baratos de

(43)
(44)

Shields

Arduino Proto Shield

• Testar circuitos rapidamente;

• Acoplar protoboard pequena;

• Botão de reset;

• Área p/ CI  – SMD

(45)

Shields

Wireless SD Shield

• Socket para Xbee;

• Leitor de cartões microSD; • Área de prototipagem;

(46)

Shields

Arduino Motor Shield

• Ponte-H L298 embutido;

• Controlar velocidade e direção de

motores DC;

(47)

Shields

Criando seu próprio Shield

• Respeitar o layout do Arduino

• Respeitar as particularidades de cada

pino;

(48)

Shields

(49)

Shields

(50)

Shields

• Arduino Shield List:

 – http://shieldlist.org/

(51)

Bricks

• São como blocos que possuem

dispositivos de entrada e saída prontos para serem utilizados;

 – Sensores;  – Atuadores;

• Conectam-se aos shields; • Conexão padrão;

(52)
(53)
(54)

Bricks

• Excelentes para iniciantes;

 – compensa fabricar seus próprios bricks?

R$ 24,00 R$ 8,00

(55)
(56)

Ambiente de Desenvolvimento

Integrado - IDE

• Open-source;

(57)

Ambiente de Desenvolvimento

Integrado - IDE

• Escrito em Java e baseado em:

 – Processing (interface gráfica);  – avr-gcc (compilador);

(58)

Ambiente de Desenvolvimento

Integrado - IDE

• Facilita a programação;

• Muitos exemplos, para todas as

(59)

Ambiente de Desenvolvimento

Integrado - IDE

• Permite gravar o código no

microcontrolador;

• Permite a comunicação com o Arduino

através da porta serial;

 – monitor da serial para troca de mensagens;  – facilita debug de hardware;

(60)

Ambiente de Desenvolvimento

Integrado - IDE

Serial Monitor  Compilar / Verificar  Gravar  Área de Programação Área de Informações Modelo e Porta Serial

(61)

Ambiente de Desenvolvimento

Integrado - IDE

SETUP

• Configurações iniciais; • O código é executado

uma única vez.

LOOP

• Equivale ao Main do C; • w h i l e  infinito;

(62)

Ambiente de Desenvolvimento

Integrado - IDE

(63)

Ambiente de Desenvolvimento

Integrado - IDE

(64)

Bibliotecas

Bibliotecas do usuário

(65)

Bibliotecas

(66)

Bibliotecas

Criando Bibliotecas

• Criar arquivo .h

 – Definição da classe criada;

 – Definição dos métodos da classe;

• Criar arquivo .cpp

(67)

Bibliotecas

Criando Bibliotecas

• Adicionar na pasta “libraries”;

• Pode ser adicionado “keywords.txt”

 – Definição das keywords da biblioteca para

facilitar a visualização na IDE;

• Compilação acontece automaticamente

(68)

Bibliotecas

(69)

Bibliotecas

Criando Bibliotecas

• Ainda é possível adicionar uma pasta

“examples” com exemplos de uso para

a biblioteca criada;

• Os exemplos ficarão disponíveis na aba

(70)

O Arduino e a Robótica

PERCEBER CONTROLAR AGIR

Sensores Atuadores

(71)

O Arduino e a Robótica

• Arduino fornece todos os requisitos

básicos;

• Robôs simples;

 – Arduino possui restrições quanto ao

(72)

O Arduino e a Robótica

• Comunicação também é facilitada;

 – Robôs geralmente precisam se comunicar,

receber comandos ou enviar informações para outros robôs ou estações remotas de supervisão e controle;

(73)

Arduino, Robótica e Automação

Alguns vídeos e exemplos de aplicação:

• Robô manipulador:

 – Controlado por Joystick;

 – Utilizando cinemática inversa e resolvendo o

(74)

Arduino, Robótica e Automação

• Sistema separador de frutas

automatizado;

• Medidor de Velocidade;

• Controle remoto para apresentação na

(75)

Exemplo de Aplicação

Controle Remoto para PC

(76)

Exemplo de Aplicação

Controle Remoto para PC

Incluir as bibliotecas

Atribuir um pino e criar o objeto receptor 

Configurar a Serial e ativar a recepção

pelo IR

Escrever o valor  na Serial

(77)

Exemplo de Aplicação

Controle Remoto para PC

• Software auxiliar PC Remote Control

 – recepção dos comandos através da porta

serial;

 – Mapeamento para funções diversas; • Mouse;

• Teclado;

• Controle de volume; • Execução de programa;

(78)

Exemplo de Aplicação

(79)

Exemplo de Aplicação

Braço Robótico com Joystick

• Construído modelo

do braço;

• Joystick

(80)

Exemplo de Aplicação

Braço Robótico com Joystick

• 7 servo-motores:

 – apresentam movimento proporcional a

um comando;

 – não giram livremente sem um controle

mais efetivo de posição;

(81)

Exemplo de Aplicação

Braço Robótico com Joystick

• Conexões compatíveis com Shields; • Biblioteca padrão Arduino;

(82)

Exemplo de Aplicação

Braço Robótico com Joystick

Estrutura mecânica

Arduino e Shield

Botões para rotação Joystick para controle

(83)

Exemplo de Aplicação

(84)

Exemplo de Aplicação

(85)

Exemplo de Aplicação

(86)

Exemplo de Aplicação

Sistema Separador de Frutas

• Controlar fluxo; • Separar:  – Frutas;  – Não frutas; (descarte) • Encaixotar • Jogar no lixo;

(87)

Exemplo de Aplicação

(88)

Exemplo de Aplicação

(89)

Exemplo de Aplicação

Medidor de Velocidade

• Velocímetro para:

 – carrinhos de Autorama;

(90)

Exemplo de Aplicação

(91)

Como iniciar no Arduino e na

Robótica

• Escolher o modelo adequado  – Arduino Uno R3;

 – http://arduino.cc/en/Main/Buy  – Google, mercadolivre.com;

(92)

Como iniciar no Arduino e na

Robótica

• Ferramentas adequadas;  – Ferro de solda;  – Multímetro;  – Alicates;

• Componentes eletrônicos de bancada;

(93)

Kits de Desenvolvimento Arduino

• Não há kit oficial Arduino; • Kits incluem (geralmente):

 – Algum modelo Arduino (Uno);  – Shields;

• Sensor shield;  – Bricks;

(94)

Kits de Desenvolvimento Arduino

• Kits incluem (geralmente):

 – Servo-motores;  – Protoboard;

 – Cabos para conexão na protoboard;  – Componentes eletrônicos em geral;

(95)
(96)

Kits de Desenvolvimento Arduino

• Internacionais:

 – variam entre $40,00 e $130,00; • Nacionais:

(97)

Kits de Desenvolvimento Arduino

• Vale a pena pesquisar um pouco sobre o

assunto e montar seu próprio Kit;

• É possível encontrar pacotes com

componentes usados em lojas especializadas;

• Deve-se evitar o frete nas compras pela

(98)

Kits de Desenvolvimento Arduino

(99)

Kits de Desenvolvimento Arduino

R$40,00 + Arduino <= R$150,00 Kit montado: • 6 metros de cabos coloridos; • Protoboard; • Placa virgem; • Potenciômetro; • Buzzer; •Sensor de temperatura; • 10 LEDs coloridos; • 200+ resistores diversos; • Conectores macho e femea p/ protoboard;

(100)
(101)

Dicas, Sites e Livros

• http://arduino.cc/ • http://www.arduinobooks.com/  – Livros Pagos;  – PDF grátis: • http://www.arduinobooks.com/cat egory/free-arduino-pdfs/

(102)

Dicas, Sites e Livros

• Inglês, praticamente todas as boas

fontes;

• Sites de componentes isentos de taxa

de importação e frete grátis;

 – http://www.dealextreme.com/  – http://www.aliexpress.com/

(103)

Softwares Auxiliares

• Simulator for Arduino

 – Simulação e teste de código;

 – Shareware, mas possui versão de testes

(104)

Softwares Auxiliares

• Processing

 – Base da interface gráfica da IDE Arduino;  – Como OpenGL ou Allegro, permite criar

interface gráfica para seus próprios programas no Arduino;

(105)

Softwares Auxiliares

• Fritzing

 – Desenho de projetos (não faz

simulações)

• Protoboard; • Esquemático; • PCI layout;

(106)

Softwares Auxiliares

 – Permite imprimir desenhos para

processo de confecção das placas;

 – Possui uma vasta biblioteca de

componentes eletrônicos, shields (oficiais e de outras marcas), CIs, entre outros;

(107)
(108)
(109)

Referências

Documentos relacionados

Deste modo a educação é vista como um campo de conhecimento de pleno direito, com objectivos, objectos e métodos muito diferentes dos da Matemática, mas igualmente legítimos

The objective of this study was to evaluate fruit yield of the strawberry crop using bare root transplants and plug transplants grown with different volumes of substrate...

Assim, o que se pretende com a utilização de simulações em Realidade Virtual é proporcionar momentos de reflexão nos quais os conceitos são elaborados e relaborados, utilizados

•  Implementar e regularmente fortalecer padrões. •  Estabelecer e harmonizar procedimentos de testes para eficiência veicular. •  Impostos sobre veículos e combustível

Foram selecionados 20 adultos praticantes da caminhada sendo 10 do sexo feminino e 10 do sexo masculino com idade entre 25 e 55 anos, onde responderam um

Se um idoso não se sente apto a iniciar com o trabalho dessas atividades neuromusculares antigravitacionais, a Hidroginástica poderia servir como meio preparatório até que

Já em 2001, havia sido realizado um estudo com 742 mulheres que comparou os desfechos maternos e neonatais dos agonistas beta-2 adrenérgicos (salbutamol,

As figuras 1 e 2 descrevem as partes do equipamento, onde se observa a dois tubos (1), um do lado direito e um do lado esquerdo da carroceria, sendo eles fixados