Вы находитесь на странице: 1из 20

Python Aplicado às Redes de

Comunicação
Prof. Gil Pinheiro
UERJ-FEN-DETEL
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


O que é Python?
• Linguagem de programação
– Interpretada
– Interativa
– Orientada a objetos
• Inventada por Guido Van Rossum, em
1990
• O nome Python
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Características do Python
• Extensível (C, C++, Fortran, Java)
• Orientada a objetos
• Prototipagem e aprendizado rápidos
• Boa legibilidade
• Tratamento de exceções
• Gratuita (código aberto)
• Extensa biblioteca
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Objetivos do Python
• Desenhada para ser simples, apesar de
poderosa
• Permite programação modular
• Grande ênfase na legibilidade
• Rápido desenvolvimento de aplicações
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Instalação e Uso
• Disponível em:
http://ww.python.org/download
• Carregar e instalar em seu computador
• Pode ser usada nos modos
– interativo
– batelada
• IDLE é o editor de programas padrão
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Modo Interativo
• Quando os comandos são utilizados na console
(IDLE), sendo processados pelo interpretador
de comandos interativamente.
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Porta de Comunicação
• Dispositivo de comunicação de um
computador (DTE) ou equipamento de
rede (DCE)
• Exemplos: Porta Serial, porta Ethernet,
porta USB, porta Paralela
• A porta de comunicação pode ser
– Paralela – ex.: Porta de impressora
– Serial – ex.: portas RS-232, USB, Ethernet
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


UERJ-FEN-DETEL
Portas de um PC

Prof. Gil Pinheiro - Out/2011


Usando Python com a Porta
Serial (RS-232 ou RS-485)
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Biblioteca pyserial
• Biblioteca Python para comunicação
através de porta serial (UART)
• A porta pode usar RS-232 ou RS-485
• Funciona com conversores USB/Serial
• Disponível gratuitamente em:
http://pyserial.sourceforge.net/
• Python deve estar instalado previamente
• Seguir procedimentos de instalação do
UERJ-FEN-DETEL

site
Prof. Gil Pinheiro - Out/2011
Programas Exemplo
• Programas Exemplo da Pyserial
– Varredura das portas seriais disponíveis
– Redirecionador TCP/IP x RS-232
– Emulador de terminal Telnet
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Biblioteca pyserial

Classe Serial
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Classe Serial
UERJ-FEN-DETEL

Exemplo de atributo
Exemplo de método
Prof. Gil Pinheiro - Out/2011
Programa loopback
• Efetua o envio e o recebimento de uma string
• Deve receber a mesma seqüência enviada
(eco), se não houver erro
• Este é o processo do loopback, receber
exatamente o que enviou.
• Serve para testar enlaces de comunicação
• Exemplos:
– loopback-1: um PC
UERJ-FEN-DETEL

– loopback-2: dois PCs

Prof. Gil Pinheiro - Out/2011


Loopback - 1
Computador
• Programa envia seqüência pela
UART
Windows
• Seqüência é recebida pela
Programa
em Python
UART e armazenada no buffer
Biblioteca • Programa entra em espera para
pyserial
ler a seqüência recebida (eco)
RS-232 • Programa imprime seqüência na
TX RX GND
tela
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Loopback - 2
• Computador1:
Computador - 1 Computador - 2 – Programa1 envia
seqüência pela UART1
– Programa1 entra em
Windows Windows espera para receber
seqüência
Programa - 1 Programa - 2 – Programa1 imprime
em Python em Python seqüência na tela
Biblioteca Biblioteca
pyserial pyserial • Computador2:
– Programa2 entra em
espera para receber
RS-232 RS-232 seqüência
– Programa2 imprime
TX RX GND TX RX GND seqüência na tela
– Programa2 envia
UERJ-FEN-DETEL

seqüência pela UART2

Prof. Gil Pinheiro - Out/2011


Usando uma porta
de comunicação serial
• Importar a biblioteca
• Criar objeto “porta”
• Parametrizar a “porta”
• Inicializar a “porta”
• Efetuar a comunicação
– Escrever e/ou ler na “porta”
• Liberar a “porta”
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Usando uma porta
de comunicação – loopback-1
• Importar a biblioteca
• Criar objeto “porta”
• Parametrizar a “porta”
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Usando uma porta
de comunicação – loopback-1
• Inicializar a “porta”
• Efetuar a comunicação
– Enviar seqüência de bytes
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011


Usando uma porta
de comunicação – loopback-1
• Efetuar a comunicação
– Aguardar e receber seqüência de bytes (eco)
– Mostrar a seqüência recebida na tela
• Liberar uso da porta
UERJ-FEN-DETEL

Prof. Gil Pinheiro - Out/2011

Вам также может понравиться