Workshop Arduino SETi 2014

926 visualizações

Publicada em

Workshop ministrado durante a IV Semana de Engenharia de Teleinformática da Universidade Federal do Ceará.

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
926
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
37
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Workshop Arduino SETi 2014

  1. 1. Introdução ao Arduino
  2. 2. Facilitadores Lucas Cabral • Graduando em Engenharia de Teleinformática. • Bolsista CNPq ITI: Fabricação Digital. • https://www.behance.net/robluch • lucascabralcarneiro@gmail.com Reno Beserra • Graduando em Sistemas e Mídias Digitais. • Monitor de Projeto de Graduação: Interfaces Alternativas de Sistemas Multimídias. • reno.less@gmail.com
  3. 3. Facilitadores Com o que nós trabalhamos? http://www.ledufc.org/
  4. 4. Sobre o Workshop Objetivos • O workshop busca introduzir o participante à plataforma Arduino, apresentando suas funcionalidades, variedade de aplicações e comunidade de usuários. O participante terá a oportunidade de conhecer as principais funções da linguagem de programação do Arduino, fazer a leitura de sensores e controlar atuadores, digitais e analógicos, com ênfase na prática e na experimentação. Divisão • Conhecendo a plataforma. • Primeiros passos. • Prototipagem.
  5. 5. O que é o Arduino? Arduino é uma ferramenta para fazer sistemas de computação que podem sentir e controlar mais do mundo físico do que um computador pessoal. É uma plataforma de prototipagem eletrônica baseada em uma placa microcontroladora e em um ambiente de desenvolvimento para escrever software para a placa.
  6. 6. O que é o Arduino? Computação Física Arduino pode ser usado para desenvolver sistemas interativos, recebendo inputs de uma variedade de sensores e controlando uma variadade de luzes, motores e outros outputs físicos. Projetos utilizando Arduino podem utilizar a placa independente ou podem se comunicar com software rodando em seu computador.
  7. 7. O que é o Arduino? Computação Física • Sensores e atuadores.
  8. 8. O que é o Arduino? Computação Física • Comunicação com software.
  9. 9. O que é o Arduino? Referências: http://hacknmod.com/hack/top-40-arduino-projects-of-the-web/
  10. 10. O que é o Arduino? O que contém na placa?
  11. 11. O que é o Arduino? O microcontrolador do Arduino: ATmega328
  12. 12. O que é o Arduino? O microcontrolador do Arduino: ATmega328
  13. 13. O que é o Arduino? As placas podem ser montadas à mão ou compradas pré-montadas.
  14. 14. O que é o Arduino? Tipos de placas http://arduino.cc/en/Main/Products
  15. 15. O que é o Arduino? Shields http://arduino.cc/en/Main/Products
  16. 16. Origem Interaction Design Institute Ivrea (IDII) • O Arduino surgiu da experiência de Maximo Banzi em ensinar eletrônica para designers para a criação de protótipos interativos. • Havia a necessidade de se criar uma plataforma de desenvolvimento barata e fácil de usar por pessoas sem vasto conhecimento técnico.
  17. 17. O jeito Arduino Prototipagem • DIY. • Produzir protótipos de modo mais simples e rápido, com menor custo possível. • Confirmar funcionalidades. • Utilizar dispositivos já prontos e adaptá-los de modo a explorar o trabalho prévio.
  18. 18. O jeito Arduino Prototipagem • “No passado, o uso de elementos de eletrônica significava que teríamos de lidar com engenheiros o tempo todo e criar circuitos desenvolvendo um componente de cada vez; esses problemas faziam com que pessoas criativas deixassem de se envolver diretamente com o meio. A maioria das ferramentas era destinada a engenheiros e exigia vasto conhecimento técnico. Nos anos recentes, microcontroladores tornaram-se mais baratos e fáceis de serem utilizados, permitindo a criação de ferramentas melhores. O progresso que fizemos com o Arduino significa que aproximamos essas ferramentas do iniciante, permitindo que essas pessoas construam seus projetos depois de apenas dois ou três dias de trabalho.” Maximo Banzi
  19. 19. O jeito Arduino Experimentação • Tinkering: “é o que ocorre quando você tenta realizar algo que ainda não domina, guiado por sua criatividade, imaginação e curiosidade. Essa atividade é, em sua essência, um processo que combina diversão e investigação.” www.exploratorium.edu/tinkering • Hacking: superar e contornar as limitações de sistemas e estender suas capacidades.
  20. 20. O jeito Arduino Colaboração • Comunidade de usuários. • Movimento Maker. • Código aberto.
  21. 21. O jeito Arduino Colaboração • http:// www.arduino.cc • http:// www.arduino.cc/playground • http://www.instructables.com • http://makezine.com/category/electronics/arduino/ • http://hacknmod.com/topics/arduino/ • http:// www.labdegaragem.org/ • http://arduino-ce.blogspot.com.br/
  22. 22. Experiências Pinokio • Luminária animatrônica. • Utiliza Arduino, Processing e OpenCV para imbuir Pinokio com a capacidade de estar ciente de seu ambiente, especialmente de pessoas, e expressar uma variedade dinâmica de comportamentos. http://www.ben-dror.com/pinokio/
  23. 23. Experiências Eye Writer • Sistema de rastreamento ocular open source de baixo custo que permite pacientes com ELA desenhar usando apenas os olhos. http://www.eyewriter.org/
  24. 24. Experiências Eye Writer 2.0 • "A arte é uma ferramenta de empoderamento e de mudança social, e eu considero-me abençoado por ser capaz de criar e usar o meu trabalho para promover a reforma da saúde, trazer a consciência sobre ELA e ajudar os outros.“ Tempt 1 http://www.eyewriter.org/
  25. 25. Experiências Conscious Clothing • Sistema vestível de auto-rastreamento de dados. • Usa um Arduino Lilypad ligado a um sensor de ar de partículas e uma série de tiras de elástico de malha em torno do tórax para medir a respiração. • Os dados geo-referenciados coletados são transmitidos em tempo real para qualquer dispositivo com Bluetooth, permitindo sua visualização em formatos diferentes. http://blog.arduino.cc/2013/07/11/conscious-clothing-wins-a-prize/#more-7644
  26. 26. Experiências Tweet-a-Pot • Cafeteira controlada remotamente pelo Twitter. http://www.instructables.com/id/Tweet-a-Pot-Twitter-Enabled-Coffee-Pot/
  27. 27. Experiências Arduino Materia 101 • Impressora 3D Open Source de baixo custo. http://blog.arduino.cc/2014/09/30/arduino-materia-101/
  28. 28. Experiências Outros • http://www.instructables.com/id/Arduino-Projects/ • http://hacknmod.com/topics/arduino/ • http://www.nudatech.com/blog/20-arduino-projects-of-2012/ • http://www.nudatech.com/blog/20-arduino-projects-of-2013/
  29. 29. Primeiros Passos A IDE Fonte: Introdução à plataforma de desenvolvimento Arduino, Prof Marcelo Wendling
  30. 30. Primeiros Passos Hello World: LED pisca-pisca • Examples > 01.Basics > Blink
  31. 31. Primeiros Passos Estrutura da linguagem • void setup(){} – Função chamada uma única vez no início da execução do software. Usada para configurar hardware e setar variáveis. • void loop(){} – Função principal, chamada continuamente enquanto o software é executado.
  32. 32. Primeiros Passos Funções • pinMode(pin,mode): configura um pino digital pino como entrada ou saída de dados. • digitalWrite(pin,value): envia um sinal de HIGH ou LOW para um pino digital. • digitalRead(pin): retorna o valor de um pino digital, podendo ser HIGH ou LOW. • analogWrite(pin, value): envia um valor analógico entre 0 e 255 para um pino na forma de uma onda PWM. • analogRead(pin): retorna a leitura de um pino analógico. O Arduino usa um conversor analógico/digital de 10 bits, mapeando voltagens de 0 a 5V em inteiros entre 0 e 1023. • delay(time): pausa o programa na quantidade de tempo especificada, em milissegundos.
  33. 33. Primeiros Passos Digital I/O •pinMode() •digitalWrite() •digitalRead() Analog I/O •analogReference() •analogRead() •analogWrite() - PWM Advanced I/O •tone() •noTone() •shiftOut() •shiftIn() •pulseIn() Time •millis() •micros() •delay() •delayMicroseconds() Math •min() •max() •abs() •constrain() •map() •pow() •sqrt() Trigonometry •sin() •cos() •tan() Random Numbers •randomSeed() •random() Referência: http://arduino.cc/en/Reference/HomePage
  34. 34. Primeiros Passos PWM • Pulse Width Modulation (Modulação por Largura de Pulso). • Técnica para obter resultados analógicos a partir de saídas digitais. • Uma onda quadrada simula voltagens entre 0V e 5V através da quantidade de tempo que a saída permanece alta e baixa.
  35. 35. Primeiros Passos PWM • No Arduino Uno os pinos 3, 5, 6, 9, 10, e 11 tem função PWM. • A função analogWrite pode ser usada para criar PWM. • Ela recebe como parâmetros o número do pino e um valor entre 0 (0%, ou saída em baixo constante) e 255 (100%, ou saída em alto constante). • Frequência: 500Hz.
  36. 36. Primeiros Passos Controle de LED por PWM • Examples > 01.Basics > Fade
  37. 37. Primeiros Passos Controle de LED por PWM e um botão • Função digitalRead.
  38. 38. Primeiros Passos Leitura de sensores analógicos • Convertem grandezas físicas em sinais elétricos mensuráveis analogicamente. • O Arduino usa um conversor analógico/digital de 10 bits, mapeando voltagens de 0 a 5V em inteiros entre 0 e 1023. • O Arduino Uno possui 6 pinos analógicos.
  39. 39. Primeiros Passos Grandezas mensuráveis e tipos de sensores mais comuns • Luz - LDR • Pressão – Piezoelétrico • Temperatura – Transdutor de temperatura • Umidade – Transdutor de umidade • Movimento – PIR (Passive Infrared) • Distância - Ultrassônico • Campo magnético – Magnetômetro • Aceleração linear - Acelerômetro • Movimento de rotação – Giroscópio
  40. 40. Primeiros Passos Sensores mais comuns
  41. 41. Primeiros Passos Leitura de sensor LDR • Light Dependent Resistor. • Examples > 01.Basics > ReadAnalogVoltage • Função analogRead.
  42. 42. Primeiros Passos Serial • Serial.begin(speed): configura a taxa de transmissão de bits. O valor normalmente usado é 9600. • Serial.println(val, format): envia uma informação pela porta serial seguida pelo caractere de nova linha. • Serial.print(val,format): envia uma informação pela porta serial sem caractere de nova linha. • Serial.read(): lê dados da porta serial. Referência: http://arduino.cc/en/Reference/HomePage
  43. 43. Primeiros Passos LED controlado por LDR e PWM
  44. 44. Prototipagem Componentes disponíveis • 5 Potenciômetros • 12 LDRs • 13 LEDs amarelos • 10 LEDs vermelhos • 9 LEDs verdes • 1 LED RGB • 1 Matriz de LEDs • 8 Sensores Ultrassônicos • 2 Sensores PIR • 5 Discos Piezoelétricos • 1 Buzzer • 15 Botões • 1 Chave liga/desliga • 1 Display LCD • 1 Motor de Passo • 2 Servo Motor • 1 Sensor de Temperatura • 1 Transmissor/Receptor RF 433MHz • 1 Sensor de Umidade • 1 Sensor de Água • 1 Leitor de RFID • 1 Módulo RTC • 1 Sensor de Efeito Hall • 1 Matriz de botões • 1 Joystick • 1 Teclado Numérico •
  45. 45. Prototipagem Sugestões de projetos • 01.Controle de acesso com senha. Utiliza o teclado numérico e display de LCD como interface de acesso. O usuário deve digitar a senha correta para ter acesso. Extra: pode utilizar um servo-motor para simular uma trava de porta. • 02.Sistema de segurança de detecção de presença com alarme. Utiliza o PIR para detectar movimentos, soando um alarme pelo buzzer em caso positivo. Um botão pode ser usado para ligar e desligar o alarme. • 03.Semáforo interativo com botão para pedestre. Utiliza LEDs vermelhos, verdes e amarelos para simular as cores de um semáforo em um cruzamento e botões para simular o uso por pedestres. • 04.Mood Lamp. Lâmpada composta por um LED RGB varia continuamente sua cor. Pode variar independentemente, por interação com potenciômetro, com botão ou por um sensor. • 05.Sonar direcional. Instrumento que emite alertas sonoros quando objetos se aproximam. Utiliza o sensor ultrassônico para medir distâncias e um buzzer para emitir sons em frequências que aumentam quando a distância medida diminui.
  46. 46. Prototipagem Sugestões de projetos • 06.Teremim. Instrumento que muda a frequência de sons de acordo com a proximidade das mãos. Pode-se usar buzzers e sensores ultrassônicos. • 07.Sistema de controle de estacionamento. Indica quais vagas estão ocupadas e quais não estão usando LEDs e sensores ultrassônicos. Pode-se adicionar botão e servo motor para simular acesso ao estacionamento. • 08.Sistema de transmissão de rádio. Sistema que envia e recebe dados via rádio, utilizando um receptor e um transmissor RF. • 09.Controle de acesso com leitor de RFID. Sistema que permite o acesso utilizando uma etiqueta RFID. • 10.Sistema de monitoramento de estufa. Monitora a temperatura e umidade e emite um alarme caso esteja fora dos valores aceitáveis. Utiliza um sensor de temperatura umidade e um buzzer.
  47. 47. Prototipagem Sugestões de projetos • 11.Monitoramento de entrada e saída de estabelecimento. Conta o número de pessoas que entraram em um local. Utiliza o sensor PIR. • 12.Alimentador de animais. Libera uma quantidade de ração nos horários programados. Pode ser feito com servo motor e módulo RTC. Requer recipiente e abertura móvel. • 13.Piano digital. Usa um buzzer e teclas de papel alumínio como sensores capacitivos para gerar diferentes frequências de sons. • 14.Instrumento percussivo digital. Usa sensores piezoelétricos para converterem batidas em sinais elétricos, gerando frequências para o buzzer emitir sons.

×