TDC2010::Trilha Arduino::Open Source Hardware

39
Contextualizando o Arduino pela veia OSHW Panorama Atual e Perspectivas Trilha Arduino Alberto Fabiano [email protected] @techberto

description

Apresentação realizada na Trilha Arduino do (The Developers Conference) TDC 2010 realizado 22 de Agosto em São Paulo

Transcript of TDC2010::Trilha Arduino::Open Source Hardware

Page 1: TDC2010::Trilha Arduino::Open Source Hardware

Contextualizando o Arduino pela veia OSHW

Panorama Atual e PerspectivasTrilha Arduino

Alberto Fabiano [email protected] @techberto

Page 2: TDC2010::Trilha Arduino::Open Source Hardware

Physical x Embedded Computing

Physical

Computing

(OSHW)

Embedded

Computing

Page 3: TDC2010::Trilha Arduino::Open Source Hardware

Physical Computing

• Sistemas interativos compostos de: Sistemas Digitais (hardware) Capacidade de serem programáveis (software – firmware) Entradas para sensoriamento (sensing) Canais de interação (output) ao mundo analógico (mixed signal)

• Empregado em: Sistemas Inteligentes Automação de processos DIY (Do It Yourself):

• Ação que traduz um espírito empreendedor e anarquista que (reza a lenda) teria surgido com a cena punk underground

• Assim, minha avó é punk antes dele ter surgido Arte digital Hardware Hacking

Page 4: TDC2010::Trilha Arduino::Open Source Hardware

Physical x Embedded Computing

Physical

Computing:

(OSHW)

DIY

Embedded

Computing:

Industrial

Page 5: TDC2010::Trilha Arduino::Open Source Hardware

Quase lá...

Page 6: TDC2010::Trilha Arduino::Open Source Hardware

Causa Raiz

Page 7: TDC2010::Trilha Arduino::Open Source Hardware

Estágios da Evolução

Page 8: TDC2010::Trilha Arduino::Open Source Hardware

.O princípio

Page 9: TDC2010::Trilha Arduino::Open Source Hardware

Provocação Referencial

1974: Construa o MARK 8 “Seu minicomputador pessoal!!!”Baseado no Intel 8080

Revista oferecia de forma livre:• Layout de PCB• BOM: Lista de Componentes • How-to de construção

Page 10: TDC2010::Trilha Arduino::Open Source Hardware

Marco Referencial

1975: Primeiro Rival do MARK 8: ALTAIR 8800Baseado no Intel 8080

Revista oferecia de forma livre:• Layout de PCB• BOM: Lista de Componentes • How-to de construção • Contato para compra do Kit Montado

Page 11: TDC2010::Trilha Arduino::Open Source Hardware

Provocação Referencial

1975: AMI 6800: Clone do ALTAIR 8800Baseado na MPU Motorola 6800

Revista oferecia de forma livre:• Layout de PCB• BOM: Lista de Componentes • How-to de construção • Contato para compra do Kit Montado

Page 12: TDC2010::Trilha Arduino::Open Source Hardware

Open Hardware Convergente

1976

Page 13: TDC2010::Trilha Arduino::Open Source Hardware

Fim do Romantismo do Homebrew Computer

Início de uma nova “Era”

1977

Page 14: TDC2010::Trilha Arduino::Open Source Hardware

Curiosidade

1970: Datapoint 2200 Intel 8008 Based: Instruções x86 Datapoint OS

Inspiração para o IBM PC

Portanto ele foi seminal e revolucionário

Page 15: TDC2010::Trilha Arduino::Open Source Hardware

Engenharia de DesenvolvimentoPeríodo Pré-ContemporâneoModelo Genérico

Hardware Firmware Software

Page 16: TDC2010::Trilha Arduino::Open Source Hardware

Engenharia de Desenvolvimento Período Pré-Contemporâneo

Hardware Firmware Software

Page 17: TDC2010::Trilha Arduino::Open Source Hardware

Engenharia de Desenvolvimento Contemporâneo

Page 18: TDC2010::Trilha Arduino::Open Source Hardware

Engenharia de Desenvolvimento Contemporâneo

Hardware

SoftwareFirmware

Page 19: TDC2010::Trilha Arduino::Open Source Hardware

TIC – Tecnologia da Informação & Comunicação

Hardware

Firmware

Software

Page 20: TDC2010::Trilha Arduino::Open Source Hardware

OSHW Open Source Hardware

Hardware com documentos de design de projeto, montagem e desenvolvimento (como drivers bare-metal) oferecidos com licenças e metodologias FOSS

? OSHW é parte do movimento e da “Cultura Open Source”

Iniciado muito antes das definições das terminologias

Page 21: TDC2010::Trilha Arduino::Open Source Hardware

...contextualizando o Open Source Alguns Milestones históricos:• 1908: Santos Dummont abriu o projeto Demoiselle para domínio público• 1911: Automobile Manufacturers Association – Patentes Compartilhadas “free”• 1955: SHARE – UG do IBM 701: primeiras experiências de Software Livre e Open Source• 1957: O termo “hacker” nasce no TMRC – incorporado na programação dos TX-0 e PDP-1• 1969: DARPA inicia via RFC a especificar a ARPANET via padrões abertos• 1969: UNIX começa a ser desenvolvido por Ken Thompson• 1973: UNIX é reescrito por Dennis Ritchie e Ken Thompson em Linguagem C• 1874: Em julho a revista Radio-Electronics lançou o MARK-8• 1975: Em janeiro a Popular Electronics, lançou o MITS Altair 8800• 1975: Em março é fundado o Homebrew Computer Club• 1975: Em dezembro a revista Electronics Magazine lança o IMSAI 8800: primeiro usável• 1976: Em março no Homebrew Computer Club é lançado o Apple I• 1977: UNIX começa a ser distribuído para universidades com código fonte• 1983: Projeto GNU é iniciado por Richard Stallman• 1984: É iniciado o desenvolvimento do GNU Operation System• 1985: Fundada a Free Software Foundation

Page 22: TDC2010::Trilha Arduino::Open Source Hardware

E nasce o termo• 1991: Inicia o desenvolvimento do Linux Kernel pelo Linus Torvalds• 1992: Linux Kernel é licenciado via GPL• 1997: Eric S. Raymond publica a “The Cathedral and the Bazar”• 1998: Termo é criado num núcleo da Netscape e via Eric S. Raymond começa a propagá-lo.• 1998:Tim O´Reilly realiza a "Freeware Summit" e convida Brian Behlendorf, Linus Torvalds, Larry

Wall, Eric Allman, Guido van Rossum, Michael Tiemann, Paul Vixie, Jamie Zawinski da Netscape, Eric Raymond, Jon "maddog" Hall entre outros e este evento elegeu o termo para definir algo que já se fazia a anos

• 1998: A organização OSI: Open Source Initiative e ESR foi eleito seu presidente• 1999: Surge a OpenCore apoiada pela OSI - Focado em IP Cores• 2002: O termo FOSS é empregado oficialmente pela primeira vez• 2005: Italiano Massimo Banzi inspirado na idéia do Wiring cria a plataforma Arduino para

robótica• 2006: OSHW se popularizou via a plataforma Arduino e ações, por exemplo da revista Make• 2007: O termo COSS é empregado pela primeira vez• 2007: A Tucson Amateur Packet Radio lança versão 1.0 da TAPR Open Hardware License• 2007: TAPR OSHW questionado pela OSI• 2010: Consenso de definição do termo OSHW baseado nas definições OSI

Page 23: TDC2010::Trilha Arduino::Open Source Hardware

Segredo do Sucesso

Arduino

Cross-platform

Open SourceHardwareSoftwareFirmware

Amigável por Concepção

Abundante em

Projetos,Artigos e

Documentos

Ferramental de Fácil Instalação

Barato e Flexível

Page 24: TDC2010::Trilha Arduino::Open Source Hardware

Alma do Arduino

Microcontrolador concebido em 1996 MCU de 8-bits RISC Arquitetura Harvard Primeiro a empregar memória flash on-chip reprogramável, diferente do

conceito existente até então de ROM, EPROM ou EPROM programável Arquitetura de instruções otimizadas para linguagem C

Page 25: TDC2010::Trilha Arduino::Open Source Hardware

Universo Além do Arduino

Page 26: TDC2010::Trilha Arduino::Open Source Hardware

Categorias de Projetos OSHWOpen Source Hardware

Plataformas de Prototipagem Ferramental e Plataformas de Desenvolvimento Impressoras 3D Projetos “Blinky” Relógios Jogos, Entretenimento e diversão Imagens Bio e médicos Telecomunicações UAVs Wireless e GPS

Page 27: TDC2010::Trilha Arduino::Open Source Hardware

Plataformas de Prototipagem

Hawkboard

Page 28: TDC2010::Trilha Arduino::Open Source Hardware

Plataformas de Prototipagem

Beagleboard (XM)

• Super-scalar ARM Cortex TM -A8• 512-MB LPDDR RAM• High-speed USB 2.0 OTG • USB 2.0 hub com 10/100 Ethernet• DVI-D • S-video (TV out)• Stereo audio out/in• JTAG• High-capacity microSD slot and 4-GB microSD card• Camera port

Page 29: TDC2010::Trilha Arduino::Open Source Hardware

Plataformas de Prototipagem

Buglabs

Core Board / BugBase:• 532Mhz ARM 11 • 128 MB SDRAM, 32 MB on-board flash storage,• MicroSD card interface (support up to 16GB)• Integrated 802.11b/g WLAN• Bluetooth 2.0 + EDR• 4 BUGmodule interfaces• Hardware graphic acceleration and built-in MPEG4• phoneME Advanced Personal Profile JVM• Fast-charging internal Li-ION battery (1100 mAh)• USB 2.0 OTG High Speed host interface• 3 UART, 3 canais de SPI, 4 canais de I2C, 2 canais de I2S• 10/100 Ethernet MAC• JTAG/ICE support• Serial debug port

Page 30: TDC2010::Trilha Arduino::Open Source Hardware

Plataformas de Prototipagem

Make Controller

• ARM7 AT91SAM7X256• 35 GPIO• 4 input analógicos• 2 Full Serial Ports• 2 canais de SPI • TWI • USB • Ethernet I• JTAG

Page 31: TDC2010::Trilha Arduino::Open Source Hardware

Plataformas de PrototipagemCortino MCU STM32 ARM Cortex M3 com PCB no layout e pinout compatível com o Arduino.

Variações da plataforma:

Cortino3RE:

72MHz STM32F103RE

512KB Flash ROM

64KB RAM

Cortino3RB:

72MHz STM32F103RB

128KB Flash ROM

20KB RAM

Cortino1R6 (USB only):

36MHz STM32F101R6

32KB Flash ROM

6KB RAM

Page 32: TDC2010::Trilha Arduino::Open Source Hardware

Impressoras 3D

Rep Rap

Page 33: TDC2010::Trilha Arduino::Open Source Hardware

Impressoras 3D

Fab @Home

Page 34: TDC2010::Trilha Arduino::Open Source Hardware

Impressoras 3D

Make Bot

Page 35: TDC2010::Trilha Arduino::Open Source Hardware

Radio Open Hardware::GNU Radio

USRP2

Plataforma de SDR Core Board: FPGA Xilinx Spartan 3-2000

GNU Radio: programável em C++ e Python

Com as Daugther Boards Permite desenvolver: RFID reader GPS Receivers Rádios FM Decodificador de TV Digital Radar Passivo Etc...

Page 36: TDC2010::Trilha Arduino::Open Source Hardware

Telecom

“Hacker´s Dream”:

Open Moko Neo FreeRunner

GSM Open Mobile Free

Hardware e Software Open

Chipset GSM BaseBand extremamente

fechado e restrito por vários NDAs

Porém com um possível candidato

Open Source:

OsmocomBB project

Page 37: TDC2010::Trilha Arduino::Open Source Hardware

Telecom

Open source Asterisk box

P04 Four Port IP-PBX

Page 38: TDC2010::Trilha Arduino::Open Source Hardware

Referências• Open Source Summit Trip Report:

http://linuxgazette.net/issue28/rossum.html

• Open Core:

http://opencores.org/

• BeagleBoard XM:

http://beagleboard.org/

• Hawkboard:

http://www.hawkboard.org/

• Cortino, XDuino, ARMite PRO e outros OSHW:

https://labitat.dk/index.php/Microcontroller_Resources

• USRP: Universal Software Radio Peripheral - Software Radio Plataform

http://gnuradio.org/redmine/wiki/1/USRP

• Open Source Hardware Guide 2009: OpenMoko, USRP, : http

://blog.makezine.com/archive/2009/12/open_source_hardware_2009_-_the_def.html

Page 39: TDC2010::Trilha Arduino::Open Source Hardware

Fim

Obrigado!!!!

[email protected]