Top Banner

of 204

Curso de Arduino-Modulo 1

Jun 02, 2018

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/10/2019 Curso de Arduino-Modulo 1

    1/204

    COORDENADOR:

    Prof. Carlos Renato Borges dos Santos

    Arduino Mdulo 1

    Verso 3.0

  • 8/10/2019 Curso de Arduino-Modulo 1

    2/204

    ETAPAS DO CURSO COMPLETO

    26/08/2013IFMG-Campus Formiga2

    Mdulo 1Programando o Arduino16 horas

    Mdulo 2Sistemas de InterfaceMais de 20 horas

  • 8/10/2019 Curso de Arduino-Modulo 1

    3/204

    Contatos

    26/08/2013ArduinoMdulo 13

    [email protected]@gmail.com

    www.santoscrb.com

    mailto:[email protected]:[email protected]://www.santoscrb.com/http://www.santoscrb.com/http://www.santoscrb.com/mailto:[email protected]:[email protected]:[email protected]
  • 8/10/2019 Curso de Arduino-Modulo 1

    4/204

    Contedo programtico

    Mdulo 1Programando o Arduino

    26/08/2013IFMG-Campus Formiga4

  • 8/10/2019 Curso de Arduino-Modulo 1

    5/204

    Ao final do curso, ser capaz de:

    26/08/2013IFMG-Campus Formiga5

    Desenvolver aplicaes bsicas com o Arduino e pequenosacionamentos;

    Ler sinais de sensores que funcionam entre 0 e 5 V; Gravar dados na memria no-voltil; Desenvolver protocolos de comunicao sem verificaes

    complexas dos dados; Controlar servomotores, motores de passo e motores de

    corrente contnua (apenas o controle, a parte de potncia

    ser ministrada no mdulo 2); Entender o processo de interrupes; Conhecer alguns componentes eletrnicos.

  • 8/10/2019 Curso de Arduino-Modulo 1

    6/204

    Contedo programtico

    26/08/2013IFMG-Campus Formiga6

    Aula 1 O que Arduino Tipos de Arduino A placa eletrnica Vantagens do Arduino Apresentao do programa Notas:

    Avaliao: 40% da nota Projetos: 60% da nota

    Aula 2

    Conceitos de bit, Byte, Word. Tipos de variveis do Arduino. Manipulao de dados de diversos tipos em C

  • 8/10/2019 Curso de Arduino-Modulo 1

    7/204

    Contedo programtico

    26/08/2013IFMG-Campus Formiga7

    Aula 3 Reviso sobre programao em C. Declarao de variveis e ponteiros Condicionais:

    If

    While

    For

    Do ... While

    Switch Struct

    Union

  • 8/10/2019 Curso de Arduino-Modulo 1

    8/204

    Contedo programtico

    26/08/2013IFMG-Campus Formiga8

    Aula 4 O IDE do Arduino.

    Verificao Compilao

    Pinos de IO Exemplo Pisca-Pisca Exemplo push button

    Alimentao do Arduino Clculo de potncia dos dispositivos Dimensionamento de corrente de LEDs Princpio de funcionamento de um motor de passo PROJETO 1ACIONAMENTO DE LEDS ATRAVS DE PUSH-BUTTONS PROJETO 2CONTROLE DE UM MOTOR DE PASSO EM 2 SENTIDOS

  • 8/10/2019 Curso de Arduino-Modulo 1

    9/204

    Contedo programtico

    26/08/2013IFMG-Campus Formiga9

    Aula 5 VERIFICAO DOS PROJETOS 1 E 2 Apresentao de vdeos e links interessantes

    Aula 6

    Converso Analgico digital Exerccios

    Aula 7

    PWM

    Aula 8

    PROJETO 3CONTROLE DE VELOCIDADE DE UM MOTORCC ATRAVS DE UM POTENCIMETRO

    PROJETO 4SEGUIDOR SOLAR

  • 8/10/2019 Curso de Arduino-Modulo 1

    10/204

    Contedo programtico

    26/08/2013IFMG-Campus Formiga10

    Aula 9 Comunicao serial

    Aula 10

    Desenvolvimento de protocolos de comunicao serial

    Aula 11

    PROJETO 5CONTROLE DE UM MOTOR DE CC E DEMOTOR DE PASSO POR MEIO DA SERIAL

    Aula 12 PROJETO 6ESTAO DE MEDIO COM ENVIO DE

    DADOS PELA SERIAL

  • 8/10/2019 Curso de Arduino-Modulo 1

    11/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    12/204

    Livros sobre Arduino

    26/08/2013ArduinoMdulo 112

  • 8/10/2019 Curso de Arduino-Modulo 1

    13/204

    Bibliografia

    26/08/2013IFMG-Campus Formiga13

    1- Site www.arduino.cc 2- McRoberts, Michael. Arduino bsico. Editora NovaTec. 3- Ronald J. Tocci e Neal S. Widmer. Sistemas Digitais:

    Princpios e Aplicaes. 4- Banz, Massimo. Primeiros passos com o Arduino. 5- 30 Arduino Projects for the evil genius 6- Arduino CookBook, 2nd edition 7-http://renatoaloi.blogspot.com 8- Fbio Pereira. Microcontroladores PIC Programao em

    C. Editora rica.

    http://www.arduino.cc/http://www.arduino.cc/
  • 8/10/2019 Curso de Arduino-Modulo 1

    14/204

    Motivaes

    26/08/2013ArduinoMdulo 114

    http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/

    http://www.youtube.com/watch?v=UUbdSjEvsdw

    http://www.youtube.com/watch?v=fvsTzFnfgiI

    http://www.youtube.com/watch?v=5XDXyJTNFu4

    http://www.youtube.com/watch?v=JWqFH0roIUI

    http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://www.youtube.com/watch?v=UUbdSjEvsdwhttp://www.youtube.com/watch?v=fvsTzFnfgiIhttp://www.youtube.com/watch?v=5XDXyJTNFu4http://www.youtube.com/watch?v=JWqFH0roIUIhttp://www.youtube.com/watch?v=JWqFH0roIUIhttp://www.youtube.com/watch?v=5XDXyJTNFu4http://www.youtube.com/watch?v=fvsTzFnfgiIhttp://www.youtube.com/watch?v=fvsTzFnfgiIhttp://www.youtube.com/watch?v=UUbdSjEvsdwhttp://www.youtube.com/watch?v=UUbdSjEvsdwhttp://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/http://globotv.globo.com/rede-globo/jornal-nacional/v/alunos-do-engenharia-do-rio-vencem-maior-campeonato-de-robotica-do-mundo/2547531/
  • 8/10/2019 Curso de Arduino-Modulo 1

    15/204

    Mdulo 1Programando no Arduino

    1-Apresentao

  • 8/10/2019 Curso de Arduino-Modulo 1

    16/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    17/204

    O que Arduino

    26/08/2013IFMG-Campus Formiga17

    uma plataforma de prototipagem eletrnica de hardwarelivre, projetada com um microcontrolador Atmel AVR deplaca nica, com suporte de entrada/sada embutido, umalinguagem de programao padro, na qual essencialmente

    C/C++. O projeto iniciou-se na Itlia, em 2005, com o intuito de

    interagir em projetos escolares.

  • 8/10/2019 Curso de Arduino-Modulo 1

    18/204

    O que Arduino

    26/08/2013IFMG-Campus Formiga18

  • 8/10/2019 Curso de Arduino-Modulo 1

    19/204

    O que Arduino

    26/08/2013IFMG-Campus Formiga19

    O Arduino IDE uma aplicao multiplataformaescrita em Java. Inclui um editor de cdigo,compilador e carrega programas para a placa com

    um nico clique. Com isso no h a necessidade de editar Makefiles

    ou rodar programas em ambientes de linha de

    comando.

  • 8/10/2019 Curso de Arduino-Modulo 1

    20/204

    O que Arduino

    Linguagem do Arduino Linguagem C

    26/08/2013ArduinoMdulo 120

    void setup()

    {

    //Comandos de//inicializao } void loop()

    { //Instrues repetidas

    //infinitamente }

    void main()

    { //void setup while(1) {

    //void loop

    }

    }

  • 8/10/2019 Curso de Arduino-Modulo 1

    21/204

    Tipos de Arduino

    26/08/2013IFMG-Campus Formiga21

  • 8/10/2019 Curso de Arduino-Modulo 1

    22/204

    Tipos de Arduino

    26/08/2013IFMG-Campus Formiga22

  • 8/10/2019 Curso de Arduino-Modulo 1

    23/204

    Tipos de Arduino

    26/08/2013IFMG-Campus Formiga23

  • 8/10/2019 Curso de Arduino-Modulo 1

    24/204

    Tipos de Arduino

    26/08/2013IFMG-Campus Formiga24

  • 8/10/2019 Curso de Arduino-Modulo 1

    25/204

    A placa eletrnica

    26/08/2013IFMG-Campus Formiga25

  • 8/10/2019 Curso de Arduino-Modulo 1

    26/204

    A placa eletrnica

    26/08/2013IFMG-Campus Formiga26

  • 8/10/2019 Curso de Arduino-Modulo 1

    27/204

    A placa eletrnica

    26/08/2013IFMG-Campus Formiga27

  • 8/10/2019 Curso de Arduino-Modulo 1

    28/204

    Vantagens do Arduino

    26/08/2013IFMG-Campus Formiga28

  • 8/10/2019 Curso de Arduino-Modulo 1

    29/204

    Vantagens do Arduino

    Vantagens Desvantagens

    26/08/2013IFMG-Campus Formiga29

    Alimentao: Pode seralimentado pela USB

    Total compatibilidade entre oIDE e a placa, no sendonecessrias configuraescomplexas

    No precisa de alimentaoexterna

    Preo, se comparado a um kitcom microcontrolador PIC,8051 ou outro

    No simula emcomputador (ainda no

    encontrei) Nem todas as portas

    possuem um LEDintegrado plataforma.

    Ao sair do estado deprottipo deve-se fazeradequaes

  • 8/10/2019 Curso de Arduino-Modulo 1

    30/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    31/204

    Comparao

    Arduino PIC / 8051

    26/08/2013IFMG-Campus Formiga31

    Abrir software Arduino

    Selecionar o Arduino

    Abrir arquivo Cabo USB

    Plugar o Arduino

    Compilar

    Abrir software de edio em C Criar uma pasta e nomear o projeto Configurar fusveis

    Abrir biblioteca de exemplos, copiarexemplo Configurar registradores dos perifricos Certificar se o PIC, ex: 18F4550 Kit + Fonte de alimentao + cabo USB +

    gravador + cabo RJ Compilar Abrir o MPLAB para gravao Encontrar o arquivo .HEX Clicar em Play

  • 8/10/2019 Curso de Arduino-Modulo 1

    32/204

    Apresentao do programa

    26/08/2013IFMG-Campus Formiga32

    Notas: 50% - avaliao escrita 50% - projetos

  • 8/10/2019 Curso de Arduino-Modulo 1

    33/204

    Mdulo 1Programando no Arduino

    2-Conceitos bsicas

  • 8/10/2019 Curso de Arduino-Modulo 1

    34/204

    PARTE 1 Noes de software

    26/08/2013IFMG-Campus Formiga34

    Conceitos de bit, Byte, Word. Cdigos ASCII, Binrio, BCD, Hexadecimal.

    Reviso sobre programao em C.

    Tipos de variveis. O IDE do Arduino.

  • 8/10/2019 Curso de Arduino-Modulo 1

    35/204

    Conceitos de bit, Byte e Word

    26/08/2013IFMG-Campus Formiga35

  • 8/10/2019 Curso de Arduino-Modulo 1

    36/204

    Conceitos de bit, byte e word

    26/08/2013IFMG-Campus Formiga36

    Bit um registrador ou varivel que armazena o valor 0 ou1. Uma varivel do tipo bit usada para testes lgicos dostipos: verdadeiro ou falso.

    Byte um conjunto de 8 bits. Usado para armazenar

    valores de 0 a 255 (sem sinal) ou de -128 a +127 (com sinal) Word um conjunto de 16 bits. Armazena valores de 0 a

    65535 ou -32768 a 32767

  • 8/10/2019 Curso de Arduino-Modulo 1

    37/204

    Sistemas de codificao

    26/08/2013IFMG-Campus Formiga37

  • 8/10/2019 Curso de Arduino-Modulo 1

    38/204

    ASCII 0 a 127

    26/08/2013IFMG-Campus Formiga38

  • 8/10/2019 Curso de Arduino-Modulo 1

    39/204

    ASCII 128 a 255

    26/08/2013IFMG-Campus Formiga39

  • 8/10/2019 Curso de Arduino-Modulo 1

    40/204

    Hexadecimal binrio - decimal

    26/08/2013IFMG-Campus Formiga40

  • 8/10/2019 Curso de Arduino-Modulo 1

    41/204

    Codificao BCD

    26/08/2013IFMG-Campus Formiga41

    RTC DS1307Usa codificao BCD

  • 8/10/2019 Curso de Arduino-Modulo 1

    42/204

    Sistemas de codificao

    26/08/2013IFMG-Campus Formiga

    42

    Exerccio 1 Represente os valores a seguir em registradores de 8

    bits: A) 20 (decimal) ->

    B) 0 (ASCII) ->

    C) 45 (hexadecimal) ->

    D) 10110 (binrio) ->

    E) 7E (hexadecimal) -> F) 64 (bcd) ->

  • 8/10/2019 Curso de Arduino-Modulo 1

    43/204

    Sistemas de codificao

    26/08/2013IFMG-Campus Formiga

    43

    Exerccio 2 Dados os bits, o que eles representariam se estivessem

    em: ASCII, hexadecimal, BCD e decimal: ( A) 10010100 ->

    B) 01010101 ->

    C) 11110000 ->

    D) 10110111 ->

    E) 00111010 -> F) 1101010110101001 ->

  • 8/10/2019 Curso de Arduino-Modulo 1

    44/204

    Sistemas de codificao

    26/08/2013ArduinoMdulo 1

    44

    Exerccio 3 O RTC 1307 armazena a seguinte data: 26/12/13. Como

    sero preenchidos os seguintes registradores: dia, ms, ano?

  • 8/10/2019 Curso de Arduino-Modulo 1

    45/204

    Tipos de variveis do Arduino

    26/08/2013IFMG-Campus Formiga

    45

  • 8/10/2019 Curso de Arduino-Modulo 1

    46/204

    Tipos de variveis do Arduino

    26/08/2013IFMG-Campus Formiga

    46

    boolean

    char (-128 a 127) unsigned char (0 a 255)

    byte (0 a 255)

    int (-32.768 a 32.767)

    unsigned int (0 a 65535)

    word (0 a 65535) long [32 bits (4 bytes), de -

    2.147.483.648 a

    2.147.483.647] unsigned long (0 a

    4.294.967.295)

    Float (-3.4028235E+38 a3.4028235E+38 stored as 32bits)

    Double (On the ArduinoDue, doubles have 8-byte (64

    bit) precision) string - char array string - object array

    http://arduino.cc/en/Reference/HomePage

  • 8/10/2019 Curso de Arduino-Modulo 1

    47/204

    Manipulao de dados de diversostipos em C

    26/08/2013IFMG-Campus Formiga

    47

    Manipulao de dados de diversos

  • 8/10/2019 Curso de Arduino-Modulo 1

    48/204

    Manipulao de dados de diversostipos em C

    26/08/2013IFMG-Campus Formiga

    48

    Dicas sobre o uso de variveis

    Como o processador de 8 bits, evite usar variveis longas,isso poupar memria e aumentar a velocidade de clculo.

    Prefira usar variveis inteiras de 8 e 16 bits, evitandovariveis com ponto flutuante.

    Manipulao de dados de diversos

  • 8/10/2019 Curso de Arduino-Modulo 1

    49/204

    Manipulao de dados de diversostipos em C

    26/08/2013IFMG-Campus Formiga

    49

    char

    unsigned char

    Sinal(+) 0

    ( - ) 1

    Manipulao de dados de diversos

  • 8/10/2019 Curso de Arduino-Modulo 1

    50/204

    Manipulao de dados de diversostipos em C

    26/08/2013IFMG-Campus Formiga

    50

    Manipulao de dados de diversos

  • 8/10/2019 Curso de Arduino-Modulo 1

    51/204

    Manipulao de dados de diversostipos em C

    26/08/2013IFMG-Campus Formiga

    51

    ULA

    Registrador A(8 bits)

    Registrador B ( 8 bits)

    Resultado

    (8 bits)

    Carry (1 bit)98

    +78----

    Carry

    (operao anterior)

    Manipulao de dados de diversos

  • 8/10/2019 Curso de Arduino-Modulo 1

    52/204

    Manipulao de dados de diversostipos em C

    26/08/2013IFMG-Campus Formiga

    52

    O que acontece com os valores armazenadosquando:Bit = byte ......Arduino?

    Bit = word ......Arduino?Byte = bit ......Arduino: recebe 0 ou 1Byte = word ......Arduino: recebe-se o byte

    menos significativoword = bit ...... Arduino: recebe 0 ou 1word = byte ....... Arduino: recebe o valor

  • 8/10/2019 Curso de Arduino-Modulo 1

    53/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    54/204

    Operaes com variveis

    26/08/2013ArduinoMdulo 1

    54

    Calcule o resultado das variveis aps as seguintesoperaes:

    unsigned int calc = 2000;

    unsigned char x, y, z;x = calc; //x=208y = 400; //y=144z = x + y; //z = 96Ver Exemplo1

  • 8/10/2019 Curso de Arduino-Modulo 1

    55/204

    Ponteiros

    26/08/2013ArduinoMdulo 1

    55

    unsigned int x[5]; unsigned int *ponteiro; for(char i = 0;i

  • 8/10/2019 Curso de Arduino-Modulo 1

    56/204

    Mdulo 1Programando no Arduino

    3-Programao em C

  • 8/10/2019 Curso de Arduino-Modulo 1

    57/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga57

  • 8/10/2019 Curso de Arduino-Modulo 1

    58/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga58

    if( teste_condicional) {

    //Caso passe no teste_condicional

    }

    else

    { //Caso no passe no teste_condicional

    }

  • 8/10/2019 Curso de Arduino-Modulo 1

    59/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    60/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga60

    for( inicializao; teste_condicional; incremento) {

    //expresso

    }

  • 8/10/2019 Curso de Arduino-Modulo 1

    61/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga61

    do {

    //expresso

    } while ( teste_condicional)

  • 8/10/2019 Curso de Arduino-Modulo 1

    62/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga62

    switch(variavel) {

    case valor1: break;

    case valor2: break;

    case valor3: break;

    default: //Caso no tenha encontrado um case

    }

  • 8/10/2019 Curso de Arduino-Modulo 1

    63/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga63

    typedef struct {

    //Declarao de variveis //var1; //Var2;

    }Tipo; ... Tipo variavel; ...

    variavel.var1 = valor1; Variavel.var2 = valor2;

    Typedef struct {

    int chave; char matricula[6]; char nome[16];

    char senha[4]; }Taluno; ... Taluno turma1[40]; For(char i=0;i

  • 8/10/2019 Curso de Arduino-Modulo 1

    64/204

    Reviso sobre programao em C

    26/08/2013IFMG-Campus Formiga64

    typedef union {

    //Declara_varivel_maior;

    //Declara_variveis_menores;

    }Tipo;

    typedef union {

    int x; char y[2];

    }Tint16; ...

    Tint16 valor;

    valor.x = 0xABCD; valor.y[0] = ?

  • 8/10/2019 Curso de Arduino-Modulo 1

    65/204

    Mdulo 1Programando no Arduino

    4-O Arduino

  • 8/10/2019 Curso de Arduino-Modulo 1

    66/204

    O IDE do Arduino

    26/08/2013IFMG-Campus Formiga66

    O IDE d A d i

  • 8/10/2019 Curso de Arduino-Modulo 1

    67/204

    O IDE do Arduino

    26/08/2013IFMG-Campus Formiga67

    O IDE d A d i

  • 8/10/2019 Curso de Arduino-Modulo 1

    68/204

    O IDE do Arduino

    26/08/2013IFMG-Campus Formiga68

    O IDE d A d i

  • 8/10/2019 Curso de Arduino-Modulo 1

    69/204

    O IDE do Arduino

    26/08/2013IFMG-Campus Formiga69

    ltima verso: 1.0.5 (at o incio do curso)Escolher o ArduinoExemplos de programasConexo automticaVerificao de sintaxe

    CompilaoGravao

    O IDE d A d i

  • 8/10/2019 Curso de Arduino-Modulo 1

    70/204

    O IDE do Arduino

    26/08/2013IFMG-Campus Formiga70

  • 8/10/2019 Curso de Arduino-Modulo 1

    71/204

    Pi d IO

  • 8/10/2019 Curso de Arduino-Modulo 1

    72/204

    Pinos de IO

    26/08/2013IFMG-Campus Formiga72

    Arduino UNO 6 Portas de entradas

    analgicas (Conversor ADde 10 bits cada)

    14 portas de IO, sendo 6com sadas PWM

    1 sada de alimentao 5 V

    1 sada de alimentao de3,3 V

    A d i UNO

  • 8/10/2019 Curso de Arduino-Modulo 1

    73/204

    Arduino UNO

    26/08/2013IFMG-Campus Formiga73

    A d i UNO

  • 8/10/2019 Curso de Arduino-Modulo 1

    74/204

    Arduino UNO

    26/08/2013IFMG-Campus Formiga74

    Ard ino UNO

  • 8/10/2019 Curso de Arduino-Modulo 1

    75/204

    Arduino UNO

    26/08/2013IFMG-Campus Formiga75

  • 8/10/2019 Curso de Arduino-Modulo 1

    76/204

    Pinos de IOArduino Mega 2560

    26/08/2013IFMG-Campus Formiga76

    Pinos de IO

  • 8/10/2019 Curso de Arduino-Modulo 1

    77/204

    Pinos de IO

    26/08/2013IFMG-Campus Formiga77

    Arduino MEGA 2560 54 pinos de IO digitais

    14 sadas PWM que podemser configuradas como

    entradas digitais 4 terminais de

    comunicao serial USART+ 1 I2C

    Pinos 22 a 53 de IO digital 16 entradas analgicas

    (Conversor AD de 10 bits)

    Arduino Mega 2560

  • 8/10/2019 Curso de Arduino-Modulo 1

    78/204

    Arduino Mega 2560

    26/08/2013IFMG-Campus Formiga78

    Arduino Mega 2560

  • 8/10/2019 Curso de Arduino-Modulo 1

    79/204

    Arduino Mega 2560

    26/08/2013IFMG-Campus Formiga79

    Arduino Mega 2560

  • 8/10/2019 Curso de Arduino-Modulo 1

    80/204

    Arduino Mega 2560

    26/08/2013IFMG-Campus Formiga80

  • 8/10/2019 Curso de Arduino-Modulo 1

    81/204

    Exemplos de programao

    26/08/2013IFMG-Campus Formiga81

  • 8/10/2019 Curso de Arduino-Modulo 1

    82/204

    Exemplos

  • 8/10/2019 Curso de Arduino-Modulo 1

    83/204

    Exemplos

    26/08/2013IFMG-Campus Formiga83

    Pasta LaboratoriosExemplo 1operaes entre diversos tiposExemplo 2PonteirosExemplo 3Variveis char, int e float

  • 8/10/2019 Curso de Arduino-Modulo 1

    84/204

    Exemplo de leitura/escrita

  • 8/10/2019 Curso de Arduino-Modulo 1

    85/204

    Exemplo de leitura/escrita

    26/08/2013ArduinoMdulo 185

    Push Button:

  • 8/10/2019 Curso de Arduino-Modulo 1

    86/204

    Push-Button:

    Normalmente: 1

    Apertando: 0

    Normalmente: 0

    Apertando: 1

    26/08/2013IFMG-Campus Formiga86

    Push-Button

  • 8/10/2019 Curso de Arduino-Modulo 1

    87/204

    Push-Button

    Sada Normalmente 1

    Apertando: 0

    Sada Normalemente 0

    Apertando: 1

    26/08/2013ArduinoMdulo 187

    Latch

  • 8/10/2019 Curso de Arduino-Modulo 1

    88/204

    Latch

    26/08/2013ArduinoMdulo 188

    Exemplos de programao: push

  • 8/10/2019 Curso de Arduino-Modulo 1

    89/204

    button

    26/08/2013IFMG-Campus Formiga89

    Cada pino dever ser configurado como entrada; Para ler o sinal do pino, dever ser atravs de um

    comando;

    Veja exemplo a seguir.

    Exemplo de leitura digital

  • 8/10/2019 Curso de Arduino-Modulo 1

    90/204

    Exemplo de leitura digital

    26/08/2013IFMG-Campus Formiga90

  • 8/10/2019 Curso de Arduino-Modulo 1

    91/204

    Alimentao do Arduino

    26/08/2013IFMG-Campus Formiga91

    Alimentao do Arduino

  • 8/10/2019 Curso de Arduino-Modulo 1

    92/204

    Alimentao do Arduino

    26/08/2013IFMG-Campus Formiga92

    Pode-se aliment-lo atravs da porta USB Possui alimentao externa.

    Alimentao do Arduino

  • 8/10/2019 Curso de Arduino-Modulo 1

    93/204

    Alimentao do Arduino

    26/08/2013IFMG-Campus Formiga93

    Clculo de Potncia

    P = U x I

    Tenso de alimentao do Arduino (USB) = 5V

    Corrente mxima da USB (at 500mA por porta)

    Um simples resistor de 1k: I = 5/1000 = 5 mA

    Um simples resistor de 100R: I = 5/100 = 50 mA

    Cdigo de cores de resistores

  • 8/10/2019 Curso de Arduino-Modulo 1

    94/204

    Cdigo de cores de resistores

    26/08/2013ArduinoMdulo 194

  • 8/10/2019 Curso de Arduino-Modulo 1

    95/204

    Alimentao de um LED

  • 8/10/2019 Curso de Arduino-Modulo 1

    96/204

    Alimentao de um LED

    26/08/2013ArduinoMdulo 196

    Alimentao de um LED

  • 8/10/2019 Curso de Arduino-Modulo 1

    97/204

    Alimentao de um LED

    26/08/2013IFMG-Campus Formiga97

    Dimensionamento de LEDs Um LED consome cerca de 5 a 30 mA, dependendo do

    tamanho e tipo de LED. Quando ligado, sua tenso daordem de 1,2V. Logo, o resistor que deve ser ligado em srie:

    Caso de alimentao USB: R = (51,2)/5m = 760 Ohms

    No caso, mais prudente arredondar a resistncia para cima,logo usa-se 1kohm

    Tente agora para ligar um LED em 12V

    USB conector tipo B

  • 8/10/2019 Curso de Arduino-Modulo 1

    98/204

    USB conector tipo B

    26/08/2013IFMG-Campus Formiga98

    Alimentao Externa

  • 8/10/2019 Curso de Arduino-Modulo 1

    99/204

    Alimentao Externa

    26/08/2013ArduinoMdulo 199

    (-)

    (+)

    Ideal: 7 a 12V

  • 8/10/2019 Curso de Arduino-Modulo 1

    100/204

    PROJETO 1

    26/08/2013IFMG-Campus Formiga100

    ACIONAMENTO DE LEDS ATRAVS DE

    PUSH BUTTONS

  • 8/10/2019 Curso de Arduino-Modulo 1

    101/204

    PUSH-BUTTONS

    26/08/2013IFMG-Campus Formiga101

    DESCRIO: O projeto dever acionar um LED que representeum motor de CC. O acionamento se dar por push-button. Aoacionar a chave, o programa dever verificar o estado do LED emud-lo. No se esquea de inserir um delay aps ler o estado

    do push-button. Outros dois botes podero ser usados para regular o tempo de

    acionamento do LED.

    Aproveite os outros pinos de I/O e use a criatividade paraacionar mais de um LED.

  • 8/10/2019 Curso de Arduino-Modulo 1

    102/204

    PROJETO 2

    26/08/2013IFMG-Campus Formiga102

    CONTROLE DE UM MOTOR DE PASSOEM 2 SENTIDOS

  • 8/10/2019 Curso de Arduino-Modulo 1

    103/204

    EM 2 SENTIDOS

    26/08/2013IFMG-Campus Formiga103

    DESCRIO: Elaborar subrotinas que leiam 2 push-buttons,um que ao ser acionado chame uma subrotina que gire LEDs direita e outro que ao ser acionado chame uma subrotinaque gire LEDs esquerda.

    Tente usar void, funes, variveis, struct para deixar ocdigo mais elegante e organizado

    Insira comentrios sempre que possvel para explicar asetapas do cdigo.

    Aplicao: Motor de passo

  • 8/10/2019 Curso de Arduino-Modulo 1

    104/204

    p p

    26/08/2013IFMG-Campus Formiga104

    Princpio defuncionamento;

    Lgica de programao;

  • 8/10/2019 Curso de Arduino-Modulo 1

    105/204

    Mdulo 1Programando no Arduino

    5-Consulta sobre os projetos

  • 8/10/2019 Curso de Arduino-Modulo 1

    106/204

    Verificao dos projetos 1 e 2

    26/08/2013IFMG-Campus Formiga106

    Vdeos e links interessantes

  • 8/10/2019 Curso de Arduino-Modulo 1

    107/204

    26/08/2013IFMG-Campus Formiga107

    Vdeo 1 Vdeo 2 Vdeo 3 Vdeo 4

    Vdeo 5 Vdeo 6 Vdeo 7 http://uriedubot.wordpress.com/author/uriedubot/ www.arduino.cc http://renatoaloi.blogspot.com

    http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/0_recruta/Video%201%20-%20Robo%20seguidor%20de%20linhas%20-%20UFSCar.mp4http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/0_recruta/Video%204%20-%20Rob%C3%B4%20seguidor%20de%20Linha%20com%20Arduino.flvhttp://uriedubot.wordpress.com/author/uriedubot/http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/1_Profissional/Video%205%20-%20Hyper%20fast%20robot%20line%20following.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/1_Profissional/Video%207%20-%20Robotracer%20-%20Japan%202009%20-%20Ng%20Beng%20Kiat.flvhttp://uriedubot.wordpress.com/author/uriedubot/http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/1_Profissional/Video10%20-%20Micromouse%202008.mp4http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/2_Master/MicroMouse%20Robot%20Competition.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/2_Master/LED%20cube%208x8x8%20demo%20-%20YouTube.flvhttp://uriedubot.wordpress.com/author/uriedubot/http://uriedubot.wordpress.com/author/uriedubot/http://www.arduino.cc/http://renatoaloi.blogspot.com/http://renatoaloi.blogspot.com/http://www.arduino.cc/http://uriedubot.wordpress.com/author/uriedubot/http://uriedubot.wordpress.com/author/uriedubot/http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/2_Master/LED%20cube%208x8x8%20demo%20-%20YouTube.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/2_Master/MicroMouse%20Robot%20Competition.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/1_Profissional/Video10%20-%20Micromouse%202008.mp4http://uriedubot.wordpress.com/author/uriedubot/http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/1_Profissional/Video%207%20-%20Robotracer%20-%20Japan%202009%20-%20Ng%20Beng%20Kiat.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/1_Profissional/Video%205%20-%20Hyper%20fast%20robot%20line%20following.flvhttp://uriedubot.wordpress.com/author/uriedubot/http://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/0_recruta/Video%204%20-%20Rob%C3%B4%20seguidor%20de%20Linha%20com%20Arduino.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_5/Robos/0_recruta/Video%201%20-%20Robo%20seguidor%20de%20linhas%20-%20UFSCar.mp4
  • 8/10/2019 Curso de Arduino-Modulo 1

    108/204

    Mdulo 1Programando no Arduino

    6-Hardware interno [1]

  • 8/10/2019 Curso de Arduino-Modulo 1

    109/204

    Converso analgico-digital (ADC)

    26/08/2013IFMG-Campus Formiga109

    Conversor AD 1 bit

  • 8/10/2019 Curso de Arduino-Modulo 1

    110/204

    26/08/2013IFMG-Campus Formiga110

    Conversor AD 2 bits

  • 8/10/2019 Curso de Arduino-Modulo 1

    111/204

    26/08/2013IFMG-Campus Formiga111

    Conversor AD 3 bits

  • 8/10/2019 Curso de Arduino-Modulo 1

    112/204

    26/08/2013IFMG-Campus Formiga112

    Aliasing

  • 8/10/2019 Curso de Arduino-Modulo 1

    113/204

    26/08/2013IFMG-Campus Formiga113

    Converso analgico-digital (ADC)

  • 8/10/2019 Curso de Arduino-Modulo 1

    114/204

    26/08/2013IFMG-Campus Formiga114

    Converso analgico-digital (ADC)

  • 8/10/2019 Curso de Arduino-Modulo 1

    115/204

    26/08/2013IFMG-Campus Formiga115

    Conversor DA

  • 8/10/2019 Curso de Arduino-Modulo 1

    116/204

    26/08/2013ArduinoMdulo 1116

  • 8/10/2019 Curso de Arduino-Modulo 1

    117/204

    Converso analgico-digital (ADC)

  • 8/10/2019 Curso de Arduino-Modulo 1

    118/204

    26/08/2013IFMG-Campus Formiga118

    Sensor de preciso: Variavel (16 bits) = analogRead(Canal)

    Sensor de baixa preciso ou de sinal ruidoso: Variavel (8 bits) = analogRead(Canal)>>2

    Canal: A0 A1 A2

    A3 A4 A5

    Exemplo de leitura AD

  • 8/10/2019 Curso de Arduino-Modulo 1

    119/204

    26/08/2013IFMG-Campus Formiga119

    Exemplo: seguidor de linha

  • 8/10/2019 Curso de Arduino-Modulo 1

    120/204

    26/08/2013IFMG-Campus Formiga120

    Links interessantes

  • 8/10/2019 Curso de Arduino-Modulo 1

    121/204

    26/08/2013ArduinoMdulo 1121

    http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/

    http://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdf

    http://www.tur.eletrica.ufu.br/doc/regulamentoIITUR.pdf

    http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.tur.eletrica.ufu.br/doc/regulamentoIITUR.pdfhttp://www.tur.eletrica.ufu.br/doc/regulamentoIITUR.pdfhttp://www.tur.eletrica.ufu.br/doc/regulamentoIITUR.pdfhttp://www.tur.eletrica.ufu.br/doc/regulamentoIITUR.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.pessoal.utfpr.edu.br/msergio/Monog-09-2-Seguidor-de-linha.pdfhttp://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/http://www.sucatapontotec.netai.net/projeto-003-robo-arduino-seguidor-de-linha/
  • 8/10/2019 Curso de Arduino-Modulo 1

    122/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    123/204

    Mdulo 1Programando no Arduino

    7-Hardware interno [2]

  • 8/10/2019 Curso de Arduino-Modulo 1

    124/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    125/204

    PWM

  • 8/10/2019 Curso de Arduino-Modulo 1

    126/204

    26/08/2013IFMG-Campus Formiga126

    PWM

  • 8/10/2019 Curso de Arduino-Modulo 1

    127/204

    26/08/2013IFMG-Campus Formiga127

    analogWrite(Porta, varivel);

    Porta: configurada como sada.

    Varivel: Valor 8 bits sem sinal (0 a 255).

    PWM

  • 8/10/2019 Curso de Arduino-Modulo 1

    128/204

    26/08/2013IFMG-Campus Formiga128

    Serial Parte 1

  • 8/10/2019 Curso de Arduino-Modulo 1

    129/204

    26/08/2013ArduinoMdulo 1129

    Comandos bsicos: Void setup()

    Serial.begin(9600);

    Void loop() Serial.print(Texto); Serial.print(x);

    Serial.println(x);

    Serial.write(a);

    Serial.write(x);//x tipo char

  • 8/10/2019 Curso de Arduino-Modulo 1

    130/204

    Mdulo 1Programando no Arduino

    8-Projetos

  • 8/10/2019 Curso de Arduino-Modulo 1

    131/204

    PROJETO 3

    26/08/2013IFMG-Campus Formiga131

    Potencimetro

  • 8/10/2019 Curso de Arduino-Modulo 1

    132/204

    26/08/2013ArduinoMdulo 1132

    CONTROLE DE UM MOTOR CC ATRAVSDE UM POTENCIMETRO

  • 8/10/2019 Curso de Arduino-Modulo 1

    133/204

    U O C O

    26/08/2013IFMG-Campus Formiga133

    A) DESCRIO: Elaborar um algoritmo que leia um canalAD e envie o sinal lido para o PWM.

    B) DESCRIO: Elaborar um algoritmo que leia um canalAD e varie lentamente o sinal PWM at atingir o valor

    configurado. Para isso, necessrio comparar o sinal lido noAD com o sinal do PWM.

  • 8/10/2019 Curso de Arduino-Modulo 1

    134/204

    PROJETO 4

    26/08/2013IFMG-Campus Formiga134

    LDR

  • 8/10/2019 Curso de Arduino-Modulo 1

    135/204

    26/08/2013ArduinoMdulo 1135

    PROJETO DE UM SEGUIDOR SOLAR

  • 8/10/2019 Curso de Arduino-Modulo 1

    136/204

    26/08/2013ArduinoMdulo 1136

    Construir um seguidor solar guiado por motor de passo eLDR.

    O circuito dever varrer um raio de 180 graus, armazenar o

    ngulo de maior intensidade luminosa e, quando terminar, ir

    em direo ao ponto de maior intensidade.

  • 8/10/2019 Curso de Arduino-Modulo 1

    137/204

    Mdulo 1Programando no Arduino

    9-Noes sobre a Serial

  • 8/10/2019 Curso de Arduino-Modulo 1

    138/204

    Comunicao serial

    26/08/2013IFMG-Campus Formiga138

    Comunicao serial

  • 8/10/2019 Curso de Arduino-Modulo 1

    139/204

    26/08/2013IFMG-Campus Formiga139

    O envio de dados

    Taxas de transmisso

    Padro TTL e RS-232

    Enviando dados

    Recebendo dados Criando um protocolo de transmisso (byte a byte)

    Comunicao serial

  • 8/10/2019 Curso de Arduino-Modulo 1

    140/204

    26/08/2013IFMG-Campus Formiga140

  • 8/10/2019 Curso de Arduino-Modulo 1

    141/204

    26/08/2013ArduinoMdulo 1141

  • 8/10/2019 Curso de Arduino-Modulo 1

    142/204

    26/08/2013ArduinoMdulo 1142

  • 8/10/2019 Curso de Arduino-Modulo 1

    143/204

    26/08/2013ArduinoMdulo 1143

    Comunicao serial

  • 8/10/2019 Curso de Arduino-Modulo 1

    144/204

    26/08/2013IFMG-Campus Formiga144

  • 8/10/2019 Curso de Arduino-Modulo 1

    145/204

    26/08/2013ArduinoMdulo 1145

  • 8/10/2019 Curso de Arduino-Modulo 1

    146/204

    26/08/2013ArduinoMdulo 1146

  • 8/10/2019 Curso de Arduino-Modulo 1

    147/204

    26/08/2013ArduinoMdulo 1147

  • 8/10/2019 Curso de Arduino-Modulo 1

    148/204

    26/08/2013ArduinoMdulo 1148

  • 8/10/2019 Curso de Arduino-Modulo 1

    149/204

    26/08/2013ArduinoMdulo 1149

  • 8/10/2019 Curso de Arduino-Modulo 1

    150/204

    26/08/2013ArduinoMdulo 1150

  • 8/10/2019 Curso de Arduino-Modulo 1

    151/204

    26/08/2013ArduinoMdulo 1151

  • 8/10/2019 Curso de Arduino-Modulo 1

    152/204

    26/08/2013ArduinoMdulo 1152

  • 8/10/2019 Curso de Arduino-Modulo 1

    153/204

    26/08/2013ArduinoMdulo 1153

  • 8/10/2019 Curso de Arduino-Modulo 1

    154/204

    26/08/2013ArduinoMdulo 1154

    Padro TTL

  • 8/10/2019 Curso de Arduino-Modulo 1

    155/204

    26/08/2013ArduinoMdulo 1155

    1 ( 5V )

    0 ( 0V )

    A IDE do Arduino cria uma COM virtual a partir de umaporta USB.

  • 8/10/2019 Curso de Arduino-Modulo 1

    156/204

    RS 232

  • 8/10/2019 Curso de Arduino-Modulo 1

    157/204

    26/08/2013IFMG-Campus Formiga157

    1( -15V )

    0( +15V )

    Nunca ligue um microcontrolador ou Arduino diretamente porta serial! preciso um conversor MAX 232

    RS 232

  • 8/10/2019 Curso de Arduino-Modulo 1

    158/204

    26/08/2013ArduinoMdulo 1158

    RS 232

  • 8/10/2019 Curso de Arduino-Modulo 1

    159/204

    RS 232 RS 232 Conversor TTL RS 232

    26/08/2013ArduinoMdulo 1159

    Interface serial RS232

  • 8/10/2019 Curso de Arduino-Modulo 1

    160/204

    26/08/2013IFMG-Campus Formiga160

    baud rate

  • 8/10/2019 Curso de Arduino-Modulo 1

    161/204

    26/08/2013ArduinoMdulo 1161

  • 8/10/2019 Curso de Arduino-Modulo 1

    162/204

    Comunicao serial

  • 8/10/2019 Curso de Arduino-Modulo 1

    163/204

    26/08/2013IFMG-Campus Formiga163

    Ver exemplo 6

  • 8/10/2019 Curso de Arduino-Modulo 1

    164/204

    Mdulo 1Programando no Arduino

    10-Protocolos de comunicao

    Desenvolvimento de protocolos de

  • 8/10/2019 Curso de Arduino-Modulo 1

    165/204

    Desenvolvimento de protocolos de

    comunicao

    26/08/2013IFMG-Campus Formiga165

  • 8/10/2019 Curso de Arduino-Modulo 1

    166/204

    26/08/2013IFMG-Campus Formiga166

    Ver exemplo 7

  • 8/10/2019 Curso de Arduino-Modulo 1

    167/204

    Mdulo 1Programando no Arduino

    11-Projeto

  • 8/10/2019 Curso de Arduino-Modulo 1

    168/204

    PROJETO 4

    26/08/2013IFMG-Campus Formiga168

    CONTROLE DE UM MOTOR DE CC E DEMOTOR DE PASSO POR MEIO DA SERIAL

  • 8/10/2019 Curso de Arduino-Modulo 1

    169/204

    26/08/2013IFMG-Campus Formiga169

    DESCRIO: Desenvolver um algoritmo que receba umcomando que controle a velocidade de um motor de CC ecomande tambm um motor de passo.

  • 8/10/2019 Curso de Arduino-Modulo 1

    170/204

    Mdulo 1Programando no Arduino

    12-Projeto

  • 8/10/2019 Curso de Arduino-Modulo 1

    171/204

    PROJETO 4

    26/08/2013IFMG-Campus Formiga171

  • 8/10/2019 Curso de Arduino-Modulo 1

    172/204

    Mdulo 1Programando no Arduino

    13-Hardware interno [3]

  • 8/10/2019 Curso de Arduino-Modulo 1

    173/204

    Memrias

    26/08/2013IFMG-Campus Formiga173

    Memrias

  • 8/10/2019 Curso de Arduino-Modulo 1

    174/204

    26/08/2013IFMG-Campus Formiga174

    O arduino UNO: SRAM: 2kB EEPROM: 1 kB FLASH: 32 kB

    Mega2560 SRAM: 8kB EEPROM: 4kB FLASH: 256 kB

    FLASH

    SRAM

    EEPROM

    Processador

    Memrias

  • 8/10/2019 Curso de Arduino-Modulo 1

    175/204

    26/08/2013IFMG-Campus Formiga175

    Fazer um algoritmo que grave um vetor de dados dequantidade indeterminada (algo est sendo lido)

  • 8/10/2019 Curso de Arduino-Modulo 1

    176/204

    Mdulo 1Programando no Arduino

    14-Mais sobre EEPROM

    Gravando e recuperando dados na

  • 8/10/2019 Curso de Arduino-Modulo 1

    177/204

    p

    EEPROM

    26/08/2013IFMG-Campus Formiga177

  • 8/10/2019 Curso de Arduino-Modulo 1

    178/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    179/204

    Mdulo 1Programando no Arduino

    15-Servomotor

    Servomotor

  • 8/10/2019 Curso de Arduino-Modulo 1

    180/204

    26/08/2013IFMG-Campus Formiga180

  • 8/10/2019 Curso de Arduino-Modulo 1

    181/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    182/204

    26/08/2013ArduinoMdulo 1182

    Ver exemplo 10

  • 8/10/2019 Curso de Arduino-Modulo 1

    183/204

    PROJETO 7SEGUIDOR SOLAR COM ENVIO DE DADOS DE POSIOPELA PORTA SERIAL

    26/08/2013IFMG-Campus Formiga183

  • 8/10/2019 Curso de Arduino-Modulo 1

    184/204

    26/08/2013IFMG-Campus Formiga184

    16-LCD

    Liquid Crystal Display

  • 8/10/2019 Curso de Arduino-Modulo 1

    185/204

    26/08/2013ArduinoMdulo 1185

    Pinos do LCD

  • 8/10/2019 Curso de Arduino-Modulo 1

    186/204

    26/08/2013ArduinoMdulo 1186

    Conectando ao Arduino

  • 8/10/2019 Curso de Arduino-Modulo 1

    187/204

    26/08/2013ArduinoMdulo 1187

    V l 11

  • 8/10/2019 Curso de Arduino-Modulo 1

    188/204

    26/08/2013ArduinoMdulo 1188

    Ver exemplo 11

  • 8/10/2019 Curso de Arduino-Modulo 1

    189/204

    26/08/2013IFMG-Campus Formiga189

    17-Interrupes

  • 8/10/2019 Curso de Arduino-Modulo 1

    190/204

    Interrupes

    26/08/2013IFMG-Campus Formiga190

    Interrupo

    U d d it it t t t t

  • 8/10/2019 Curso de Arduino-Modulo 1

    191/204

    26/08/2013ArduinoMdulo 1191

    Usada quando necessita monitorar constantemente eventos

    de curta durao A interrupo tem prioridade na execuo do programa

    principal, parando-o para atender interrupo

    Aps a execuo da interrupo, retoma-se o programa

    Pinos de interrupo

  • 8/10/2019 Curso de Arduino-Modulo 1

    192/204

    26/08/2013IFMG-Campus Formiga192

    Esquema da Interrupo

  • 8/10/2019 Curso de Arduino-Modulo 1

    193/204

    26/08/2013ArduinoMdulo 1193

    loop()Programa principal

    Evento externo

    Interrupo

    Ligao no Arduino

  • 8/10/2019 Curso de Arduino-Modulo 1

    194/204

    26/08/2013ArduinoMdulo 1194

    Comando e parmetros

  • 8/10/2019 Curso de Arduino-Modulo 1

    195/204

    26/08/2013ArduinoMdulo 1195

    Linha de tempo da interrupo

  • 8/10/2019 Curso de Arduino-Modulo 1

    196/204

    26/08/2013ArduinoMdulo 1196

    Modos de operao

  • 8/10/2019 Curso de Arduino-Modulo 1

    197/204

    26/08/2013ArduinoMdulo 1197

    Exemplo

  • 8/10/2019 Curso de Arduino-Modulo 1

    198/204

    26/08/2013ArduinoMdulo 1198

    Ver Exemplo 12

    Nota:

  • 8/10/2019 Curso de Arduino-Modulo 1

    199/204

    26/08/2013ArduinoMdulo 1199

  • 8/10/2019 Curso de Arduino-Modulo 1

    200/204

    PROJETO 8VERIFICAO DE NVEL DE TENSO DA BATERIA COMENVIO DE DADOS PELA SERIAL

    26/08/2013IFMG-Campus Formiga200

  • 8/10/2019 Curso de Arduino-Modulo 1

    201/204

  • 8/10/2019 Curso de Arduino-Modulo 1

    202/204

    Mdulo 1Programando no Arduino

    17-Avaliao

  • 8/10/2019 Curso de Arduino-Modulo 1

    203/204

    AVALIAO

    26/08/2013IFMG-Campus Formiga203

  • 8/10/2019 Curso de Arduino-Modulo 1

    204/204

    Fim do curso Mdulo 1Coordenador: Carlos Renato Borges dos Santos

    Voluntrio: Silas Martins Sousa