0% acharam este documento útil (0 voto)
150 visualizações

Python Arduino

O documento apresenta vários projetos que podem ser desenvolvidos com Python e Arduino, incluindo fazer piscar um LED, ler dados de um sensor de temperatura analógico e criar um termômetro com interface gráfica e aplicativo web para coletar e exibir dados via Internet das Coisas.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
150 visualizações

Python Arduino

O documento apresenta vários projetos que podem ser desenvolvidos com Python e Arduino, incluindo fazer piscar um LED, ler dados de um sensor de temperatura analógico e criar um termômetro com interface gráfica e aplicativo web para coletar e exibir dados via Internet das Coisas.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 28

Projetos com

Python e
Arduino
Cláudio Luís V. Oliveira
claudio.oliveira@fatec.sp.gov.br
github.com/clvoliveira/
Novembro de 2021
Quem Sou Eu...
• Mestre em Sistemas de Computação –
Área de Concentração: Inteligência
Artificial.
• 32 anos de experiência na área de TI.
• 18 anos de experiência docente.
• Professor de Coordenador de Curso na
FATEC Jundiaí. Professor nas FATECs de
Bragança Paulista e Campinas.
• Escritor.
Alguns Livros Publicados
Alguns Livros Publicados
Alguns Livros Publicados
Projetos com Python e Arduino
• Arduino
http://www.arduino.cc
Projetos com Python e Arduino

• Firmata
• Consiste em um protocolo que possibilita
a comunicação e interação entre o
microcontrolador e programas no
computador.
• É necessário uma conexão constante entre
microcontrolador e computador através da
comunicação serial (padrão).
Projetos com Python e Arduino

• Firmata
Projetos com Python e Arduino

• Python
www.python.org
• Estrutura sintática simples.
• Fácil aprendizagem.
• Orientada a objetos.
• Infinidades de módulos disponíveis.
• Interpretada.
• Gratuita.
Projetos com Python e Arduino

• Python IDEs
• Visual Studio Code
https://code.visualstudio.com/
• Thonny
https://thonny.org/
Projetos com Python e Arduino

• pyFirmata
https://pypi.org/project/pyFirmata/

pip install pyFirmata


Projetos com Python e Arduino

• Blink
Projetos com Python e Arduino
• Blink
import pyfirmata

PORTA = 'especificar_porta_serial'

arduino = Arduino(PORTA)
arduino.digital[13].mode = pyfirmata.OUTPUT

while True:
arduino.digital[13].write(1)
arduino.pass_time(0.5)
arduino.digital[13].write(0)
arduino.pass_time(0.5)
Projetos com Python e Arduino

• PySimpleGUI
https://pysimplegui.readthedocs.io/en/latest/

pip install pysimplegui


Projetos com Python e Arduino

• Blink - GUI
Projetos com Python e Arduino
• Blink - GUI
from pyfirmata import Arduino
import PySimpleGUI as sg

arduino = Arduino('especificar_porta_serial')
led = arduino.get_pin('d:13:o')

sg.theme('LightGrey6')
layout = [
[ sg.Text('Controle do LED’) ],
[ sg.Button('Ligar', key='lig’),
sg.Button('Desligar', key='desl’) ]
]
Projetos com Python e Arduino
• Blink - GUI
janela = sg.Window('Python + Arduino’,
layout, size=(300, 200)))

while True:
evento, dado = janela.read()
if evento == 'lig':
led.write(1)
elif evento == 'desl':
led.write(0)
elif evento == sg.WIN_CLOSED:
break

janela.close()
Projetos com Python e Arduino

• Sensor de Temperatura Analógico


Projetos com Python e Arduino

• Sensor de Temperatura - Analógico


from pyfirmata import Arduino, util
from math import log

def obter_temp_celsius (valor):


tempK = log(10000.0 * (1.0 / valor - 1))
tempK = 1 / (0.001129148 + (0.000234125 +
(0.0000000876741 * tempK * tempK )) *
tempK)
tempC = tempK - 273.15
return tempC
Projetos com Python e Arduino
• Sensor de Temperatura - Analógico
PORTA = 'especificar_porta_serial'

arduino = Arduino(PORTA)
it = util.Iterator(arduino)
it.start()
termistor = arduino.get_pin('a:0:i')
termistor.enable_reporting()
while True:
valor = str(termistor.read())
if valor != 'None':
valor = float(valor)
print (round(obter_temp_celsius(valor), 1),
'°C')
arduino.pass_time(5.0)
Projetos com Python e Arduino

• Termômetro - GUI
Projetos com Python e Arduino

• Flask
https://palletsprojects.com/p/flask/

pip install Flask


Projetos com Python e Arduino

• Termômetro - Web
Classe
Singleton Servidor Página
para o (Flask) HTML
Arduino
Projetos com Python e Arduino

• Termômetro - Web
Projetos com Python e Arduino

• ThingSpeak
https://thingspeak.com/
Projetos com Python e Arduino

• Aplicação IoT

Cliente ThingSpeak
HTTP
Projetos com Python e Arduino

• Aplicação IoT
IOT - Internet das Coisas

Cláudio Luís V. Oliveira


claudio.oliveira@fatec.sp.gov.br
github.com/clvoliveira/

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy