Escolar Documentos
Profissional Documentos
Cultura Documentos
com Arduino
Introdução
Robótica com Arduino
Introdução
Objetivo do curso.
O Que Vou Aprender?
Desenvolvimento Metodológico.
Robótica
com Arduino
2
Robótica com Arduino
Introdução
3
Robótica com Arduino
4
Conteúdo programático
Capitulo 1
Conceitos básicos de eletrônica.
Componentes físicos
Robótica Como utilizar o protoboard.
com Arduino
Capítulo 2
O que é lógica de programação.
Tipos de dados na computação.
Ambiente de programação: IDE - características, funções, compilação e upload do sketch.
Capítulo 3
O que é Arduino.
Hardware x Software.
Conectando o arduino ao computador: instalando os drivers do Arduino.
Plataforma arduino (uno e nano).
Modelos de placas Arduino.
5
Robótica
com Arduino
Conceitos básicos de eletrônica
UNIDADE 1
• Conceitos básicos de eletrônica.
• Componentes físicos
• Como utilizar o protoboard.
Capitulo 1.1 - Conceitos básicos de eletrônica.
Numa definição mais abrangente, podemos dizer que a eletrônica é o ramo da ciência que
estuda o uso de circuitos formados por componentes elétricos e eletrônicos, com o objetivo
principal de representar, armazenar, transmitir ou processar informações além do controle de
processos e servo mecanismos.
Sob esta ótica, também se pode afirmar que os circuitos internos dos computadores, os
Robótica sistemas de telecomunicações, os diversos tipos de sensores e transdutores estão, todos,
com Arduino dentro da área de interesse da eletrônica.
7
Capitulo 1.1 - Conceitos básicos de eletrônica.
Robótica Um voltímetro pode ser utilizado para se medir a diferença de potencial entre dois pontos em
com Arduino um sistema, sendo que usualmente um ponto referencial comum é o terra.
8
Capitulo 1.1 - Conceitos básicos de eletrônica.
UNIDADE 1
Conceitos Básicos
de Eletrônica
9
Capitulo 1.1 - Conceitos básicos de eletrônica.
Corrente Contínua, corrente direta, corrente galvânica ou ainda corrente constante (CC ou DC
do inglês direct current) é o fluxo ordenado de elétrons sempre numa direção.
Esse tipo de corrente é gerado por baterias de automóveis ou de motos (6, 12 ou 24V),
pequenas baterias (geralmente de 9V), pilhas (1,2V e 1,5V), dínamos, células solares e fontes
de alimentação de várias tecnologias, que retificam a corrente alternada para produzir corrente
Robótica contínua.
com Arduino
Normalmente para alimentar aparelhos eletrônicos (entre 1,2V e 24V) e os circuitos digitais de
equipamento de informática (computadores, modems, hubs, etc.).
10
Capitulo 1.1 - Conceitos básicos de eletrônica.
A corrente alternada (CA ou AC - do inglês alternating current), é uma corrente elétrica cujo
sentido varia no tempo, ao contrário da corrente contínua cujo sentido permanece constante ao
longo do tempo. A forma de onda usual em um circuito de potência CA é senoidal por ser a
forma de transmissão de energia mais eficiente.
Entretanto, em certas aplicações, diferentes formas de ondas são utilizadas, tais como
Robótica triangular ou ondas quadradas. Enquanto a fonte de corrente contínua é constituída pelos
com Arduino pólos positivo e negativo, a de corrente alternada é composta por fases (e, muitas vezes, pelo
fio neutro).
UNIDADE 1
Conceitos Básicos
de Eletrônica
11
Capitulo 1.1 - Conceitos básicos de eletrônica.
12
Capitulo 1.1 - Conceitos básicos de eletrônica.
Robótica
com Arduino
13
Capitulo 1.2 – Componentes Físicos
As Entradas ou Inputs, são sensores eletrônicos ou mecânicos que tomam os sinais (em
forma de temperatura, pressão, umidade, contato, luz, movimento, ph, etc.) do mundo físico e
Robótica converte em sinais de corrente ou voltagem. Exemplos de entradas são sensores de gás,
com Arduino temperatura, pulsadores, fotocélulas, potenciômetros, sensores de movimento, e muitos mais.
14
Capitulo 1.2 – Componentes Físicos
UNIDADE 1
Conceitos Básicos
de Eletrônica
15
Capitulo 1.2 – Componentes Físicos
Robótica
com Arduino
Como exemplo imaginamos um aparelho de TV. A entrada é um sinal recebido por uma antena
ou um cabo. Os circuitos integrados do interior do aparelho extraem a informação sobre brilho,
cor e som deste sinal. Os dispositivos de saída são a tela LCD, que converte os sinais
eletrônicos em imagens visíveis, e as caixas de som, que emitem o som.
UNIDADE 1
Conceitos Básicos Outro exemplo pode ser um circuito que controle a temperatura de um ambiente. Um sensor
de Eletrônica de temperatura e um circuito integrado são os responsáveis por converter um sinal de entrada
em um nível de voltagem apropriado. Se a temperatura registrada do ambiente é muito alta,
este circuito enviará a informação a um motor para que este ligue um ventilador que resfriará o
local.
16
Capitulo 1.2 – Componentes Físicos
17
Capitulo 1.2 – Componentes Físicos
UNIDADE 1
Conceitos Básicos
de Eletrônica
18
Capitulo 1.2 – Componentes Físicos
Robótica
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
19
Capitulo 1.2 – Componentes Físicos
20
Capitulo 1.2 – Componentes Físicos
21
Capitulo 1.2 – Componentes Físicos
22
Capitulo 1.2 – Componentes Físicos
O LED (Light Emitting Diode) é um diodo que emite luz quando energizado. Os LED´s
apresentam muitas vantagens sobre as fontes de luz incandescentes como um consumo
menor de energia, maior tempo de vida, menor tamanho, grande durabilidade e confiabilidade.
23
Capitulo 1.2 – Componentes Físicos
Robótica
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
24
Capitulo 1.2 – Componentes Físicos
Um Display de Cristal Líquido, ou LCD (liquid crystal display), é um painel fino usado para
exibir informações por via eletrônica, como texto, imagens e vídeos. Um LCD consiste de um
líquido polarizador da luz, eletricamente controlado, que se encontra comprimido dentro de
celas entre duas lâminas transparentes polarizadoras. Suas principais características são
leveza e portabilidade.
25
Capitulo 1.2 – Componentes Físicos
Um botão, ou pulsador, é utilizado para ativar alguma função. Os botões são em geral ativados
ao serem pulsados. Um botão em um dispositivo eletrônico funciona geralmente como um
interruptor elétrico. No seu interior há dois contatos, e se é um dispositivo normalmente
fechado ou normalmente aberto, ao pulsar o botão, se ativará a função inversa à que se está
realizando no momento.
Robótica
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
26
Capitulo 1.2 – Componentes Físicos
É um interruptor elétrico ativado por um campo magnético, por exemplo com um ímã. Quando
os contatos estão abertos se fecham na presença de um campo magnético. Quando estão
fechados se abrem.
É comumente usado em sensores de portas e janelas de alarmes anti-roubo. O ímã vai preso
à porta e o reed switch ao batente.
Robótica
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
27
Capitulo 1.2 – Componentes Físicos
Um potenciômetro é uma resistência cujo valor é variável. Desta maneira, indiretamente, pode-
se controlar a intensidade de corrente que flui por um circuito se está conectado em paralelo,
ou controlar a voltagem ao conectá-lo em série.
São adequados para uso como elemento de controle em aparelhos eletrônicos. O usuário o
aciona para variar os parâmetros normais de funcionamento. Um exemplo é o botão de volume
Robótica de um rádio.
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
28
Capitulo 1.2 – Componentes Físicos
O LDR (Light Dependant Resistor) é uma resistência cujo valor em ohms varia de acordo com
a luz incidente. Uma fotocélula apresenta um baixo valor de resistência na presença de luz e
um alto valor na sua ausência.
Pode ser encontrada em vários artigos de consumo, como por exemplo em câmaras,
medidores de luz, relógios com rádio, alarmes de segurança ou sistemas de iluminação
Robótica pública.
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
29
Capitulo 1.2 – Componentes Físicos
Um transdutor piezoelétrico é muito prático para detectar vibrações ou golpes. Pode ser usado
como sensor através da leitura da voltagem de saída. Este transdutor eletroacústico também
pode ser usado como um pequeno buzzer para produzir um som ou zumbido contínuo ou
intermitente.
Robótica
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
30
Capitulo 1.2 – Componentes Físicos
O motor de corrente contínua (CC) é uma máquina que converte a energia elétrica em
mecânica provocando um movimento rotatório. Esta máquina de corrente contínua é uma das
mais versáteis.
Seu fácil controle de posição, pausa e velocidade a convertem em uma das melhores opções
em aplicações de controle e automação de processos. Por exemplo, pode-se encontrar na
Robótica tração de carros de brinquedo a pilhas ou nas rodas de um robô.
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
31
Capitulo 1.2 – Componentes Físicos
Robótica
com Arduino
UNIDADE 1
Conceitos Básicos
de Eletrônica
32
Revisão
UNIDADE 1
Conceitos Básicos
de Eletrônica
33
Robótica
com Arduino
Programação do Arduino
UNIDADE 2
• O que é lógica de programação?
• Tipos de dados na computação.
• Ambiente de programação: IDE -
características, funções, compilação
e upload do sketch.
Capitulo 2.1 – O que é lógica de programação?
35
Capitulo 2.1 – O que é lógica de programação.
Por exemplo, para somar se usa a letra A, do inglês add. Realmente escrever em linguagem
assembly é basicamente o mesmo que com a linguagem máquina, mas as letras e as palavras
Robótica são mais fáceis de lembrar e entender que sequências de números binários.
com Arduino
À medida que a complexidade das tarefas
que realizavam os computadores
aumentava, foi necessário desenvolver um
método mais simples de programação
Então foram criadas as linguagens de alto
UNIDADE 2
nível. Enquanto que uma tarefa tão simples
Programação
do Arduino como multiplicar dois números necessita
um conjunto de instruções em linguagem
assembly, em uma linguagem de alto nível
basta com uma.
36
Capitulo 2.1 – O que é lógica de programação?
37
Capitulo 2.1 – O que é lógica de programação.
38
Capitulo 2.1 – O que é lógica de programação?
Se quisermos fazer uma omelete de batatas, precisaremos colocar em prática uma série de
instruções como:
39
Capitulo 2.2 – Tipos de dados na computação
Variáveis e Constantes são os elementos básicos que um programa manipula. Uma variável é
um espaço reservado na memória do computador para armazenar um tipo de dado
determinado. Assim sendo, um programa deve conter declarações que especificam de que tipo
Robótica são as variáveis que ele utilizará e as vezes um valor inicial.
com Arduino
Tipos podem ser por exemplo:
Inteiros;
Reais;
Caracteres;
UNIDADE 2
etc...
Programação
do Arduino
As expressões combinam variáveis e constantes
para calcular novos valores.
40
Capitulo 2.2 – Tipos de dados na computação
Constante
Constante é um determinado valor fixo que não se modifica ao longo do tempo, durante a
execução de um programa. Conforme o seu tipo, a constante é classificada como sendo
numérica, lógica e literal.
Robótica
com Arduino
UNIDADE 2
Programação
do Arduino
41
Capitulo 2.2 – Tipos de dados na computação
Constante
Robótica Embora uma variável possa assumir diferentes valores, ela só pode armazenar um valor a
com Arduino cada instante
UNIDADE 2
Programação
do Arduino
42
Capitulo 2.2 – Tipos de dados na computação
Alfanuméricas Específicas para dados que contenham letras e/ou números. Pode em
determinados momentos conter somente dados numéricos ou somente literais. Se
usado somente para armazenamento de números, não poderá ser utilizada para
UNIDADE 2
Programação
operações matemáticas.
do Arduino
Lógicas Armazenam somente dados lógicos que podem ser Verdadeiro ou Falso.
43
Capitulo 2.2 – Tipos de dados na computação
Declaração de Variáveis
As variáveis só podem armazenar valores de um mesmo tipo, de maneira que também são
classificadas como sendo numéricas, lógicas e literais.
Robótica
com Arduino
UNIDADE 2
Programação
do Arduino
44
Capitulo 2.3 – Ambiente de Programação
O software para programação do ARDUINO é uma IDE que permite a criação de Sketches
para a placa ARDUINO. A linguagem de programação é modelada a partir da linguagem
processing (www.processing.org). Quando pressionado o botão upload da IDE, o código
escrito é traduzido para a linguagem C e é transmitido para o compilador avr-gcc, que realiza
a tradução dos comandos para uma linguagem que pode ser compreendida pelo
microcontrolador.
Robótica
com Arduino O Ciclo de programação do ARDUINO pode ser dividido da seguinte maneira:
45
Capitulo 2.3 – Ambiente de Programação
A partir do momento que o software é gravado no ARDUINO não precisa mais do computador:
o ARDUINO funciona como um computador independente e conseguirá sozinho executar o
sketch criado, desde que seja ligado a uma fonte de energia.
Quando se abre o IDE do ARDUINO, será exibido algo semelhante à figura ao lado:
Robótica
OBS.: Caso o sistema operacional utilizado
com Arduino seja diferente do Windows, pode haver
algumas diferenças, mas o IDE é
basicamente o mesmo.
UNIDADE 2
Programação
do Arduino
46
Capitulo 2.3 – Ambiente de Programação
O IDE é dividido em três partes: A Toolbar no topo, o código ou a Sketch Window no centro, e
a janela de mensagens na base, conforme é exibido na figura abaixo:
Sob a Toolbar há uma guia, ou um conjunto de guias, com o nome do arquivo do sketch.
Também há um botão posicionado no lado direito que habilita o serial monitor. Ao longo do
topo há uma barra de menus, com os itens File, Edit, Sketch, Tools e Help.
Robótica
com Arduino Os botões na Toolbar fornecem acesso
conveniente às funções mais utilizadas
dentro desses menus.
UNIDADE 2
Programação
do Arduino
47
Capitulo 2.4 – Estrutura de Programação
Função é um bloco de código que possui um nome e procedimentos que são executados
quando a mesma é chamada. As funções setup() e loop() foram explicados anteriormente e as
demais funções do compilador serão apresentadas mais a frente neste capítulo.
Funções customizadas podem ser escritas para simplificar em tarefas repetitivas reduzindo
repetições na programação. Funções são declaradas primeiramente definindo o seu tipo, que
Robótica dirá qual o tipo de dado retornado pela função.
com Arduino
Depois de definido o tipo de retorno deve dar um nome a função e definir entre parêntese se
algum parâmetro deve ser passado para a função, conforme exemplo de código a seguir:
UNIDADE 2
Programação
tipo NomedaFunção ( parâmetros )
do Arduino {
Comandos;
}
49
Capitulo 2.5 – Função
A seguinte função do tipo inteiro chamada delayVal() é usada para atribuir um valor no
programa através da leitura de um potenciômetro.
Dentro do bloco da função primeiramente é declarado a variável local do tipo inteira chamada
v, depois é atribuído o valor lido do potenciômetro pela função analogRead(pot) que retorna um
valor entre 0 e 1023, depois este valor é divido por 4 para dar um resultado final entre 0 e 255.
Robótica Finalmente é retornado este valor para o programa principal.
com Arduino
UNIDADE 2
Programação
do Arduino
50
Capitulo 2.5 – Função
{ } – as chaves são utilizadas para delimitar os blocos de funções, dentro das chaves se
encontram os procedimentos da função:
Robótica
com Arduino
//- qualquer caractere despois das duas barras é ignorado pelo compilador, utilizado para
comentários de apenas uma única linha.
51
Capitulo 2.6 – Constantes
Existem duas constantes para determinar valores booleanos na linguagem ARDUINO: true e
false.
Robótica
com Arduino False - Define um valor falso, ou seja, o valor booleano 0.
True - Define valores verdadeiros, ou seja, o valor booleano 1.
Quando se trabalha com pinos de entrada ou saída digital apenas dois valores são possíveis:
UNIDADE 2
Programação
do Arduino HIGH (alto, 1, 5 Volts) e LOW (baixo, 0, 0 Volts).
52
Capitulo 2.7 – Definindo nível lógico dos pinos
Pinos digitais podem ser usados como INPUT_PULLUP INPUT, ou OUTPUT. Mudando um
pino com pinMode () muda o comportamento elétrico do pino. Para configura um pino como
entrada utiliza a constante INPUT com a função pinMode().
Robótica Pode-se também colocar o pino como entrada e habilitar o resistor interno de o pull-up, dessa
com Arduino forma o pino passa a ser entrada e tem nível lógico 1 quando estiver aberto. Utilizase a
constante INPUT_PULLUP na função pinMode().
53
Resumo
UNIDADE 2
Programação
do Arduino
54
Robótica
com Arduino
O que é Arduino?
UNIDADE 3
• O que é Arduino?
• Hardware x Software.
• Modelos de placas Arduino.
• Plataforma arduino (uno e nano).
• Conectando o arduino ao computador.
Capitulo 3.1 – O que é Arduino?
Assim o nome do Arduino (o microcontrolador) é uma homenagem ao Arduino (o bar) que por
sua vez era uma homenagem ao outro Arduino (o nobre).
UNIDADE 3
O que é
Arduino?
56
Capitulo 3.1 – O que é Arduino?
O projeto Arduino foi desenvolvido por Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca
Martino e David Mellis. Está baseado em uma plataforma de código aberta chamada Wiring,
criada pelo artista colombiano Hernando Barragán durante uma tese de um master no
Interaction Design Institute Ivrea. Por outro lado, Wiring está baseado em Processing e seu
entorno de desenvolvimento integrado foi criado por Casey Reas e Ben Fry.
Robótica Em uma linguagem coloquial podemos dizer que o Arduino é uma plataforma de eletrônica
com Arduino aberta para a criação de protótipos baseada em software e hardware livres, flexíveis e fáceis
de usar. Foi desenvolvida para artistas, designers, hobistas e qualquer pessoa interessada em
criar objetos ou ambientes interativos.
UNIDADE 3
O que é
Arduino?
57
Capitulo 3.1 – O que é Arduino?
O Arduino pode adquirir informação do ambiente através de seus pinos de entrada, para isso
uma completa gama de sensores pode ser usada. Por outro lado, o Arduino pode atuar no
ambiente controlando luzes, motores ou outros atuadores.
Os campos de atuação para o controle de sistemas são imensos, podendo ter aplicações na
área de impressão 3D, robótica, engenharia de transportes, engenharia agronômica, musical,
Robótica moda e tantas outras.
com Arduino
O microcontrolador da placa Arduino é programado mediante a linguagem de programação
Arduino, baseada em Wiring, e o ambiente de desenvolvimento (IDE) está baseado em
Processing.
UNIDADE 3
O que é
Arduino?
58
Capitulo 3.1 – O que é Arduino?
Os projetos desenvolvidos com Arduino podem ser executados mesmo sem a necessidade de
estar conectados a um computador, apesar de que também podem ser feitos comunicando-se
com diferentes tipos de software (como Flash, Processing ou MaxMSP).
UNIDADE 3
O que é
Arduino?
59
Capitulo 3.1 – O que é Arduino?
O projeto foi iniciado em 2001 por Casey Reas e Ben Fry, ambos ex-membros do Grupo de
Computação do MIT Media Lab. Um dos objetivos do Processing é atuar como uma ferramenta
Robótica para não-programadores iniciados com a programação, através da satisfação imediata com um
com Arduino retorno visual.
UNIDADE 3
O que é
Arduino?
60
Capitulo 3.1 – O que é Arduino?
61
Capitulo 3.2 - Hardware x Software.
Robótica Existe ainda alguns módulos denominados como shield, utilizados para expandir a
com Arduino funcionalidade das placas Arduino.
UNIDADE 3
O que é
Arduino?
62
Capitulo 3.2 - Hardware x Software.
Robótica
com Arduino
UNIDADE 3
O que é
Arduino?
64
Capitulo 3.2 - Hardware x Software.
Robótica
com Arduino
UNIDADE 3
O que é
Arduino?
65
Capitulo 3.2 - Hardware x Software.
O Software para programação do ARDUINO é uma IDE que permite a criação de Sketches
para a placa ARDUINO. A linguagem de programação é modelada a partir da linguagem
processing (www.processing.org). Quando pressionado o botão upload da IDE, o código
escrito é traduzido para a linguagem C e é transmitido para o compilador avr-gcc, que realiza a
tradução dos comandos para uma linguagem que pode ser compreendida pelo
microcontrolador.
Robótica
com Arduino O Ciclo de programação do ARDUINO pode ser dividido da seguinte maneira:
66
Capitulo 3.2 - Hardware x Software.
A partir do momento que o software é gravado no ARDUINO não precisa mais do computador:
o ARDUINO funciona como um computador independente e conseguirá sozinho executar o
sketch criado, desde que seja ligado a uma fonte de energia.
UNIDADE 3
O que é
Arduino?
67
Capitulo 3.2 - Hardware x Software.
68
Capitulo 3.2 - Hardware x Software.
69
Capitulo 3.3 – Conectando Arduino ao computador.
Para que o Arduino possa executar algumas tarefas, se faz necessário que o programa
desenvolvido na plataforma IDE, seja enviado ao controlador da placa, sendo necessário para
isso que alguns procedimentos sejam feitos além é claro do sketch prontamente compilado.
Quanto a componentes físicos é necessário somente um cabo USB, que será o meio de
comunicação entre o computador e o a Arduino por meio de suas portas seriais.
Robótica
com Arduino
UNIDADE 3
O que é
Arduino?
70
Capitulo 3.3 – Conectando Arduino ao computador.
Na plataforma de programação IDE devemos informar qual modelo de placa Arduino pretende-
se comunicar com o computador. Isso pode ser feito através do menu TOOLS e utilizando a
ferramenta BOARD.
71
Capitulo 3.3 – Conectando Arduino ao computador.
O próximo passo é escolher a porta serial do computador ao qual o Arduino está conectado.
No exemplo abaixo temos uma porta seria COM8, selecionada para comunicação entre o PC e
Arduino.
Robótica
com Arduino
UNIDADE 3
O que é
Arduino?
72
Capitulo 3.3 – Conectando Arduino ao computador.
Para enviar um programa ( sketch ) ao Arduino utiliza-se o ícone referente a função carregar
no ambiente de desenvolvimento IDE. Espere alguns segundos e observe que os leds de
status RX e TX na placa piscarão.
Robótica
com Arduino
UNIDADE 3
O que é
Arduino?
73
Revisão
UNIDADE 3
O que é
Arduino?
74
Referências Bibliográficas
• Multilógica-shop (multilogica-shop.com)
• ARDUINO - http://arduino.cc/
• www.facebook.com/fbseletronica
• Lógica de Programação - Unicamp - Centro de Computação
Robótica
com Arduino
Referências
Bibliográficas
75
Firjan – Federação das Indústrias do Estado do Rio de Janeiro
Presidente
Eduardo Eugenio Gouvêa Vieira
Firjan SENAI
Diretor Regional
Robótica Alexandre dos Reis
com Arduino Elaboração
Gerente Geral de Educação Sérgio Pereira
Regina Malta
Tratamento Pedagógico
Gerente de Educação Profissional Marina Lacerda
Edson Melo
Design Gráfico | Diagramação | Ilustração
Ficha Técnica Coordenador Setorial de Desenvolvimento em Educação Luiz Felipe da Silva Ferreira
Profissional
Roberto da Cunha Setembro / 2021
76