Tudo Sobre o Arduino
Short Description
Download Tudo Sobre o Arduino...
Description
Uma Introdução ao ARDUINO e suas Aplicações na Robótica André F. Núñez
O que é Arduino? Arduino? “Arduino é uma plataforma open-source
de protótipos eletrônicos baseados em hardware e software flexível e fácil de usar. É destinado a artistas, designers, hobbyistas, e qualquer pessoa interessada em criar objetos ou ambientes interativos.”
O que é Arduino? Arduino? “O Arduino pode sentir o ambiente
recebendo entradas de uma variedade de sensores e pode modificar seu arredor controlando luzes, motores e outros atuadores.”
O que é Arduino? •
Linguagem de programação própria;
•
Ambiente de desenvolvimento próprio;
•
Fabricado manualmente ou comprado;
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;
Criadores do Arduino •
Time de suporte Arduino: –
Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino e David Mellis.
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 2008;
Colaboradores Arduino •
Créditos –
–
–
–
Ambiente; Linguagem; Compilador; Pessoas de várias partes do mundo;
Comunidade (suporte) •
Forum: http://www.arduino.cc/forum/ –
•
Wiki: http://www.arduino.cc/playground/ –
•
Blog: http://arduino.cc/blog/ –
Comunidade (suporte) •
Twitter: http://twitter.com/arduinoteam –
•
Laboratório: http://labs.arduino.cc/ –
Por que Arduino? •
•
•
•
•
Cafeteira avisar através do Twitter que o café está pronto? Robô que brinca com o cachorro? Monitor de frequência cardíaca que grava o log em um cartão SD? Receber SMS no celular ao receber um email? Fantasia que interage através de som e luzes?
Solução: ARDUINO
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 Linux;
Por que Arduino? •
Bibliotecas –
–
coisas simples; coisas complexas;
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 microcontroladores;
Por que Arduino? •
Possui os requisitos mínimos –
mas funcionalidades podem ser adicionadas; BeagleBoard
Arm-cm3 Board
Por que Arduino? •
Baixo custo;
•
Open-source; –
–
–
–
Freeduino; Seeeduino; Pinguino; Paperduino;
Paperduino
HARDWARE Portas Digitais
Portas Analógicas
uC Atmel Alimentação
Conexão USB
Conexão p/ Fonte Externa
Hardware básico
Portas Digitais (E/S) •
14 portas digitais;
•
0 ~ 5V –
LOW e HIGH;
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; –
–
Hardware básico
Portas PWM •
Pulse Width Modulation Modulação por Largura de Pulso; –
•
6 portas PWM;
•
“Simula” uma tensão de saída
Hardware básico
Portas PWM
Hardware básico
Comunicação •
Canal de comunicação serial –
–
•
RX (pino 0); TX (pino 1);
Conexão SPI –
System Peripheral Interface;
Hardware básico
Comunicação •
Conexão I²C –
•
Inter-Integrated Circuit ;
Pinos ICSP –
In-Circuit Serial Programming;
Placas Oficiais Arduino
Arduino Uno •
1.0 - Versão oficial de lançamento –
–
Diecimila; Duemilanove;
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)
Clock Speed
16 MHz
Placas Oficiais Arduino
Arduino Mega 2560 •
54 portas E/S –
•
•
14 PWM;
16 entradas analógicas; 4 UARTS
Placas Oficiais Arduino
Arduino Mega ADK •
•
Mesmas funcionalidades do Mega 2560; Conexão USB especial para comunicação com Android;
Placas Oficiais Arduino
Arduino Ethernet •
•
Funcionalidades do Arduino Uno; Conexão RJ-45 –
•
Reduz alguns pinos;
Leitor de cartões microSD;
Placas Oficiais Arduino
Arduino BT •
•
Funcionalidades do Arduino UNO; Placa de comunicação Bluetooth embutida –
–
Bluegiga WT11 Permite gravar gravar o microcontrolador
Placas Oficiais Arduino
Arduino Leonardo •
20 pinos E/S; –
•
•
7 PWMs;
12 entradas analógicas; USB embutida no chip;
Placas Oficiais Arduino
Arduino LilyPad •
Versões de baixo consumo dos controladores padrão –
•
ATmega168V e ATmega328V;
Feito para ser costurado;
Placas Oficiais Arduino
Arduino LilyPad
Placas Oficiais Arduino
Arduino LilyPad
Placas Oficiais Arduino
Arduino LilyPad
Placas Oficiais Arduino
Arduino LilyPad
Placas Oficiais Arduino
Arduino Fio •
•
•
•
Microcontrolador SMD; 3.3V; Funcionalidades Arduino UNO; Conexão para placa Xbee;
Placas Oficiais Arduino
Arduino Nano •
•
•
Layout diferenciado; Compatível com protoboard; Mini-B USB;
Placas Oficiais Arduino
Arduino Mini e PRO Mini •
•
•
•
Funcionalidades Arduino UNO; Placa muito pequena; Sem headers; Geralmente usados no produto final;
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 produzir;
Shields
Shields
Arduino Proto Shield •
Testar circuitos rapidamente;
•
Acoplar protoboard pequena;
•
Botão de reset;
•
Área p/ CI SMD Through Hole –
–
Shields
Wireless SD Shield •
•
•
Socket para Xbee; Leitor de cartões microSD; Área de prototipagem;
Shields
Arduino Motor Shield •
•
•
Ponte-H L298 embutido; Controlar velocidade e direção de motores DC; Leitura da corrente;
Shields
Criando seu próprio Shield •
•
•
Respeitar o layout do Arduino Respeitar as particularidades de cada pino; Compensa?
Shields
Shield Braço Robótico
Shields
Shield Braço Robótico
Shields •
Arduino Shield List: –
http://shieldlist.org/
Color LCD Shield
GSM Shield
Joystick Shield
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; Não há bricks oficiais;
Bricks
Bricks
Bricks •
Excelentes para iniciantes; –
compensa fabricar seus próprios bricks?
R$ 8,00
R$ 24,00
SOFTWARE
Ambiente de Desenvolvimento Integrado - IDE •
Open-source;
•
Windows, Mac e Linux;
Ambiente de Desenvolvimento Integrado - IDE •
Escrito em Java e baseado em: –
–
–
Processing (interface gráfica); avr-gcc (compilador); outros softwares de código aberto;
Ambiente de Desenvolvimento Integrado - IDE •
•
Facilita a programação; Muitos exemplos, para todas as bibliotecas padrão;
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;
Ambiente de Desenvolvimento Integrado - IDE Serial Monitor Gravar Compilar / Verificar Área de Programação
Área de Informações Modelo e Porta Serial
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; • •
Ambiente de Desenvolvimento Integrado - IDE
Ambiente de Desenvolvimento Integrado - IDE •
http://arduino.cc/en/Reference/HomePage
Bibliotecas
Bibliotecas do usuário
Bibliotecas •
http://arduino.cc/en/Reference/Libraries
Bibliotecas
Criando Bibliotecas •
Criar arquivo .h Definição da classe criada; Definição dos métodos da classe; –
–
•
Criar arquivo .cpp Implementação dos métodos –
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 quando a IDE é iniciada;
Bibliotecas
Criando Bibliotecas
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 de Examples na IDE do Arduino;
O Arduino e a Robótica
PERCEBER
CONTROLAR
Sensores
AGIR
Atuadores
Ambiente
O Arduino e a Robótica •
•
Arduino fornece todos os requisitos básicos; Robôs simples; –
Arduino possui restrições quanto ao processamento de imagens, por exemplo;
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;
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 problema das Torres de Hanoi;
Arduino, Robótica e Automação •
•
•
Sistema separador de frutas automatizado; Medidor de Velocidade; Controle remoto para apresentação na 17ª SACOMP;
Exemplo de Aplicação
Controle Remoto para PC •
Hardware necessário:
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
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;
Exemplo de Aplicação
Controle Remoto para PC
Exemplo de Aplicação
Braço Robótico com Joystick •
•
Construído modelo do braço;
Joystick –
Montagem e teste;
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; são dispositivos de malha fechada;
Exemplo de Aplicação
Braço Robótico com Joystick •
Conexões compatíveis com Shields;
•
Biblioteca padrão Arduino; –
basta informar o ângulo desejado;
Exemplo de Aplicação
Braço Robótico com Joystick Estrutura mecânica
Arduino e Shield
Botões para rotação Joystick para controle
Exemplo de Aplicação
Braço Robótico com Joystick
Exemplo de Aplicação Braço Robótico – Torre de Hanoi
Exemplo de Aplicação Braço Robótico – Torre de Hanoi
Exemplo de Aplicação Sistema Separador de Frutas •
•
Controlar fluxo; Separar: –
–
•
•
Frutas; Não frutas; (descarte)
Encaixotar Jogar no lixo;
Exemplo de Aplicação Sistema Separador de Frutas
Exemplo de Aplicação Sistema Separador de Frutas
Exemplo de Aplicação
Medidor de Velocidade •
Velocímetro para: –
–
carrinhos de Autorama; dispositivo de chute dos robôs FURGBOL;
Exemplo de Aplicação
Medidor de Velocidade
Como iniciar no Arduino e na Robótica •
Escolher o modelo adequado Arduino Uno R3; http://arduino.cc/en/Main/Buy Google, mercadolivre.com; –
–
–
Como iniciar no Arduino e na Robótica •
Ferramentas adequadas; Ferro de solda; Multímetro; Alicates; –
–
–
•
Componentes eletrônicos de bancada;
•
Kit de desenvolvimento;
Kits de Desenvolvimento Arduino •
•
Não há kit oficial Arduino; Kits incluem (geralmente): –
–
Algum modelo Arduino (Uno); Shields; •
–
Sensor shield;
Bricks; •
Botões, LEDs, sensores em geral;
Kits de Desenvolvimento Arduino •
Kits incluem (geralmente): –
–
–
–
Servo-motores; Protoboard; Cabos para conexão na protoboard; Componentes eletrônicos em geral;
Kits de Desenvolvimento Arduino
Kits de Desenvolvimento Arduino •
Internacionais: variam entre $40,00 e $130,00; –
•
Nacionais: entre R$110,00 e R$165,00; –
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 Internet;
Kits de Desenvolvimento Arduino Valor: R$ 218,00
Kits de Desenvolvimento Arduino 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; • • •
•
R$40,00 + Arduino
View more...
Comments