Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python Brasil 2016 - Desenvolvendo soluções de ...

Python Brasil 2016 - Desenvolvendo soluções de IoT usando Python com as placas da Intel

Slides da palestra Desenvolvendo soluções de IoT usando Python com as placas da Intel, apresentada durante a Python Brasil 2016 em Florianópolis, por Juliana Karoline de Sousa.

Link para a gravação da palestra: https://www.youtube.com/watch?v=L9RLlpc0QV8

Juliana Karoline de Sousa

October 15, 2016
Tweet

More Decks by Juliana Karoline de Sousa

Other Decks in Programming

Transcript

  1. Olá! Sou Juliana Karoline Estou aqui por motivos de Python

    <3 e IoT. Twitter/Facebook: @julianaklulo /julianaklulo
  2. Sobre a Internet das Coisas Internet das Coisas (IoT): trata-se

    de uma rede onde coisas (things) trocam informações captadas do ambiente, assim como recebem comandos para alterar o mundo físico.
  3. Sobre as Coisas Coisas: objetos que coletam dados do ambiente

    por meio de sensores, transmitem esses dados via rede, e modificam o mundo físico por meio de atuadores que recebem os comandos também pela rede.
  4. Sobre as Coisas Exemplos de sensores: ▧ Luminosidade ▧ Umidade

    ▧ Distância ▧ Presença ▧ Corrente ▧ … ▧ Tudo que capta informações do ambiente
  5. Exemplos de atuadores: ▧ LEDs ▧ Motores ▧ Buzzer ▧

    Display TFT ▧ … ▧ Tudo que realiza uma ação no ambiente Sobre as Coisas
  6. ▧ Para controlar os sensores e atuadores, utiliza-se placas de

    desenvolvimento. Placas disponíveis no mercado Raspberry Pi 2 Model B Arduino UNO R3 Beagle Bone Black
  7. Especificações Galileo ▧ Intel Quark SoC 32-bits 400MHz ▧ First

    board based on Intel architecture designed to be hardware and software pin-compatible with Arduino shields designed for the Uno R3. ▧ A full sized mini-PCI Express* slot, 100Mb Ethernet port, Micro-SD slot, USB Host port, USB Client port, RTC on-board ▧ Yocto Linux
  8. ▧ Intel® SoC that includes a dual-core, dual-threaded Intel® Atom™

    CPU at 500 MHz and a 32-bit Intel Quark microcontroller at 100 MHz ▧ 1 GB LPDDR3 POP memory ▧ WiFi and Bluetooth Low Energy 4.0 ▧ Yocto Linux Especificações Edison
  9. Funcionamento das GPIOs ▧ As entradas e saídas de propósito

    geral (GPIOs) são um meio de comunicação com o mundo externo. Elas servem para conectar objetos que não possuem um padrão predeterminado, como USB, HDMI, VGA, etc. ▧ Através dos pinos é possível ler a tensão que um objeto fornece (Digital e Analog Read) ▧ É possível também fornecer uma tensão para um objeto (Digital e Analog Write)
  10. MRAA ▧ Libmraa é uma biblioteca C/C++ de baixo nível

    para comunicação em plataformas GNU/Linux, com wrappers em javascript & python, que interfaceia com as entradas e saídas das Galileo, Edison e outras plataformas. ▧ O uso da libmraa não te amarra a um hardware específico, pois com a detecção da placa sendo feita durante o runtime o código se torna multiplataforma.
  11. UPM ▧ UPM é um repositório de alto nível para

    sensores que utiliza a MRAA. Os sensores são abstraídos por meio de classes e são instanciados como objetos. ▧ A lista de sensors suportados cresce a cada dia (170+) e você pode contribuir abstraindo um sensor novo através do GitHub!
  12. Exemplos de sensores suportados pela UPM: ▧ Acelerômetro ▧ Pressão

    Atmosférica ▧ Sensor de cores ▧ Bússola, giroscópio, ▧ Potenciômetro digital ▧ Displays ▧ GPS ▧ Relés ▧ Servo motores ▧ ... UPM
  13. A Proposta Acordar com a previsão do tempo, temperatura local

    e seus compromissos do dia no Google Calendar sendo anunciados gentilmente pelo seu próximo despertador inteligente.
  14. Os Componentes ▧ Intel Edison + Arduino Breakout Board ▧

    Grove Base Shield ▧ Grove Push Button (x2) ▧ Caixa de som Bluetooth
  15. Código da cidade conditions: contém os dados atuais do clima

    Pegando informações da API pywapi forecasts: contém as estimatimas para o dia
  16. Pegando os eventos do dia events: armazena todos os dados

    dos eventos buscados Conexão com a API, feita usando OAuth2
  17. Filtrando os dados dos eventos Seta o alarme se tiver

    um evento cadastrado para isso Pega hora/minuto e nome do evento Gera uma string com dos dados dos eventos
  18. Gerando .mp3 Composto pela string do clima e dos eventos

    Serializa a resposta e salva como .mp3
  19. 4. Lendo os Grove Push Buttons Usando a biblioteca MRAA

    da Intel para ler os push buttons da Grove