Linux embarcado, hacking e projetos DIY

of 55/55
Embedded Labworks Por Sergio Prado. São Paulo, Agosto de 2013 ® Copyright Embedded Labworks 2004-2013. All rights reserved. Linux embarcado, hacking e projetos DIY
  • date post

    11-Jun-2015
  • Category

    Technology

  • view

    1.918
  • download

    2

Embed Size (px)

description

Palestra apresentada no 8o. SoLiSC em 21 de setembro de 2013. RESUMO O mundo passa por uma revolução de hacks e projetos DIY. Muitos destes projetos são baseados em Linux embarcado em placas de baixíssimo custo como a Beaglebone Black e a Raspberry Pi. Adicione a isso ingredientes como hardware aberto e a cultura do software livre. Robôs, central de mídia, drones, impressoras 3D, supercomputadores? Do que você é capaz?

Transcript of Linux embarcado, hacking e projetos DIY

  • 1. Embedded Labworks Por Sergio Prado. So Paulo, Agosto de 2013 Copyright Embedded Labworks 2004-2013. All rights reserved. Linux embarcado, hacking e projetos DIY

2. Embedded Labworks SOBRE ESTE DOCUMENTO Este documento disponibilizado sob a Licena Creative Commons BY-SA 3.0. http://creativecommons.org/licenses/by-sa/3.0/legalcode Os fontes deste documento esto disponveis em: http://sergioprado.org/palestras/solisc2013 3. Embedded Labworks SOBRE O PALESTRANTE Sergio Prado tem mais de 17 anos de experincia em desenvolvimento de software para sistemas embarcados, em diversas arquiteturas de CPU (ARM, PPC, MIPS, x86, 68K), atuando em projetos com Linux embarcado e sistemas operacionais de tempo real. scio da Embedded Labworks, onde atua com consultoria, treinamento e desenvolvimento de software para sistemas embarcados: http://e-labworks.com Mantm um blog pessoal sobre Linux e sistemas embarcados em: http://sergioprado.org 4. Embedded Labworks SISTEMA EMBARCADO Um sistema embarcado um computador dedicado! 5. Embedded Labworks LINUX EMBARCADO Linux o kernel! http://www.kernel.org As distribuies Linux (Ubuntu, Fedora, Debian, Slackware, etc) integram o kernel Linux, bibliotecas e aplicaes, tendo como resultado um sistema operacional GNU/Linux. Linux embarcado o uso do kernel Linux e de diversos outros componentes open-source em sistemas embarcados. 6. Embedded Labworks HACKING, HACK E HACKER Hacking o ato de modificar ou inventar algo (hack) para resolver problemas ou realizar funcionalidades diferentes das originais. Hacker a pessoa, hacking o processo e hack o resultado! O termo hacker esta associado (s vezes de forma pejorativa) diferentes comunidades e subculturas (segurana da informao, programao, hardware, biologia, arte, etc). 7. Embedded Labworks DIY E MAKER DIY (Do it yourself) o mtodo de construir, modificar ou consertar algo sem a ajuda de profissionais. Ou seja, faa voc mesmo! Existem projetos DIY em todas as reas, msica, artes, culinria, tecnologia, artesanato, etc. A cultura maker uma extenso da cultura DIY, com foco em tecnologia (eletrnica, robtica, impresso 3D, etc). 8. Embedded Labworks (R)EVOLUO Computador + Internet = inovao, expanso da cultura DIY. Hardware = aberto, barato, acessvel, hackevel! Linux e software livre = facilitador, a caminho da dominao mundial! 9. Embedded Labworks UM NOVO MUNDO O que as pessoas tem feito com um computador na mo, hardware aberto e software livre? 10. Embedded Labworks IRON MAN COSTUME Fantasia do Iron Man feita para uma festa de Halloween! http://www.instructables.com/id/Iron-Man-Suit-with-Tech/ O que faz? Luz do ARC Reactor e auto-falante instalados no peito da fantasia. Repulsor de ar com uma bomba de CO2. Lanador de msseis de papel usando a mesma bomba de CO2. Sensor magntico faz a luz da mo acender e o efeito fade in/fade out nas luzes dos olhos. 11. Embedded Labworks IRON MAN COSTUME (cont.) 12. Embedded Labworks IRON MAN COSTUME (cont.) Angstrom 13. Embedded Labworks BEAGLEBOARD.ORG A BeagleBoard.org Foundation uma organizao no lucrativa fundada por engenheiros da Texas Instruments com o objetivo de promover o uso de plataformas de hardware e software aberto. http://beagleboard.org/ Possui 4 diferentes plataformas de hardware 100% abertas: Beagleboard Beagleboard-xM Beaglebone Beaglebone Black 14. Embedded Labworks BEAGLEBOARD ($125) ARM Cortex-A8 720MHz (OMAP3530 da TI). 256M de RAM. 256M de Flash e entrada para carto SD/MMC. udio e vdeo DVI e S-Video. USB, serial, JTAG, GPIO, PWM, MMC, I2C, etc. 15. Embedded Labworks BEAGLEBOARD-XM ($149) ARM Cortex A8 1GHz (DM3730 da TI). 512M de RAM. Entrada para carto SD/MMC. udio e vdeo DVI e S-Video. USB, Ethernet, serial, JTAG, GPIO, PWM, MMC, I2C, etc. 16. Embedded Labworks BEAGLEBONE ($89) ARM Cortex A8 720MHz (AM335x da TI). 256M de RAM. Entrada para carto SD/MMC. USB, Ethernet, serial, JTAG, GPIO, PWM, MMC, I2C, etc. 17. Embedded Labworks BEAGLEBONE BLACK ($45) ARM Cortex A8 1GHz (AM335x da TI). 512MB de RAM. Armazenamento interno de 2GB (eMMC) e entrada para carto SD/MMC. udio e vdeo HDMI (720p). USB, Ethernet, serial, JTAG, GPIO, PWM, MMC, I2C, etc. 18. Embedded Labworks BEAGLEBONE CAPES As Beaglebones so expansveis! http://beagleboardtoys.com/products.html Sensores de temperatura, presso, etc Cmera WiFi e Bluetooth Display com touchscreen 19. Embedded Labworks ARDUINO Plataforma de computao projetada para facilitar a interface com o mundo fsico (luzes, sensores, motores, etc). http://arduino.cc/ composto por um conjunto de componentes, incluindo uma placa Arduino, IDE multiplataforma e muitas bibliotecas disponveis. Vantagens: custo acessvel, multiplataforma, ambiente de programao simples, hardware e software 100% open-source. Baseada em microcontroladores da Atmel, com diversos modelos de placa existentes (Uno, Due, Leonardo, etc). As caractersticas tcnicas dependem da placa: CPU entre 8MHz a 64MHz, RAM de 1KB a 96KB e flash de 16KB a 512KB. 20. Embedded Labworks ARDUINO ($15 a $80) 21. Embedded Labworks NINJA BLOCKS Dispositivo para conectar sensores e atuadores Internet! http://ninjablocks.com/ O que faz? Permite acessar remotamente qualquer sensor (temperatura, umidade, movimento, porta aberta, etc) ou atuador (desligar e ligar equipamentos, controlar luminosidade, etc). API e framework de aplicaes para acessar os Ninja Blocks. Aplicao web otimizada para mobile para acessar os Ninja Blocks. 22. Embedded Labworks NINJA BLOCKS (cont.) 23. Embedded Labworks NINJA BLOCKS (cont.) 24. Embedded Labworks NINJA BLOCKS (cont.) Beaglebone: rodando Ubuntu Oneiric 11.10, com as aplicaes escritas em Node.js. Cape: atravs do Arduino, prov acesso aos sensores e atuadores (USB ou RF), e fornece uma interface WiFi para comunicao com a Internet. 25. Embedded Labworks REPRAP O RepRap um projeto de uma mquina de prototipao rpida, tambm chamada de impressora 3D. http://reprap.org/ O que faz? Permite impresso de qualquer objeto modelado de forma tridimensional. Cultura de compartilhamento de modelos na Internet. Custo acessvel: qualquer pessoa pode ter uma fbrica em casa! 26. Embedded Labworks Replicape 3D printer Cape para a Beaglebone, 100% open-source, com software escrito em python. http://beagleboard.org/project/Replicape/ Controla at 5 motores de passo. Possui 9 entradas analgicas. Sensor de temperatura. 27. Embedded Labworks DIY WEARABLE COMPUTER 28. Embedded Labworks DIY WEARABLE COMPUTER (cont.) Voc conectado um computador, 24 horas por dia! http://www.martinmagni.com/blog/2010/07/shoulder-strap-wearable-computer.html O que faz? Um computador vestvel conectado Internet. Um pequeno display. Teclado wireless. Conectado Internet. 29. Embedded Labworks DIY WEARABLE COMPUTER (cont.) 30. Embedded Labworks DIY WEARABLE COMPUTER (cont.) A Beagleboard rodando Angstrom o computador principal, conectada aos seguintes componentes: Mini display retirado de um culos Myvu na sada S-Video. Hub USB. Dongle Bluetooth para conexo com teclado wireless e com o iPhone para tethering. 4 baterias AA para at 3 horas contnuas de uso. 31. Embedded Labworks SKY DRONE FPV Projeto de um DRONE (veculo areo no tripulado) com viso em primeira pessoa em alta definio! http://www.indiegogo.com/projects/sky-drone-fpv O que faz? Veculo areo no tripulado comandado remotamente. Transmisso de vdeos em 1080p (3G/4G). Baixo-custo, grande alcance e baixa latncia! Cmera 5 Megapixels. Encriptao AES-256. Aplicao roda em vrios dispositivos mobile (Android, iPhone, etc). 32. Embedded Labworks SKY DRONE FPV (cont.) 33. Embedded Labworks SKY DRONE FPV (cont.) 34. Embedded Labworks SKY DRONE FPV Beaglebone Black rodando Linux. Modem 4G conectado USB. Cmera de 5MP conectado USB. Dispositivo de telemetria, incluindo um receptor GPS, conectado Beaglebone Black via interfaces de I/O. 35. Embedded Labworks H2O IQ Sistema de irrigao automtica de jardim. http://blog.valkyriesavage.com/blog/2013/01/18/h2o-iq/ O que faz? Monitora o solo e avisa quando o nvel de umidade estiver muito baixo (solo muito seco). Capaz de acionar o dispositivo de irrigao caso o dono esteja de frias ou no possa iniciar o processo de irrigao manualmente. O controle pode ser realizado atravs de uma aplicao mvel. 36. Embedded Labworks H2O IQ (cont.) O dispositivo de monitoramento possui: Painel solar no topo. Servo motor para controlar o sistema de irrigao. Mdulo Xbee para se comunicar com a Raspberry Pi. Sensor de umidade. A Raspberry Pi se comunica com o dispositivo via Xbee e roda um webserver disponibilizando uma interface de acesso ao sistema para o usurio. 37. Embedded Labworks RASPBERRY PI Ideia de alguns amigos do Laboratrio de Computao da Universidade de Cambridge para criar um computador barato para ser usado como ferramenta de ensino. Em 2008 foi criada a Raspberry Pi Foundation para transformar este projeto em realidade. http://www.raspberrypi.org/ Em 2011 foi lanada a primeira reviso da placa. 38. Embedded Labworks RASPBERRY PI (35$) ARM11 720MHz (BCM2835 da Broadcom). 512M de RAM. Entrada para carto SD/MMC. udio e vdeo HDMI (capaz de rodar vdeos 1080p). USB, Ethernet, UART, GPIO, SPI, I2C, I2S e JTAG. 39. Embedded Labworks DISTRIBUIES RPi Alm da Raspbian, vrias outras distribuies esto disponveis para a Raspberry Pi. Pela capacidade da GPU (Graphics Processing Unit), muito fcil transformar a Raspberry Pi em uma central de media com distribuies como a Raspbmc ou a OpenELEC. 40. Embedded Labworks RASPBERRY PI MICROWAVE Um micro-ondas turbinado! http://madebynathan.com/2013/07/10/raspberry-pi-powered-microwave/ O que faz? Controlado por voz. Pode usar o cdigo de barras do produto para procurar por instrues de preparo. Pode ser controlado via web. Relgio atualizado pela Internet. 41. Embedded Labworks RASPBERRY PI MICROWAVE (cont.) 42. Embedded Labworks RASPBERRY PI JOLT Um rob atirador de dardos de espuma! http://jordanbalagot.com/blog/2013/02/26/raspberry-jolt-my-mini-nerf-gun-robot O que faz? Rob com uma cmera e uma mini arma NERF. Controlado remotamente por outro smartphone via WiFi. Recebe comandos para atirar dardos de espuma nas pessoas. Capacidade de gravar vdeos. 43. Embedded Labworks RASPBERRY PI JOLT (cont.) 44. Embedded Labworks RASPBERRY PI R2D2 Dando vida ao R2D2! http://hackaday.com/2013/03/23/hacked-interactive-r2d2-controlled-by-raspberry-pi/ O que faz? Todo controlado por uma Raspberry Pi. Reconhecimento facial (biblioteca OpenCV). Comandos de voz (engine PocketSphinx). Grava e reproduz udio. Sensores de ultrasom e movimento. Conexo Wifi. 45. Embedded Labworks PARALLELLA ($99) Projeto com o objetivo de facilitar o acesso computao paralela atravs de hardware aberto e custo acessvel. http://www.parallella.org/ Duas verses de placas, uma com 18 ncleos e outra com 66 ncleos! A verso de 66 ncleos pode chegar a 90 GFLOPS com um consumo de apenas 5W! Para se ter uma idia, um chip Intel Core i7-930 chega aproximadamente 60 GFLOPS. 46. Embedded Labworks PARALLELLA (cont.) 47. Embedded Labworks Mini2440 ($70) Kit de desenvolvimento "chins" de timo custo/benefcio, desenvolvido pela FriendlyARM. http://www.friendlyarm.net/ ARM9 de 400MHz da Samsung (S3C2440A), com 64M de RAM at 1G de flash. Diversas interfaces de comunicao como UART, USB e Ethernet. Sua grande vantagem que j vem com um display! 48. Embedded Labworks EMULADOR DE ATARI Emulador de Atari em um display de 3,5! http://sergioprado.org/mini2440-emulando-atari-com-linux-embarcado/ O que faz? Emula qualquer jogo do Atari (emulador Stella). Distribuio construda com o Buildroot. Vdeo no display LCD de 3,5 e udio no conector P2. L jogos do carto SD. Suporta controles USB. 49. Embedded Labworks EMULADOR DE ATARI (cont.) 50. Embedded Labworks OUTRAS PLATAFORMAS Cubieboard: http://cubieboard.org/ Wandboard: http://www.wandboard.org/ Odroid-X2: http://www.hardkernel.com/ CuBox-i: http://cubox-i.com/ 51. Embedded Labworks OUTRAS PLATAFORMAS (cont.) A13-OLinuXino: https://www.olimex.com PandaBoard: http://pandaboard.org/ Hackberry: https://www.miniand.com UDOO: http://www.udoo.org/ 52. Embedded Labworks CONCLUSO Ferramentas? Voc em uma fbrica em mos! Cada vez mais, software e hardware so commodities, livres e acessveis qualquer um. O que tem valor hoje so suas idias! O caminho? Contribuir, criar, compartilhar! 53. Embedded Labworks PERGUNTAS? 54. Embedded Labworks DESAFIO Qual o segredo da vida, do universo e de tudo mais? 55. Embedded Labworks Por Sergio Prado. So Paulo, Agosto de 2013 Copyright Embedded Labworks 2004-2013. All rights reserved. OBRIGADO! E-mail [email protected] Website http://e-labworks.com