O documento discute várias plataformas de hardware e software para prototipagem eletrônica e desenvolvimento de projetos, incluindo Arduino, Netduino e Raspberry Pi. Ele fornece uma introdução a cada plataforma, explicando seus componentes, capacidades e aplicações típicas. Além disso, apresenta exemplos de projetos utilizando sensores e atuadores conectados a essas plataformas.
1. Prof. Walter Silvestre Coan, Ms.
Departamento de Informática
Universidade da Região de Joinville - UNIVILLE
2. O que é o arduino?
◦ Instalação
◦ Projetos
◦ Internet das coisas...
◦ Robótica
O que é o Netduino?
◦ Projetos
Raspberry Pi
◦ Instalação e configuração
◦ Desenvolvimento de jogos
3. Claudio Montenegro
Glauco Vinicius Scheffel
4. Arduino é uma plataforma aberta e livre que
simplifica a prototipação de dispositivos
eletrônicos capazes de medir aspectos físicos
(sensores), realizar ações (atuadores) ou se
comunicar com outros dispositivos.
Plataforma do Arduino
◦ Placa
◦ Linguagem de Programação
◦ Plataforma de Desenvolvimento
5. Idealizador: Massimo Banzi
2005
Interaction Design Institute Ivrea – Milano
David Cuartielles, Gianluca Martino, Tom Igoe,
David Mellis e Massimo Banzi
6. Aberto, Livre e expansível
◦ Linguagem de Programação
Similar ao C/C++, permite construção de bibliotecas em
C++
Hardware
◦ Microcontrolador Atmel ATMEGA
“Barato”
Cross-Plataform
Ambiente simples de programação
ATmega 328
Memória Flash: 32 Kb
CPU: 8-bit AVR
EEPROM: 1024 Bytes
Tensão: 1.8v to 5.5v
Duemilanove
7. Qual a diferença de um Microcontrolador para
um Microprocessador?
Microcontrolador ATMEGA 328
MEGA
13. Windows
◦ É necessário instalar o driver para a interface FTDI USB que
permite a comunicação direta entre o computador e o
arduino.
◦ Windows 7 não 64bits
O driver encontra-se na pasta driver da IDE de programação do
arduino
◦ Windows 7 64bits
É necessário fazer o download da ultima versão do driver.
http://www.ftdichip.com/Drivers/VCP.htm
Passos
◦ Conectar o arduino ao computador utilizando o cabo USB.
◦ Aguarde o sistema operacional encontrar o novo hardware.
◦ Apontar o caminho onde o driver foi baixado.
14. Configuração do Software Arduino
◦ Windows
Acessar o gerenciador de dispositivos, verifique em
que porta COM o driver FTDI foi instalado.
Informar no Software Arduino a versão do seu Arduino
e a porta de comunicação.
15. Configuração do Software Arduino
◦ Linux
Comando para listar os dispositvos USB: lsusb
Comando para encontrar a porta de comunicação no
linux: ls /dev/ttyUSB*
16. Porta USB: para
alimentação de energia
e comunicação com o
computador.
External DC:
alimentação de energia
externa, somente
necessário quando o
campo USB não esta
conectado
Reset Switch: reinicia o
microcontrolado
Power LED: indica que o Arduino esta em funcionamento.
Serial LEDS: indicam a troca de informações entre o computador e o Arduino
ou atividade das portas digitais 0 (RX) e 1 (TX).
Pin 13 LED: indica atividade na porta digital 13.
17. Light Emitting Diode (LED)
Cor Tensão Corrente
Infravermelho < 1.9v 20mA
Vermelho 1.63v ≈ 2.03v 20mA
Amarelo 2.10v ≈ 2.18v 20mA
Verde 1.9v ≈ 4.0v 20mA
Azul 2,48v ≈ 3.7 20mA
Branco 3.5v 20mA
LEDs:
-São Polarizados, se você inverter o Catodo e o Anodo
ele não funciona.
-Um dos terminais sempre tem o tamanho maior
indicando que é o catodo.
-Adoram corrente, quanto mais voce passar para ele,
mais ele irá tentar absorver até que ele superaqueça e
queime.
18. Primeiro teste: Blink
◦ Entrar no Software Arduino
◦ Selecionar: File -> Examples -> Basics -> Blink
19. Primeiro teste: Blink
Catodo (Grd) Anodo(PIN13)
20. Primeiro teste: Blink
◦ Realizar a montagem do esquema elétrico
◦ Conectar o arduino na porta USB
◦ Carregar o programa para o Arduino
21. Porta Digitais e Analógicas:
utilizadas para a conexão de
componentes eletrônicos que
serão controlados pelo
microcontrolador.
Portas Digitais 0 a 13: por
trabalhar no sistema digital
elas suportam os valores HIGH
(1) e LOW (0) que representam
ligado e desligado. Cada porta
proveuma corrente de 5v,
exceto a porta 13 que já possui
um resistor e um LED
conectado de forma serial,
ENTRADA: mede se existe ou não uma corrente. reduzindo a tensão para 1.7v.
SAIDA: prove ou retira corrente Essas portas podem ser
DICA: Sempre utilize resistores nas portas digitais utilizadas tanto no modo
diferentes de 13 ENTRADA como SAIDA.
22. Porta Digitais utilizadas para saída:
-No bloco de SETUP do programa arduino utilizar o comando
pinMode(<numPorta>, OUTPUT);
-No bloco de LOOP utilizar o comando digitalWrite(<numPorta>,<LOW/HIGH>); para
habilitar ou desabilitar o sinal na porta.
23. Porta Digitais utilizadas para Entrada:
-No bloco de SETUP do programa arduino utilizar o comando
pinMode(<numPorta>, INPUT);
-No bloco de LOOP utilizar o comando digitalRead(<numPorta>); verificar o status da
porta igual a LOW ou HIGH.
31. Passo 1
◦ Transistor LM35 (sensor de temperatura linear)
const int inPin = 0; // analog pin
void setup()
{
Serial.begin(9600);
}
void loop()
{
int value = analogRead(inPin);
float millivolts = (value / 1024.0) * 5000;
float celsius = millivolts / 10;
// sensor output is 10mV per degree Celsius
int rate = map(celsius,20,30,0,255);
delay(500); // wait for one second
Serial.println(celsius);
delay(500); // wait for one second
}
32. Passo 2
◦ Configurar uma chave de acesso no COSM
38. Porta Analógicas: utilizadas
para conectar sensores,
possibilitando a conversão
do sinal Analógico do
componente sensor para
valores Digitais (0-1023).
Essas portas possuem
apenas a opção de
ENTRADA de sinal.
Porta Gnd: As portas GROUND são utilizadas para completar os circuitos
construídos provendo o aterramento.
39.
40. Sensores
Tem por objetivo medir grandezas físicas que são
transformadas em sinais elétricos.
Sensor de Cor Sensor de Luminosidade Sensor de presença de
Gás
41. Atuadores
Tem por objetivo modificar o estado de algo, transformando
sinais elétricos em uma grandeza física.
Motor DC Motor de passo Servo Motor
42. Componentes:
- Arduino
- Transistor BC 548
- Resistor 1K ohms
- Motor DC 3v
- Duas pilhas AA (1,5v)
//Código Fonte (Fading):
int ledPin = 9;
void setup() {
// nao faz nada
}
void loop() {
for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
analogWrite(ledPin, fadeValue);
delay(30);
}
for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
analogWrite(ledPin, fadeValue);
delay(30);
}
}
50. .NET Micro Framework (Apache License 2.0)
◦ 2009
◦ Dispositivos com 256KBytes flash e 64KBytes RAM
◦ Netduino
Criado pela Secret Labs
32 bits Microcontroller
www.netduino.com
51.
52.
53.
54.
55.
56. Criado por Prof. Eben Christopher Upton –
2006 – Universidade de Cambridge
Objetivo:
◦ Plataforma de Hardware e Software abertos para
ensinar crianças do reino unido a programar.
Raspberry Pi Foundation – 2012
◦ Mais de 1 MILHÃO de unidades vendidas
Model A - $25
Model B - $35
◦ Brasil
http://www.farnellnewark.com.br
R$ 170,50 + Frete
BBC Micro Computer
57.
58. Acessórios obrigatórios
◦ Cartão de memória SD (8 giga)
◦ Fonte de alimentação USB (Tensão: 5v – Corrente
800 a 1000 mA)
◦ Teclado e Mouse
◦ Cabo HDMI / RCA
Mais informações
◦ http://www.raspberrypi.org/
59. Instalação
◦ Passo 1 – Download do Sistema Operacional
60. Instalação
◦ Passo 2 – Gravar a imagem do Sistema Operacional
no cartão SD
Win32 DiskImager
http://sourceforge.net/projects/win32diskimager/
61. Instalação
◦ Passo 3 – piconfig
Aplicativo de configuração do Raspberry Pi
Executado automaticamente na primeira inicialização ou
pode ser chamado pelo console
62.
63. Interface para simplificar e proteger as GPIO
do Raspberry Pi
◦ Portas digitais e analógicas
◦ Dois Reles
◦ Leds e Pin Buttons
69. Prof. Walter Silvestre Coan, Ms.
Departamento de Informática
Universidade da Região de Joinville – UNIVILLE
http://www.univille.br/deptoinformatica
http://www.facebook.com/BSIUniville
http://blog.univille.br/joinuino
e-mail: walter.s@univille.br – Twitter: waltercoan
http://www.faltoupontoevirgula.com.br