Prática da disciplina de laboratório de conversão de energia

30
Prática da Disciplina de Laboratório de Conversão de Energia Tema: Controle de um motor DC através do Arduino.

description

VBB, Arduino

Transcript of Prática da disciplina de laboratório de conversão de energia

Page 1: Prática da disciplina de laboratório de conversão de energia

Prática da Disciplina de

Laboratório de Conversão de

Energia

Tema: Controle de um motor DC

através do Arduino.

Page 2: Prática da disciplina de laboratório de conversão de energia

1. Conceito de Arduino

• Plataforma de computação física ou

embarcada;

• Um Arduino é um pequeno computador

que dá para programar com o objetivo

de processar entradas e saídas entre o

dispositivo e os componentes externos

conectados a ele.

Page 3: Prática da disciplina de laboratório de conversão de energia

1. Conceito de Arduino

Figura 1 - Arduino UNO

Page 4: Prática da disciplina de laboratório de conversão de energia

1. Conceito de Arduino

• Pode ser utilizado para desenvolver

objetos interativos independentes, ou

pode ser conectado a um computador;

• O Arduino pode ser conectado a LEDs,

displays de matriz de pontos, botões,

interruptores, motores, sensores de

temperatura, sensores de pressão,

sensores de distancia, receptores GPS,

módulos Ethernet.

Page 5: Prática da disciplina de laboratório de conversão de energia

1.1 Características do Arduino

• A placa do Arduino e composta de um

microprocessador Atmel AVR: um cristal

ou oscilador (relógio simples que envia

pulsos de tempo em uma frequência

especificada);

• Saída USB, que permite conecta-lo a um

PC ou Mac para upload ou recuperação

dos dados.

• .

Page 6: Prática da disciplina de laboratório de conversão de energia

1.1 Características do Arduino

• A placa expõe os pinos de entrada/saída

d microcontrolador, para que voce possa

conecta-los a outros circuitos ou

sensores..

Page 7: Prática da disciplina de laboratório de conversão de energia

1.1 Características do Arduino

Page 8: Prática da disciplina de laboratório de conversão de energia

2. Software Arduino

Figura 3 - O programa do Arduino também é conhecido

como IDE Arduino (Integrated Development Environment)

pois além do entorno de programação consiste também em

um editor de código, um compilador e um depurador.

Page 9: Prática da disciplina de laboratório de conversão de energia

2. Software Arduino

Figura 4 - Espaço de trabalho

Page 10: Prática da disciplina de laboratório de conversão de energia

2. Software Arduino

• Legenda para a Figura 4.

Page 11: Prática da disciplina de laboratório de conversão de energia

3. Programando o Arduino

• Arduino se programa em uma linguagem

de alto nível semelhante a C/C++ e

geralmente tem:

Estruturas

Variáveis

Operadores booleanos, de comparação

e aritméticos

Estrutura de controle

Funções digitais e analógicas

Page 12: Prática da disciplina de laboratório de conversão de energia

3.1. Estruturas

• São duas funções principais que deve ter

todo programa em Arduino:

“Função setup()”:é chamada quando um

programa começa a rodar. Função

usada para inicializar as sua variáveis,

os modos dos pinos, declarar o uso de

livrarias.

“Função loop()”: parte principal do

programa (executa sempre o mesmo

bloco de código). Esta função é usada

para controlar ativamente a placa

Arduino.

Page 13: Prática da disciplina de laboratório de conversão de energia

3.2. Variáveis

• Variáveis são expressões que são

usadas em programas para armazenar

valores como a leitura de um sensor em

um pino analógico.

“Variáveis Booleanas”: possui apenas

dois valores verdadeiro (true) ou

falso(false).

“Int”: armazenador de dado numérico

capaz de armazenar ate dois bytes.

“Char”: Um tipo de dado que ocupa 1

byte de memória.

Page 14: Prática da disciplina de laboratório de conversão de energia

3.3. Operadores booleanos, de

comparação e aritméticos

• Operadores booleanos: Estes

operadores podem ser usados dentro da

condição em uma sentença “if”.

• Operadores: && (“e” lógico), || (“ou”

lógico), ! (negação).

• Exemplos:

if (digitalRead(2) == 1 && digitalRead(3)

== 1)

if (x > 0 || y > 0)

if (!x)

Page 15: Prática da disciplina de laboratório de conversão de energia

3.3. Operadores booleanos, de

comparação e aritméticos

• Operadores de comparação: “if”, que é

usado juntamente com um operador de

comparação, verifica quando uma

condição é satisfeita.

• Operadores:

x == y (x é igual a y);

x != y (x é não igual a y);

x < y (x é menor que y);

x > y (x é maior que y);

x <= y (x é menor ou igual a y);

x >= y (x é maior ou igual a y).

Page 16: Prática da disciplina de laboratório de conversão de energia

3.3. Operadores booleanos, de

comparação e aritméticos

• Operadores aritméticos: Se aplicam no

uso de variáveis.

• Operadores:

“=” (igualdade);

“+” (adição);

“-” (subtração);

“*”(multiplicação);

“/” (divisão);

“%” (resto da divisão);

Page 17: Prática da disciplina de laboratório de conversão de energia

3.4. Estruturas de controle

• São instruções que permitem decidir e

realizar diversas repetições de acordo

com alguns parâmetros. Entre os mais

importantes pode-se destacar:

Switch/case;

While;

For.

Page 18: Prática da disciplina de laboratório de conversão de energia

3.4. Estruturas de controle

• Switch/case: permite ao programador

construir uma lista de “casos” dentro de

um bloco delimitado por chaves. O

programa checa cada caso com a

variável de teste e executa o código se

encontrar um valor idêntico.

Page 19: Prática da disciplina de laboratório de conversão de energia

3.4. Estruturas de controle

• Exemplo de Switch/case:

switch (var) {

case 1:

//faça alguma coisa quando var == 1

case 2:

//faça alguma coisa quando var == 2

default:

// se nenhum valor for idêntico, faça o

default

// default é opcional

}

Page 20: Prática da disciplina de laboratório de conversão de energia

3.4. Estruturas de controle

• While: fará com que o bloco de código

entre chaves se repita contínua e

indefinidamente até que a expressão

entre parentesis () se torne falsa.

Exemplo:

var = 0;

while(var < 200){

// algum código que se repete 200 vezes

var++;

}

Page 21: Prática da disciplina de laboratório de conversão de energia

3.4. Estruturas de controle

• For: A sentença for é utilizada para

repetir um bloco de código delimitado por

chaves. Um contador com incremento

normalmente é usado para controlar e

finalizar o loop.

• Exemplo no slide seguinte.

Page 22: Prática da disciplina de laboratório de conversão de energia

3.4. Estruturas de controle

// Aumentar o brilho de um LED usando um pino PWM

int PWMpin = 13; // um LED no pino 13

void setup()

{

// nenhum setup é necessário

}

void loop()

{

for (int i=0; i <= 255; i++){

analogWrite(PWMpin, i);

delay(10);

}

}

Page 23: Prática da disciplina de laboratório de conversão de energia

3.5. Funções digitais

• Orientadas a revisar o estado e a

configuração das entradas e saídas

digitais.

• Funções Digitais:

pinMode();

digitalRead();

digitalWrite().

Page 24: Prática da disciplina de laboratório de conversão de energia

3.6. Funções analógicas

• Ideais para a leitura ou escrita de valores

analógicos.

• Funções Analógicas:

analogRead()

analogWrite()

Page 25: Prática da disciplina de laboratório de conversão de energia

4. Simulação de Projetos do

microcontrolador Arduino no Virtual

Breadboard

• O teste de projetos de eletrônica hoje em

dia podem ser facilmente realizados em

laboratórios virtuais. Esta possiblidade

oferece uma vantagem muito importante:

Evitar a destruição de componentes por

erro de calculo de alguma variável ou

algum outro dimensionamento;

Um exemplo desse tipo de software é o

Virtual Bread Board versão 4.15,

especifico para projetos com

microcontroladores.

Page 26: Prática da disciplina de laboratório de conversão de energia

4. 1. Layout do programa

Figura 6 – Tela Inicial do Virtual

BreadBoard

Page 27: Prática da disciplina de laboratório de conversão de energia

4.2. Detalhes importante do programa

Virtual Bread Board

• A linguagem de programação utilizada é

o java.

• É possivel adaptar o programa em c do

software do arduino para o java do VBB,

basta utilizar o seguinte comando:

• Importmuvium.compatibility.arduino.*;

class (nomedoprojeto) extends Arduino.

Page 28: Prática da disciplina de laboratório de conversão de energia

4.2. Implementação do projeto no

Virtual Bread Board

• Figura 7 – Projeto Implementado no VBB

Page 29: Prática da disciplina de laboratório de conversão de energia

4.2. Implementação do projeto no

Virtual Bread Board

• Desenvolvimento de um controle de

velocidade de rotação para um motor de

corrente contínua. Utilizando um medidor

de potência aplicada usando leds.

• Funcionamento: a medida que o

potenciômetro linear é utilizado o motor

cc aumenta e os leds vão acendendo de

acordo com a potência aplicada, se o

motor estiver girando no máximo todos

os leds ficarão acesos.