Your SlideShare is downloading. ×
Perlduino - Interfaceando sua aplicação com o mundo real!
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Perlduino - Interfaceando sua aplicação com o mundo real!

1,704
views

Published on

Palestra que dei no Encontro Técnico de Perl da comunidade http://rio.pm.org no dia 19/09/0210 …

Palestra que dei no Encontro Técnico de Perl da comunidade http://rio.pm.org no dia 19/09/0210

http://rio.pm.org/enc_tecnicos.pl


0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,704
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
44
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Perl + Arduino Extendendo sua aplicação ao mundo real! http://rio.pm.org http://www.arduinrio.cc
  • 2. O que é um Microcontrolador?
    • Computador ?
    • Circuito Integrado ?
      • Computador num Circuito Integrado!
    • Computador
      • Entradas => INTELIGÊNCIA => Saídas
    • Microcontrolador
      • Entradas => INTELIGÊNCIA => Saídas
    • Ou :
      • Sensores => INTELIGÊNCIA => Atuadores
        • No caso da robótica
  • 3. Arduino = Microcontrolador + Gravador + Interfaces
    • A alma do negócio é o Microcontrolador ATMega 328
      • Porém ele não funciona sozinho
  • 4. Componentes perifericos
    • Como toda CPU, precisa de um Clock
      • Para isto temos o cristal
    • Interface serial/USB
    • Regulador de tensão – {7,21} V -> 5 V
  • 5. Entradas e Saídas do Arduino Duemilanove(2009)
    • Isto geralmente não muda muito para um conjunto de microcontroladores de mesmo porte :
  • 6. PWM (Modulacao por Largura de Pulso)
  • 7. Conversor Analogico<->Digital (ADC)
  • 8. Arduino – a quebra de paradigmas
    • Software Livre – Faça e extenda (em casa)
    • Hardware Livre – Faça e extenda (em casa!)
      • Cultura de simplificação
      • Linguagem Wiring – o “C simplificado”
      • Você também pode programar o Arduino em C puro.
  • 9. int ledPin = 13; // LED connected to digital pin 13 void setup() { pinMode(ledPin, OUTPUT); // sets the digital pin as output } void loop() { digitalWrite(ledPin, HIGH); // sets the LED on delay(1000); // waits for a second digitalWrite(ledPin, LOW); // sets the LED off delay(1000); // waits for a second }
  • 10. Shields – Bibliotecas de Hardware
    • Apenas encaixando a placa de expansão e carregando a biblioteca, você já tem a funcionalidade pronta
  • 11. Shield Ethernet
    • Fale com seu Arduino via TCP/IP, logo de qualquer lugar do mundo
  • 12. Wi-Fi Shield
    • Fale com seu Arduino de qualquer lugar do mundo sem precisar de fios
      • WEP (64-bit and 128-bit)
      • WPA/WPA2 (TKIP and AES) PSK
  • 13. Motor Shield
    • 2 Servo motores
    • 4 Motores DC – dois sentidos
    • 2 motores de passo
  • 14. Conclusão
    • Facilidade
      • Até artistas programam hoje
      • Estudantes de escolas técnicas não tem mais porque não estudar este assunto
        • Um Arduino custa R$ 40,00 vindo da china
        • Por volta de R$ 85,00 no Brasil.
    • Criatividade
      • A facilidade te abstrai os problemas menores para que você se preocupe com o seu real problema
  • 15. Casos de uso
    • OpenEnergyMonitor.org
      • Monitore o uso de energia eletrica numa casa, escritorio ou fabrica (com graficos caso mande para o PC)
    • MouseGlove
      • Controle seu mouse por acelerometros numa luva
    • Automação de casa
      • Aquecedor, alarme de seguranca e iluminacao.
      • Interface WEB
    • Padaria
      • Arduino avisa aos clientes via Twitter quando o pão sai.
  • 16. E como falar com esse cara?
    • USB – FDTI USB/Serial
    • Serial
    • Ethernet - TCP/IP
    • Wi-Fi – TCP/IP
    • Bluetooth
    • Xbee?
  • 17. Fazendo o Perl falar com ele
    • Device::SerialPort – no Linux
    • O código do Arduino tem de estar preparado para receber mensagens, e interpreta-las para a ação desejada
    my $sp=new Device::SerialPort(&quot;/dev/ttyUSB0&quot;); $sp->databits(8); $sp->baudrate(9600); $sp->stopbits(1); $sp->parity(&quot;none&quot;); $sp->write(“s”);
  • 18. void loop() { char pc_input; if (Serial.available()) { pc_input = Serial.read(); } if( pc_input == 'w') { if (Speed < 255){ Speed = Speed + 5; } go_forward(Speed); } if( pc_input == 's') { stopMotors(); } if( pc_input == 'a') { turn_left(10); } if( pc_input == 'd') { turn_right(10); } }
  • 19. Na Prática...
  • 20. Um minuto sobre Cellbots
    • Arduino + Android
    • Arduino + Smartphone
    • Vantagens
      • Diversos sensores (acelerometros, GPS, luminosidade)
      • Camera embutida (streaming)
      • Muitos rodam Linux, logo sem dificuldade rodam Perl
      • Interface Wi-Fi
      • Interface Bluetooth
      • Internet – 3G / GPRS
  • 21.  
  • 22. Arduino TV Out
  • 23. Possibilidades
    • Interfaceamento com controle remoto
      • So precisa calibrar
    • Interfaceamento com controle de Wii
    • Interfaceamento com Ipod/Iphone/Android
    • Sensores
      • Temperatura, distância, microfone, luz, Infra-vermelho(controle remoto), muito mais!
    • Atuadores
      • Motores, LEDs, TVs, caixa de som, LED Infra-vermelho(controle remoto), muito mais!
  • 24. Agora é usar a imaginação e desenvolver! Perguntas?