MANUAL DO ARDUINO GERÊNCIA DE TECNOLOGIA GERÊNCIA DE TECNOLOGIA DA INFORMAÇÃO DA INFORMAÇÃO SED/SC
OArduinoéumaplataformauti- lizada para prototipação de cir- cuitos eletrônicos, muito usado pelos adeptos do conceito DIY (Do It Yourself) ou, em portugês ,“faça você mesmo”. O Arduino foi criado em 2005 por um grupo de 5 pesquisado- res: Massimo Banzi, David Cuar- tielles, Tom Igoe, Gianluca Mar- tino e David Mellis. O objetivo era elaborar um dispositivo que fosse ao mesmo tempo barato e fácil de programar, sendo dessa forma acessível aos estudantes e projetistas amadores. O Arduino é composto por uma placa com microcontrolador At- mel AVR e um ambiente de pro- gramação baseado em Wiring e C++. Tanto o hardware como o ambiente de programação do Arduino são livres, ou seja, qual- quer pessoa pode modificá-los e reproduzi-los. O Arduino permite o desenvol- vimento de projetos de auto- mação, como apagar as luzes de uma casa automaticamen- te, regular a temperatura do ar- -condicionado e muito mais. INTRODUÇÃO ARDUINO
Tipos de Arduino: Há uma diversidade de modelos para cada necessidade do usuário. Surpreendentemente tem modelo que é do tamanho de um polegar, tem modelo que é circular e tem um modelo que parece um con- trole de vídeo game. O modelo Uno R3 é o mais conhe- cido e o mais indicado para quem está começando agora pois pos- sui uma boa capacidade de pro- cessamento, uma simples utiliza- ção com seus periféricos e uma simples linguagem de programa- ção que se assemelha com C++. MODELOS ARDUINO
Protoboard: também chamada de matriz de contato, a protoboard é uma placa com diversos furos e co- nexões condutoras verticais e hori- zontais para a montagem de circui- tos elétricos experimentais. LED: a palavra LED vem do inglês Light Emitting Diode, que significa Diodo Emissor de Luz. O LED é um componente eletrônico semicon- dutor, composto de cristal sem- icondutor de silício ou germânio que emite luz. LEDs RGB ou tricolores: possuem três cores, vermelho (Red), verde (Green) e azul (Blue). O uso das cores pode ser em conjunto ou in- dividuais. COMPONENTES ARDUINO
Resistor Dependente de Luz (LDR): o LDR (Light Dependent Re- sistor ou Resistor Dependente de Luz) é um componente eletrônico cuja resistência varia em função da luminosidade que incide sobre o mesmo. Este componente é sensí- vel à luz e tem como finalidade li- mitar a passagem de corrente em um circuito. Kit Micro Servo SG90: Micro Servo Motor SG90 é um motor muito uti- lizado em aplicações para robótica, nos sistemas microcontroladores, como Arduino. Também se faz ide- al para utilização em aeromodelis- mo, fazendo preciso controle dos movimentos. COMPONENTES ARDUINO
COMPONENTES ARDUINO InterruptorDeslizante:dispositivo simples, usado para abrir ou fechar circuitos elétricos. São utilizados na abertura de redes, em tomadas e entradas de aparelhos eletrônicos, basicamente na maioria das situa- ções que envolvem o ligamento ou desligamento de energia elétrica. Interruptor Push Botton: é um interruptor pulsador que conduz corrente elétrica apenas quan- do pressionado. Esse componente eletrônico é muito utilizado na pro- totipagem de projetos eletrônicos tanto na protoboard quanto solda- do na placa de circuito impresso.
Potenciômetro: são usados nos equipamentos para permitir a mu- dança do regime de operação. Por exemplo, o potenciômetro de vo- lume permite o aumento ou dimi- nuição do nível da intensidade do som, já o potenciômetro de brilho permite o controle de luminosida- de das imagens. Buzzer: é um componente que se baseia no efeito piezoelétrico para emitir sons a partir de uma tensão elétrica em seus terminais. Apesar de não ser tão eficiente como um alto falante, o buzzer pode ser uti- lizado para emitir alertas sonoros simples em circuitos eletrônicos. COMPONENTES ARDUINO
COMPONENTES ARDUINO Resistor:são dispositivos que com- põem circuitos elétricos diversos, a sua finalidade básica é alterar a diferença de potencial em deter- minada parte do circuito e conse- quentemente diminuir a corrente elétrica devido à presença do equi- pamento. Fio Conector: é utilizado para in- terligar o circuito. Sensor Ultrassônico: é um com- ponente muito comum em pro- jetos com Arduino, e permite que você faça leituras de distâncias en- tre 2 cm e 4 metros, com precisão de 3 mm.
Controlador Shield: são placas que se encaixam ao Arduino para acrescentar funcionalidades de uma forma simples e confiável. Sensor de Temperatura: tem a fi- nalidade de medir temperatura am- biente utilizando Arduino ou outras plataformas microcontroladoras. COMPONENTES ARDUINO
O Arduino disponibliza em sua pá- gina, https://www.arduino.cc/ en/software , um ambiente de de- senvolvimento integrado (IDE), que é um software para criar apli- cações que combina ferramentas comuns de desenvolvimento em uma única interface. IDE ARDUINO
IDE ARDUINO
O Tinkercad é uma ferramenta on- line de design de modelos 3D em CAD e também de simulação de circuitos elétricos analógicos e di- gitais, desenvolvida pela Autodesk. Por ser gratuito e fácil de usar, en- contramos nele uma oportunidade de ensino de Programação Embar- cada, visto que a primeira barreira encontrada pelos alunos é a de não possuir os componentes e o micro- controlador em mãos. Para realizar os testes de montagem e progra- mação será utilizada a plataforma do Tinkercad em https://www. tinkercad.com/dashboard . TINKERCAD
AULA 1 ARDUINO Título: Acendendo LED. Objetivo: Apresentar a platafor- ma https://www.tinkercad.com/. Acender um ou mais LEDs. Componentes: Arduino UNO, Protoboard, Resistor e LED. Montagem:
AULA 2 ARDUINO Título: LED Piscando. Objetivo: Apresentar a platafor- ma https://www.tinkercad.com/. Acender um ou mais LEDs e pis- car. Componentes: Arduino UNO, Protoboard, Resistor e LED. Montagem:
TIPOS DE BLOCOS BÁSICOS Saída: comandos relacionados à informações de saída, ou seja, si- nais que o Arduino manda para o mundo externo. Dentre estes comandos, estão o comando do LED incorporado ao Arduino (LED L, ligado no pino 13); definição de pinos com nível alto (5V) ou bai- xo (0V); definição de valores ana- lógicos (0 a 255) aos pinos PWM (marcados na placa com sinal de ~); reprodução de sons em alto- -falante; mensagens de texto no Monitor Serial e definição de co- res para LEDs RGB (sigla para Red (vermelho), Green (verde) e Blue (azul)). Entrada: comandos relaciona- dos à informações de entrada, ou seja, sinais que o Arduino recebe do mundo externo. Dentre es- tes comandos, estão o comando para leitura de pino digital (rece- be apenas sinal ALTO (5V) ou BAI- XO (0V)); leitura de pino analógico (recebe valores de 0 a 1023); lei- tura de posição do servo motor (0 a 180º); número de caracteres se- riais disponíveis; leitura do serial; leitura do sensor ultrassônico (já converte o valor da distância em centímetros ou polegadas); leitura de sensor de temperatura (já con- verte o valor da temperatura em graus Celsius ou Fahrenheit).
TIPOS DE BLOCOS BÁSICOS Notação: Permite inserir um co- mentário, ou seja, você pode es- crever palavras/frases em um blo- co ou em uma linha sem que sejam interpretados pelo programa. É uma espécie de lembrete para que você associe o que aquele trecho de programação está realizando. Controlar: Realiza controle de tempo, repetições ou verificações de condições. Isto permite que comandos sejam realizados so- mente após certo tempo; sejam repetidos determinado número de vezes; que se repitam enquan- to uma condição for satisfeita; que aconteçam somente após uma condição for verdadeira; ou que se repitam conforme uma conta- gem de tempo.
TIPOS DE BLOCOS BÁSICOS Matemática: Valores numéricos; formas de comparação (menor que, menor ou igual a, igual a, di- ferente de, maior ou igual a, maior que); geração de valores aleató- rios; mapeamento de pino para uma determinada faixa de valores; restrição de valores para uma de- terminada faixa; estados lógicos (ALTO ou BAIXO). Estes blocos são colocados dentro de coman- dos de controle. Variáveis: É possível criar espa- ços para armazenar valores tem- porários, como por exemplo de leitura de sensores, para depois serem comparados para tomada de decisões (blocos Controlar). É possível ter várias variáveis no programa, mas é necessário que cada variável possua um nome di- ferente.
PROGRAMAÇÃO 1 TINKERCAD Para enviar a programação para o arduino basta selecionar o có- digo que está à direita da tela de programação do Tinkercad. De- pois, abrir o IDE do arduino, colar no IDE e enviar com a seta. (esse procedimento será feito em todas as programações)
PROGRAMAÇÃO 2 TINKERCAD
AULA 3 ARDUINO Título: Sinal de Trânsito. Objetivo: Acender três LEDs em uma sequência definida por de- terminado tempo. Componentes: Placa Arduino, Protoboard, 3 Resistores, 3 LEDs. Montagem:
PROGRAMAÇÃO TINKERCAD PROGRAMAÇÃO 1: PROGRAMAÇÃO 2:
AULA 4 ARDUINO Título: Girar o eixo do Micro Ser- vo Motor SG90 9g até 90º e em seguida retornar à 0º. Objetivo: Utilizar o Micro Servo Motor SG90 9g em conjunto com o Arduino e girar o eixo do servo até 180º e em seguida retornar à 0º. Ao ligar o servo o eixo irá retor- nar à 0º independente da posição em que ele se encontra. Componentes: 1 – Arduino com Cabo USB 1 – Micro Servo Motor SG90 9g 3 – Cabos Jumper macho-macho Montagem:
PROGRAMAÇÃO CÓDIGOS Vamos utilizar o Código no formato apenas texto e seguir os passos abaixo. #include <Servo.h> //INCLUSÃO DA BIBLIOTECA NECESSÁRIA const int pinoServo = 8; //PINO DIGI- TAL UTILIZADO PELO SERVO Servo s; //OBJETO DO TIPO SERVO int pos; //POSIÇÃO DO SERVO void setup (){ s.attach(pinoServo); //ASSOCIAÇÃO DO PINO DIGITAL AO OBJETO DO TIPO SERVO s.write(0); //INICIA O MOTOR NA PO- SIÇÃO 0º } void loop(){ for(pos = 0; pos < 90; pos++){ //PARA “pos” IGUAL A 0, ENQUANTO “pos” ME- NOR QUE 180, INCREMENTA “pos” s.write(pos); //ESCREVE O VALOR DA POSIÇÃO QUE O SERVO DEVE GIRAR delay(15); //INTERVALO DE 15 MILIS- SEGUNDOS } delay(1000); //INTERVALO DE 1 SE- GUNDO for(pos = 90; pos >= 0; pos--){ //PARA “pos” IGUAL A 90, ENQUANTO “pos” MAIOR OU IGUAL QUE 0, DECREMEN- TA “pos” s.write(pos); //ESCREVE O VALOR DA POSIÇÃO QUE O SERVO DEVE GIRAR delay(15); //INTERVALO DE 15 MILIS- SEGUNDOS } }
SECRETARIA DO ESTADO DA EDUCAÇÃO DE SANTA CATARINA (48) 3664-0145 www.sed.sc.gov.br getig@sed.sc.gov.br GETIG-SED GERÊNCIA DE TECNOLOGIA DA INFORMAÇÃO

manual arduino (1)Primeiros passos arduino.pdf

  • 1.
    MANUAL DO ARDUINO GERÊNCIADE TECNOLOGIA GERÊNCIA DE TECNOLOGIA DA INFORMAÇÃO DA INFORMAÇÃO SED/SC
  • 2.
    OArduinoéumaplataformauti- lizada para prototipaçãode cir- cuitos eletrônicos, muito usado pelos adeptos do conceito DIY (Do It Yourself) ou, em portugês ,“faça você mesmo”. O Arduino foi criado em 2005 por um grupo de 5 pesquisado- res: Massimo Banzi, David Cuar- tielles, Tom Igoe, Gianluca Mar- tino e David Mellis. O objetivo era elaborar um dispositivo que fosse ao mesmo tempo barato e fácil de programar, sendo dessa forma acessível aos estudantes e projetistas amadores. O Arduino é composto por uma placa com microcontrolador At- mel AVR e um ambiente de pro- gramação baseado em Wiring e C++. Tanto o hardware como o ambiente de programação do Arduino são livres, ou seja, qual- quer pessoa pode modificá-los e reproduzi-los. O Arduino permite o desenvol- vimento de projetos de auto- mação, como apagar as luzes de uma casa automaticamen- te, regular a temperatura do ar- -condicionado e muito mais. INTRODUÇÃO ARDUINO
  • 3.
    Tipos de Arduino: Háuma diversidade de modelos para cada necessidade do usuário. Surpreendentemente tem modelo que é do tamanho de um polegar, tem modelo que é circular e tem um modelo que parece um con- trole de vídeo game. O modelo Uno R3 é o mais conhe- cido e o mais indicado para quem está começando agora pois pos- sui uma boa capacidade de pro- cessamento, uma simples utiliza- ção com seus periféricos e uma simples linguagem de programa- ção que se assemelha com C++. MODELOS ARDUINO
  • 4.
    Protoboard: também chamadade matriz de contato, a protoboard é uma placa com diversos furos e co- nexões condutoras verticais e hori- zontais para a montagem de circui- tos elétricos experimentais. LED: a palavra LED vem do inglês Light Emitting Diode, que significa Diodo Emissor de Luz. O LED é um componente eletrônico semicon- dutor, composto de cristal sem- icondutor de silício ou germânio que emite luz. LEDs RGB ou tricolores: possuem três cores, vermelho (Red), verde (Green) e azul (Blue). O uso das cores pode ser em conjunto ou in- dividuais. COMPONENTES ARDUINO
  • 5.
    Resistor Dependente deLuz (LDR): o LDR (Light Dependent Re- sistor ou Resistor Dependente de Luz) é um componente eletrônico cuja resistência varia em função da luminosidade que incide sobre o mesmo. Este componente é sensí- vel à luz e tem como finalidade li- mitar a passagem de corrente em um circuito. Kit Micro Servo SG90: Micro Servo Motor SG90 é um motor muito uti- lizado em aplicações para robótica, nos sistemas microcontroladores, como Arduino. Também se faz ide- al para utilização em aeromodelis- mo, fazendo preciso controle dos movimentos. COMPONENTES ARDUINO
  • 6.
    COMPONENTES ARDUINO InterruptorDeslizante:dispositivo simples, usado paraabrir ou fechar circuitos elétricos. São utilizados na abertura de redes, em tomadas e entradas de aparelhos eletrônicos, basicamente na maioria das situa- ções que envolvem o ligamento ou desligamento de energia elétrica. Interruptor Push Botton: é um interruptor pulsador que conduz corrente elétrica apenas quan- do pressionado. Esse componente eletrônico é muito utilizado na pro- totipagem de projetos eletrônicos tanto na protoboard quanto solda- do na placa de circuito impresso.
  • 7.
    Potenciômetro: são usadosnos equipamentos para permitir a mu- dança do regime de operação. Por exemplo, o potenciômetro de vo- lume permite o aumento ou dimi- nuição do nível da intensidade do som, já o potenciômetro de brilho permite o controle de luminosida- de das imagens. Buzzer: é um componente que se baseia no efeito piezoelétrico para emitir sons a partir de uma tensão elétrica em seus terminais. Apesar de não ser tão eficiente como um alto falante, o buzzer pode ser uti- lizado para emitir alertas sonoros simples em circuitos eletrônicos. COMPONENTES ARDUINO
  • 8.
    COMPONENTES ARDUINO Resistor:são dispositivos quecom- põem circuitos elétricos diversos, a sua finalidade básica é alterar a diferença de potencial em deter- minada parte do circuito e conse- quentemente diminuir a corrente elétrica devido à presença do equi- pamento. Fio Conector: é utilizado para in- terligar o circuito. Sensor Ultrassônico: é um com- ponente muito comum em pro- jetos com Arduino, e permite que você faça leituras de distâncias en- tre 2 cm e 4 metros, com precisão de 3 mm.
  • 9.
    Controlador Shield: sãoplacas que se encaixam ao Arduino para acrescentar funcionalidades de uma forma simples e confiável. Sensor de Temperatura: tem a fi- nalidade de medir temperatura am- biente utilizando Arduino ou outras plataformas microcontroladoras. COMPONENTES ARDUINO
  • 10.
    O Arduino disponiblizaem sua pá- gina, https://www.arduino.cc/ en/software , um ambiente de de- senvolvimento integrado (IDE), que é um software para criar apli- cações que combina ferramentas comuns de desenvolvimento em uma única interface. IDE ARDUINO
  • 11.
  • 12.
    O Tinkercad éuma ferramenta on- line de design de modelos 3D em CAD e também de simulação de circuitos elétricos analógicos e di- gitais, desenvolvida pela Autodesk. Por ser gratuito e fácil de usar, en- contramos nele uma oportunidade de ensino de Programação Embar- cada, visto que a primeira barreira encontrada pelos alunos é a de não possuir os componentes e o micro- controlador em mãos. Para realizar os testes de montagem e progra- mação será utilizada a plataforma do Tinkercad em https://www. tinkercad.com/dashboard . TINKERCAD
  • 13.
    AULA 1 ARDUINO Título: AcendendoLED. Objetivo: Apresentar a platafor- ma https://www.tinkercad.com/. Acender um ou mais LEDs. Componentes: Arduino UNO, Protoboard, Resistor e LED. Montagem:
  • 14.
    AULA 2 ARDUINO Título: LEDPiscando. Objetivo: Apresentar a platafor- ma https://www.tinkercad.com/. Acender um ou mais LEDs e pis- car. Componentes: Arduino UNO, Protoboard, Resistor e LED. Montagem:
  • 15.
    TIPOS DE BLOCOS BÁSICOS Saída:comandos relacionados à informações de saída, ou seja, si- nais que o Arduino manda para o mundo externo. Dentre estes comandos, estão o comando do LED incorporado ao Arduino (LED L, ligado no pino 13); definição de pinos com nível alto (5V) ou bai- xo (0V); definição de valores ana- lógicos (0 a 255) aos pinos PWM (marcados na placa com sinal de ~); reprodução de sons em alto- -falante; mensagens de texto no Monitor Serial e definição de co- res para LEDs RGB (sigla para Red (vermelho), Green (verde) e Blue (azul)). Entrada: comandos relaciona- dos à informações de entrada, ou seja, sinais que o Arduino recebe do mundo externo. Dentre es- tes comandos, estão o comando para leitura de pino digital (rece- be apenas sinal ALTO (5V) ou BAI- XO (0V)); leitura de pino analógico (recebe valores de 0 a 1023); lei- tura de posição do servo motor (0 a 180º); número de caracteres se- riais disponíveis; leitura do serial; leitura do sensor ultrassônico (já converte o valor da distância em centímetros ou polegadas); leitura de sensor de temperatura (já con- verte o valor da temperatura em graus Celsius ou Fahrenheit).
  • 16.
    TIPOS DE BLOCOS BÁSICOS Notação:Permite inserir um co- mentário, ou seja, você pode es- crever palavras/frases em um blo- co ou em uma linha sem que sejam interpretados pelo programa. É uma espécie de lembrete para que você associe o que aquele trecho de programação está realizando. Controlar: Realiza controle de tempo, repetições ou verificações de condições. Isto permite que comandos sejam realizados so- mente após certo tempo; sejam repetidos determinado número de vezes; que se repitam enquan- to uma condição for satisfeita; que aconteçam somente após uma condição for verdadeira; ou que se repitam conforme uma conta- gem de tempo.
  • 17.
    TIPOS DE BLOCOS BÁSICOS Matemática:Valores numéricos; formas de comparação (menor que, menor ou igual a, igual a, di- ferente de, maior ou igual a, maior que); geração de valores aleató- rios; mapeamento de pino para uma determinada faixa de valores; restrição de valores para uma de- terminada faixa; estados lógicos (ALTO ou BAIXO). Estes blocos são colocados dentro de coman- dos de controle. Variáveis: É possível criar espa- ços para armazenar valores tem- porários, como por exemplo de leitura de sensores, para depois serem comparados para tomada de decisões (blocos Controlar). É possível ter várias variáveis no programa, mas é necessário que cada variável possua um nome di- ferente.
  • 18.
    PROGRAMAÇÃO 1 TINKERCAD Para enviara programação para o arduino basta selecionar o có- digo que está à direita da tela de programação do Tinkercad. De- pois, abrir o IDE do arduino, colar no IDE e enviar com a seta. (esse procedimento será feito em todas as programações)
  • 19.
  • 20.
    AULA 3 ARDUINO Título: Sinalde Trânsito. Objetivo: Acender três LEDs em uma sequência definida por de- terminado tempo. Componentes: Placa Arduino, Protoboard, 3 Resistores, 3 LEDs. Montagem:
  • 21.
  • 22.
    AULA 4 ARDUINO Título: Giraro eixo do Micro Ser- vo Motor SG90 9g até 90º e em seguida retornar à 0º. Objetivo: Utilizar o Micro Servo Motor SG90 9g em conjunto com o Arduino e girar o eixo do servo até 180º e em seguida retornar à 0º. Ao ligar o servo o eixo irá retor- nar à 0º independente da posição em que ele se encontra. Componentes: 1 – Arduino com Cabo USB 1 – Micro Servo Motor SG90 9g 3 – Cabos Jumper macho-macho Montagem:
  • 23.
    PROGRAMAÇÃO CÓDIGOS Vamos utilizar oCódigo no formato apenas texto e seguir os passos abaixo. #include <Servo.h> //INCLUSÃO DA BIBLIOTECA NECESSÁRIA const int pinoServo = 8; //PINO DIGI- TAL UTILIZADO PELO SERVO Servo s; //OBJETO DO TIPO SERVO int pos; //POSIÇÃO DO SERVO void setup (){ s.attach(pinoServo); //ASSOCIAÇÃO DO PINO DIGITAL AO OBJETO DO TIPO SERVO s.write(0); //INICIA O MOTOR NA PO- SIÇÃO 0º } void loop(){ for(pos = 0; pos < 90; pos++){ //PARA “pos” IGUAL A 0, ENQUANTO “pos” ME- NOR QUE 180, INCREMENTA “pos” s.write(pos); //ESCREVE O VALOR DA POSIÇÃO QUE O SERVO DEVE GIRAR delay(15); //INTERVALO DE 15 MILIS- SEGUNDOS } delay(1000); //INTERVALO DE 1 SE- GUNDO for(pos = 90; pos >= 0; pos--){ //PARA “pos” IGUAL A 90, ENQUANTO “pos” MAIOR OU IGUAL QUE 0, DECREMEN- TA “pos” s.write(pos); //ESCREVE O VALOR DA POSIÇÃO QUE O SERVO DEVE GIRAR delay(15); //INTERVALO DE 15 MILIS- SEGUNDOS } }
  • 24.
    SECRETARIA DO ESTADODA EDUCAÇÃO DE SANTA CATARINA (48) 3664-0145 www.sed.sc.gov.br getig@sed.sc.gov.br GETIG-SED GERÊNCIA DE TECNOLOGIA DA INFORMAÇÃO