Você está na página 1de 35

Arduino Básico

Sumário
PARTE I
1. Sistemas Embarcados
2. Introdução ao Arduino
3. Interfaceamento Digital
4. Medição de Grandeza Analógica
PARTE II
5. Interfaceamento Digital
6. Comunicação Serial
7. Display: LCD
8. Controlando a Velocidade de um Motor CC
Powered by Wesley Oliveira Maia
Softwares
1. IDE Arduino
http://arduino.cc/
2. Fritzing
http://fritzing.org/home/
3. UnoArduSimV1.0.1
http://sheepdogguides.com/arduino/aht9simsimm.htm
4. Proteus
http://www.labcenter.com

Powered by Wesley Oliveira Maia


1. Sistemas Embarcados

“O mercado de microcontroladores está em franca expansão e


a cada mês surgem novos chips e famílias de
microcontroladores. Estima-se que em poucos anos uma
pessoa normal deverá interagir com pelo menos 300
microcontroladores no seu dia-dia” (PEREIRA, 2005).

Powered by Wesley Oliveira Maia


... Sistemas Embarcados

Powered by Wesley Oliveira Maia


... Sistemas Embarcados

“Um sistema embutido é um sistema cuja função principal não


é computacional, mas a qual é controlada por um computador
embutido neste sistema” (Tim Wilmshurst, 2001).

Powered by Wesley Oliveira Maia


... Sistemas Embarcados

Hardware Firmware
#include "io430.h"
void atraso(void);

int main( void )


{
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= 0xFF;
P1OUT = 0x00;
while (1)
{
P1OUT = 0x01; atraso();
P1OUT = 0x00; atraso();
}
}

void atraso(void)
{
unsigned int temp;
temp = 40000;
do temp--;while(temp);
}
... Sistemas Embarcados

Sinais Analógicos Sinais Digitais

Tempo Tempo
2. Introdução ao Arduino

▪ O Arduino faz parte do conceito de hardware e software livre e está


aberto para uso e contribuição de toda a sociedade.

▪ O conceito Arduino surgiu na Itália em 2005 com o objetivo de criar um


dispositivo para controlar projetos/protótipos construídos de uma
forma menos dispendiosa do que outros sistemas disponíveis no
mercado.

▪ Arduino é uma plataforma de computação baseada em uma simples


placa de Entrada/Saída (Digital/Analógica) microcontrolada e
desenvolvida sobre uma biblioteca que simplifica a escrita da
programação em C/C++.
Powered by Wesley Oliveira Maia
… Obtenção da Massa de Dados

Especificações

▪ Microcontrolador ATmega328

▪ Tensão de Operação 5V

▪ Tensão de entrada (recomendada) 7-12V

▪ Tensão de entrada (limites) 6-20V

▪ Pinos I/O Digitais 14 (das quais 6 podem ser utilizadas como saídas PWM)

▪ Entradas Analógicas 6

▪ Corrente CC por pinos I/O 40 mA

▪ Corrente CC por pinos 3.3V 50 mA

▪ Memória Flash 32 kB das quais 0.5 kB usadas para o bootloader

▪ SRAM 2 KB

▪ EEPROM 1 KB

▪ Clock 16 MHz
Powered by Wesley Oliveira Maia
... Introdução ao Arduino

Powered by Wesley Oliveira Maia


... Introdução ao Arduino

Powered by Wesley Oliveira Maia


3. Interfaceamento Digital

▪ As portas de entrada/saída estão entre as partes mais importantes de


um microcontrolador, ao mesmo tempo que são considerados os mais
simples dentre os periféricos disponíveis.

▪ Permitem o interfaceamento com dispositivos de entrada/saída, seja


controlando carga ou lendo informações de sensores, teclas, etc.

▪ Devido a limitação da capacidade de corrente, as vezes é preciso o uso


de drivers externos ou transistores para elevar a corrente do sistema.

Powered by Wesley Oliveira Maia


... Interfaceamento Digital

Prática 1: Criar um firmware para controlar um hardware composto de


um Arduino Uno R3 e um LED. Durante a execução do sketch, este LED
deverá acender de forma alternada.

Qual material necessário para esta montagem?


▪Kit Arduino
▪Jumper (2 un)
▪Led (1 un)
▪Resistor ( 390Ω)

Powered by Wesley Oliveira Maia


... Interfaceamento Digital

Powered by Wesley Oliveira Maia


... Interfaceamento Digital
4. Medição de Grandeza Analógica

• No microcontrolador, o conversor analógico-digital (ADC) é um


periférico que converte grandezas analógicas em digitais (zeros e uns).

Powered by Wesley Oliveira Maia


... Medição de Grandeza Analógica

Powered by Wesley Oliveira Maia


... Medição de Grandeza Analógica

Powered by Wesley Oliveira Maia


... Medição de Grandeza Analógica

Prática 2: Criar um firmware para controlar um hardware composto de


um Arduino Uno R3, um potenciômetro e um LED. Caso a tensão de
entrada do canal ADC seja maior que Vcc/2, o LED deverá ser ligado. Caso
contrário (tensão menor que Vcc/2), o LED deverá ser desligado.

Qual material necessário para esta montagem?


▪Kit Arduino
▪Jumper (7 un)
▪Led (1 un)
▪Resistor ( 390Ω)
▪Potenciômetro(1kΩ)

Powered by Wesley Oliveira Maia


... Medição de Grandeza Analógica

Powered by Wesley Oliveira Maia


5. Comunicação Serial

▪ A porta serial permite a


comunicação entre o kit Arduino e
outros dispositivos (ex.: display LCD,
computador, etc.).
▪ Todas as placas Arduino tem pelo
menos uma porta serial (também
conhecida como UART ou USART).
Ele se comunica nos pinos digitais 0
(RX) e 1 (TX), bem como com o
computador via USB. Assim, se você TX
usar essas funções, você não pode RX
usar os pinos 0 e 1 para as funções
de entrada ou saída digital.

Powered by Wesley Oliveira Maia


... Comunicação Serial

• É possível usar o Serial Monitor presente no ambiente de


desenvolvimento do Arduino para se comunicar com uma placa
Arduino.

Powered by Wesley Oliveira Maia


... Comunicação Serial

▪ Alguns comandos seriais de configuração/utilização são:


– Serial.begin(baud): Define a taxa de dados em bits por segundo (baud) para a
transmissão de dados em série;

– Serial.println(): Este comando é utilizado para enviar valores pela porta serial;

– Serial.read(): Este comando é utilizado para ler um valor da porta serial;

– Serial.available(): Esta função verifica se há algum byte(s) de entrada na porta


serial.

Link: http://arduino.cc/en/Reference/Serial
Powered by Wesley Oliveira Maia
... Comunicação Serial

Prática 3: Criar um firmware para controlar um hardware composto de


um Arduino Uno R3 e um sensor de temperatura (LM35). Será feita a
medição da temperatura ambiente de forma periódica, em intervalos de
um segundo. O valor proveniente da leitura do canal ADC será convertido
para o seu respectivo valor em temperatura. O resultado será enviado
para o computador via UART.

Qual material necessário para esta montagem?


▪Kit Arduino
▪Jumper (3 un)
▪LM35

Powered by Wesley Oliveira Maia


... Comunicação Serial

Powered by Wesley Oliveira Maia


6. Display: LCD

Powered by Wesley Oliveira Maia


... Display: LCD

▪ Alguns comandos seriais de configuração/utilização são:

– LiquidCrystal lcd(12, 11, 5, 4, 3, 2): Cria um objeto tipo LiquidCrystal,


denominado "lcd", nos pinos citados;

– lcd.begin(16, 2): Inicia o objeto "lcd" de 2 linhas e 16 colunas;

– lcd.setCursor(0,0): Seta o cursor para: (coluna = 0, linha = 0);

– lcd.print(“Temperatura"): Envia caracteres para o display;

– lcd.print(temperatura): Envia dados atribuídos à variável para o display;

Link: http://arduino.cc/en/Tutorial/LiquidCrystal
Powered by Wesley Oliveira Maia
... Display: LCD

Powered by Wesley Oliveira Maia


... Display: LCD

Prática 4: Criar um firmware para controlar um hardware composto de


um Arduino Uno R3, um sensor de temperatura (LM35) e um display LCD.
Será feita a medição da temperatura ambiente de forma periódica, em
intervalos de um segundo. O valor proveniente da leitura do canal ADC
será convertido para o seu respectivo valor em temperatura. O resultado
será enviado para o display LCD.
Qual material necessário para esta montagem?
▪Kit Arduino
▪Jumper (3 un)
▪LM35 (1 un)
▪Display LCD (1 un)
▪Potenciômetro 10kΩ (1 un)
Powered by Wesley Oliveira Maia
... Display: LCD

Powered by Wesley Oliveira Maia


7. Controlando a Velocidade de um
Motor CC

▪ A modulação por largura de pulso (pulse width modulation – PWM), é


uma técnica utilizada por sistemas digitais para variação do valor médio
de tensão de uma forma de onda periódica.
▪ A técnica consiste em manter a frequência de uma onda quadrada fixa
e variar o tempo que o sinal fica em nível lógico alto. Esse tempo é
chamado de duty cycle, ou seja, o ciclo ativo da forma de onda

Powered by Wesley Oliveira Maia


… Comunicação com outros Dispositivos

▪ Ponte H

Powered by Wesley Oliveira Maia


… Comunicação com outros Dispositivos

▪ Transistor

Powered by Wesley Oliveira Maia


… Controlando a Velocidade de um Motor CC

Prática 5: Criar um firmware para controlar um hardware composto de


um Arduino Uno, uma ponte H L293 e um motor de corrente contínua.
Nesta aplicação, o Arduino será configurado para controlar a velocidade
de rotação de um motor de corrente contínua a partir de um valor de
referência constante.

Qual material necessário para esta montagem?


▪Kit Arduino
▪Ponte H L293 (1 un)
▪Motor de corrente contínua (1 un)

Powered by Wesley Oliveira Maia

Você também pode gostar