Arduino - Desenvolvendo com hardware livre
Upcoming SlideShare
Loading in...5
×
 

Arduino - Desenvolvendo com hardware livre

on

  • 3,435 views

Apresentação no #3DiaLivre na FIC

Apresentação no #3DiaLivre na FIC

Statistics

Views

Total Views
3,435
Views on SlideShare
3,432
Embed Views
3

Actions

Likes
3
Downloads
203
Comments
0

1 Embed 3

http://127.0.0.1 3

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Arduino - Desenvolvendo com hardware livre Arduino - Desenvolvendo com hardware livre Presentation Transcript

  • ARDUINO DESENVOLVENDO COM HARDWARE LIVRE Marcelo Melo
  • Massimo Banzi & Arduino Team Massimo Banzi é responsável pelo projeto Arduino, trabalhou por muitos anos como arquiteto de software em Milão e Londres, em projetos para clientes como a Itália Online, Sapient, do Partido Trabalhista, a BT, a MCI WorldCom , SmithKlineBeecham , StorageTek, a BSkyB e boo.com. Foi professor durante quatro anos no " Interaction Design Institute Ivrea“. Lecionou, também em instituições como: CIID - Copenhaga, Architectural Association - Londres, Central Saint Martin - Londres, Bartlett - Londres, Basel Hyperwerk, Hochschule für Gestaltung und Kunst Basel, Hochschule für Gestaltung Schwäbisch Gmünd, FH Potsdam, na Domus Academy, Medialab Madrid, Escola Superior de Disseny Barcelona, o Ars Electronica em Linz, Amsterdam Mediamatic dentre outas.
  • O que é Arduino? O projeto Arduino ( http://www.arduino.cc ) iniciou-se na cidade de Ivrea, Itália, em 2005, tinha como objetivo interagir em projetos escolares de forma a ter um orçamento menor que outros sistemas disponíveis naquela época. Obteve reconhecimento através de uma menção honrosa na categoria Comunidades Digitais em 2006, pela Prix Ars Eletronica, além da marca de mais de 50.000 placas vendidas até outubro de 2008. É uma placa de desenvolvimento aberta, que facilita criação de projetos eletrônicos e interativos de fácil acesso as pessoas.
  • Vantagens » Hardware e Software livres – além disso você pode fazer o download dos arquivos de confecção da placa, comprar os componentes e montar sua placa sem pagar nada aos mantenedores do Arduino; » Hardware de baixo custo , na maioria das placas o microcontrolador fica "espetado" em um soquete podendo ser facilmente removido para projetos Stand Alone ou substituido em caso de pane; » Linguagem de fácil compreensão , já que eh baseada em C; » A maioria das placas não necessita de harwdware adicional para fazer a gravação no microcontrolador, podendo ser feita pela porta USB, Serial ou Paralela! » Tem um Ambiente de desenvolvimento multiplataforma , podendo rodar em Windows, Linux e Macintosh; » Com a IDE de programação Processing , o desenvolvimento fica mais fácil, é muito utilizado por artistas e designers . » Comunidade cada vez mais crescente e atuante , diariamente são postado dezenas de projetos, portanto há muita gente para auxiliá-lo; » O Projeto Arduino foi concebido para pessoas comuns , designers, artista e engenheiros - pela facilidade no aprendizado- criarem hardwares interativos, de baixo custo, que proporcionem uma grande interação homem-máquina. "A CRIATIVIDADE É O LIMITE!"
  • A filosofia Arduino O ambiente de programação O Hardware A comunidade
  • O hardware A placa do Arduino é composta por um microcontrolador com Atmel AVR de 8 bits da série megaAVR, especialmente os ATmega8, ATmega168, ATmega328 e a ATmega1280, e contam, na maioria, com uma estrutura de conectores fêmeas de 0,25 centímetros para facilitar a incorporação de outras placas(shields) ou até mesmo fios e conectores de pinos. Esses microcontroladores vêm pré-programado com o bootloader, que simplifica o processo de de carregamento do firmware para o chip de memória flash embutido no mesmo. Os Arduinos fabricados por usuários também se utilizam desses microcontroladores! A comunicação do Arduino é serial, portanto as placas mais atuais contam com um chip FTDI FT232 para converter os sinais dos níveis RS-232 para uma comunicação via USB. Placas que não possuem esse chip necessitam de uma placa ou cabo especial para a comunicação com o PC. A maioria dos pinos de I/O dos microcontroladores são para uso externo, seja com botões, sensores ou atuadores. A versão UNO, disponibiliza 14 pinos digitais, dos quais 6 podem produzir sinais PWM, além de 6 entradas analógicas.
  • O que precisa pra começar? -Arduino (usb) -Protoboard -Fios -Resistores -Leds -Botões -LDR ou potenciometro -IDE Arduino Vontade de aprender!
  • A IDE A IDE (Integrated Development Environment) do Arduino é desenvolvida em Java, portanto, multiplataforma, tendo uma linguagem derivada do Processing ( www.processing.org ) e Wiring, tais características tornam mais fáceis a programação por pessoas não familiarizadas com o desenvolvimento de software sendo capaz de compilar e carregar programas para a placa com um único clique. Com isso não há a necessidade de editar Makefiles ou rodar programas em ambientes de linha de comando. A biblioteca chamada "Wiring", possui a capacidade de rodar códigos em C/C++ permitindo criar interações I/O com o mundo externo! Quando pressionado o botão que envia o Sketch para a placa: o código é traduzido em linguagem C (que geralmente é muito difícil para um iniciante de usar), e é passado para o compilador avr-gcc,este faz a tradução língua compreendida pelo microcontrolador.
  • ESTRUTURA DO FIRMWARE /* Comentários de 2 linhas ou mais (opcional) */ void setup() //Inicializa as configurações { // Instruções } void loop() //Bloco que se repete até o microcontrolador seja reiniciado { // Instruções }
  • Exemplo: BLINK (“Hello World”) /* Blink V1.0 rev.:0.0. Arduino-ce Comunidade de Hardware Livre do Ceará */ #define ledPin 13 // Pino em que o LED está conectado void setup() { pinMode(ledPin, OUTPUT); // habilita o pino 13 para saída digital } void loop() { digitalWrite(ledPin, HIGH); // Põe o pino do led em nível alto (liga o led) delay(1000); // Aguarda 1000ms = 1segundo! digitalWrite(ledPin, LOW); // Põe o pino do led em nível baixo (desliga o led) delay(1000); // Aguarda 1000ms }
  •  
  •  
  • ARDUINO SERIAL » Microcontrolador: ATmega8 » Voltagem de operação: 5V » Voltagem de entrada(recomendada): 7-12V » Limites de voltagem de entrada: 6-20V » Pinos de I/O digitais: 14 (dos quais 3 podem ser de saída PWM) » Pinos de entrada analógica: 6 » Corrente DC por pino de I/O: 40 mA » Corrente DC para pino de 3.3V: 50 mA » Memória Flash: 8 KB dos quais 0.5 KB é utilizado no bootloader » Memória SRAM: 1 KB » Memória EEPROM: 512 bytes » Velocidade de Clock: 16 MHz
  • DUEMILANOVE » Microcontrolador: ATmega168 » Voltagem de operação: 5V » Voltagem de entrada(recomendada): 7-12V » Limites de voltagem de entrada: 6-20V » Pinos de I/O digitais: 14 (dos quais 6 podem ser de saída PWM) » Pinos de entrada analógica: 6 » Corrente DC por pino de I/O: 40 mA » Corrente DC para pino de 3.3V: 50 mA » Memória Flash: 16 KB ou 32KB (ATmega328) dos quais 2 KB são utilizados no bootloader » Memória SRAM: 1 KB ou 2KB(ATmega328) » Memória EEPROM: 512 bytes ou 1KB (ATmega328) » Velocidade de Clock: 16 MHz
  • ARDUINO NANO » Microcontrolador: ATmega168 ou ATmega328 » Voltagem de operação: 5V » Voltagem de entrada(recomendada): 7-12V » Limites de voltagem de entrada: 6-20V » Pinos de I/O digitais: 14 (dos quais 6 podem ser de saída PWM) » Pinos de entrada analógica: 8 » Corrente DC por pino de I/O: 40 mA » Memória Flash: 16 KB ou 32KB (ATmega328) dos quais 2 KB são utilizados no bootloader » Memória SRAM: 1 KB ou 2KB(ATmega328) » Memória EEPROM: 512 bytes ou 1KB (ATmega328) » Velocidade de Clock: 16 MHz
  • ARDUINO MEGA » Microcontrolador: ATmega1280 » Voltagem de operação: 5V » Voltagem de entrada(recomendada): 7-12V » Limites de voltagem de entrada: 6-20V » Pinos de I/O digitais: 54 (dos quais 14 podem ser de saída PWM) » Pinos de entrada analógica: 16 » Corrente DC por pino de I/O: 40 mA » Memória Flash: 128KB dos quais 4 KB são utilizados no bootloader » Memória SRAM: 8KB » Memória EEPROM: 4KB » Velocidade de Clock: 16 MHz
  • LILYPAD ARDUINO » Microcontrolador: ATmega168 ou ATmega328 » Voltagem de operação: 2,7V-5,5V » Voltagem de entrada(recomendada): 7-12V » Limites de voltagem de entrada: 2,7V-5,5V » Pinos de I/O digitais: 14 (dos quais 6 podem ser de saída PWM) » Pinos de entrada analógica: 6 » Corrente DC por pino de I/O: 40 mA » Memória Flash: 16 KB dos quais 2 KB são utilizados no bootloader » Memória SRAM: 1 KB » Memória EEPROM: 512 bytes » Velocidade de Clock: 8 MHz
  • LILYPAD ARDUINO LILYPAD ARDUINO
  • LILYPAD ARDUINO Leah Buechley Assistant Professor of Media Arts and Sciences AT&T Career Development Professor Director, High-Low Tech Group MIT Media Lab http://web.media.mit.edu/~leah/index.html
  • ARDUINO PRO MINI » Microcontrolador: ATmega168 » Voltagem de operação: 3,3 ou 5V (dependendo do modelo) » Voltagem de entrada: 3,35V-12V (modelo 3,3V) ou 5V-12V (modelo 5V) » Pinos de I/O digitais: 14 (dos quais 6 podem ser de saída PWM) » Pinos de entrada analógica: 6 » Corrente DC por pino de I/O: 40 mA » Memória Flash: 16 KB dos quais 2 KB são utilizados no bootloader » Memória SRAM: 1 KB » Memória EEPROM: 512 bytes » Velocidade de Clock: 16 Mhz (modelo 3,3V) ou 16MHZ (modelo 5V)
  • ARDUINO UNO » Microcontrolador: ATmega328 » Voltagem de operação: 5V » Voltagem de entrada(recomendada): 7-12V » Limites de voltagem de entrada: 6-20V » Pinos de I/O digitais: 14 (dos quais 6 podem ser de saída PWM) » Pinos de entrada analógica: 6 » Corrente DC por pino de I/O: 40 mA » Corrente DC para pino de 3.3V Pin : 50 mA » Memória Flash: 32 KB (ATmega328) dos quais 0.5 KB é utilizado no bootloader » Memória SRAM: 2 KB (ATmega328) » Memória EEPROM: 1 KB (ATmega328) » Velocidade de Clock: 16 MHz
  • ARDUINO UNO ETHERNET Arduino+Ethernet em uma placa compacta com suporte a cartão microSD para armazenamento de dados. Não tem uma porta USB integrada devendo-se utilizar um cabo FTDI (usb-serial) para gravar os sketches.
  • O QUE VEM POR AI...
  • (http://shieldlist.org/)
  • Faça o seu também! Paperduino Loveduino Severino
  • Ardupilot Freeduino
  • CRACKER Avião Sniffer http://www.mundodoshackers.com.br/hackers-criam-aviao-sniffer
  • Shields Shields são placas auxiliares que possuem uma (ou mais funções) aumentando assim, as funcionalidades no Arduino, ficam geralmente "plugadas" direto na placa. As Shields podem ser compradas ou feitas :-)
  • Ethernetshield Ethernetshield SD
  • Wishield Wishield da AsyncLabs
  • Waveshield Ladyada.net & Adafruit Industries (www.adafruit.com)
  • GPS LOGGER Adafruit Industries (www.adafruit.com)
  • DATALOGGER Adafruit Industries (www.adafruit.com)
  • OS SENSORES/ ATUADORES Módulo de Rele da Seedstudios Driver de motor DC Sensor de temperatura LM35 Sensor de luz
  • Alguns projetos Android + Arduino http://www.amarino-toolkit.net
  • OBRIGADO! http://arduino-ce.blogspot.com