Notas da Oficina Processing e Arduino no I-Sigatec: Simpósio Internacional de Games, Mundos Virtuais e Tecnologias na Educação. Simpósio de Artes, Mídias Locativas e Tecnologias na Educação
Interface Submersiva em Jogos de Treinamentos e Negócios
Introdução ao Processing e Arduino para prototipagem interativa
1. I-Sigatec
Simpósio Internacional de Games, Mundos Virtuais e Tecnologias na Educação
Simpósio de Artes, Mídias Locativas e Tecnologias na Educação
Processing e Arduino
Daniel Paz de Araújo Hermes Renato Hildebrand
3. O que é?
● Criado em 2001
● Promove o aprendizado de desenvolvimento de
software
● Linguagem de programação
● Ambiente de desenvolvimento
● Comunidade online
4. Aplicações
Usado por:
Artistas
Designers
Hobbistas
● Para criar interatividade em ambientes
5. Como funciona
● Open Source: gratuito para uso e alteração
● Programação interativa com saída 2d, 3d, PDF.
● Integração com OpenGL para aceleração gráfica
● Para GNU/Linux, Windows e MacOS
● Mais de 100 bibliotecas extendidas
6. PDE
● Processing Development Environment
● Um programa é chamado de sketch
● Sketches podem criar desenhos em 2 ou 3 dimensões
● Existem bibliotecas para tratar entrada e saída de
áudio e vídeo.
● Os sketches são armazenados no Sketchbook que é um
diretório no computador
10. O que é?
● Criado por Massimo Banzi na Itália
● Plataforma de prototipagem com hardware e software
open source
● Permite "sentir" e "controlar" objetos e ambientes
● Busca complementar o ensino de programação,
computação física e gráfica
● O hardware pode ser construído ou comprado
● Download em: www.arduino.cc
11. Aplicações
● Usado por:
○ Artistas
○ Designers
○ Hobbistas
● Para criar interatividade em:
○ Objetos
○ Ambientes
12. Como funciona?
● Plataforma baseada em Atmel
● IDE baseada em Processing
● Linguagem Arduino baseada em Wiring
● Oferece bibliotecas de alto nível
● Transferência de firmware via USB
● Microcontrolador com Bootloader
13. MCU AtMega328
● Plataforma RISC
● 20 MIPS (Milhões de instruções por segundo)
● 32kb flash (2kb para bootloader)
● 1kb EEPROM
● Clock 16MHz
● 14 portas digitais (6 PWM)
● 6 portas analógicas
● Voltagem de entrada: 7 - 12 V
14. Arduino UNO
USB
Energia
Entradas e saídas digitais
Microcontrolador
Pinos de Alimentação Entradas analógicas
Reset
16. Protoboard
● Matriz de contato ou placa de ensaio
● Placa com furos e conexões condutoras
● substitui a soldagem
● Variam de 80 a 6000 furos
● Possui conexões verticais e horizontais.
22. Métodos básicos
● setup: executado ao ligar a placa
void setup(){
}
● loop: executado infinitamente
void loop(){
}
23. Portas
● Os componentes são conectados nas portas digitais e
analógicas
● As portas são manipuladas por:
○ pinMode(<porta>, <modo>)
○ digitalWrite(<porta>), 0 ou 1)
○ digitalRead(<porta>)
○ analogRead(<porta>)
○ analogWrite(<porta>, <valor>)
24. piMode(<porta>, <modo>)
● Normalmente fica no método setup()
● Configura uma porta digital para ENTRADA ou SAÍDA
● Exemplos:
pinMode(11, INPUT);
pinMode(12, OUTPUT);
25. digitalWrite(<porta>, 0 ou 1)
● Escreve 0 ou 1 na porta digital
● Exemplos:
digitalWrite(11, 1); // ~5V
digitalWrite(11, 0);
30. LED
● LED: Light Emitting Diode = Diodo Emissor de Luz
● Permite ou impede a passagem de corrente elétrica
● Os pólos podem ser identificados visualmente
31. LED
● Sua voltagem varia de acordo com a cor:
○ Vermelho: 1.6 V
○ Verde: 2.1 V
○ Amarelo: 2.1 V
○ Laranja: 2.2 V
○ Azul: 4 - 5 V
32. Resistor
● Resistência elétrica
○ oposição à passagem de corrente elétrica
○ medida em ohms: Ω
● Transforma energia elétrica em energia térmica
● Limita a quantidade de corrente elétrica
33. Resistor
● O valor da resistência de um resistor pode ser
identificado de acordo com as cores de sua cápsula
36. Experimento 1
● Resitor:
○ Saída Arduino: 5 V
○ LED Vermelho: 1.6 V
○ Corrente do LED: ~20 mA
● Lei de Ohm:
○ U = R * i
○ R = U / i
R = (5 - 1,6) / 0,02
R = 3,4 / 0,02
R = 170 ohms
37. Experimento 1
● Objetivo: piscar um LED
● Materiais:
○ Arduino
○ Protoboard
○ Fios de conexão
○ LED
○ Resistor (>= 170 ohm)
41. Processing e Arduino
Preparar Arduino:
● Conectar a placa Arduino
● Executar a IDE Arduino
● Abrir:
Examples > Firmata > StandardFirmata
● Subir o StandardFirmadata para a placa Arduino
42. Processing e Arduino
Preparar Processing:
● Baixar a biblioteca Arduino para Processing:
http://playground.arduino.cc/interfacing/processing
● Instalar a biblioteca Arduino no Processing
● Abrir o exemplo ARDUINO_INPUT
43. Processing e Arduino
Executar Processing com o Arduino
● Rodar exemplo ARDUINO_INPUT
● Tocar com a mão na parte de trás das portas da placa
Arduino
● Verificar se os desenhos no Processing foram
alterados