2. ARDUINO
* Dar a conhecer novas abordagens no
desenvolvimento de aplicações informáticas
* Suscitar curiosidade por parte dos alunos
(alguns, não todos)
* Mostrar o que o IPB e os seus alunos fazem
* E também para eu aprender com o feedback de
todos!
*
Arlindo Santos - IPB 2 18-01-2012
3. ARDUINO
*Vamos esquecer o rato e o
teclado
*Mix entre a informática
(programação) e a eletrónica
Arlindo Santos - IPB 3 18-01-2012
5. ARDUINO
Hoje, pequenos dispositivos eletrónicos,
como o Arduino, podem facilmente
comunicar com computador, e oferecer ao
utilizador formas de interação ilimitadas
que criam emoções no utilizador.
Mais informação: Documentário http://vimeo.com/31389230 *
Arlindo Santos - IPB 5 18-01-2012
6. ARDUINO
* Baixo custo ~20 euros.
* Modularidade.
* Facilidade de uso.
* Facilidade de
programação.
* Curto tempo de
aprendizado.
* Curto tempo de retorno
de implementação.
* Facilidade de troca de
informações.
*Implementa
a filosofia
DiY!
*
Arlindo Santos - IPB 6 18-01-2012
7. ARDUINO
* Possui compatibilidade com
as linguagens de programação
C e C++.
* Apresenta ambiente de
desenvolvimento integrado
(IDE).
* Utiliza filosofia de projeto
open-source.
* Existência de módulos de
expansão - shields.
* Comunidade de utilizadores,
programadores e autores.
*
Arlindo Santos - IPB 7 18-01-2012
8. ARDUINO
Ver mais em : http://arduino.cc/en/Main/ArduinoBoardDiecimila
*
Arlindo Santos - IPB 8 18-01-2012
9. ARDUINO
Microcontrolador ATmega328
Tensão de operação 5V
Tensão de entrada (recomendada) 7-12 V
Tensão de entrada (limites) 6-20 V
Pinos E/S digitais 14
Pinos de entrada analógicos 6
Corrente CC por pino E/S 40 mA
Corrente CC por pino 3.3 V 50 mA
Memória Flash 32 KB, sendo 2 KB utilizados pelo bootloader
SRAM 2 KB
EEPROM 1 KB
Velocidade de Clock 16 MHz
*
Arlindo Santos - IPB 9 18-01-2012
14. ARDUINO
* É necessário que o arduino faça o que queremos!
* Então é necessário:
1. Descarregar o IDE
http://arduino.cc/en/Main/Software
2. Ideia
3. Programar (aprender a linguagem)
http://arduino.cc/en/Reference/HomePage
4. Carregar o programa para a memória do Arduino
5. Testar!
*
Arlindo Santos - IPB 14 18-01-2012
15. ARDUINO
Ideia?
- Pisca-pisca
Colocar um led em modo
intermitente.
*
Arlindo Santos - IPB 15 18-01-2012
16. ARDUINO
/*
Programa: Blink, * The basic Arduino example. * http://www.arduino.cc/en/Tutorial/Blink
*/
int ledPin = 12; // Usar o Pino de número 13 do Arduino e ele será chamado "ledPin"
e // será uma variável inteira.
/*
Função chamada automaticamente na primeira vez que o código é lido.
Devemos dizer como o Pino deve se comportar.
*/
void setup()
{
/* PinMode(Nome do pino, ENTRADA ou SAÍDA).
Temos OUTPUT=Saída e INPUT=Entrada.
O nome do pino é LedPIN.
*/
pinMode(ledPin, OUTPUT);
}
*
Arlindo Santos - IPB 16 18-01-2012
17. ARDUINO
/* Função onde tudo acontece. Chama-se Loop porque é
executada infinitas vezes.
*/
void loop()
{
digitalWrite(ledPin, HIGH);
/*
Temos HIGH= LIGADO e LOW=DESLIGADO
O nome do pino é LedPIN, que é o mesmo Pino 13
*/
delay(1000); // Atraso de 1 segundo
digitalWrite(ledPin, LOW); // Temos LOW=DESLIGADO
delay(1000); // Atraso de 1 segundo
*
}
Arlindo Santos - IPB 17 18-01-2012
18. ARDUINO
* Instalar drivers
* Pasta driversFTDI USB
Drivers
* Verificar o nome da
porta COM
*
Arlindo Santos - IPB 18 18-01-2012
19. ARDUINO
* Compilar
* Salvar
* Upload
* Selecionar o board e a
porta
*
Arlindo Santos - IPB 19 18-01-2012
20. ARDUINO
Ideia?
- Botão
O utilizador pressiona um
botão.
*
Arlindo Santos - IPB 20 18-01-2012
24. ARDUINO
Ideia?
- Comunicar com o
computador
O utilizador inicia a animação e
quando esta finaliza o led
acende.
*
Arlindo Santos - IPB 24 18-01-2012
25. ARDUINO
int PinBotao = 13; void loop()
int PinLed = 12; {
int recebido = 0; int value = digitalRead(PinBotao);
int state = 0; digitalWrite(PinLed, LOW);
if(value == 1 && state == 0)
void setup() {
{ Serial.println(value, DEC);
pinMode(PinLed, OUTPUT); state = 1;
pinMode(PinBotao, INPUT); }
Serial.begin(9600); if (Serial.available() > 0)
digitalWrite(PinLed, LOW); {
} digitalWrite(PinLed, HIGH);
recebido = Serial.read();
Serial.println(recebido, DEC);
state = 0;
delay(5000);
}
delay(100);
}
*
Arlindo Santos - IPB 25 18-01-2012
26. ARDUINO
* Web site oficial : http://www.arduino.cc/
* Wikipédia:
http://pt.wikipedia.org/wiki/Arduino
* Documentário: http://vimeo.com/31389230
* Loja: http://inmotion.pt
* Loja:
http://shop.gtronica.com/index.php?manufact
urers_id=7
*
Arlindo Santos - IPB 26 18-01-2012