SlideShare uma empresa Scribd logo
1 de 36
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

Mais conteúdo relacionado

Mais procurados

Arduino Hack Day por Vinicius Senger
Arduino Hack Day por Vinicius SengerArduino Hack Day por Vinicius Senger
Arduino Hack Day por Vinicius SengerGlobalcode
 
Arduino introdução - 10 projectos
Arduino   introdução - 10 projectosArduino   introdução - 10 projectos
Arduino introdução - 10 projectosDaniel Chavier
 
Mini-curso de Introdução a Eletrônica com Arduino
Mini-curso de Introdução a Eletrônica com ArduinoMini-curso de Introdução a Eletrônica com Arduino
Mini-curso de Introdução a Eletrônica com ArduinoFelipe Martins
 
Programação em-arduino-módulo-básico
Programação em-arduino-módulo-básicoProgramação em-arduino-módulo-básico
Programação em-arduino-módulo-básicoFátima Bernardes
 
Apostila Arduino - Núcleo de Estudos em Robótica SheepSet
Apostila Arduino - Núcleo de Estudos em Robótica SheepSetApostila Arduino - Núcleo de Estudos em Robótica SheepSet
Apostila Arduino - Núcleo de Estudos em Robótica SheepSetSaymon Cristian Alves Oliveira
 
Arduino - Hardware Livre e Robótica
Arduino -  Hardware Livre e RobóticaArduino -  Hardware Livre e Robótica
Arduino - Hardware Livre e RobóticaMarinho Brandão
 
V2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduinoV2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduinoSamir Siqueira
 
Sestinfo 2013 - Arduino
Sestinfo 2013 - ArduinoSestinfo 2013 - Arduino
Sestinfo 2013 - ArduinoRafael Sakurai
 
Palestra: Robótica com Arduino
Palestra: Robótica com ArduinoPalestra: Robótica com Arduino
Palestra: Robótica com ArduinoFelipe Martins
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino CompletoTiago Barros
 
Introdução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoIntrodução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoJuan Manoel
 
Introdução à plataforma Arduino
Introdução à plataforma ArduinoIntrodução à plataforma Arduino
Introdução à plataforma Arduinoentrebits
 

Mais procurados (20)

Arduino Hack Day por Vinicius Senger
Arduino Hack Day por Vinicius SengerArduino Hack Day por Vinicius Senger
Arduino Hack Day por Vinicius Senger
 
Arduino introdução - 10 projectos
Arduino   introdução - 10 projectosArduino   introdução - 10 projectos
Arduino introdução - 10 projectos
 
Mini-curso de Introdução a Eletrônica com Arduino
Mini-curso de Introdução a Eletrônica com ArduinoMini-curso de Introdução a Eletrônica com Arduino
Mini-curso de Introdução a Eletrônica com Arduino
 
Programação em-arduino-módulo-básico
Programação em-arduino-módulo-básicoProgramação em-arduino-módulo-básico
Programação em-arduino-módulo-básico
 
Apostila Arduino - Núcleo de Estudos em Robótica SheepSet
Apostila Arduino - Núcleo de Estudos em Robótica SheepSetApostila Arduino - Núcleo de Estudos em Robótica SheepSet
Apostila Arduino - Núcleo de Estudos em Robótica SheepSet
 
Aula 1: Conhecendo o Arduino
Aula 1: Conhecendo o ArduinoAula 1: Conhecendo o Arduino
Aula 1: Conhecendo o Arduino
 
Introdução - Arduino - Renan Martins
Introdução - Arduino - Renan MartinsIntrodução - Arduino - Renan Martins
Introdução - Arduino - Renan Martins
 
Curso de arduino
Curso de arduinoCurso de arduino
Curso de arduino
 
Arduino - Hardware Livre e Robótica
Arduino -  Hardware Livre e RobóticaArduino -  Hardware Livre e Robótica
Arduino - Hardware Livre e Robótica
 
V2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduinoV2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduino
 
Sestinfo 2013 - Arduino
Sestinfo 2013 - ArduinoSestinfo 2013 - Arduino
Sestinfo 2013 - Arduino
 
Arduino day-2015-v1
Arduino day-2015-v1Arduino day-2015-v1
Arduino day-2015-v1
 
Palestra: Robótica com Arduino
Palestra: Robótica com ArduinoPalestra: Robótica com Arduino
Palestra: Robótica com Arduino
 
MiniCursoDeArduino
MiniCursoDeArduinoMiniCursoDeArduino
MiniCursoDeArduino
 
Computação física com arduino
Computação física com arduinoComputação física com arduino
Computação física com arduino
 
Curso de Arduino Completo
Curso de Arduino CompletoCurso de Arduino Completo
Curso de Arduino Completo
 
Arduino Básico
Arduino BásicoArduino Básico
Arduino Básico
 
Introdução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoIntrodução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduino
 
1 aula do curso de automação - Arduino
1 aula do curso de automação - Arduino1 aula do curso de automação - Arduino
1 aula do curso de automação - Arduino
 
Introdução à plataforma Arduino
Introdução à plataforma ArduinoIntrodução à plataforma Arduino
Introdução à plataforma Arduino
 

Destaque

Apresentação asterisk
Apresentação asteriskApresentação asterisk
Apresentação asteriskVicente Nobre
 
Automação residencial por controle dtmf
Automação residencial por controle dtmfAutomação residencial por controle dtmf
Automação residencial por controle dtmfGabriel Messias
 
Manual PABX Intelbras_corp_16000
Manual PABX Intelbras_corp_16000Manual PABX Intelbras_corp_16000
Manual PABX Intelbras_corp_16000Telsys Telecom
 
Conceitos e Fundamentos da Telefonia IP
Conceitos e Fundamentos da Telefonia IPConceitos e Fundamentos da Telefonia IP
Conceitos e Fundamentos da Telefonia IPIP10
 
PABX Analógico e Digital Conceitos Básicos - Leucotron Telecom
PABX Analógico e Digital Conceitos Básicos - Leucotron TelecomPABX Analógico e Digital Conceitos Básicos - Leucotron Telecom
PABX Analógico e Digital Conceitos Básicos - Leucotron TelecomLeucotron Telecom
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Destaque (11)

Apresentação asterisk
Apresentação asteriskApresentação asterisk
Apresentação asterisk
 
Automação residencial por controle dtmf
Automação residencial por controle dtmfAutomação residencial por controle dtmf
Automação residencial por controle dtmf
 
Arduino: Passado, presente e futuro.
Arduino: Passado, presente e futuro.Arduino: Passado, presente e futuro.
Arduino: Passado, presente e futuro.
 
Diversão e lucro com raspberry pi
Diversão e lucro com raspberry piDiversão e lucro com raspberry pi
Diversão e lucro com raspberry pi
 
Call Center baseado em Asterisk
Call Center baseado em AsteriskCall Center baseado em Asterisk
Call Center baseado em Asterisk
 
Oficina I - WEB MISSILE
Oficina I - WEB MISSILEOficina I - WEB MISSILE
Oficina I - WEB MISSILE
 
Oficina II - RASPBX
Oficina II - RASPBXOficina II - RASPBX
Oficina II - RASPBX
 
Manual PABX Intelbras_corp_16000
Manual PABX Intelbras_corp_16000Manual PABX Intelbras_corp_16000
Manual PABX Intelbras_corp_16000
 
Conceitos e Fundamentos da Telefonia IP
Conceitos e Fundamentos da Telefonia IPConceitos e Fundamentos da Telefonia IP
Conceitos e Fundamentos da Telefonia IP
 
PABX Analógico e Digital Conceitos Básicos - Leucotron Telecom
PABX Analógico e Digital Conceitos Básicos - Leucotron TelecomPABX Analógico e Digital Conceitos Básicos - Leucotron Telecom
PABX Analógico e Digital Conceitos Básicos - Leucotron Telecom
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Semelhante a Arduino - Desenvolvendo com hardware livre

Apostila arduino
Apostila arduinoApostila arduino
Apostila arduinoEdson Paz
 
Embarcados - Ao arduino e além
Embarcados - Ao arduino e alémEmbarcados - Ao arduino e além
Embarcados - Ao arduino e alémFabio Souza
 
Introdução-à-Programação-Embarcada-com-Arduino.pdf
Introdução-à-Programação-Embarcada-com-Arduino.pdfIntrodução-à-Programação-Embarcada-com-Arduino.pdf
Introdução-à-Programação-Embarcada-com-Arduino.pdfCliverRaimundo2
 
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014Fabio Souza
 
Robótica e Sistemas interativos utilizando Arduino
Robótica e Sistemas interativos utilizando ArduinoRobótica e Sistemas interativos utilizando Arduino
Robótica e Sistemas interativos utilizando ArduinoDomingosRodrigues16
 
Arduino - aula Teste - Ilha
Arduino - aula Teste - IlhaArduino - aula Teste - Ilha
Arduino - aula Teste - IlhaLuckas Judocka
 
EL66J_Slides_arduino.pdf
EL66J_Slides_arduino.pdfEL66J_Slides_arduino.pdf
EL66J_Slides_arduino.pdfssuser56423c1
 
TDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDeviceTDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDeviceRicardo Rufino
 
Minicurso arduino eeep aurora
Minicurso arduino eeep auroraMinicurso arduino eeep aurora
Minicurso arduino eeep auroraJuliete Souza
 
Robótica com Arduino para projetos em ronótica
Robótica com Arduino para projetos em ronóticaRobótica com Arduino para projetos em ronótica
Robótica com Arduino para projetos em ronóticaprofandersrodri
 
Introdução ao arduino palestra
Introdução ao arduino palestraIntrodução ao arduino palestra
Introdução ao arduino palestraVitor Ferreira
 
A evolução do Arduino: dos 8 aos 32-bits
A evolução do Arduino: dos 8 aos 32-bitsA evolução do Arduino: dos 8 aos 32-bits
A evolução do Arduino: dos 8 aos 32-bitsEronides Neto
 
Aprendendo a programar em arduino
Aprendendo a programar em arduinoAprendendo a programar em arduino
Aprendendo a programar em arduinoinfo_cimol
 
Arduino no Dia-Debian/RJ 2011
Arduino no Dia-Debian/RJ 2011Arduino no Dia-Debian/RJ 2011
Arduino no Dia-Debian/RJ 2011Álvaro Justen
 
Robô seguidor de linha
Robô seguidor de linhaRobô seguidor de linha
Robô seguidor de linhaIsvaldo Souza
 

Semelhante a Arduino - Desenvolvendo com hardware livre (20)

Apostila arduino
Apostila arduinoApostila arduino
Apostila arduino
 
Embarcados - Ao arduino e além
Embarcados - Ao arduino e alémEmbarcados - Ao arduino e além
Embarcados - Ao arduino e além
 
Introdução-à-Programação-Embarcada-com-Arduino.pdf
Introdução-à-Programação-Embarcada-com-Arduino.pdfIntrodução-à-Programação-Embarcada-com-Arduino.pdf
Introdução-à-Programação-Embarcada-com-Arduino.pdf
 
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
O impacto do arduino no mundo dos embarcados - TRILHA EMBEDDED - TDC2014
 
Robótica e Sistemas interativos utilizando Arduino
Robótica e Sistemas interativos utilizando ArduinoRobótica e Sistemas interativos utilizando Arduino
Robótica e Sistemas interativos utilizando Arduino
 
Arduino - aula Teste - Ilha
Arduino - aula Teste - IlhaArduino - aula Teste - Ilha
Arduino - aula Teste - Ilha
 
EL66J_Slides_arduino.pdf
EL66J_Slides_arduino.pdfEL66J_Slides_arduino.pdf
EL66J_Slides_arduino.pdf
 
TDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDeviceTDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDevice
 
Introdução a plataforma arduino
Introdução a plataforma arduinoIntrodução a plataforma arduino
Introdução a plataforma arduino
 
Minicurso arduino eeep aurora
Minicurso arduino eeep auroraMinicurso arduino eeep aurora
Minicurso arduino eeep aurora
 
Robótica com Arduino para projetos em ronótica
Robótica com Arduino para projetos em ronóticaRobótica com Arduino para projetos em ronótica
Robótica com Arduino para projetos em ronótica
 
Introdução ao arduino palestra
Introdução ao arduino palestraIntrodução ao arduino palestra
Introdução ao arduino palestra
 
A evolução do Arduino: dos 8 aos 32-bits
A evolução do Arduino: dos 8 aos 32-bitsA evolução do Arduino: dos 8 aos 32-bits
A evolução do Arduino: dos 8 aos 32-bits
 
TDC2014 - Arduino Legacy
TDC2014 - Arduino LegacyTDC2014 - Arduino Legacy
TDC2014 - Arduino Legacy
 
CURSO_ARDUÍNO.pptx
CURSO_ARDUÍNO.pptxCURSO_ARDUÍNO.pptx
CURSO_ARDUÍNO.pptx
 
Arduino
ArduinoArduino
Arduino
 
Aprendendo a programar em arduino
Aprendendo a programar em arduinoAprendendo a programar em arduino
Aprendendo a programar em arduino
 
Arduino como programar
Arduino como programarArduino como programar
Arduino como programar
 
Arduino no Dia-Debian/RJ 2011
Arduino no Dia-Debian/RJ 2011Arduino no Dia-Debian/RJ 2011
Arduino no Dia-Debian/RJ 2011
 
Robô seguidor de linha
Robô seguidor de linhaRobô seguidor de linha
Robô seguidor de linha
 

Mais de Marcelo Laranjeira Melo

Mais de Marcelo Laranjeira Melo (6)

Fundamentos de Blockchain
Fundamentos de BlockchainFundamentos de Blockchain
Fundamentos de Blockchain
 
Detectando doenças com Arduino
Detectando doenças com ArduinoDetectando doenças com Arduino
Detectando doenças com Arduino
 
Algoritmos Genéticos com Arduino
Algoritmos Genéticos com ArduinoAlgoritmos Genéticos com Arduino
Algoritmos Genéticos com Arduino
 
Raspberry pi - Dicas e truques
Raspberry pi - Dicas e truquesRaspberry pi - Dicas e truques
Raspberry pi - Dicas e truques
 
Raspberry Pi: o hardware para Python
Raspberry Pi: o hardware para PythonRaspberry Pi: o hardware para Python
Raspberry Pi: o hardware para Python
 
Robótica com software e hardware livres
Robótica com software e hardware livresRobótica com software e hardware livres
Robótica com software e hardware livres
 

Arduino - Desenvolvendo com hardware livre

  • 1. ARDUINO DESENVOLVENDO COM HARDWARE LIVRE Marcelo Melo
  • 2. 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.
  • 3. 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.
  • 4. 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!"
  • 5. A filosofia Arduino O ambiente de programação O Hardware A comunidade
  • 6. 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.
  • 7. O que precisa pra começar? -Arduino (usb) -Protoboard -Fios -Resistores -Leds -Botões -LDR ou potenciometro -IDE Arduino Vontade de aprender!
  • 8. 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.
  • 9. 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 }
  • 10. 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 }
  • 11.  
  • 12.  
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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
  • 19. 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
  • 20. 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)
  • 21. 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
  • 22. 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.
  • 23. O QUE VEM POR AI...
  • 25. Faça o seu também! Paperduino Loveduino Severino
  • 27. CRACKER Avião Sniffer http://www.mundodoshackers.com.br/hackers-criam-aviao-sniffer
  • 28. 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 :-)
  • 30. Wishield Wishield da AsyncLabs
  • 31. Waveshield Ladyada.net & Adafruit Industries (www.adafruit.com)
  • 32. GPS LOGGER Adafruit Industries (www.adafruit.com)
  • 33. DATALOGGER Adafruit Industries (www.adafruit.com)
  • 34. OS SENSORES/ ATUADORES Módulo de Rele da Seedstudios Driver de motor DC Sensor de temperatura LM35 Sensor de luz
  • 35. Alguns projetos Android + Arduino http://www.amarino-toolkit.net