SlideShare uma empresa Scribd logo
Python + Arduino:
produtividade ao extremo


            +

    Álvaro Justen aka Turicas
   http://twitter.com/turicas
   http://github.com/turicas
http://CursoDeArduino.com.br/
Álvaro Justen aka Turicas,
           prazer!




    www.CursoDeArduino.com.br

          @turicas
alvaro@CursoDeArduino.com.br
http://www.PythOnRio.org/
http://ArduInRio.cc/
Arduino + Python: produtividade ao extremo
Arduino + Python: produtividade ao extremo
Roteiro
●  Python, a linguagem – revisão
● Python com Arduino:

 ●   Python no Arduino
   ●  Por que não?
 ●   Python no PC + Arduino
   ●  Com fio
   ●  Sem fio
● Projetos! o/
Parte 1 – Resumão



http://tinyurl.com/palestra-online-python
História




Guido van Rossum
Arduino + Python: produtividade ao extremo
Aplicações
●   Shell scripts
●   Administração de sistemas/redes
●   Aplicações científicas
●   Computação gráfica
●   Jogos
●   Interfaces com o usuário/GUI
●   Aplicações Web
●   Robótica
●   “glue-language”
●   ...
Principais características
●   Uso geral
●   Interpretada, VHLL
●   Criada por Guido van Rossum em 1989
●   Multiplataforma
●   OO, Procedural e funcional
●   Software livre
●   Baterias incluídas!
●   Sintaxe elegante, simples e clara
●   Tipagem dinâmica e forte
Por que Python?

●   Fácil de aprender
●   Poderosa
●   Alta produtividade
●   Estruturas de dados de alto nível
● Blocos de código são delimitados por
indentação! (?)
Onde é usada? Quem
●   YouTube
             usa?
●   Google/Google App Engine
●   NASA
●   Industrial Light & Magic
●   Globo.com
●   ...

●   GIMP
●   Blender
●   Ubuntu
●   ...
Onde roda?
●   GNU/Linux
●   Mac OS
●   *nix
●   Windows
●   Android
●   Nokia S60
●   Microcontroladores
●   ...
Como instalar?

GNU/Linux e Mac OS: já tem!

   Windows: www.python.org

        Android: SL4A
(Scripting Layer For Android)
Arduino + Python: produtividade ao extremo
Arduino + Python: produtividade ao extremo
iPython

●   Debian/Ubuntu/derivados:
      sudo aptitude install ipython

●   Dica: no Ubuntu:
      sudo apt-get install aptitude
Tipos básicos
●   Inteiro: 42
●   Ponto flutuante: 3.14
●   Complexo (!): 1.5 + 5.3j
●   String: “””minha string”””
●   Tuplas: (1, “aaa”)
●   Listas:
    [1, 2.3, “abc”, [1, “b”]]
●   Dicionários:
    {'a': 1, 2: 'b', [1, 2]: [3, 4]}
Nada de parênteses,
                 nada de chaves!
if expressao1:
    comando1
    if expressao2:
        comando2
    elif expressao3:
        comando3
elif expressao4:
    comando4
else:
    comando5
Listas, strings e slices
In [1]: l = [1, 3, 4, 'LdG', 'Arduino']

In [2]: print l[1]
3

In [3]: print l[1:4]
[3, 4, 'LdG']

In [4]: for elemento in l:
    ....:    print elemento
    ....:
    ....:
1
3
4
LdG
Arduino
Listas, strings e slices (2)

In [5]: virus = 'nome-do-virus.exe'

In [6]: print virus[-3:]
exe

In [7]: print virus[5:]
do-virus.exe

In [8]: print virus.split('.')
['nome-do-virus', 'exe']

In [9]: novo_virus = 'nome.do.virus.exe'

In [10]: print novo_virus.split('.')
['nome', 'do', 'virus', 'exe']

In [11]: print novo_virus.split('.')[-1]
exe

In [12]: print 'nome.do.virus.pl'.split('.')[-1]
pl
Trabalhando com arquivos



arquivo = open('nome.txt')
for linha in arquivo:
    print linha

arquivo_2 = open('nome-2.txt', 'w')
arquivo_2.write('Python rules!')
arquivo_2.close()
Baterias incluídas!
   sys, os, re, string, zlib
   socket, urrlib, httplib, imaplib
   time, datetime, math, random
   doctest, unittest, xml, xmlrpclib
   struct, pickle, cPickle, threading
   logging, decimal
   ...
Navegando com Python




import urllib
url = 'http://www.CursoDeArduino.com.br/'
pagina = urllib.urlopen(url)
print pagina.read()
Eventos
São Paulo
     29/setembro a 1º/outubro



http://www.pythonbrasil.org.br/
23 y 24 de Septiembre de 2011
     Junín, Buenos Aires
          Argentina


    http://ar.pycon.org/
http://www.HackNRio.org/
         Dezembro/2011
               na
    Cidade maravilhosa! o/
Onde aprender?
●   Tutoriais:
               http://www.python.org.br/
            http://docs.python.org/tutorial
                 “Google Python Class”

●   Lista Python-Brasil e locais

●   #python-br @ irc.freenode.net

●   Eventos:
            http://www.PythOnCampus.org/
          http://www.PythonBrasil.org.br/

●   Cursos:
       http://www.WelcomeToTheDjango.com.br/
          http://www.CursoDePython.com.br/
Rio de Janeiro

●   Python básico: outubro/2011
●   Python para sysadmins: em breve

     Python@CursoDeArduino.com.br
Python com Arduino?



        +
Python no Arduino
       Dá?
Python no microcontrolador



●       PyMite:
    ●   http://wiki.python.org/moin/PyMite
    ●   http://code.google.com/p/python-on-a-chip/

●       Por que não?
    ●   Só roda no Mega
    ●   Só tem a sintaxe: nada de baterias!
Python no PC + Arduino
●     Com fio
    ●  USB
    ●  Ethernet

●     Sem fio
    ●  Bluetooth
    ●  Wi-Fi
    ●  ZigBee
Com fio – USB
pySerial - Instalação

●   Debian/Ubuntu/derivados:
     sudo aptitude install python-serial


●   Dica – no Ubuntu:
        sudo apt-get install aptitude
Comandando o Arduino
             com Python



import serial
porta = '/dev/ttyUSB0'
baud_rate = 9600
arduino = serial.Serial(porta, baud_rate)
arduino.write('H')
print arduino.read()
arduino.close()
Com fio – Ethernet




urllib + Ethernet shield
Sem fio - Bluetooth




     py-bluez + shield Bluetooth

           No Debian/Ubuntu:
sudo aptitude install python-bluetooth

        Solução mais barata!
Sem fio – Wi-Fi

● Opções:
 ●  Shield Wi-Fi + roteador Wi-Fi
 ●  Shield Ethernet + roteador Wi-Fi
● Clientes:

 ●  Smartphones
 ●  Notebooks
 ●  Outros Arduinos!
● Roteador Wi-Fi:

 ●  Internet + Dynamic DNS + port foward
                       #FTW
Sem fio - ZigBee




● Conversor serial/zigbee no PC (via USB)
● Arduino + XBee
Projetos! o/
Semáforo Coding
      DojoRio
http://justen.eng.br/semaforo/
Tomada Bluetooth
http://www.amarino-toolkit.net/
Guitarrino




Python + Arduino + Frets on
           Fire
Arduino + Python: produtividade ao extremo
Arduino + Python: produtividade ao extremo
Turiquinhas v2.0
http://justen.eng.br/Turiquinhas
Arduino + Python: produtividade ao extremo
tweetlamp
Controlando eletrodomésticos pelo
  Twitter com Python e Arduino!



        Twitter → [HTTP] → Python
         Python → [USB] → Arduino
   Arduino → [relé] → Eletrodoméstico



  http://github.com/turicas/tweetlamp
Ficou interessado?




●   Ourinhos/SP – outubro/2011
●   Belo Horizonte/MG – novembro/2011
●   João Monlevade/MG – novembro/2011
●   São Paulo/SP – dezembro/2011
●   Rio de Janeiro/RJ – dezembro/2011
●   Online – em breve!

    http://CursoDeArduino.com.br/pesquisa
         Python@CursoDeArduino.com.br
import this




  http://twitter.com/turicas
   http://github.com/turicas
http://CursoDeArduino.com.br/
  http://blog.justen.eng.br/
 alvaro@CursoDeArduino.com.br
Anúncio

Mais conteúdo relacionado

Mais procurados (20)

Introdução a Programação com Python
Introdução a Programação com PythonIntrodução a Programação com Python
Introdução a Programação com Python
Álvaro Justen
 
Apresentacao sfd-poa
Apresentacao sfd-poaApresentacao sfd-poa
Apresentacao sfd-poa
Sérgio Berlotto Jr
 
[FISL17] Liberando dados com um comando, por Álvaro Justen
[FISL17] Liberando dados com um comando, por Álvaro Justen[FISL17] Liberando dados com um comando, por Álvaro Justen
[FISL17] Liberando dados com um comando, por Álvaro Justen
Álvaro Justen
 
Software Livre versus Open Source
Software Livre versus Open SourceSoftware Livre versus Open Source
Software Livre versus Open Source
Álvaro Justen
 
Hello, Python!
Hello, Python!Hello, Python!
Hello, Python!
Eduardo Araujo
 
Python Poli 2010
Python Poli 2010Python Poli 2010
Python Poli 2010
Rodrigo Lira
 
Como tornar-se um programador Python melhor
Como tornar-se um programador Python melhorComo tornar-se um programador Python melhor
Como tornar-se um programador Python melhor
Douglas Soares de Andrade
 
Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o python
Rodrigo Lira
 
Conhencendo Python e por que ela importa?
Conhencendo Python e por que ela importa?Conhencendo Python e por que ela importa?
Conhencendo Python e por que ela importa?
Marcel Caraciolo
 
Comsolid2011 Introdução Python
Comsolid2011 Introdução PythonComsolid2011 Introdução Python
Comsolid2011 Introdução Python
Gleison Rodrigues
 
import brasil: Dados Abertos de Forma Fácil
import brasil: Dados Abertos de Forma Fácilimport brasil: Dados Abertos de Forma Fácil
import brasil: Dados Abertos de Forma Fácil
Álvaro Justen
 
Python para programadores Ruby
Python para programadores RubyPython para programadores Ruby
Python para programadores Ruby
Eric Hideki
 
Arduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojoArduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojo
Luciano Ramalho
 
Import python
Import pythonImport python
Import python
josenildoaf
 
Arduino (para fazedores)
Arduino (para fazedores)Arduino (para fazedores)
Arduino (para fazedores)
Álvaro Justen
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em Python
Rodrigo Hübner
 
Robótica e PHP com Arduino - PHPn' Rio 2011
Robótica e PHP com Arduino - PHPn' Rio 2011Robótica e PHP com Arduino - PHPn' Rio 2011
Robótica e PHP com Arduino - PHPn' Rio 2011
Marco Antonio Maciel
 
Apresentação 2
Apresentação 2Apresentação 2
Apresentação 2
Anderson Luís Furlan
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
Osvaldo Santana Neto
 
Py S60
Py S60Py S60
Py S60
Jonh Edson
 
Introdução a Programação com Python
Introdução a Programação com PythonIntrodução a Programação com Python
Introdução a Programação com Python
Álvaro Justen
 
[FISL17] Liberando dados com um comando, por Álvaro Justen
[FISL17] Liberando dados com um comando, por Álvaro Justen[FISL17] Liberando dados com um comando, por Álvaro Justen
[FISL17] Liberando dados com um comando, por Álvaro Justen
Álvaro Justen
 
Software Livre versus Open Source
Software Livre versus Open SourceSoftware Livre versus Open Source
Software Livre versus Open Source
Álvaro Justen
 
Desvendando o python
Desvendando o pythonDesvendando o python
Desvendando o python
Rodrigo Lira
 
Conhencendo Python e por que ela importa?
Conhencendo Python e por que ela importa?Conhencendo Python e por que ela importa?
Conhencendo Python e por que ela importa?
Marcel Caraciolo
 
Comsolid2011 Introdução Python
Comsolid2011 Introdução PythonComsolid2011 Introdução Python
Comsolid2011 Introdução Python
Gleison Rodrigues
 
import brasil: Dados Abertos de Forma Fácil
import brasil: Dados Abertos de Forma Fácilimport brasil: Dados Abertos de Forma Fácil
import brasil: Dados Abertos de Forma Fácil
Álvaro Justen
 
Python para programadores Ruby
Python para programadores RubyPython para programadores Ruby
Python para programadores Ruby
Eric Hideki
 
Arduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojoArduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojo
Luciano Ramalho
 
Arduino (para fazedores)
Arduino (para fazedores)Arduino (para fazedores)
Arduino (para fazedores)
Álvaro Justen
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em Python
Rodrigo Hübner
 
Robótica e PHP com Arduino - PHPn' Rio 2011
Robótica e PHP com Arduino - PHPn' Rio 2011Robótica e PHP com Arduino - PHPn' Rio 2011
Robótica e PHP com Arduino - PHPn' Rio 2011
Marco Antonio Maciel
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
Osvaldo Santana Neto
 

Destaque (19)

Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
fabiocerqueira
 
Aprendendo python
Aprendendo pythonAprendendo python
Aprendendo python
Victor Marcelino
 
Capturando dados com Python - UAI Python
Capturando dados com Python - UAI PythonCapturando dados com Python - UAI Python
Capturando dados com Python - UAI Python
Álvaro Justen
 
Programando o ESP8266 com Python
Programando o ESP8266 com PythonProgramando o ESP8266 com Python
Programando o ESP8266 com Python
Relsi Maron
 
Aula 5 linguagens regularese automatosfinitosnãodeterministico
Aula 5   linguagens regularese automatosfinitosnãodeterministicoAula 5   linguagens regularese automatosfinitosnãodeterministico
Aula 5 linguagens regularese automatosfinitosnãodeterministico
wab030
 
Seminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonSeminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem Python
Giancarlo Silva
 
Python - Programação funcional
Python - Programação funcionalPython - Programação funcional
Python - Programação funcional
fabiocerqueira
 
Arduino: Robótica e Automação com Software e Hardware Livres
Arduino: Robótica e Automação com Software e Hardware LivresArduino: Robótica e Automação com Software e Hardware Livres
Arduino: Robótica e Automação com Software e Hardware Livres
Álvaro Justen
 
Python no Celular
Python no CelularPython no Celular
Python no Celular
iuridiniz
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
Carlos Campani
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
Giancarlo Silva
 
Python - Guia de bolso
Python - Guia de bolsoPython - Guia de bolso
Python - Guia de bolso
Jean Lopes
 
Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
Luciano Ramalho
 
Python para iniciantes
Python para iniciantesPython para iniciantes
Python para iniciantes
richardsonlima
 
Curso de Python e Django
Curso de Python e DjangoCurso de Python e Django
Curso de Python e Django
Osvaldo Santana Neto
 
PHPUG CGN: Controlling Arduino With PHP
PHPUG CGN: Controlling Arduino With PHPPHPUG CGN: Controlling Arduino With PHP
PHPUG CGN: Controlling Arduino With PHP
Thomas Weinert
 
Controlling Arduino With PHP
Controlling Arduino With PHPControlling Arduino With PHP
Controlling Arduino With PHP
Thomas Weinert
 
Guia utilização e desenvolvimento de aplicação no PaaS c9.io
Guia utilização e desenvolvimento de aplicação no PaaS c9.ioGuia utilização e desenvolvimento de aplicação no PaaS c9.io
Guia utilização e desenvolvimento de aplicação no PaaS c9.io
marcochella
 
Pycon2013 : Application of Python in Robotics
Pycon2013  : Application of Python in RoboticsPycon2013  : Application of Python in Robotics
Pycon2013 : Application of Python in Robotics
Lentin Joseph
 
Capturando dados com Python - UAI Python
Capturando dados com Python - UAI PythonCapturando dados com Python - UAI Python
Capturando dados com Python - UAI Python
Álvaro Justen
 
Programando o ESP8266 com Python
Programando o ESP8266 com PythonProgramando o ESP8266 com Python
Programando o ESP8266 com Python
Relsi Maron
 
Aula 5 linguagens regularese automatosfinitosnãodeterministico
Aula 5   linguagens regularese automatosfinitosnãodeterministicoAula 5   linguagens regularese automatosfinitosnãodeterministico
Aula 5 linguagens regularese automatosfinitosnãodeterministico
wab030
 
Seminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonSeminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem Python
Giancarlo Silva
 
Python - Programação funcional
Python - Programação funcionalPython - Programação funcional
Python - Programação funcional
fabiocerqueira
 
Arduino: Robótica e Automação com Software e Hardware Livres
Arduino: Robótica e Automação com Software e Hardware LivresArduino: Robótica e Automação com Software e Hardware Livres
Arduino: Robótica e Automação com Software e Hardware Livres
Álvaro Justen
 
Python no Celular
Python no CelularPython no Celular
Python no Celular
iuridiniz
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
Carlos Campani
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
Giancarlo Silva
 
Python - Guia de bolso
Python - Guia de bolsoPython - Guia de bolso
Python - Guia de bolso
Jean Lopes
 
Orientação a Objetos em Python
Orientação a Objetos em PythonOrientação a Objetos em Python
Orientação a Objetos em Python
Luciano Ramalho
 
Python para iniciantes
Python para iniciantesPython para iniciantes
Python para iniciantes
richardsonlima
 
PHPUG CGN: Controlling Arduino With PHP
PHPUG CGN: Controlling Arduino With PHPPHPUG CGN: Controlling Arduino With PHP
PHPUG CGN: Controlling Arduino With PHP
Thomas Weinert
 
Controlling Arduino With PHP
Controlling Arduino With PHPControlling Arduino With PHP
Controlling Arduino With PHP
Thomas Weinert
 
Guia utilização e desenvolvimento de aplicação no PaaS c9.io
Guia utilização e desenvolvimento de aplicação no PaaS c9.ioGuia utilização e desenvolvimento de aplicação no PaaS c9.io
Guia utilização e desenvolvimento de aplicação no PaaS c9.io
marcochella
 
Pycon2013 : Application of Python in Robotics
Pycon2013  : Application of Python in RoboticsPycon2013  : Application of Python in Robotics
Pycon2013 : Application of Python in Robotics
Lentin Joseph
 
Anúncio

Semelhante a Arduino + Python: produtividade ao extremo (20)

Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDeviceHackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Ricardo Rufino
 
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
 
Workshop Franzininho: um Arduino para todos
Workshop Franzininho: um Arduino para todosWorkshop Franzininho: um Arduino para todos
Workshop Franzininho: um Arduino para todos
Eronides Da Silva Neto
 
[DevInRio] Construindo robôs com software e hardware livres
[DevInRio] Construindo robôs com software e hardware livres[DevInRio] Construindo robôs com software e hardware livres
[DevInRio] Construindo robôs com software e hardware livres
Álvaro Justen
 
Arduino - Dicas & Truques
Arduino - Dicas & TruquesArduino - Dicas & Truques
Arduino - Dicas & Truques
Álvaro Justen
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
elliando dias
 
Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)
Eronides Da Silva Neto
 
Arduino e Python: Do It Yourself
Arduino e Python: Do It YourselfArduino e Python: Do It Yourself
Arduino e Python: Do It Yourself
Bruno Nascimento
 
ArduinoDay 2015 - OpenDevice
ArduinoDay 2015 -  OpenDeviceArduinoDay 2015 -  OpenDevice
ArduinoDay 2015 - OpenDevice
Ricardo Rufino
 
Minicurso de Arduino Básico
Minicurso de Arduino BásicoMinicurso de Arduino Básico
Minicurso de Arduino Básico
Rodrigo Bueno Santa Maria, BS, MBA
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)
Ricardo Rufino
 
[FISL11] Arduino: Construindo robôs com hardware e software livres!
[FISL11] Arduino: Construindo robôs com hardware e software livres![FISL11] Arduino: Construindo robôs com hardware e software livres!
[FISL11] Arduino: Construindo robôs com hardware e software livres!
Álvaro Justen
 
nodeLHC #secomp2016
nodeLHC #secomp2016nodeLHC #secomp2016
nodeLHC #secomp2016
Douglas Esteves
 
Raspberry Pi + Python
Raspberry Pi + PythonRaspberry Pi + Python
Raspberry Pi + Python
Daker Fernandes
 
TDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDeviceTDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDevice
Ricardo Rufino
 
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Flávio Ribeiro
 
Arduino
ArduinoArduino
Arduino
Igor Fastroni Corrêa
 
Aula 9 - Introdução ao Python
Aula 9 - Introdução ao PythonAula 9 - Introdução ao Python
Aula 9 - Introdução ao Python
Paulo Roberto Donatilio Rego
 
Apostila dicas e truques arduino
Apostila   dicas e truques arduinoApostila   dicas e truques arduino
Apostila dicas e truques arduino
Jardel Sousa
 
Arduino: Construindo robôs com software e hardware livres
Arduino: Construindo robôs com software e hardware livresArduino: Construindo robôs com software e hardware livres
Arduino: Construindo robôs com software e hardware livres
Álvaro Justen
 
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDeviceHackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Ricardo Rufino
 
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
 
Workshop Franzininho: um Arduino para todos
Workshop Franzininho: um Arduino para todosWorkshop Franzininho: um Arduino para todos
Workshop Franzininho: um Arduino para todos
Eronides Da Silva Neto
 
[DevInRio] Construindo robôs com software e hardware livres
[DevInRio] Construindo robôs com software e hardware livres[DevInRio] Construindo robôs com software e hardware livres
[DevInRio] Construindo robôs com software e hardware livres
Álvaro Justen
 
Arduino - Dicas & Truques
Arduino - Dicas & TruquesArduino - Dicas & Truques
Arduino - Dicas & Truques
Álvaro Justen
 
Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)Plataformas open-source para Internet das Coisas (IoT)
Plataformas open-source para Internet das Coisas (IoT)
Eronides Da Silva Neto
 
Arduino e Python: Do It Yourself
Arduino e Python: Do It YourselfArduino e Python: Do It Yourself
Arduino e Python: Do It Yourself
Bruno Nascimento
 
ArduinoDay 2015 - OpenDevice
ArduinoDay 2015 -  OpenDeviceArduinoDay 2015 -  OpenDevice
ArduinoDay 2015 - OpenDevice
Ricardo Rufino
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)
Ricardo Rufino
 
[FISL11] Arduino: Construindo robôs com hardware e software livres!
[FISL11] Arduino: Construindo robôs com hardware e software livres![FISL11] Arduino: Construindo robôs com hardware e software livres!
[FISL11] Arduino: Construindo robôs com hardware e software livres!
Álvaro Justen
 
TDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDeviceTDC2014 - Internet das Coisas - Arduino & OpenDevice
TDC2014 - Internet das Coisas - Arduino & OpenDevice
Ricardo Rufino
 
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Implementação de Aplicações Móveis e Jogos com Python - Aula 1
Flávio Ribeiro
 
Apostila dicas e truques arduino
Apostila   dicas e truques arduinoApostila   dicas e truques arduino
Apostila dicas e truques arduino
Jardel Sousa
 
Arduino: Construindo robôs com software e hardware livres
Arduino: Construindo robôs com software e hardware livresArduino: Construindo robôs com software e hardware livres
Arduino: Construindo robôs com software e hardware livres
Álvaro Justen
 
Anúncio

Mais de Álvaro Justen (18)

Sobre os ombos de gigantes
Sobre os ombos de gigantesSobre os ombos de gigantes
Sobre os ombos de gigantes
Álvaro Justen
 
Projeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Projeto Brasil.IO COVID-19: Dados Públicos AcessíveisProjeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Projeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Álvaro Justen
 
Dados abertos, Python e PostgreSQL: a combinação perfeita
Dados abertos, Python e PostgreSQL: a combinação perfeitaDados abertos, Python e PostgreSQL: a combinação perfeita
Dados abertos, Python e PostgreSQL: a combinação perfeita
Álvaro Justen
 
A era da pós-verdade - minhas reflexões e crenças
A era da pós-verdade - minhas reflexões e crençasA era da pós-verdade - minhas reflexões e crenças
A era da pós-verdade - minhas reflexões e crenças
Álvaro Justen
 
Realmente precisamos de big data?
Realmente precisamos de big data?Realmente precisamos de big data?
Realmente precisamos de big data?
Álvaro Justen
 
Ciência de Dados na Linha de Comando
Ciência de Dados na Linha de ComandoCiência de Dados na Linha de Comando
Ciência de Dados na Linha de Comando
Álvaro Justen
 
Brasil.IO: Libertação de Dados Públicos, com Python
Brasil.IO: Libertação de Dados Públicos, com PythonBrasil.IO: Libertação de Dados Públicos, com Python
Brasil.IO: Libertação de Dados Públicos, com Python
Álvaro Justen
 
#opendata #fail: Causos da Transparência Brasileira
#opendata #fail: Causos da Transparência Brasileira#opendata #fail: Causos da Transparência Brasileira
#opendata #fail: Causos da Transparência Brasileira
Álvaro Justen
 
Brasil.IO: Dados Abertos para Mais Democracia
Brasil.IO: Dados Abertos para Mais DemocraciaBrasil.IO: Dados Abertos para Mais Democracia
Brasil.IO: Dados Abertos para Mais Democracia
Álvaro Justen
 
Dados abertos, direito autoral e democracia
Dados abertos, direito autoral e democraciaDados abertos, direito autoral e democracia
Dados abertos, direito autoral e democracia
Álvaro Justen
 
Jornalismo de Dados: Programando a Democracia no Brasil
Jornalismo de Dados: Programando a Democracia no BrasilJornalismo de Dados: Programando a Democracia no Brasil
Jornalismo de Dados: Programando a Democracia no Brasil
Álvaro Justen
 
Python no Jornalismo
Python no JornalismoPython no Jornalismo
Python no Jornalismo
Álvaro Justen
 
Introdução a programação com Python (para jornalistas)
Introdução a programação com Python (para jornalistas)Introdução a programação com Python (para jornalistas)
Introdução a programação com Python (para jornalistas)
Álvaro Justen
 
Datos Tabulares: La Manera Pythónica
Datos Tabulares: La Manera PythónicaDatos Tabulares: La Manera Pythónica
Datos Tabulares: La Manera Pythónica
Álvaro Justen
 
[PyBr11] Lendo dados tabulares: versão pythônica
[PyBr11] Lendo dados tabulares: versão pythônica[PyBr11] Lendo dados tabulares: versão pythônica
[PyBr11] Lendo dados tabulares: versão pythônica
Álvaro Justen
 
Introdução ao Arduino: ArduinoDay Rio 2015
Introdução ao Arduino: ArduinoDay Rio 2015Introdução ao Arduino: ArduinoDay Rio 2015
Introdução ao Arduino: ArduinoDay Rio 2015
Álvaro Justen
 
Dados Abertos e Meio Ambiente
Dados Abertos e Meio AmbienteDados Abertos e Meio Ambiente
Dados Abertos e Meio Ambiente
Álvaro Justen
 
Android e Arduino para automação residencial
Android e Arduino para automação residencialAndroid e Arduino para automação residencial
Android e Arduino para automação residencial
Álvaro Justen
 
Sobre os ombos de gigantes
Sobre os ombos de gigantesSobre os ombos de gigantes
Sobre os ombos de gigantes
Álvaro Justen
 
Projeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Projeto Brasil.IO COVID-19: Dados Públicos AcessíveisProjeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Projeto Brasil.IO COVID-19: Dados Públicos Acessíveis
Álvaro Justen
 
Dados abertos, Python e PostgreSQL: a combinação perfeita
Dados abertos, Python e PostgreSQL: a combinação perfeitaDados abertos, Python e PostgreSQL: a combinação perfeita
Dados abertos, Python e PostgreSQL: a combinação perfeita
Álvaro Justen
 
A era da pós-verdade - minhas reflexões e crenças
A era da pós-verdade - minhas reflexões e crençasA era da pós-verdade - minhas reflexões e crenças
A era da pós-verdade - minhas reflexões e crenças
Álvaro Justen
 
Realmente precisamos de big data?
Realmente precisamos de big data?Realmente precisamos de big data?
Realmente precisamos de big data?
Álvaro Justen
 
Ciência de Dados na Linha de Comando
Ciência de Dados na Linha de ComandoCiência de Dados na Linha de Comando
Ciência de Dados na Linha de Comando
Álvaro Justen
 
Brasil.IO: Libertação de Dados Públicos, com Python
Brasil.IO: Libertação de Dados Públicos, com PythonBrasil.IO: Libertação de Dados Públicos, com Python
Brasil.IO: Libertação de Dados Públicos, com Python
Álvaro Justen
 
#opendata #fail: Causos da Transparência Brasileira
#opendata #fail: Causos da Transparência Brasileira#opendata #fail: Causos da Transparência Brasileira
#opendata #fail: Causos da Transparência Brasileira
Álvaro Justen
 
Brasil.IO: Dados Abertos para Mais Democracia
Brasil.IO: Dados Abertos para Mais DemocraciaBrasil.IO: Dados Abertos para Mais Democracia
Brasil.IO: Dados Abertos para Mais Democracia
Álvaro Justen
 
Dados abertos, direito autoral e democracia
Dados abertos, direito autoral e democraciaDados abertos, direito autoral e democracia
Dados abertos, direito autoral e democracia
Álvaro Justen
 
Jornalismo de Dados: Programando a Democracia no Brasil
Jornalismo de Dados: Programando a Democracia no BrasilJornalismo de Dados: Programando a Democracia no Brasil
Jornalismo de Dados: Programando a Democracia no Brasil
Álvaro Justen
 
Introdução a programação com Python (para jornalistas)
Introdução a programação com Python (para jornalistas)Introdução a programação com Python (para jornalistas)
Introdução a programação com Python (para jornalistas)
Álvaro Justen
 
Datos Tabulares: La Manera Pythónica
Datos Tabulares: La Manera PythónicaDatos Tabulares: La Manera Pythónica
Datos Tabulares: La Manera Pythónica
Álvaro Justen
 
[PyBr11] Lendo dados tabulares: versão pythônica
[PyBr11] Lendo dados tabulares: versão pythônica[PyBr11] Lendo dados tabulares: versão pythônica
[PyBr11] Lendo dados tabulares: versão pythônica
Álvaro Justen
 
Introdução ao Arduino: ArduinoDay Rio 2015
Introdução ao Arduino: ArduinoDay Rio 2015Introdução ao Arduino: ArduinoDay Rio 2015
Introdução ao Arduino: ArduinoDay Rio 2015
Álvaro Justen
 
Dados Abertos e Meio Ambiente
Dados Abertos e Meio AmbienteDados Abertos e Meio Ambiente
Dados Abertos e Meio Ambiente
Álvaro Justen
 
Android e Arduino para automação residencial
Android e Arduino para automação residencialAndroid e Arduino para automação residencial
Android e Arduino para automação residencial
Álvaro Justen
 

Último (16)

Venha Apender Sobre MuleSoft - Dia 09.pptx
Venha Apender Sobre MuleSoft - Dia 09.pptxVenha Apender Sobre MuleSoft - Dia 09.pptx
Venha Apender Sobre MuleSoft - Dia 09.pptx
Renato de Oliveira
 
Venha Aprender Sobre MuleSoft - Dia 06.pptx
Venha Aprender Sobre MuleSoft - Dia 06.pptxVenha Aprender Sobre MuleSoft - Dia 06.pptx
Venha Aprender Sobre MuleSoft - Dia 06.pptx
Renato de Oliveira
 
Ficha 5.docx____________________________
Ficha 5.docx____________________________Ficha 5.docx____________________________
Ficha 5.docx____________________________
IEFP
 
A-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdf
A-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdfA-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdf
A-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdf
MarioAthayde
 
AutoriaDigital.pdf ensino médio e fundamental
AutoriaDigital.pdf ensino médio e fundamentalAutoriaDigital.pdf ensino médio e fundamental
AutoriaDigital.pdf ensino médio e fundamental
DayaneSoares55
 
Tabelas e Planilhas com apresentação em Dashboard
Tabelas e Planilhas com apresentação em DashboardTabelas e Planilhas com apresentação em Dashboard
Tabelas e Planilhas com apresentação em Dashboard
Hugo Dourado Graçano
 
Introdução a Informática basica conceitos basicos .pptx
Introdução  a Informática basica conceitos basicos .pptxIntrodução  a Informática basica conceitos basicos .pptx
Introdução a Informática basica conceitos basicos .pptx
OrlandoCanchipande1
 
Aula de Python - Modularização e Funções.pptx
Aula de Python - Modularização e Funções.pptxAula de Python - Modularização e Funções.pptx
Aula de Python - Modularização e Funções.pptx
ArturGuia1
 
Slide - Linguagem de Definição de Dados - TLBADII.pdf
Slide - Linguagem de Definição de Dados - TLBADII.pdfSlide - Linguagem de Definição de Dados - TLBADII.pdf
Slide - Linguagem de Definição de Dados - TLBADII.pdf
FtGames1
 
Manual Segurança_Internet_CD_B2_D.ppt____
Manual Segurança_Internet_CD_B2_D.ppt____Manual Segurança_Internet_CD_B2_D.ppt____
Manual Segurança_Internet_CD_B2_D.ppt____
IEFP
 
AC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptx
AC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptxAC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptx
AC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptx
Susana Cascais
 
Venha Aprender Sobre MuleSoft - Dia 11.pptx
Venha Aprender Sobre MuleSoft - Dia 11.pptxVenha Aprender Sobre MuleSoft - Dia 11.pptx
Venha Aprender Sobre MuleSoft - Dia 11.pptx
Renato de Oliveira
 
Venha Aprender Sobre MuleSoft - Dia 07.pptx
Venha Aprender Sobre MuleSoft - Dia 07.pptxVenha Aprender Sobre MuleSoft - Dia 07.pptx
Venha Aprender Sobre MuleSoft - Dia 07.pptx
Renato de Oliveira
 
Apres-Hidraulica e seus componentes: válvulas, etc...
Apres-Hidraulica e seus componentes: válvulas, etc...Apres-Hidraulica e seus componentes: válvulas, etc...
Apres-Hidraulica e seus componentes: válvulas, etc...
portodesantacruz80
 
03-poo1-uml.pdf Apresentacao UML POOL UML
03-poo1-uml.pdf Apresentacao UML POOL UML03-poo1-uml.pdf Apresentacao UML POOL UML
03-poo1-uml.pdf Apresentacao UML POOL UML
ssuser426fcf
 
Venha Aprender Sobre MuleSoft - Dia 10.pptx
Venha Aprender Sobre MuleSoft - Dia 10.pptxVenha Aprender Sobre MuleSoft - Dia 10.pptx
Venha Aprender Sobre MuleSoft - Dia 10.pptx
Renato de Oliveira
 
Venha Apender Sobre MuleSoft - Dia 09.pptx
Venha Apender Sobre MuleSoft - Dia 09.pptxVenha Apender Sobre MuleSoft - Dia 09.pptx
Venha Apender Sobre MuleSoft - Dia 09.pptx
Renato de Oliveira
 
Venha Aprender Sobre MuleSoft - Dia 06.pptx
Venha Aprender Sobre MuleSoft - Dia 06.pptxVenha Aprender Sobre MuleSoft - Dia 06.pptx
Venha Aprender Sobre MuleSoft - Dia 06.pptx
Renato de Oliveira
 
Ficha 5.docx____________________________
Ficha 5.docx____________________________Ficha 5.docx____________________________
Ficha 5.docx____________________________
IEFP
 
A-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdf
A-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdfA-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdf
A-Evolucao-das-Fontes-no-Windows-Uma-Jornada-Tipografica.pdf
MarioAthayde
 
AutoriaDigital.pdf ensino médio e fundamental
AutoriaDigital.pdf ensino médio e fundamentalAutoriaDigital.pdf ensino médio e fundamental
AutoriaDigital.pdf ensino médio e fundamental
DayaneSoares55
 
Tabelas e Planilhas com apresentação em Dashboard
Tabelas e Planilhas com apresentação em DashboardTabelas e Planilhas com apresentação em Dashboard
Tabelas e Planilhas com apresentação em Dashboard
Hugo Dourado Graçano
 
Introdução a Informática basica conceitos basicos .pptx
Introdução  a Informática basica conceitos basicos .pptxIntrodução  a Informática basica conceitos basicos .pptx
Introdução a Informática basica conceitos basicos .pptx
OrlandoCanchipande1
 
Aula de Python - Modularização e Funções.pptx
Aula de Python - Modularização e Funções.pptxAula de Python - Modularização e Funções.pptx
Aula de Python - Modularização e Funções.pptx
ArturGuia1
 
Slide - Linguagem de Definição de Dados - TLBADII.pdf
Slide - Linguagem de Definição de Dados - TLBADII.pdfSlide - Linguagem de Definição de Dados - TLBADII.pdf
Slide - Linguagem de Definição de Dados - TLBADII.pdf
FtGames1
 
Manual Segurança_Internet_CD_B2_D.ppt____
Manual Segurança_Internet_CD_B2_D.ppt____Manual Segurança_Internet_CD_B2_D.ppt____
Manual Segurança_Internet_CD_B2_D.ppt____
IEFP
 
AC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptx
AC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptxAC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptx
AC M1 1 Sistemas Digitais - Sistemas de Numeracao e Codigos.pptx
Susana Cascais
 
Venha Aprender Sobre MuleSoft - Dia 11.pptx
Venha Aprender Sobre MuleSoft - Dia 11.pptxVenha Aprender Sobre MuleSoft - Dia 11.pptx
Venha Aprender Sobre MuleSoft - Dia 11.pptx
Renato de Oliveira
 
Venha Aprender Sobre MuleSoft - Dia 07.pptx
Venha Aprender Sobre MuleSoft - Dia 07.pptxVenha Aprender Sobre MuleSoft - Dia 07.pptx
Venha Aprender Sobre MuleSoft - Dia 07.pptx
Renato de Oliveira
 
Apres-Hidraulica e seus componentes: válvulas, etc...
Apres-Hidraulica e seus componentes: válvulas, etc...Apres-Hidraulica e seus componentes: válvulas, etc...
Apres-Hidraulica e seus componentes: válvulas, etc...
portodesantacruz80
 
03-poo1-uml.pdf Apresentacao UML POOL UML
03-poo1-uml.pdf Apresentacao UML POOL UML03-poo1-uml.pdf Apresentacao UML POOL UML
03-poo1-uml.pdf Apresentacao UML POOL UML
ssuser426fcf
 
Venha Aprender Sobre MuleSoft - Dia 10.pptx
Venha Aprender Sobre MuleSoft - Dia 10.pptxVenha Aprender Sobre MuleSoft - Dia 10.pptx
Venha Aprender Sobre MuleSoft - Dia 10.pptx
Renato de Oliveira
 

Arduino + Python: produtividade ao extremo

  • 1. Python + Arduino: produtividade ao extremo + Álvaro Justen aka Turicas http://twitter.com/turicas http://github.com/turicas http://CursoDeArduino.com.br/
  • 2. Álvaro Justen aka Turicas, prazer! www.CursoDeArduino.com.br @turicas [email protected]
  • 7. Roteiro ● Python, a linguagem – revisão ● Python com Arduino: ● Python no Arduino ● Por que não? ● Python no PC + Arduino ● Com fio ● Sem fio ● Projetos! o/
  • 8. Parte 1 – Resumão http://tinyurl.com/palestra-online-python
  • 11. Aplicações ● Shell scripts ● Administração de sistemas/redes ● Aplicações científicas ● Computação gráfica ● Jogos ● Interfaces com o usuário/GUI ● Aplicações Web ● Robótica ● “glue-language” ● ...
  • 12. Principais características ● Uso geral ● Interpretada, VHLL ● Criada por Guido van Rossum em 1989 ● Multiplataforma ● OO, Procedural e funcional ● Software livre ● Baterias incluídas! ● Sintaxe elegante, simples e clara ● Tipagem dinâmica e forte
  • 13. Por que Python? ● Fácil de aprender ● Poderosa ● Alta produtividade ● Estruturas de dados de alto nível ● Blocos de código são delimitados por indentação! (?)
  • 14. Onde é usada? Quem ● YouTube usa? ● Google/Google App Engine ● NASA ● Industrial Light & Magic ● Globo.com ● ... ● GIMP ● Blender ● Ubuntu ● ...
  • 15. Onde roda? ● GNU/Linux ● Mac OS ● *nix ● Windows ● Android ● Nokia S60 ● Microcontroladores ● ...
  • 16. Como instalar? GNU/Linux e Mac OS: já tem! Windows: www.python.org Android: SL4A (Scripting Layer For Android)
  • 19. iPython ● Debian/Ubuntu/derivados: sudo aptitude install ipython ● Dica: no Ubuntu: sudo apt-get install aptitude
  • 20. Tipos básicos ● Inteiro: 42 ● Ponto flutuante: 3.14 ● Complexo (!): 1.5 + 5.3j ● String: “””minha string””” ● Tuplas: (1, “aaa”) ● Listas: [1, 2.3, “abc”, [1, “b”]] ● Dicionários: {'a': 1, 2: 'b', [1, 2]: [3, 4]}
  • 21. Nada de parênteses, nada de chaves! if expressao1: comando1 if expressao2: comando2 elif expressao3: comando3 elif expressao4: comando4 else: comando5
  • 22. Listas, strings e slices In [1]: l = [1, 3, 4, 'LdG', 'Arduino'] In [2]: print l[1] 3 In [3]: print l[1:4] [3, 4, 'LdG'] In [4]: for elemento in l: ....: print elemento ....: ....: 1 3 4 LdG Arduino
  • 23. Listas, strings e slices (2) In [5]: virus = 'nome-do-virus.exe' In [6]: print virus[-3:] exe In [7]: print virus[5:] do-virus.exe In [8]: print virus.split('.') ['nome-do-virus', 'exe'] In [9]: novo_virus = 'nome.do.virus.exe' In [10]: print novo_virus.split('.') ['nome', 'do', 'virus', 'exe'] In [11]: print novo_virus.split('.')[-1] exe In [12]: print 'nome.do.virus.pl'.split('.')[-1] pl
  • 24. Trabalhando com arquivos arquivo = open('nome.txt') for linha in arquivo: print linha arquivo_2 = open('nome-2.txt', 'w') arquivo_2.write('Python rules!') arquivo_2.close()
  • 25. Baterias incluídas!  sys, os, re, string, zlib  socket, urrlib, httplib, imaplib  time, datetime, math, random  doctest, unittest, xml, xmlrpclib  struct, pickle, cPickle, threading  logging, decimal  ...
  • 26. Navegando com Python import urllib url = 'http://www.CursoDeArduino.com.br/' pagina = urllib.urlopen(url) print pagina.read()
  • 28. São Paulo 29/setembro a 1º/outubro http://www.pythonbrasil.org.br/
  • 29. 23 y 24 de Septiembre de 2011 Junín, Buenos Aires Argentina http://ar.pycon.org/
  • 30. http://www.HackNRio.org/ Dezembro/2011 na Cidade maravilhosa! o/
  • 32. Tutoriais: http://www.python.org.br/ http://docs.python.org/tutorial “Google Python Class” ● Lista Python-Brasil e locais ● #python-br @ irc.freenode.net ● Eventos: http://www.PythOnCampus.org/ http://www.PythonBrasil.org.br/ ● Cursos: http://www.WelcomeToTheDjango.com.br/ http://www.CursoDePython.com.br/
  • 33. Rio de Janeiro ● Python básico: outubro/2011 ● Python para sysadmins: em breve [email protected]
  • 36. Python no microcontrolador ● PyMite: ● http://wiki.python.org/moin/PyMite ● http://code.google.com/p/python-on-a-chip/ ● Por que não? ● Só roda no Mega ● Só tem a sintaxe: nada de baterias!
  • 37. Python no PC + Arduino ● Com fio ● USB ● Ethernet ● Sem fio ● Bluetooth ● Wi-Fi ● ZigBee
  • 38. Com fio – USB
  • 39. pySerial - Instalação ● Debian/Ubuntu/derivados: sudo aptitude install python-serial ● Dica – no Ubuntu: sudo apt-get install aptitude
  • 40. Comandando o Arduino com Python import serial porta = '/dev/ttyUSB0' baud_rate = 9600 arduino = serial.Serial(porta, baud_rate) arduino.write('H') print arduino.read() arduino.close()
  • 41. Com fio – Ethernet urllib + Ethernet shield
  • 42. Sem fio - Bluetooth py-bluez + shield Bluetooth No Debian/Ubuntu: sudo aptitude install python-bluetooth Solução mais barata!
  • 43. Sem fio – Wi-Fi ● Opções: ● Shield Wi-Fi + roteador Wi-Fi ● Shield Ethernet + roteador Wi-Fi ● Clientes: ● Smartphones ● Notebooks ● Outros Arduinos! ● Roteador Wi-Fi: ● Internet + Dynamic DNS + port foward #FTW
  • 44. Sem fio - ZigBee ● Conversor serial/zigbee no PC (via USB) ● Arduino + XBee
  • 46. Semáforo Coding DojoRio http://justen.eng.br/semaforo/
  • 48. Guitarrino Python + Arduino + Frets on Fire
  • 53. tweetlamp Controlando eletrodomésticos pelo Twitter com Python e Arduino! Twitter → [HTTP] → Python Python → [USB] → Arduino Arduino → [relé] → Eletrodoméstico http://github.com/turicas/tweetlamp
  • 54. Ficou interessado? ● Ourinhos/SP – outubro/2011 ● Belo Horizonte/MG – novembro/2011 ● João Monlevade/MG – novembro/2011 ● São Paulo/SP – dezembro/2011 ● Rio de Janeiro/RJ – dezembro/2011 ● Online – em breve! http://CursoDeArduino.com.br/pesquisa [email protected]
  • 55. import this http://twitter.com/turicas http://github.com/turicas http://CursoDeArduino.com.br/ http://blog.justen.eng.br/ [email protected]