Placa Arduino

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 26

GUIA DE FORMAÇÃO BÁSICA

Prof. Ms. Antonio de Lisboa Coutinho Junior

2023.2
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

Sumário
1. Introdução ao Arduino .......................................................................................................... 3
2. Estrutura do Arduino ............................................................................................................ 5
3. Sensores, Atuadores e Módulos ............................................................................................. 6
4. Diferença entre Emulador e Simulador Simulação:................................................................... 7
5. A plataforma TINKERCAD .................................................................................................. 8
6. Os componentes e as áreas da Física..................................................................................... 12
7. A Protoboard ..................................................................................................................... 13
8. A programação .................................................................................................................. 15
9. Duplicar, Editar e Mover um circuito ................................................................................... 17
10. Rótulos para comentários .................................................................................................. 18
11. Os indicadores: LOW e HIGH .......................................................................................... 19
12. Criação de variáveis ......................................................................................................... 20
13. Monitores de dados .......................................................................................................... 22
14. Acionando um emulador ................................................................................................... 23
15. Estrutura de um programa ou sketch Arduino....................................................................... 24
16. Processo de compilação do código ..................................................................................... 25
17. Referências...................................................................................................................... 26

2
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

1. Introdução ao Arduino

Arduino é uma plataforma open-hardware de hardware e


open-source de software para prototipagem eletrônica.

A placa pode tanto receber informações do ambiente ao seu redor, através de uma variedade de
captadores eletrônicos constituídos por sensores (iluminação, temperatura, umidade, etc.),
quanto enviar comandos para dispositivos atuadores (led, buzina, motores, garras controláveis,
etc.), bem como estabelecer comunicação com módulos de transmissão e/ou recepção, via Wifi,
Bluetooth, rádio onda ou cabos de rede.

O microcontrolador presente na placa é programado usando a linguagem de programação C


e C++.

Fonte: https://medium.com/@automacaoem5minutos/esp8266-nodemcu-o-substituto-do-
arduino-em-soluções-iot-25218767965f

Os projetos podem ser standalone (somente a placa) ou conectados (USB, WIFI, Bluetooth,
etc.) com um software executado em um computador, tablet, smartphone ou outro Arduino.

O Arduino é diferente das outras plataformas devido aos seguintes fatores:

• É um ambiente multiplataforma, podendo ser executado em Windows, Macintosh ou


Linux.
• Tem por base um ambiente de programação simplificado e minimalista.
• Pode ser programado utilizando um cabo de comunicação USB, onde geralmente não
é necessária uma fonte de alimentação.
• Possui hardware e software de arquitetura e código abertos, facilitando aos usuários
montarem seus próprios projetos eletroprogramáveis, sem precisar de custos
excessivos.
• Hardware de baixo custo.
• Comunidade de usuários desenvolvedores e pesquisadores com grande ativa.
• Ambiente educacional ideal para iniciantes que desejam resultados rápidos.
• Útil para não programadores.

3
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

A plataforma é bastante utilizada em projetos de computação, engenharia, eletrônica e robótica,


bem como para o desenvolvimento de equipamentos meteorológicos, químicos, biológicos e
aplicações no ensino de Física e Ciências.

Projetos que envolvem o desenvolvimento de códigos e a confecção de equipamentos


laboratoriais de Física são amplamente criados com o suporte do ambiente Arduino.

Portanto seus recursos abrangem uma diversidade de áreas, como por exemplo: Computação
Física, Design Eletrônico, Computação Assistida, Arquitetura, Computação Vestível,
Telemedicina e Educação. Sendo sua aplicabilidade generalizada, podemos desenvolver
projetos e testá-los com o mínimo ou nenhum conhecimento em programação.

Fonte: www.arduino.cc

Assim sendo, projeto em ciências de código e arquitetura aberta são incluídos


na abordagem Open Science (Ciência Aberta). O tema não é um conceito
novo em si, embora o acordo sobre este termo e seu uso generalizado seja
relativamente recente. Consiste em integrar ou empregar soluções
computacionais livres (equipamentos, programas, Objetos de
Aprendizagem, etc.) para o ensino e a aprendizagem em Ciências e suas áreas
afins.

Muitos outros termos foram usados, e ainda são usados, para se referir à transformação da
prática científica, tais como: Science 2.0 (Ciência 2.0), e- Science (e-Ciência), etc. A própria
fundação Arduino possui uma linha de kits voltados para Física, o ARDUINO SCIENCE KIT
PHYSICS LAB.

Fonte: https://blog.arduino.cc/2019/11/21/the-science-kit-is-now-available-in-italian-and-
spanish-editions/

4
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

2. Estrutura do Arduino

A placa de UNO R3, possui um conjunto de portas especificadas para cada componente ou
sensor que será conectado. Abaixo temos um resumo das principais portas.

• Portas digitais recebem sinais digitais, isto é, 1 (um) ou 0 (zero). Constituída por 14
portas.
• Portas analógicas recebem sinais escalares, por exemplo: distância de um objeto, a
luminosidade de um ambiente, o índice de acidez e de uma solução, etc. Constituída
por 6 portas.
• Porta de alimentação: onde podemos conectar nossa placa a uma fonte de alimentação
comum de até 12 V.
• Porta USB: porta de comunicação e transmissão do código para o microcontrolador.

5
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

3. Sensores, Atuadores e Módulos

Para o desenvolvimento de experimentos é importante compreender a diferença entre sensores,


atuadores e módulos.

Sensores são dispositivos que captam ou coletam informações, e transmitem, para a placa em
forma de sinais elétricos, convertidos posteriormente em bits, são exemplos:

Sensor de temperatura Sensor de luminosidade Sensor Magnético

Atuadores são dispositivos que emitem informações. São componentes eletrônicos que podem
ser controlados ou manipulados pelo desenvolvedor. Por exemplo:

Buzina Led Motor

Módulos são constituídos por Circuitos Integrados (CI), pequenas placas conectadas tanto
por sensores como por atuadores. Os módulos possuem algumas funcionalidades para ajustes
ou equalização dos dados, por exemplo.

Módulo ultrassônico Módulo de cor Módulo de som Módulo display 7


segmentos

Existem ainda os módulos de transmissão, por exemplo: Módulo Bluetooth e Módulo Wifi.

Módulo Bluetooth Módulo Wifi

6
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

4. Diferença entre Emulador e Simulador Simulação:

Simulação:

Um ‘simulation’ é um sistema (software, programa, aplicativo) que se comporta semelhante a


outro aparato (instrumento, equipamento, ferramenta, etc.), mas é implementado de uma
maneira totalmente diferente.

Fornece o comportamento básico de um sistema, mas pode não necessariamente aderir a todas
as regras do sistema que está sendo simulado. O simulador dar uma ideia de como algo
funciona, um exemplo são os simuladores do site PHET, Vascak, oPhysics, etc.

Simulador de Pêndulo
Fonte: http://fisicanimada.blogspot.com/2008/12/fsica-do-pndulo.html

Emulador:

Um ‘emulation’ é um sistema (software, programa, aplicativo) que se comporta exatamente


como outro aparato (instrumento, equipamento, ferramenta, etc.), e segue todas as regras do
sistema que está sendo emulado.

Efetivamente é uma replicação completa de outro sistema, sendo compatível com as entradas
e saídas do sistema emulado, mas operando em um ambiente diferente do ambiente do sistema
original emulado. As regras são fixas e não podem ser alteradas ou o sistema falha.

Fonte: https://www.oficinadanet.com.br/games/32706-o-que-e-e-como-funciona-um-
emulador-de-jogos

7
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

5. A plataforma TINKERCAD

O ambiente Tinkercad, constitui-se de um emulador virtual, com praticamente todas as


características e funcionalidades da placa Arduino, assim como do seu ambiente de programa.
No Tinkercad os projetos modelados podem ser privados ou públicos, cabendo somente ao
desenvolvedor disponibilizar suas criações.

O Tinkercad possui integração com o Google Classroom, ambiente virtual de aprendizagem


disponibilizado pela Google.

Para usufruir da plataforma é necessário acessa o endereço: https://www.tinkercad.com, e


realizar um cadastro prévio.

Seleciona-se uma conta e o cadastro é efetivado.

Uma conta de usuário será solicitada ou a conexão com uma conta de e-mail válida.

8
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

Com o cadastro do usuário efetuado a tela inicial abaixo é apresentada.

Para criar um circuito, selecione a opção: Projetos em seguida clique no botão:

O usuário pode ainda criar um repositório dos circuitos selecionando a opção: Criar coleção:
. Separando os projetos conforme tipos e modelos.

Ao ser criado um circuito a tela abaixo será apresentada

9
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

Abaixo do título do circuito temos o menu utilitários do ambiente, constituído por uma barra
com as seguintes funcionalidades:

• Copiar (1).
• Colar (2).
• Apagar e/ou Deletar (3).
• ‘Fazer’ uma ação (4).
• ‘Desfazer’ uma ação (5).
• Inserir um comentário (6).
• Exibir/ocultar um componente (7).
• Cor do fio (8)
• Tipo de garra do fio (9).
• Girar componente (10).
• Alteração direção do componente (11).

Para ajustar um componente no centro da tela de modelagem selecione a opção: .

Dentro da tela de emulador, do lado direto, tempos à aba listagem de componentes. Dividida
em Componentes e Disparadores.

Na opção Arduino (na aba: Componentes, Disparadores) encontram-se diversos modelos de


projetos já modelados. Nestes podemos compreender, de forma simplificada, o funcionamento
das conexões, sensores e demais componentes.

Acima da listagem de componentes temos quatro botões de controle. Quando um circuito é


criado será apresentada a tela do emulador abaixo com os itens:

• Área de Modelagem (1),


• Botão para área de Programação (2),
• Iniciar simulação (3),
• Enviar para (exportação de imagem, arquivo de projeto, etc.) (4)
• Componentes eletrônicos (5).

10
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

Na área central temos o ambiente de montagem, modelagem e conectorização dos componentes


eletrônicos.

Para modelar um projeto, basta selecionar um componente e clicar na área de modelagem.

11
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

6. Os componentes e as áreas da Física

Na plataforma Tinkercad, pode-se classificar os seguintes componente nas respectivas áreas


da Física. A categorização abaixo não é condicionante, sendo possível um mesmo componente
pertencer a duas ou mais áreas.

Área Componentes
Mecânica

- - -
Micro servo, Motor de passo, Sensor de força, Motor corrente continua
Termologia

Sensor de temperatura
Ondulatória
-
Sensor de presença, Sensor ultrassônico
Acústica

Buzina
Óptica

- - -
Led, Sensor de luminosidade, Led RGB, Fotodiodo
Eletricidade

- - - -
Capacitor, Potenciômetro, Resistor, Indutor, Resistor flexível

12
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

7. A Protoboard

Componente fundamental para as montagens eletrônicas e prototipagem dos projetos, a


protoboard (também denominada: breadboard) ou matriz de contados é de utilização simples
e diversificada, contudo é necessário compreender a organização de suas trilhas e faixas.

Na imagem indica-se os elementos pertencentes a matriz de contatos.

A protoboard didaticamente pode ser dividida em 4 quadrantes, para os usuários melhor


compreenderem a disposição dos componentes conectados.

Uma protoboard possui 4 conjuntos de trilhas horizontais para alimentação. Geralmente


indicadas de azul ou preto, esta trilha é denominada de Neutro, Terra, GND ou Ground. A outra
indicada de vermelho é utilizada para energia ou voltagem.

• Os furos são utilizados para conectar componentes e cabos (jumpers).


• A área de trabalho é o espaço onde realizamos a montagem do projeto.
• As linhas azuis indicam a forma como são conectadas as trilhas verticais.

13
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

O Canal Central separa os Quadrantes 1 e 2 dos Quadrantes 3 e 4. Não existindo


comunicação entre os mesmos.

Em uma protoboard as trilhas de alimentação não estão interligadas. O projetista, caso utilize
uma protoboard maior deve conecta as trilhas de alimentação horizontais. Abaixo é
apresentada uma sugestão de conectividade

14
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

8. A programação

Para programar no Tinkercad, selecione a opção: . Uma tela será exibida apresentando
os seis conjuntos de comandos que o emulador possui em formato de Blocos.

O número de instruções existentes na opção de Blocos é limitado a alguns sensores e


dispositivos.

Ainda no ambiente de programação podemos optar por escolher entre o código em Blocos,
Blocos com Texto ou somente código em Texto.

Na opção TEXTO existem outras instruções que permitem um melhor controle dos
componentes e dos dispositivos. Assim como inserir comandos nativos da linguagem de
programação da placa Arduino.

15
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

Observação:

Caso seja alterado de um código em bloco para um código em texto, a seguinte mensagem
será apresentada. Seu código será pedido e não haverá forma de recuperá-lo. O mesmo irá
ocorrer caso seja trocado do código em texto para o código em bloco.

Todos os códigos implementados em um projeto serão armazenados junto à modelagem


eletrônica.

Podemos encontrar uma listagem com todas as instruções da plataforma Arduino no endereço:

https://www.arduino.cc/reference/pt/

Quando um projeto for salvo, será criada uma miniatura na tela inicial. Para retornar a tela
inicial, sempre que necessário, basta clicar na logo do Tinkercad, no canto superior esquerdo.

Observação:

O ambiente salva automaticamente todo projeto iniciado com periodicidade continua. O


projetista não controla o tempo de salvamento.

16
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

9. Duplicar, Editar e Mover um circuito

Para Editar um projeto bastar clicar no ícone em azul .

Para duplicar um circuito, clique no ícone da engrenagem e selecionar a opção: Duplicar.

Para mover um circuito, clique no ícone da engrenagem e selecionar a opção: Adicionar


à coleção.

17
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

10. Rótulos para comentários

Documentar cada passo ou etapa de um algoritmo no emulador é de fundamental impotência.


Inserir comentários que informem o que cada instrução irá executar, permite compreender seu
funcionamento e sua lógica. No código podemos comentar em formato de bloco ou somente
uma frase.

Frase // Blink: acende um LED por um segundo, depois apaga por um segundo.
Bloco /*
Blink
Acende um LED por um segundo, depois apaga por um segundo
*/

Detalhar um programa ou um projeto com comentários é considerado uma ótima prática,


assim como permite que o código ou a modelagem sejam revisados facilmente. Na área de
modelagem utilizamos os ícones: , da barra de ferramentas.

18
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

11. Os indicadores: LOW e HIGH

Quando estabelecemos um valor ALTO significa uma situação de HIGH; quando escolhemos
BAIXO, significa LOW¸ tanto para informações que estão sendo inseridas/captadas (Input),
quando aquelas que estão sendo transmitidas (Output).

Um botão acionado significa que uma corrente ou uma informação será transmitida, seu estado
será considerado HIGH. O mesmo pode ocorrer quando um LED for acionado através de uma
instrução.

Fonte: https://www.deviceplus.com/arduino/the-basics-of-arduino-control-led-lighting-with-
digital-output/

19
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

12. Criação de variáveis

As denominadas variáveis são ‘espaços’ ou ‘caixas’ que servem para guardar temporariamente
valores ou dados. Seu uso é constante em praticamente todos os projetos.

Fonte: https://profpanda.com.br/php/programacao-express-variaveis-e-constantes/

As variáveis podem ser de diversos tipos, contudo na ampla maioria dos programas
desenvolvidos serão trabalhadas as seguintes.

int float char boolean

int contador = 0;

float sensorCalbrate = 1.117;

char myChar = 'A';

boolean running = false;

Por exemplo: se desejamos guardar os valores da temperatura de dois sensores, e depois


calcular sua média, serão necessárias três variáveis:

• ValorTemp1,
• ValorTemp2,
• ValorTempMedia.

Caso, ainda no código, desejarmos identificar a maior e a menor temperatura. Teremos que
criar as seguintes variáveis: ValorTempMax e ValorTempMin, respectivamente.

Observação:

O nome de uma variável fica a critério do seu projetista, contudo é considerada uma boa prática
nomes que possam identificar facilmente a finalidade daquela nova instrução, por exemplo:

20
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

• Sensor ultrassônico: ValorUltrasom.


• Potenciômetro: ValorPonten.
• Ângulo de inclinação: ValorInclinar.

Assim como, o formato do nome das variáveis e constantes, devem seguir o formato
denominado case styles: Camel Case, Pascal Case, Snake Case, etc.

21
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

13. Monitores de dados

O emulador possui dois tipos de monitores de dados: Serial Monitor e o Serial Plotter,
semelhante a plataforma Arduino.

Serial Monitor Serial Plotter

O Serial Monitor irá apresentar valores numéricos de Entrada, Saída ou das Variáveis
criadas no projeto.

A visualização do resultado de cálculos também pode ser exibida no Serial Monitor, bem
como frases e/ou gatilhos indicadores de qualquer ação implementada no código.

Por exemplo: utilizando um sensor de luminosidade, quando a valor ultrapassar determinada


regra, isto é, uma condição pré-definida, aparecerá no Monitor Serial uma frase informando
que foi atingido certo limite.

Outro monitor disponível no emulador é o Monitor Plotter.

Acionando o botão Gráfico , no canto direito inferior, é exibido dois eixos de coordenadas,
semelhante a um plano cartesiano.

Os valores coletados em um experimento serão exibidos em forma gráfica.

Observação:

O emulador Arduino não dispõe de recursos ou funcionalidades que armazenem os dados


coletados tanto no Serial Monitor, quanto no Serial Plotter.

22
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

14. Acionando um emulador

Ao concluir um projeto podemos testar a modelagem e o código, ligando ou desligando o botão


de emulação na barra de programação.

• Emulador desligado: .
• Emulador ligado: .

23
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

15. Estrutura de um programa ou sketch Arduino

Todo programa desenvolvido possui uma organização simplificada, dividida geralmente em


cinco “regiões”. Cada um desses segmentos possui uma tarefa específica. São elas conforme
imagem abaixo:

• Região para inclusão das bibliotecas (no início do programa, utiliza o caractere ‘#’
como indicador).
• Espaço para declaração das variáveis e constantes globais.
• Função Setup (responsável por ‘carregar’ o endereçamento das portas utilizadas pelo
Arduino no projeto).
• Função Loop, área no qual escrevemos o programa que será executado infinitamente.

Há ainda uma quinta área, denominada de FUNÇÃO, na qual o programador pode criar novos
códigos quando for necessário. Sua anatomia e operacionalidade é semelhante as funções
Setup e Loop.

#include <Client.h>
#include <Ethernet.h>
#include <Server.h>

int i = 0;
float x = 5.67;

void setup() {
//comandos ou instruções A
//comandos ou instruções B
}

void loop() {
//comandos ou instruções C
//comandos ou instruções D
}

24
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

16. Processo de compilação do código

Fonte: https://www.mikroe.com/ebooks/pic-microcontrollers-programming-in-
c/programming-languages

Fonte: https://www.mikroe.com/ebooks/pic-microcontrollers-programming-in-
basic/programming-languages

25
Instituto Federal de Educação, Ciência e Tecnologia do Ceará
Laboratório de Habilidades Computacionais e Cultura Maker (LHAMA)

17. Referências

• Oficial Arduino:
o http://www.arduino.cc
o www.arduino.cc/education/science-journal
• Maker hero: www.makerhero.com
• Blog Maker hero:
o www.makerhero.com/blog
o www.makerhero.com/blog/o-que-e-arduino
o www.makerhero.com/blog/entenda-os-tipos-de-variaveis-no-arduino
• Como Fazer as Coisas: www.comofazerascoisas.com.br
• Fritzing: http://fritzing.org
• Laboratório de Garagem: http://labdegaragem.com
• Arduino & Cia: http://www.arduinoecia.com.br
• Loja GBK Robotics: http://gbkrobotics.com.br
• Emulador de Android: Instalação, Aceleração e Alternativas:
o www.androidpro.com.br/blog/desenvolvimento-android/emulador-de-android
• Wokwi: https://wokwi.com
• Open Science Unesco: https://www.unesco.org/en/open-science
• The Basics of Arduino: Reading Switch States:
o https://www.deviceplus.com/arduino/the-basics-of-arduino-reading-switch-
states
• Portas analógicas e digitais:
o https://www.luisllamas.es/entradas-analogicas-en-arduino
o https://www.luisllamas.es/entradas-digitales-en-arduino
• PWM:
o https://www.geeksforgeeks.org/analog-write-and-working-of-pwm-in-arduino
o https://flaviobabos.com.br/pwm-arduino
• Creative Commons:
o https://creativecommons.org/about/cclicenses/

26

Você também pode gostar